From: Neil Smith Date: Thu, 26 Oct 2023 11:07:09 +0000 (+0100) Subject: Done some puzzles X-Git-Url: https://git.njae.me.uk/?a=commitdiff_plain;h=dcd588a1259c400012f28c518bcc2e47abff9d61;p=cses-programming-tasks.git Done some puzzles --- diff --git a/app/cses1071.hs b/app/cses1071.hs new file mode 100644 index 0000000..22f610a --- /dev/null +++ b/app/cses1071.hs @@ -0,0 +1,38 @@ +main :: IO () +main = do + line1 <- getLine + let numQuestions = read line1 :: Int + answers <- forM [1..numQuestions] $ \_ -> do + q <- getQuestion + return $ solve q + putStrLn $ unlines $ map show answers + +getQuestion :: IO (Int, Int) +getQuestion = do + line <- getLine + let question = map read $ words line + return (question !! 0, question !! 1) + + +solve :: (Int, Int) -> Int +solve (row, col) = go oddTarget + where maxRC = max row col + oddTarget = (maxRC `mod` 2) == 1 + target = maxRC * maxRC + go True + | col >= maxRC = target - (row - 1) + | otherwise = (target - (row - 1)) - (row - col) + go False + | row >= maxRC = target - (col - 1) + | otherwise = (target - (col - 1)) - (col - row) + +-- if target is odd and col >= maxRC: +-- target - (row - 1) +-- if target is odd and row < maxRC: +-- (target - (row - 1)) - (row - col) + +-- if target is even and row >= maxRC +-- target - (col - 1) +-- if target is even and col < maxRC +-- (target - (col - 1)) - (col - row) + diff --git a/app/cses1072.hs b/app/cses1072.hs new file mode 100644 index 0000000..92333a1 --- /dev/null +++ b/app/cses1072.hs @@ -0,0 +1,20 @@ +main :: IO () +main = do + line1 <- getLine + let numKnights = read line1 -- :: Int + let answers = [knights k | k <- [1..numKnights]] + putStrLn $ unlines $ map show answers + + +knights :: Int -> Int +knights 0 = 0 +knights 1 = 0 +knights 2 = 6 +knights 3 = 28 +knights k = corner + edge + middle + where corner = 2 * (4 * k ^ 2 - 16) + edge = 2 * (k - 4) * (2 * k ^ 2 - 12) + middle = ((k - 4) ^ 2 * (k ^ 2 - 9)) `div` 2 + + + diff --git a/app/cses1092.hs b/app/cses1092.hs new file mode 100644 index 0000000..5676512 --- /dev/null +++ b/app/cses1092.hs @@ -0,0 +1,18 @@ +main :: IO () +main = do + line1 <- getLine + let n = read line1 + let solution = solve n + putStrLn $ showSolution solution + +solve :: Int -> Maybe ([Int] , [Int]) +solve n + | n `mod` 4 == 0 = Just (mconcat [[k, n - k + 1] | k <- [1, 3 .. (n `div` 2)]], + mconcat [[k, n - k + 1] | k <- [2, 4 .. (n `div` 2)]]) + | n `mod` 4 == 3 = Just (mconcat [[k, n - k] | k <- [1, 3 .. (n `div` 2)]], + n : (mconcat [[k, n - k] | k <- [2, 4 .. (n `div` 2)]])) + | otherwise = Nothing + +showSolution Nothing = "NO" +showSolution (Just (ns, ms)) = "YES\n" ++ (showNums ns) ++ "\n" ++ (showNums ms) + where showNums ks = (show $ length ks) ++ "\n" ++ (unwords $ map show ks) diff --git a/app/cses1617.hs b/app/cses1617.hs new file mode 100644 index 0000000..c772431 --- /dev/null +++ b/app/cses1617.hs @@ -0,0 +1,14 @@ +main :: IO () +main = do + line1 <- getLine + let n = read line1 + let solution = solve n 1 + print solution + +limit = 10 ^ 9 + 7 + +solve :: Int -> Int -> Int +solve 0 t = t +solve n t = solve (n - 1) ((t * 2) `mod` limit) + + diff --git a/app/cses1618.hs b/app/cses1618.hs new file mode 100644 index 0000000..1a87106 --- /dev/null +++ b/app/cses1618.hs @@ -0,0 +1,11 @@ +main :: IO () +main = do + line1 <- getLine + let n = read line1 + let solution = solve n 5 + print solution + +solve :: Int -> Int -> Int +solve n f + | n < f = 0 + | otherwise = (n `div` f) + solve n (f * 5) diff --git a/app/cses1620.hs b/app/cses1620.hs new file mode 100644 index 0000000..6d1b42a --- /dev/null +++ b/app/cses1620.hs @@ -0,0 +1,41 @@ +import Data.List +-- import Data.Ord +import Data.Traversable +import Control.Applicative + + +main :: IO () +main = do + line1 <- getLine + line2 <- getLine + let params = map (read :: String -> Int) $ words line1 + let required = params !! 1 + let machines = map read $ words line2 + -- print required + -- print machines + print $ solve required machines + +solve :: Int -> [Int] -> Int +solve required machines + | required <= minProduction = minTime -- (required, minTime, minTime) + | otherwise = binarySearchTime required minTime maxTime machines + where minTime = minimum machines + minProduction = productionAtTime minTime machines + maxTime = findMaxTime required minTime machines + +findMaxTime :: Int -> Int -> [Int] -> Int +findMaxTime required minTime machines + | required <= productionAtTime maxTime machines = maxTime + | otherwise = findMaxTime required maxTime machines + where maxTime = minTime * 2 + +binarySearchTime required minTime maxTime machines + | minTime == maxTime = minTime + | midProduction < required = binarySearchTime required (midTime + 1) maxTime machines + | midProduction >= required = binarySearchTime required minTime midTime machines + where midTime = (minTime + maxTime) `div` 2 + midProduction = productionAtTime midTime machines + +productionAtTime :: Int -> [Int] -> Int +productionAtTime time machines = sum $ fmap go machines + where go machine = time `div` machine diff --git a/app/cses1620_slow.hs b/app/cses1620_slow.hs new file mode 100644 index 0000000..95305f2 --- /dev/null +++ b/app/cses1620_slow.hs @@ -0,0 +1,57 @@ +import Data.List +-- import Data.Ord +import Data.Traversable +import Control.Applicative + +type MergedMachine = (Int, Int) -- production time, number of machines + + +main :: IO () +main = do + line1 <- getLine + line2 <- getLine + let params = map (read :: String -> Int) $ words line1 + let required = params !! 1 + let machines = map read $ words line2 + let mergedMachines = merge machines + -- print required + -- print machines + print mergedMachines + print $ length mergedMachines + print $ solve required mergedMachines + +merge :: [Int] -> [MergedMachine] +merge machines = [(head g, length g) | g <- grouped_machines] + where sorted_machines = sort machines + grouped_machines = group sorted_machines + + +-- solve :: Int -> [Int] -> Int +solve required ms = (lcm_chunks * lcm_time) + length requiredRun - 1 + -- lcm_production + where lcm_time = lcms $ fmap fst ms + lcm_production = sum $ [(lcm_time `div` p) * n | (p, n) <- ms] + lcm_chunks = required `div` lcm_production + remaining = required `mod` lcm_production + prods = productions ms + -- requiredRun = takeWhile (< required) $ totalProductions prods + requiredRun = takeUntil (>= remaining) $ totalProductions prods + -- sorted_ms = sortOn Down ms + +lcms :: [Int] -> Int +lcms ns = foldl1 lcm ns + +productions :: [MergedMachine] -> [[Int]] +productions machines = fmap manufactured machines + +manufactured :: MergedMachine -> [Int] +manufactured (t, n) = go [0, n..] + where go (p:ps) = replicate t p ++ go ps + +totalProductions :: [[Int]] -> [Int] +totalProductions prods = fmap sum $ getZipList $ sequenceA $ fmap ZipList prods + +takeUntil _ [] = [] +takeUntil p (x:xs) + | p x = [x] + | otherwise = x : takeUntil p xs diff --git a/app/cses1754.hs b/app/cses1754.hs new file mode 100644 index 0000000..56e16ab --- /dev/null +++ b/app/cses1754.hs @@ -0,0 +1,30 @@ +import Control.Monad + +main :: IO () +main = do + line1 <- getLine + let numQuestions = read line1 :: Int + answers <- forM [1..numQuestions] $ \_ -> do + q <- getQuestion + return $ solve q + putStrLn $ unlines $ map showA answers + +getQuestion :: IO (Int, Int) +getQuestion = do + line <- getLine + let question = map read $ words line + return (question !! 0, question !! 1) + + +solve :: (Int, Int) -> Bool +solve (0, 0) = True +solve (0, _) = False +solve (_, 0) = False +solve (nLeft, nRight) = (a <= b * 2) && ((b - n) `mod` 3 == 0) + where a = max nLeft nRight + b = min nLeft nRight + n = a - b + +showA :: Bool -> String +showA True = "YES" +showA False = "NO" diff --git a/cses-programming-tasks.cabal b/cses-programming-tasks.cabal index b8f05a0..62ea302 100644 --- a/cses-programming-tasks.cabal +++ b/cses-programming-tasks.cabal @@ -105,4 +105,32 @@ executable cses1094 executable cses1070 import: build-directives main-is: cses1070.hs + +executable cses1620 + import: build-directives + main-is: cses1620.hs + +executable cses1071 + import: build-directives + main-is: cses1071.hs + +executable cses1072 + import: build-directives + main-is: cses1072.hs + +executable cses1092 + import: build-directives + main-is: cses1092.hs + +executable cses1617 + import: build-directives + main-is: cses1617.hs + +executable cses1618 + import: build-directives + main-is: cses1618.hs + +executable cses1754 + import: build-directives + main-is: cses1754.hs \ No newline at end of file diff --git a/data/cses1071.txt b/data/cses1071.txt new file mode 100644 index 0000000..a2a68d2 --- /dev/null +++ b/data/cses1071.txt @@ -0,0 +1,4 @@ +3 +2 3 +1 1 +4 2 diff --git a/data/cses1620.txt b/data/cses1620.txt new file mode 100644 index 0000000..f788efd --- /dev/null +++ b/data/cses1620.txt @@ -0,0 +1,2 @@ +3 7 +3 2 5 diff --git a/data/cses1620_11.txt b/data/cses1620_11.txt new file mode 100644 index 0000000..1f75fe0 --- /dev/null +++ b/data/cses1620_11.txt @@ -0,0 +1,2 @@ +25 1000000000 +1000000000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 diff --git a/data/cses1620_9.txt b/data/cses1620_9.txt new file mode 100644 index 0000000..d839fb6 --- /dev/null +++ b/data/cses1620_9.txt @@ -0,0 +1,2 @@ +200000 1 +760045594 599341056 300698860 167019058 686341105 47895559 414272183 716345285 80025673 577619770 983314352 265222176 991180172 103963600 591539621 4390536 990418765 154622346 219552172 657829037 503283671 719405612 288059665 106796656 92240548 303538457 610529973 606222137 864411581 68790407 32201153 468656037 804484228 158167987 129580902 312653589 235443566 993014702 604655216 813060191 172631605 883844064 869978928 525488416 503975715 143184252 644582189 724824563 400009343 139083357 168248863 126988831 131726718 113287477 700460787 233577522 441502074 755005404 785372983 916639006 210473641 301411892 490690369 469455757 566739434 392946014 640626987 87595538 295644911 54527482 458822173 215108153 145030204 438842019 878499487 984478960 961224773 131877073 798240202 237588138 633535258 408552353 53922093 497498219 848748080 446159450 368047635 906453054 752549416 7115253 762737798 257238599 867474132 388826792 234423035 577271789 257050724 684158102 842329727 829131554 864595843 32814658 985093099 872503417 83582100 600691934 472612865 319088635 372419275 221422059 684373906 890123881 840991850 56215382 261392921 478048657 199688439 291859277 325357847 873774054 56677081 57403731 638826362 122759996 437146041 701690742 691644618 594134948 437730776 208848522 192828223 329885226 917538254 843844292 96193886 864420437 25822469 272731570 38439221 772568613 245329189 894716401 420215180 761973353 903037654 756619215 196079027 661102143 9219785 588824776 11105614 869791399 87010042 637241102 335147552 189654036 662069440 918414004 612895331 543591672 189185365 23849390 638354384 847305418 867155199 903624653 158340101 175975480 212253681 807242796 37245647 198705606 319470212 872618518 956356171 886299388 81618424 986773071 38141852 109906524 323202422 250087809 560749262 704474884 503424628 670792555 611777660 86629471 737121824 55927636 826473091 215725777 170447372 985807565 362870938 624912107 755025271 62748185 730098218 859073329 182286886 978443496 22695156 648519617 578897363 761334575 955824370 465272867 287033432 249068121 342891344 276130276 290968304 262237445 443268836 905590706 40740427 544157555 659682337 24883861 94110154 866028703 879099681 620244272 851687135 760686427 980266863 99374888 930182094 192311335 729707699 15223495 210704347 321961200 244646373 933316908 576854960 162985766 180778253 257861070 558310523 551496356 946266999 249405086 927150548 451893449 558527333 791664130 65657128 720710480 945953106 2596397 679449141 371985730 277242886 877487916 719055597 74590633 989947336 23414663 11053947 824510263 568691545 320846711 952362896 929110690 308101910 967385781 659652067 147639779 200227503 765271507 563279913 106555641 890294149 559488773 88189348 691464327 652296458 232908592 795979449 70520339 862599785 545156771 569636622 158107040 973044472 600438303 550392451 566380233 731290383 529999838 283609138 877519265 215018593 553435340 875011882 53675698 793733476 82441179 23091787 805979208 112180620 455206243 389460914 617562198 882278824 577829896 165943473 591329329 157317882 509509120 440394225 913755262 307353284 500008548 436830025 485872347 247842878 338191396 476720059 495550091 923216978 791051525 880920866 601258967 951630527 267483696 273984905 212096713 741934440 888367434 505933910 71421084 579009624 497056322 304683019 886229167 923615365 126123905 102924292 314406403 398624896 949402491 14612968 291828337 939469540 706158414 328488631 104419161 947986904 838630003 892250979 714345279 383028422 960744053 982500234 38016837 578538349 530884613 76610360 304116184 589295136 97458488 228159712 704691410 132726449 780461306 954496546 160566198 547157676 386221338 668673881 292005372 201117956 989367837 285430130 64011918 559449248 340973979 807859759 773892026 213513575 758057859 640928801 773709762 746814617 559671287 13105152 603606650 248236352 170043011 346555271 807223274 679707048 306237472 832113873 609394382 312042639 691389007 231743363 70014560 992472228 666038451 83750772 141565476 531952082 798038332 4943455 912712063 324359456 377004216 979139270 291893351 156335065 449308171 291154042 132219458 699067274 219015408 263925942 435035196 243128909 109436075 57195551 875596050 345475861 481286276 700878322 452911008 884492622 189711576 726188981 464867676 521756485 971543790 518932050 849169930 68229272 999695859 153511506 201584676 985894865 824822184 528803777 313871416 888572287 786193636 250879414 964779156 739529674 682484175 631233318 485538676 542174505 816794519 976627371 630248873 680419937 115289300 392962657 314643385 929692762 303071673 151744595 703861674 641056991 228895521 958590416 845867130 217436297 681315299 128188478 178538413 873771303 993781054 499207359 916136148 843234203 681083631 122907956 469789588 502054502 405488570 605970273 167576172 71127471 708544969 204163641 443033916 81506888 410264187 129497871 694116068 280864745 554172818 250580568 929034460 126078329 126641952 368351181 902887993 52817397 112368747 804642121 455250973 900747518 161300069 114801625 384440330 871462691 32418542 859276868 822916123 331835199 681877877 50434357 905077513 134368710 554530325 970619974 868961368 395219500 225095636 502863540 311808583 767572115 124355489 702734342 838984231 835389650 827823238 565965753 793712869 253773728 605100812 401452814 340183733 371803465 172401466 903565112 567664169 75700595 443131885 381173201 740726172 101932402 609085218 512627359 244228059 600999714 679728062 564644746 437947464 12537823 179977221 744610520 632970272 22610608 507271483 127843547 688951359 908107545 138863839 316520746 691175566 997057747 843376417 667800377 810956851 679201328 463878833 865099470 155951421 392071160 361642770 673977146 2006427 264701373 767534644 136718536 602168649 637854737 718954597 778734148 258651902 901402491 336800314 943043217 502447969 79261948 502497489 564544107 653748774 965262623 359126967 588622359 910313473 554813906 192267010 47459335 137102493 985980578 253139311 539024746 824923827 205436791 38173491 405452060 780730494 50590680 842739222 846837515 231860546 670304376 469422998 279130903 985810861 970676897 733704499 237542108 10496865 159941678 789325033 78070588 370750052 461941051 711848867 2567815 7646866 309460450 375789964 370644439 485228435 622701446 192692190 467750735 397659019 856363057 223043697 926382219 84638697 912837397 383664147 310864829 723183771 558025645 942277220 564135397 4631139 922561295 863399212 170272283 141633148 663613792 860129546 14702550 656090143 301779596 576375377 663634475 679289931 775919161 790283297 348615835 633750051 273219760 975919246 377027583 586003423 53862593 226964844 79190921 727981106 978491355 342484655 878753780 814450654 798837937 245426122 671989034 633628248 415450933 802078064 651705525 384159944 566927043 794962336 564255234 387904715 365649636 627235852 639105680 289886430 832901590 586846132 60866570 332861442 935845563 40310312 423474649 461811086 411498665 989066951 279814296 480155476 322233190 674133163 442036318 881388662 85281436 993367535 319664646 247575683 153527397 376620799 620689982 88999947 424461608 703269703 781538532 300731278 130050920 348081111 630535988 202590671 630481166 602188136 799763667 927732325 767890157 559477558 301808827 768615639 186846946 376335140 551060071 480795425 691118812 836279656 769129240 474270048 1275775 5215358 241272966 682187213 702231122 694747888 631740705 466562682 774958703 517771852 65849148 206583295 464050692 137610469 279840426 603212016 948873238 811952846 497940895 327397071 491879972 937230189 145172827 952833218 477736698 397028800 355979691 311703415 846634623 884741113 424496017 408093693 931796533 702412969 100565000 675594408 896209495 52955226 519106572 161714087 9388398 238909005 966375895 366749262 559255445 91776775 411911778 600804048 17558109 162156797 903593386 611150092 726755016 999314693 201306900 431971340 562783734 274944237 802381476 460403426 418360154 665258025 959109617 135310464 890281259 260104085 799101939 871547411 78404334 40912540 677824366 121364821 963388219 277701709 308322705 954104874 439038135 570815695 887485563 500989129 583302386 694796634 425292044 353091269 530980661 64410089 606684236 85046803 426368390 926679335 668075850 313929103 761529271 512301033 308337144 302892569 664897332 774680419 104337383 720739443 475139454 54239657 228819915 143311339 610332609 302463676 788003809 509097129 944440670 586034269 903340797 584749913 920032773 951974477 528679803 524791285 378641798 175367701 938866882 778989319 105473506 796492958 337143507 128250801 739883722 583996271 590600600 119238303 886712161 607816437 285925828 928729688 641945428 862021424 632414504 971347204 669706705 199518339 873460901 314669132 440142584 832084430 789123566 723245978 344542927 18723850 943557709 470000230 791674807 711886972 325763261 962030276 404390116 916989183 152017988 688062590 329645764 575296306 633736059 928388532 556833067 453062096 493749095 988856411 449274761 458339519 569570172 512021407 962897782 217276350 622081552 322620052 228055399 281120730 704052682 989868342 86736509 895573427 53551592 938797503 142933609 757451667 433728063 131864146 609938333 760308070 945637 579526868 191538621 102152722 928822949 744958273 646631304 628896499 719865277 495166012 352757368 78820747 446912182 770989783 813563108 11466091 899682822 666920756 130898204 774878557 664971256 419675545 19538461 642722884 17759238 366257649 902397682 589923794 791442114 272940274 499661359 674362621 1773276 40717515 534598298 991574744 420713022 321156554 814563041 385481169 380642511 975424613 546770059 152723627 480525052 11602048 259743340 266697782 462607265 982005268 302911173 609169154 946297115 702865050 648373947 1647667 603670595 33675034 409665636 427343418 557598554 917410523 848244486 869629143 211241189 910868291 278768722 276049266 951622135 225252384 850859273 648251822 848028659 227059146 327093894 111293802 458059149 506169371 531319107 402644839 443172047 55261087 503752610 279937648 277785626 143741072 83603972 931450423 175787858 578259960 629708757 758086909 148161854 1734551 65739323 818303354 655015631 343392862 511083091 685065355 788485289 770089922 914646478 219161693 736423614 77298091 754082697 930322227 127494298 479422301 294927413 738456108 841620853 876740445 886375744 611926876 176468019 332385272 172635059 50799779 345290124 113780414 158156390 597804339 220147167 738392541 391828270 199847996 959375466 442818584 726639306 853247305 380705534 509107049 75554958 631479494 475889193 301376289 299433974 678166721 523285238 297343234 28084731 720007291 310481085 338691810 467336392 21786391 308959984 142094838 983357117 682301872 786445937 981789680 431336220 787373855 274296973 774793166 416019066 211609505 577991534 903982566 786514383 47467075 421541229 192528157 777304306 158505660 479382723 757752124 746815278 544620612 521637141 212286918 681444739 421721925 2995507 241057285 119544082 394125466 552823315 47206849 133122202 526456338 141207968 954176167 320592480 440780140 762156763 936242050 331463768 765294704 732617245 27747412 682307748 59050820 406880347 768669464 835121257 926507329 698361819 372328411 996908776 662675092 315150579 399534778 885150806 390325185 887465489 520716714 121080101 687034017 550629289 685021274 85798373 597643700 829381249 788557443 781755946 67530130 589758431 583439257 902918663 432495387 723043143 57672387 162039000 144835655 111054907 463053589 661715101 200203802 571411491 171201978 27981743 722581157 312811651 555770684 800406995 348281659 652519813 19207962 689533972 246724081 43496678 361309099 322973446 239743666 895747363 759992628 70646484 341140683 310836903 207192991 927659242 366928106 1215204 504913675 6084929 412816236 809499907 885036441 597972467 588234661 752292664 633204486 380857363 376298419 651202563 329347512 186539058 984157331 421940960 12550556 344711492 348739732 443610128 283982941 761551515 151518802 504909432 111651981 115193306 547217003 634935015 283560450 769415530 328766838 585340629 223879821 746131783 704524831 567512364 581787890 280699100 234996499 127139645 835803815 82398131 722569252 91289775 848998532 376493752 207416347 845832554 224850874 707415696 486892074 513801115 857713768 425482643 169058051 275713948 484612936 771856098 953704192 137439742 519744493 197082957 260416952 312113078 16681414 925673184 267326292 389363396 838202436 555935014 200400351 739921376 293991064 142427626 289956696 489378172 419876397 611595854 149271222 424148660 193521581 993905328 871095618 368981328 898046980 383900277 308694206 611570500 571534299 685709447 796152323 80088268 464203826 343240305 620522883 989639188 980891831 310321716 993985133 501107310 99724378 326944296 44506115 705174283 669655042 966233819 954448812 800790359 821573983 924336142 404167464 703929710 325379847 815019947 944649283 828595681 349563061 902006827 998545619 146329148 282944278 770361923 759622467 745641401 976660297 268066653 915529498 515845653 548459952 178722238 357367450 893143361 908688213 155180804 208299510 574305197 967862400 39939791 932705545 971040648 260003352 103464882 374279297 900514051 78135316 664095578 665270088 639063000 609247041 36250934 617834897 392462707 84082875 466659143 680622012 44698985 361202195 692589442 681710868 396248443 687345788 882021891 581732758 526489229 151426193 21509567 131261525 38213174 322348192 866801285 871342771 369012459 694292199 763825037 654416830 496672720 942892821 449403641 604649737 327902493 265300582 270796221 261030501 740851703 528894008 203380475 397618641 605077599 17871460 242597390 773719292 536036545 324502731 859079402 254419181 712240901 319152675 43055189 37845624 753094991 279006517 528098027 535291195 3888012 813302754 196599305 208479045 207350082 812788979 456160513 774886277 101667917 369769560 256837361 722230125 344785727 484864165 560350864 24106795 622596574 365939071 315432367 327561435 907180276 400115419 467567120 884270850 834070143 78833846 566973076 868676966 311554455 587861368 305442192 831137763 475471443 303400958 138671490 90292807 563102820 653969473 47394206 505904377 416835072 616933849 299949922 198674854 391684601 580334627 557084230 110439193 710955460 889920627 881492610 864559999 332323911 473944816 451900016 930663654 409566632 878390442 784983259 706471857 471877291 285818969 693187969 327686611 2325121 698244230 442337458 775607354 212549295 258336891 589261642 485024173 289779961 353847233 702081131 850396480 685232368 9949011 84412020 950393268 489246541 625463760 126133090 74870995 649165132 662518935 414518476 756531839 858819435 529601411 975619752 416938101 95827123 557151189 863307248 743531494 871745708 174822278 862294632 952595262 407410074 627361396 443210797 503593609 907590578 56351575 940269325 252523135 892989896 667110718 742835203 939141337 257423322 327311715 97202248 700902156 557184505 293858665 998376626 208134989 115298845 250202799 53603819 464669255 788406439 77938311 426641416 297774799 291402046 100477940 776117616 724520970 219024563 704584611 714126941 330236603 959247832 887845960 886927766 568112817 142011540 245734308 153026528 628791290 543518536 818454741 393729079 556236246 169143684 800508302 26301200 343124005 990028477 526200875 951015613 492112636 268934360 324881507 276268779 667623295 137643146 402072981 757680897 118615653 757831827 421529524 7352942 105577923 779113525 529950823 741534722 562650701 167715982 554340784 799404688 548225394 68001914 386070328 67131261 631285015 433807038 33857275 754788517 421725191 665752647 902845818 668691995 752992064 229375090 740423674 59608573 604519645 833557969 273157876 377901902 721575541 497570793 180000034 145905584 374966666 738578546 177019008 26448475 588561626 996101842 146849162 561995996 424627567 794880871 803782494 964457666 431448420 438038524 240127403 640381216 832818148 196803197 85501563 550706097 684179538 854548214 712131011 223314063 304059497 456366525 286211630 959324497 927688738 745924314 123288117 592583775 279389745 913821922 433437969 721928140 413107793 157559585 614241274 585833097 197363175 903315534 676159304 3413665 804166328 153649777 618517744 477733175 601003620 298990532 93524722 408505147 138963814 812583453 323554625 426877613 188571662 254696858 905366613 830150468 561222125 799029631 480165737 638732912 258468582 493054386 241577334 698155693 518460687 194266851 588765047 926033367 407839647 750070509 836460332 647484447 780925126 906498152 549831923 435797026 456095776 194980527 598768523 45693896 585045626 705391224 742778893 185067630 750002048 237728099 726333012 879694472 771593283 621288497 1485608 293927186 528635492 259280511 241719050 967991223 116034505 652934293 188890396 820661390 65236897 584054594 512199563 693285893 948387414 304434699 448067231 53532677 191571948 20971891 279731178 728699428 990577626 952800907 105893243 147036615 796013183 237945190 149087482 444235923 126932141 927192728 472124783 395427986 637363047 438515649 486515205 432836259 199132169 43633894 535494696 353847764 300859449 254505104 501024893 669939695 972004343 308335084 866352754 719318505 136114379 983670375 992405146 148566820 48701499 802919360 219077264 724572800 289398365 478991990 163821579 625522696 957864754 152067562 815857335 289439759 716630172 3813922 779124596 963359488 161026830 451824548 22438573 516495935 726590877 910422093 728173173 64484831 284145775 792935419 465354574 354378836 444618923 278549414 4350019 131209091 698907064 87693242 994320920 904351478 194318967 784653677 992115718 658123806 154343243 42891739 915424238 728565299 990693376 55957300 453100465 488682502 877257119 109585375 908527736 23362243 555332983 900858587 863282410 884981142 213201970 873615484 961825624 263390523 868369967 226310654 736458337 500335167 175775044 103999029 876915813 266693240 374349022 949789034 480443452 630174607 294854474 84558965 245340118 403687711 767921180 507762150 2891360 866681608 407689877 897405534 995636478 758731493 137411144 187883571 746603077 939428566 467170359 469939396 913349124 466311613 214294839 658601364 504190095 184330081 610666869 371463639 987203563 155049347 572017047 483329788 332771766 678969701 683764091 946026121 139219793 745120260 568992096 252388673 379227325 737530102 608484660 732283135 22150585 862145980 305986407 696854079 905374512 730141000 791585955 267518871 151046478 462715948 608615379 96673844 320399852 848325278 674530252 57423925 499764230 438149599 708838492 460240106 967338419 884470735 567799047 111114385 347262448 453486049 418228191 207900575 497353811 87752571 122132231 7982999 682595197 410352019 909045949 594076046 477903333 672807766 752712413 833923240 612944602 236255721 450852804 154302724 180750061 270218918 260789154 604655002 128763765 165398662 746740430 725396960 21381217 554955183 411285546 760118328 352292597 827531107 382625923 49723627 107271927 258764786 620336121 336508262 297521717 534731024 850408328 575039559 277350451 97483604 907725600 440833162 700045015 439888569 785804418 196233852 183637785 43112497 106823159 200067587 223695980 868999868 940731523 744665306 806413406 539409918 565189710 275897106 270519600 610983848 625265090 16503368 415342729 453087274 407641575 758453433 261052585 26442845 319364353 79753079 135932074 367225325 610440933 546353774 4441832 810768743 311307962 677306754 371640558 106036486 856152139 661344453 450997912 432174218 498159780 68512571 376438598 153718990 434087144 635131020 362432681 847867627 433976792 441120229 288017586 622062695 535218414 733626717 472288346 885306529 124320838 875213420 789138952 655345915 24722378 95546702 637076428 415002039 355871479 701396561 963872134 839683882 846213579 60221672 419698130 23325062 905138287 910820233 690810773 776150590 707190580 89909254 923228074 520532101 606194238 951901758 393384807 33103601 902071724 62070597 209610327 817211765 408301095 804129311 874331512 559886673 399465941 770850191 657295185 874178012 573070291 68818809 676653001 893618049 228246283 492582719 623686176 963584985 113126989 392455534 394104315 941520510 184097433 578553704 624325457 181726998 899153864 931693061 233899852 986855051 840662131 405260569 297340199 178174750 489581636 451500526 520123755 374419403 278176796 885431217 59785690 14958608 174611444 860133549 695029988 607264420 968796591 279701938 723098702 50741976 995614400 581450608 160527663 284938047 347607046 49671752 986043212 916904935 167712813 645935694 4385827 978235942 614182113 999167141 60803480 829860169 759372241 486933598 33323721 464450164 704057899 720143599 941794480 751016493 412645146 335077022 259414408 603515919 73571113 613632547 678307701 82120816 68154352 11506456 194794319 356150631 800690019 210247039 513482102 431368254 639708512 49374005 135336298 616259286 134070791 90451556 771877244 898967704 100049028 737899935 534243883 737878875 110949859 572053110 437139318 855159328 625156444 738013504 815359516 113137325 410324331 586436975 852099975 658726676 499024542 371125275 355817159 484288206 193913470 636525332 459847010 371426564 219309768 78537556 83913167 791779358 329203357 228410448 144160707 169499372 685342016 573501249 52809053 814815714 559958573 141071901 683796959 296529058 82655162 917908428 221086622 23379607 919772124 470976917 876582173 222179821 896886706 851635916 656933822 618252789 681624033 890148999 992144716 207275628 688898918 157010804 161959867 712014119 325675577 223903406 790744993 821267680 151681098 955768308 410506818 420757025 803998697 305220534 792167605 582906718 484368242 593300644 805424622 254093591 275016831 500414063 717605103 395900626 25822147 470575764 12577149 496010026 27224505 809262830 905119201 683463298 608807133 484697269 101812566 778394701 667052042 246796635 648188366 274387446 531973041 844732758 79553302 690757783 701120238 944921365 271245694 955500988 885530147 51625349 676196762 891280221 985868311 966127770 390508611 978488202 981995738 300226688 3532531 377011245 610672534 127547918 769567399 743901901 575512273 771494194 846558866 167894461 862238123 1495385 615368664 825203984 107766404 809912924 209966668 34427642 627206454 789955765 337431698 517879 987230598 645062057 209076878 275582890 955566936 107420981 431404468 154825194 420449381 143230296 19559116 710623424 876020844 788897765 926834528 668619454 105653196 609815383 346054868 827440490 746767760 16480142 77297402 509944542 517881563 601654950 307104777 630448911 702559924 936649366 293146484 495200142 790271476 229462745 135842035 928677914 433296620 372955719 742718262 93394801 563808606 299690617 469949472 259616853 761836499 268649725 919045073 672921379 650221061 791659351 100557136 627776940 162492076 757525081 963909155 341421825 429533829 906319227 520592772 597541653 349728757 101672657 865505119 79435608 763253473 983377465 244147527 436268366 718548488 159728846 625277161 83947834 158607859 480530734 258713742 409013879 693172291 815990465 940889076 966696791 72554363 637963262 244982687 408783011 735730525 28431010 621050925 391945966 525730139 677566730 551475299 214801556 504459137 226369275 835456964 234363056 545409387 365583236 935973220 831985942 174524781 541613063 520221813 535727417 462414277 357442422 304563625 324918715 31266823 313560994 673083962 83004924 4036821 96149470 534846056 586296003 16041348 185417735 6639313 745080526 16099095 817768468 161061821 577590595 685498176 165746851 282902713 893829184 616700508 641959407 961926891 265967198 266079110 508887180 670991047 777634461 502732931 202140301 935771543 757289439 774363088 75884991 601152787 983914278 978859781 313706549 414397179 941453050 5535503 611834090 321625119 425733074 562459127 24054506 548720995 732363476 159437710 692674066 341638693 96385819 364287523 895686224 977371541 481970723 73884160 109415588 18608512 87143059 72425435 757703860 7899825 815050814 517765677 117596746 764878338 608941030 40382128 186919217 821862042 468666973 296744740 362499695 546767523 123165714 52193209 207447267 328225241 612057111 197053925 194433400 274149209 760033022 40935802 396961219 939717213 99555679 841647918 843562347 22625302 97551781 551116182 22561461 540083673 536919884 975340365 388558692 247776475 647263065 964765068 301136409 339350315 886716997 458612082 79063224 658253929 414492095 936600902 577402711 72038094 431245659 115729514 614851704 625325994 229198229 923164178 642338613 83310785 840370908 847877449 958531332 952306710 943878442 385607145 855537421 258287644 52837840 804604565 994375024 381274529 193470045 190967045 864324654 299940452 164025545 217017609 329580817 254538078 798284560 180428387 730199912 514492397 751319787 911185849 556065063 294979885 560352209 787044004 784129357 109096994 328981276 716922369 218928041 887027574 261937546 879095273 25025837 520954728 59720726 76224978 857604992 383354209 946094194 254171491 86147905 115366457 869209164 45634015 204081095 76327910 817702262 385249838 973126664 299168272 391039326 160205654 723913277 130883546 413336048 289169482 489709673 402160586 684864492 795268276 890412125 31937751 198977178 768469898 340259612 37295300 164562090 326363316 482686227 915769984 988410087 921140134 749434135 395837242 799036401 374009533 482036345 364866735 533400210 553293899 277055219 580029452 283270588 254527290 214671299 932686707 980596631 89853467 680747410 329949466 592264640 55577404 929938744 307332211 903708074 955532278 142344758 421426213 660154004 55251279 796857005 901936064 338732187 66238122 66877863 817741323 978795310 138926050 586006943 957550431 70901022 103813455 539400764 823082396 896674060 159015745 655313818 67316099 958280012 620439163 787155706 214137517 302789691 536113777 343755378 842309296 615362781 634599159 133105296 350347105 993176116 573077409 879462055 801197094 53261814 167489763 702300663 641859790 247863443 806951292 537697986 427547950 890887095 956768549 533086548 525078370 280062998 843297123 834370150 114023658 539442728 796256972 896131783 209773254 728500502 210184413 291590241 9098086 494248906 316298906 114715608 209014611 242419230 805762517 332410955 910449273 59979771 466497171 344419484 106703492 832500654 199528419 917419307 987690835 562583318 771558278 437203471 84084915 370225799 405681760 167743378 767783540 709632804 730057487 179329991 300584060 69511307 214004539 779782595 726649019 747401523 98970733 662957301 785105317 463553410 725766295 951106618 898582532 298233386 550972063 319948063 808273221 566017309 976956681 242551759 126741349 595447820 915709341 78368472 132995892 825644519 329515454 698252843 579252888 904819531 487123005 371702327 664005192 869887147 783161960 485877321 726519464 327096116 477079003 626471637 244776292 448904898 951271800 588455758 635147619 56169689 688238274 903300890 976020261 911494025 953935842 993640762 357806565 549784150 226190569 906438231 514362442 611280484 164394288 556234765 78721244 634400227 96127127 255548101 541960314 707819138 920665966 424422842 710521940 657482481 912040733 298519657 253382963 350537693 195877208 536438721 793206948 339125848 269640585 952373395 521244959 902997482 487155643 451010134 95120675 277434605 781333991 187408870 625025056 394218044 315699967 668667722 147813361 347459773 413343009 83007939 691009959 456793571 729242800 984847585 154616912 906976270 393865216 336409034 793672932 92090867 691927639 936028639 77456351 613072162 435750691 439060581 867827296 544682243 533932338 121913805 115511865 152341632 422502201 187294669 398711133 862702790 356067077 244001935 688579625 585749821 45685987 159465559 771214566 666267478 278896013 118706187 572095604 738513993 634211042 492950366 774655021 477647088 424973472 388142808 273681422 520246688 205174597 9974320 804364898 287266831 747623641 772092524 843673434 814255074 134522887 475008086 433341156 826346513 16817626 814203929 30660133 228499639 12951793 340791997 232941104 957331688 858257843 514681024 716217563 279979454 356610614 61330048 341002642 4105601 646688374 164498308 668909660 615604112 424629445 143444053 112209267 254594891 279107348 102803424 605190960 650746846 14935695 250585657 548185061 9020446 323987639 155296070 336615900 735652056 597216128 311858117 544131963 273009670 702167357 68612060 441029790 470139116 204352403 594695262 769324597 854341559 960164340 7432155 614337239 523085748 422760843 887483617 226888788 260219766 483524505 267487962 885299647 392093640 960435542 574931400 261148335 212353457 150180928 655246216 505936222 285366849 546255845 578615519 335595112 318442296 952574168 135897434 396091783 836029424 886212865 161172745 614454533 438301520 807833 983662766 431728070 999612509 780303189 2839440 151224756 312610871 94636107 397551328 697791228 282115942 622063393 604382154 557324717 51473748 697789739 443149563 379423690 58910056 879076202 428169774 404628858 326436289 42063833 772735602 724098126 929824291 225559705 997364472 103752936 617410479 808077211 143470993 347111182 843489920 153131087 765245133 289546039 742547698 684331434 170635369 834050392 970594064 540060544 357799208 395443927 146993116 289303649 936165297 998774235 618524900 245933013 105133934 623124313 996811062 730270083 51151330 737275043 20526641 414045999 384807584 349639420 681976320 887331206 955024227 402660558 692562221 18085784 991103487 333419728 260135742 113258817 158389881 51607588 746714796 680802112 785562334 608358879 809728457 60862065 135068542 748983677 702560167 104574799 89785829 960158261 541281454 534721719 552677262 549236102 210208901 109719367 634828051 440330803 748939702 960633170 92583348 630048503 525507638 859067885 107193862 414885379 670143660 556028763 725057666 819046616 283788732 348708175 581430547 30111338 992219645 259836132 763489256 476181799 322847063 569524064 598334631 903501990 577276100 489086143 216314819 302856818 884991631 623569284 715690453 554979081 61961095 991265516 204608987 382209739 467730151 634468198 111033007 461689049 380017848 950286290 392541014 745673658 156318152 182542303 103748120 50990559 541198589 924273528 132133413 747872638 224509890 550508085 915695236 993860779 578462879 772780863 781316290 925854830 768079862 604602505 603198722 704109098 417408258 419098456 709963356 609184410 148675539 209829282 949015881 853361299 96066231 374721630 470013865 445521567 913205901 735691614 90741026 339192398 853978920 523406745 652207870 283331500 855259689 180529855 827826473 940841708 182382874 578798219 170323947 356676739 194802579 204973870 752566347 65343704 97312041 808853975 477788856 615240008 239012979 919467107 135119685 344695231 164990895 589403187 15490497 940554385 738540472 566845000 376206091 804952991 307632979 196049232 758987061 888404278 616984338 901763868 92335909 566976392 732454549 77848092 603419122 736791210 195910913 391368345 540510052 963100958 427508437 893408680 798440010 483475650 236863998 908050096 957858057 871742705 717756821 55933468 994606520 233276427 703963658 962509198 305099503 160442057 45172256 570050980 667944126 74806034 153991182 142922979 541845505 786912594 298228572 959885703 513103003 573510956 101830687 53997555 979361811 555163311 607982348 819267872 181922845 604867610 280281850 734682070 600675339 713725034 114463509 480136336 131858133 42235108 927198098 422546796 677117559 804385511 316695098 703914902 885879803 946105028 29387708 948943154 376971653 600540191 296874198 535480568 23331741 561526845 115103364 304562249 12874789 976926345 136829619 319298043 909483701 717042872 494399336 185952179 34399106 32615884 471039615 826110575 360506077 209981010 525293211 27408680 243382182 392672965 573679983 350026677 134681914 379831372 289445038 789284605 178067387 713472562 638236632 59757337 773900992 954590166 33361289 939075836 512924691 575751474 793124744 580878174 206896869 983599150 962014010 644945714 186116053 109332380 888175072 661055638 308903551 946660558 914562043 271305344 22013610 923679056 283443362 769092143 567849608 479146016 829442932 593337157 493143364 87256280 657052546 67187265 673089653 74080276 330975164 626031739 904130029 698841450 465770980 753345420 301594658 901098583 91277587 894004902 680086258 492510003 610972165 649405099 775801742 621249981 887746751 554908542 213415480 972646539 293892541 711799451 666897450 843122387 488935266 401630959 71992759 390851834 118525292 706202673 705092518 467602166 970792318 576365803 170056360 73350275 400905464 455800587 731254111 562816219 545859591 603035272 855835483 4615866 138852039 53805019 70231640 984483124 972300471 201586161 495545835 118551821 738521162 38432286 461623434 438013352 448702847 423990555 560701984 103997540 370156007 389018329 255533683 172739271 669158838 260982496 179136301 236423974 598672357 770432297 439745747 752580312 667706941 22051197 627526695 612521351 98764214 336116631 937245475 668312149 395804786 626520118 183306771 458878247 140626586 94095049 580462966 83786944 899982135 706051269 832868840 345916366 796317951 259561509 9474215 229208319 319690284 890509126 654392798 341534066 183900813 814473643 910538092 276267855 473150266 970329275 890596070 623879749 998051440 523483984 814997396 624379689 168621186 552095609 798776103 32954249 282815938 985308341 224893160 581293942 578274443 49421752 777456164 166024587 714850952 807826626 789416834 308494763 258774990 747503355 441551711 603137051 102037845 398367922 983638484 705829454 799581901 466055963 271288468 558650266 384270841 948280185 194438211 356243256 706101814 317018236 569211162 736760346 296323400 2770576 655727237 258659221 782486310 173999167 834908896 374816813 454142751 297726170 254054987 710357391 332426083 826702745 42388020 566555072 912058238 893891755 744307214 201327489 61528889 713281380 61125927 815341564 217031485 853156548 861146704 79370193 558013960 857672557 951355501 471580110 696632234 905311203 388913680 844887115 351102176 367419654 34764055 432069622 243522588 239016931 7452360 216981657 721647836 271022835 57680339 863508370 770614694 891315092 158448236 65647067 961208697 163260414 598512918 356094920 838764494 963176302 424319775 799035897 359201711 412571337 182164053 531169496 3029464 178327353 733060390 473258270 416648577 72406903 482519599 918542096 20186812 563499854 245156385 311576710 777331134 1814673 331036375 590308959 396984638 176619151 527871165 735338005 387646995 979946631 544382983 483983404 285548544 850506292 121111572 274602235 312565406 499224776 324562619 860715520 303543301 384372063 808975987 854789913 610269808 13648064 300188845 675408585 774480963 588457690 731068917 360552020 944248090 909120243 854566162 810907666 921519705 595504468 174253290 540838486 874831614 929542231 247668836 254456792 672159626 305410848 455059712 305524415 372514677 377969539 821597501 514783217 811651728 255753280 713842642 859261637 988658745 137274879 739379144 26336284 588165927 335112464 665164438 520378574 784198397 308938219 400570464 904189744 486917610 885739885 252665672 529696535 284022070 666934058 753217863 123588419 385800557 249353680 204170950 640373427 533913852 446390673 169736325 615435192 842778405 199758058 70652565 163473699 684163346 529546829 9703421 820706944 728471180 200220994 810741917 417529404 129247080 786936856 604872734 532620917 941392409 418016122 396395460 716470365 198488831 801660084 844312061 518689972 240661238 771469919 105060360 378901578 655119244 610397845 547656858 580114997 285248547 548340078 687597673 103418088 950213762 627248059 759870206 25573481 199499008 578022577 652307960 877927055 539424380 860790419 447824416 795050121 225443240 339651989 786052361 453056746 186262206 718847738 969081887 91526819 618926314 851606121 462195249 747385187 707189338 691804650 924446751 443681006 243707182 152248647 183792472 137408908 281095729 292526677 765745955 514044075 272916776 389686397 262794014 147677746 527406269 649555109 871745801 398569401 639762178 969629022 378287272 824336916 30753876 88707000 46528965 101074945 827773289 788975992 888113556 2312146 859900706 119711121 932619443 211956491 267969217 322245770 181788260 845622073 600118225 997902119 77815640 853989834 173226621 418909922 978709870 746693994 730148566 826408812 322313655 830765362 682292237 915516995 401522627 465631774 121998808 493859016 649707157 839715649 449200174 954627263 269202005 434113010 450165822 482610753 757877592 788788015 259156445 724119523 762672503 403644176 176159303 398026776 943202722 838339291 952203429 727481825 341034833 981192611 559125254 593183317 224726434 472886048 622621801 144608057 200004972 799723096 363401446 502995026 76034207 257440587 113150207 616373766 372104908 778772937 509629835 754357393 994909396 357865128 791672832 116586623 924732623 509034536 154722808 220346744 145710625 918502827 57624018 540795774 657540782 645332556 944951208 721612929 289190565 440224900 320147677 404745029 553297673 653595277 889466542 569900459 983821679 92564273 158092395 613975473 115848839 938349134 623347555 138930765 905118462 289158416 882677354 606620885 887594059 376024197 712471901 234368786 762423421 726597146 16290559 865972379 7556286 524619497 569745271 345769485 538889887 637461659 346186064 712698881 529136519 267640316 644617901 466338721 823088434 357220864 78060246 705857246 73563090 454730877 418881995 781195509 822449007 342640382 104778796 278142193 293163181 969988952 37743447 881218923 320182821 124159834 899925005 573842429 423974368 611388256 791603238 801695928 368853986 101240765 720746701 506327513 919646310 541654743 714504563 730764265 527917836 568259637 898601887 541246390 284095733 399149040 478139488 992357985 127674150 987254047 83409811 596875500 973734909 951840861 18098540 767260485 646676692 831450456 145764397 910454111 689229399 590649411 245146394 715068775 909992317 602872550 951756332 456397814 553508875 900989872 490365141 402785396 139870783 853497157 175842730 549133706 361451946 541285172 78250604 303774294 426209855 394533529 232161979 625108271 318882883 430040563 22210445 475982896 643066524 550598164 238677705 935458941 939193394 436808928 298171672 725474694 292079620 953249755 85595859 780582668 734066946 864722379 810503957 507831012 443417481 5092866 120698741 554077403 47033610 407138013 503176707 771563115 22954899 581215014 236334897 531142305 367848039 995783828 142751436 642688902 208307073 194765069 456446744 549628663 207744086 223355027 835526327 512808291 203653561 606005215 681392777 105973511 911119941 759956939 271788456 221148230 212433194 375223747 489210246 942108390 226533351 70815840 379000192 970450888 954409737 187357730 931931318 343925214 333371638 398304002 405912602 911713668 737413508 728676116 567568590 311525422 387914009 295158663 748187776 855105305 86201758 689024372 201595328 587641606 101405643 763305002 16912637 863021795 667309704 691294236 501712287 27753040 590178090 389546947 440417785 203241939 215977807 449158020 75606379 397309337 118705 974603873 981887402 787710310 473803789 444305610 812934385 637488084 578279628 782544849 820285513 37241283 468290833 496757233 147180323 728676874 946081928 692028548 332522127 604638756 321633108 10111202 884948917 846067129 418374735 319425926 682960504 178475034 538617448 575136747 350824745 19137358 228665855 628455945 792771044 394076326 966446115 198558602 272087820 884488702 590233391 282279225 705163838 214489331 414465705 733114989 615184173 818799619 354151465 702708452 171413302 825941644 149745297 153176259 537092654 388923735 81702239 319203428 848020451 877464895 127082524 933355990 148446722 889044229 923106523 65430654 427731315 813374923 198791419 444380056 508351755 406992137 73087502 195152972 466456772 360583389 877593218 986433542 760884054 311317679 494646760 349776072 660150909 1745394 888992523 162763443 62619542 38499550 912972117 816474285 119317885 145702564 244523026 499767067 348042957 518322937 5642261 136497712 820497991 55883987 325285941 620299439 683092360 49605969 967565130 785234461 112098039 739740082 308524714 501049521 838748400 317235819 824366323 350354090 427398624 200275231 722729179 915981084 91834606 97024182 517407339 237589366 970507940 349618479 719681790 839058481 888900934 184677926 461649159 180614489 616401730 436837049 118590227 207173037 592769852 593605399 826181766 602350788 149850598 420941180 537886215 111592167 791031208 341458304 420071282 860953903 523281672 603852692 814892609 680592758 535546510 178889325 692560484 324180962 987654495 529245877 494128913 632896572 938951371 102305975 873196337 63176963 619045788 615772982 314465096 905972312 821456322 887205195 252846372 664075719 60155730 565955573 144320889 530766218 704879203 40992076 593880363 960268178 43630184 504003900 218701810 749749228 326675349 983135120 605409223 965301748 307322177 476972945 209043346 315793122 183718499 384818388 813648990 653907226 369464702 325734667 94320130 980487683 893888181 518224094 801332854 267236384 465928473 899913457 522228645 656351618 270912979 290868426 502618456 520996331 701965092 134736625 374778488 899243075 566754565 418208583 332026939 178227446 293985530 280321806 690040927 360596391 948642361 291274988 906955507 629648581 400998615 554056098 205629003 551881485 612737453 27439362 49650935 716575715 472643301 356485872 102488938 61246606 410120686 950852849 701824695 90748627 802316472 757165506 94548111 239897209 915976501 149810357 877480392 660882742 175636716 384386997 200215307 555750940 87751331 69991212 750722698 620431733 39345280 980140979 23059054 180332937 1548235 873028930 889834230 470866972 404510273 787129850 242315988 475852767 816943474 811203816 715092732 655696204 58062612 834265094 50723510 418753870 149292103 642256558 726837443 144599076 781404170 657337170 27257160 788313962 126475061 377041387 989865034 857434450 832721343 477092502 418866237 446417989 655066229 141101646 934207357 748272247 847337223 707252601 370442016 524664119 527858138 41229777 919211292 487167711 974368270 376251952 973668581 253444295 392177233 707948419 773954695 124954960 56824342 69854744 91773794 737586450 182792637 784861558 33180998 21500599 272431513 822241220 362428583 337419519 417082902 628254143 702034800 209713579 322310350 936440834 594131943 39812074 173236939 328976481 452285893 835253371 385752901 81579398 800666392 588469188 801775149 278901582 110086233 448129915 436313028 917084517 688009189 421542543 768091613 530115071 950465803 497820605 228328244 400657104 632477862 633875008 701651283 900098283 313778039 78329222 240569223 708216968 489201039 965667260 742138372 199755794 203372980 187378844 948612042 180144147 922446629 795660435 595383151 374624523 13559687 946421698 711409116 28598417 846988265 44388296 923704544 119702129 922355379 329534496 264342298 926879450 448286392 138796141 891935611 339475555 88966503 36557059 964650811 590968860 457519288 229535539 245112265 329165872 4981917 519116685 305748163 15708858 486318124 231659407 877445732 396230698 448911492 257132868 546177751 72435991 551195535 804252744 229125124 332044624 869502721 412455543 733722193 251324264 102334927 667235208 317895274 340757262 579251949 184133139 947642276 426170077 454198194 401162829 299666950 972943140 301190519 140631080 519287229 405337008 674953772 967084340 939441255 947423906 749043529 460281505 24748405 635503955 155935989 983962676 218184074 766755692 885321855 634499545 635149397 788579251 274194724 779946319 926322991 767592644 161111886 746230303 90909577 945836209 421000344 640375914 588856108 563102705 376092208 172138975 156815128 712558475 396907322 877472323 39136959 210299153 405617188 237132069 312016688 683892034 262516310 575089856 993427239 809274178 407724426 500680438 678819337 57027258 511825590 634248637 349721927 418814132 655465676 189825494 778313130 825949420 307603521 30429657 173900870 694964476 437150394 647055881 681267921 612128945 554895252 374573153 715862733 559662472 173645466 883480504 955900095 155261902 382897474 187315983 715005881 834790381 881090622 908297399 295138904 191541671 483091188 503366654 907254799 922358643 245870341 346219046 303893954 313176616 781568260 370491584 510041168 684436434 713119205 507813005 658621990 521807756 936983367 109119050 874881155 365159597 681349161 294845951 374371250 234846671 615863713 196628191 27424039 481259536 64565094 696708942 679289455 760151291 774158875 584838381 251377374 23324776 68713509 943158165 353217452 789123870 557388331 605157235 462586042 54949707 497607094 512133276 60887584 988464764 733653383 612486193 279868542 295901901 63902056 948615456 409439893 785642370 598844472 613318552 891571656 86397624 564436947 755604620 883053550 700801067 306877668 124089619 115526701 860867623 577309708 819563614 318236408 839365040 262101337 653588099 506499276 981889028 248364153 118709918 454096964 581625305 118255603 788301920 161513864 518122135 398519965 883367488 359878165 606194995 671582628 63643681 471191966 171146157 404456846 753619907 606003974 78391852 517160298 154804154 932217391 823786375 709438909 193059430 511150403 166027084 453087605 656909083 870737118 860061392 140234799 640558304 323316714 286337599 504171185 896871687 782452685 574786169 557789451 893566600 302690002 730011503 202345544 413650846 355031684 822128270 168396820 972774653 259464853 225862870 367489401 957420273 594335412 438410370 61586611 979617962 433455533 919729408 831381260 118838589 860775316 413310143 885749267 651065910 664703375 167103384 636683012 130154434 830965620 52811312 561101745 552094179 87670729 846164824 194383081 424485790 544580237 726809834 899118006 981853135 661989365 594457244 316212706 195261330 524160622 932263633 576351543 157433129 611401144 347761178 965933685 878281423 766060887 900622217 853316104 68939594 453854780 500458809 237418071 558608286 661861705 11048986 130807499 575908033 190207896 588608865 143826703 668517434 627191914 337146760 163223725 7731274 49009631 823368106 233941074 874128709 509810092 747728555 883561984 504680595 979590003 894520127 223908297 80035549 864872465 1594151 708819541 417171927 891222637 683315590 313651151 222974793 76288923 946839103 447086799 651543116 141294092 858207010 265706610 130184174 800008108 338878359 502017678 693158784 942063231 763642574 604802852 323703321 250579658 363875722 546692232 88438528 801247973 627918150 452032503 17587746 732664879 119294636 855686372 554755412 506684807 817128053 89191412 456114446 583264527 441512346 967162727 408702755 925789596 21857299 49637806 377984257 167923704 775524530 631707186 515683759 678535374 54038643 608281150 288194981 27364097 855121330 26724662 549695578 13582523 948746788 769083748 556087829 845762447 138749630 863441790 375068258 799283958 527244461 119005693 693567179 916274506 822353732 298759019 285461015 893898664 772210403 987014302 850311479 380515387 396364167 780997897 481151111 467723172 619453886 301850705 910100960 17959427 164696207 370565233 228943753 651041438 621795436 143126591 434401300 508563460 925433163 429561591 465500747 530774623 422662006 305511737 774938879 964533764 277221440 239904566 34731604 758194088 890147429 333916690 626731390 192355484 689726901 441599086 115592163 78398488 456736121 764097178 709471046 960048215 408189533 282797975 6627583 341882644 272542939 251084640 691956936 28193233 967326661 784170114 852040517 925781338 309248951 579040199 928480075 914117737 167699374 947903501 981811833 333212465 29056920 149540145 212260451 359263965 716280644 639427181 678921534 761564103 935313653 668429805 469888609 732661834 383787843 133344945 761251848 419799155 175589887 145865721 9789588 872861065 963827199 371269906 144731197 251207052 849006193 862851439 38093303 200168045 393208138 304022922 181608311 281464368 999897924 630353511 553909214 121942852 660867717 227877208 905243892 539893857 121576996 308694148 511522910 690024857 345494766 433391144 223119608 85135712 253481338 543130140 719176294 585990071 954015012 177773113 349227221 975751470 66278533 390595298 941695642 425634945 822312118 297687094 855515495 341924987 572707133 40333694 993377093 773141781 235130353 329705736 152313782 856161707 144185237 267899760 738258011 791649137 574104813 621104183 659053341 851230113 846913150 194488907 661990708 734991151 674615024 709930497 57630825 269717343 138459642 556364544 985845265 88133198 109415003 4751061 181091412 461305414 39070629 695465432 588152945 149905300 216119121 16090213 175619054 812385835 690082433 129720189 964901951 725744175 581702914 272137670 462176111 526089467 66264178 109897146 392665932 794663143 403912538 941189904 98131447 608260646 923760356 55041318 223467470 887946390 997630955 395598780 555088032 126930341 805488193 505571427 269189680 245525329 961322719 487859175 581972287 578036026 585690009 120474339 1115027 302070302 558592947 705103138 891557561 459457775 370257894 158557171 995597126 216829240 654749911 443579315 596707606 862946421 655786996 523895683 380349576 582383891 186013967 289333592 398301482 711005883 585777043 73131708 744884163 857385004 614313428 447082613 256844943 137451595 721376420 787907550 202638653 497649747 131515338 522467854 564384644 409279904 849066318 840470647 140407022 814413029 478508646 208820577 600451954 923443490 502153497 801468446 548762181 924233351 197883494 605681563 543084827 874986435 73851474 269250305 218517731 392362601 6118183 378067382 5621389 483754772 286308348 533800218 419802711 787648922 399118665 240685384 26992770 690344540 509973002 266192898 260050655 919432242 514453455 930728883 762226827 530890489 657012790 671819690 501989463 282388056 356444673 739859703 408781011 121548987 65727262 15470175 272594101 856153953 110426148 723400884 644040938 480771938 543232974 536984128 802322240 91729559 181800623 94565192 778583126 597647347 806611999 507520686 32233759 959621399 439469816 431113973 686115998 821563688 961722031 691679443 226365540 99797669 194381868 154933165 25312115 818033527 240630541 132995087 340922854 851577901 531617968 477405623 882800100 567817409 129543387 402610518 632320776 427596945 166283553 426088440 483622674 124202991 674066943 786775352 83351889 920890102 643246234 61631868 822502042 796717067 335681111 984496277 985675334 343342229 661968020 481464030 316536434 619133884 42882915 792128207 626610819 17589614 535176240 463657846 38203948 684917077 714808547 86834390 930667645 484787250 832547626 573293801 981039419 703292298 42543010 369835858 291089440 177533688 461457106 912709159 179605531 525074413 66698936 747233001 645573344 79370739 821235587 380055022 308073513 727126738 445749094 953637766 736694176 489971875 394416740 792021384 811821461 812419071 240990610 524059762 750657275 216496364 342749320 471231640 372527005 961632546 418262324 737004376 463228827 177840904 41230229 770087052 313192275 825162752 551811191 495036137 229791375 90439364 840407489 634864196 520314510 965688377 299761448 592258728 398704030 677894436 147405800 371508313 321549951 690847887 11187805 651297285 437449034 162980249 599297398 245736197 278518769 819043173 575650131 494244805 169750984 863193558 267832440 434845476 867496468 608561402 638744188 942013014 413464289 310408399 871843681 901080522 369862832 702583630 346286624 662074413 762803478 632592413 679662921 271887180 334694325 751917096 735961255 993380957 460704001 822096589 66984941 313759946 943341520 48380876 767362586 834018885 503851730 595483593 333770297 924312116 155542532 430755971 652695151 355210793 322589557 645783589 574612949 345818334 557212581 109427925 968074033 543533377 337525993 364808331 483085892 595033804 865639406 149615577 187872318 388256954 943369160 634723204 827883730 765191293 150383176 470606988 117368192 854986094 361941542 982446032 385568247 934919735 468873610 237817006 301339964 915098405 134899657 954918315 225401479 434297590 69212788 225510680 183381456 480442965 624966306 312505206 828408630 207229524 358878569 30249294 373759740 326428727 107168764 593343530 400754342 466689821 622962857 385169523 533869348 998391439 169448059 180975441 210903403 425358194 285983951 972984107 115894479 663107127 369361356 984644451 969153538 231344701 634398927 49892818 754190393 257764805 123940678 749768980 350722282 54883473 370477955 150696715 339486244 724525660 867825762 987044814 357691764 17255611 487484885 13673234 113154323 933855984 408844012 98731612 411841569 709489211 212834660 320899748 867277742 780977691 353811426 373296005 915121769 858338427 639721929 215623760 186502804 953743534 317800013 364144795 19834484 314982382 532548981 476646168 842192506 608816934 286087026 514667859 824719564 828626371 846691969 120523527 962455692 302005602 50824773 329016059 714451693 947204917 800509763 365529387 583791129 531986885 546231311 475290498 839240806 893562168 618718594 259812454 74404042 784518325 491260405 442444764 87891831 205032718 129337074 883725368 873083492 737497443 937141914 517666313 275588507 171384674 509060027 371315195 910123858 461158709 66817786 859921038 47915307 82698863 221612485 545078337 560806041 444127695 807242004 476542255 969060243 653578236 811653537 111174872 28201709 63645213 162188637 492729077 291284260 666925173 115397220 379608823 424204801 627706973 797177413 344899775 490520873 33942785 810058528 846929821 869695545 95372817 351290810 823966912 598953922 884391437 728334435 465393522 352427098 160689362 617623735 307248938 863560000 395581379 558990320 478889941 164418940 228424198 395755859 741113931 278073796 263266990 754471916 697860972 609903870 431747251 433532294 187741641 412355482 138736523 808245592 734810069 653906918 430042561 337257483 416823854 130293347 973095303 127134204 265301267 634206849 586013421 809814867 902983181 226404941 746663078 773676309 864724149 637919210 738975879 247570680 686952911 230577270 218895599 821109469 387043549 15750100 869950178 320601592 181001886 626990009 519029334 582793246 995452859 8076745 81035372 287427419 751156010 365514828 443094619 308108175 323512910 296228479 956320539 853861947 289632424 936916948 300789419 737339710 105357778 697516263 575713539 861261657 761165232 764416466 864524507 428332286 166572648 114963385 859046099 359660500 286345599 607497207 771745162 353919198 900173749 222307981 244784363 845705708 929016719 988174127 313205040 911522697 888235933 868258039 797074526 562722924 483049928 423010137 413406860 775423493 495388747 206355938 712211027 638426186 853450469 607287919 269571723 103877879 887264616 574013575 460902633 758687360 479788819 863555945 772022488 38449310 141335096 527209900 247583063 991736044 778303606 454281805 516299538 707507877 703712650 239268121 774609131 797494775 721705119 348956950 171022878 165908199 747722967 159513598 766867303 460286694 834941487 384694534 680343059 708245958 504544335 467441509 768333101 2025009 712494003 931287007 75694634 198509474 439948816 451883633 980089789 409353138 365899395 953115111 959387943 284877171 678495673 710380629 933119597 153394647 214702890 36827638 759170970 382921361 837279807 4178092 529977442 310078614 798362018 225670957 553458260 431892869 313948299 507583054 56943381 936260888 194869432 81935846 753543889 767967286 453818686 22537199 662566779 818628085 570904032 308202889 491295078 289359070 73443511 874789726 117749674 731933295 341643314 398758312 727215347 484078289 584099018 912326042 951300828 550538980 365568038 18505849 902653726 140626359 29488692 13788884 423432529 608117078 849305895 249102988 860179387 341161702 239691497 466973485 645409938 68247090 153591791 23576249 344810432 978037229 122979070 197803633 316785739 41844620 930235936 100072824 952685488 121465143 234333311 763231539 434072881 26686493 776530580 781875411 611350717 136746891 419181771 396398582 53164123 697962298 984086962 149554179 374634415 127504628 610796685 628130546 406016255 205680908 225474121 244276603 94561864 150742877 233592047 962618446 346679682 797223474 998405436 248498184 985111787 711637652 357378569 926332866 483205432 499538983 670432549 294279998 258863034 846142369 863218864 548646500 771083295 106454327 346420213 118745006 387513990 656599752 418127703 377620996 255843445 352318759 217606592 944871325 674944209 125632838 936583252 941296775 198858123 96074672 147710287 617961331 20945875 11107278 487973075 591612685 641866773 749227172 655003554 992498857 415863913 826927351 484038356 693760242 916436722 800868517 178559602 496084156 363728557 520918591 162629642 173554268 727271820 18475938 683823186 828264123 793145851 10598765 925824418 444370387 276140639 680251817 624200376 605087515 275671379 518649434 584381733 971118998 847084594 560216671 172229654 566625653 983060477 258031843 485322009 873660795 376238635 659950113 743743925 442416823 755331328 787657957 90272129 919161379 245729720 181799185 774581734 809324077 244262258 364951499 681706315 792450994 934172615 211894858 964326409 451486466 651137153 396097677 400782492 9424644 475237644 290829265 284178485 91573573 247235648 597214209 733997032 78737518 396279040 953160742 591479546 327183145 604340914 559120359 74499274 45309594 218434089 295996134 667512758 904185983 464252614 183849359 126772038 610750914 799127755 99641236 462235930 729260508 606905877 989270712 548566609 259935131 178841968 973383166 437812231 60285989 981540331 44490638 784443403 725490702 613979455 676871433 456467528 908422680 734612410 194290732 223215684 372116932 723267901 39131604 154604579 598522161 98686805 767680039 2084547 516623620 269787290 541323960 389750303 683163608 24715062 888019087 3904785 405543961 457906720 771140622 552350994 130133246 230976201 415669342 943969184 1433006 258504640 30205410 129941939 51832413 801510693 297522107 857301925 381916463 553888642 912095050 373591616 498740629 858443198 73758207 908225523 264198531 971932776 690375948 562299888 889412810 832829984 269596050 460562175 434543763 110204648 637033228 909398383 826471679 632332267 124102614 388530127 82685515 561757731 189461126 524539469 812932843 287405879 697422513 419151056 116983165 14671471 491487118 626538661 792407628 369592112 504494583 323518084 961440923 560118436 576961964 329973709 500488279 12247488 264539593 174113172 817377658 877202092 225719421 526902137 841712165 9247300 646238806 624367115 102780392 161405608 201442410 665219307 480221693 143289597 569635979 53939732 272303019 70464065 701732386 919334620 73228198 967926531 997535064 694891257 800607181 496521889 270041118 54830005 920743760 545967665 682280029 933580047 969601525 535107196 681342963 408161763 582679442 307962722 727944763 868515942 205743030 588330525 755338312 535458292 961552619 70480308 896464690 947998846 809293182 182698410 107612342 630329956 142446593 148747567 769208022 484853114 817319522 629358118 257156352 597072670 308731452 578942476 494755296 721589405 18828100 10894397 110045936 184125999 911316187 518804452 536973835 962591473 698224282 57093644 161636130 36863216 392801647 443912669 181205570 310309501 344882993 529001935 588389665 760023521 533066332 522000800 419588223 543557099 43428111 962569308 512544879 729830634 516323929 396737309 13051292 456218537 573917040 175671716 652232058 50181730 310192539 84304185 976823800 916688271 562602301 538129432 815983015 523781683 253047732 22469699 91341667 909986939 110303917 410437847 579187090 728929862 565896583 274724712 277376236 288867219 973082103 387759221 770496612 365786721 88045050 632588450 788283215 522995331 311401384 415579770 269450950 624288903 959567183 934512191 174785380 107655395 378490015 171398326 496457469 205097059 340451134 166994688 886314463 575216734 794824563 567439624 522654021 94400467 484446034 743860412 842954472 696462073 288367420 377929640 651154972 980121038 721484658 438718245 618833635 293243038 691419042 176329878 35572391 553205611 100893148 307689205 293641385 254519421 432647351 986414961 97781747 301704999 967535310 577412648 630929164 167352500 146648992 168266363 468866201 794138970 857899199 497808966 471575600 344341194 763076629 720577385 287102487 36862224 387350481 825581495 16474022 109508438 867316598 39005614 185402013 438203178 219249287 642998442 974242062 203028691 465598827 655208490 856552467 989313473 663192271 310769625 383979391 716519280 399956201 652452984 91274862 362186084 931510126 781810134 211720472 588012114 232887824 548773129 523277414 118913843 323709108 49845633 251106640 636743787 131286278 563277095 526211215 383880241 611928835 925238004 228056772 137014345 438797519 430475396 186052853 760886651 533291780 125384698 653976044 424609999 358557781 159102863 868185459 300890158 924116830 470168209 957903744 35219327 753886634 402912552 918142564 16623226 562719701 700789886 822433647 966026983 785415572 981363967 70873672 809253383 709676432 294759230 310549067 521310428 661113200 712054336 915248388 788844926 914910180 630125462 977225657 412716230 279482467 988204464 448150741 981716447 701313857 441987742 606554706 872409961 291150413 641702985 14005051 506349700 874610524 167366294 182218611 167925535 871397008 491124845 314050242 331602704 559101447 253807674 825224839 331730629 772021230 933685104 228674650 385201028 422698796 740048363 631741587 123963283 202387945 958946582 603492820 142127391 947268924 567711242 47541749 808920774 322754721 14279101 762439461 879910280 297162522 291621156 536253778 162044711 289320125 308669635 283600505 247463271 75130208 109524863 645683851 999259179 639628820 795055241 751253317 695674428 343316047 65381761 903128052 396281832 691771282 943852591 558484681 360787175 240881764 625855571 513337540 672500431 715334989 418412025 534470017 268548843 109666567 607572251 577202793 613484137 674632131 161314523 848235377 919295246 766045069 338075610 367922674 632762333 481779753 58982322 651962602 148013922 220181125 934480993 357917456 864566611 456286805 752143004 513275226 228967552 348908082 683629291 825299286 592874280 990359177 782416224 730645305 262515464 927369075 162458971 102574257 668146383 766056146 449300778 98198986 452423361 744156556 299528033 886498769 216581533 649406043 996782031 287165085 987559254 148151565 667731040 468389321 432870011 703148312 981456031 977641333 933064643 123023945 760654466 38179485 813511409 943107411 250230056 906058402 155206174 573189754 656927087 798140451 308315304 834799729 919493603 178020011 880892263 278661188 572188415 363424704 477924954 245371582 835234248 625179431 211182181 653221375 536292240 613163323 426875787 428216477 297862353 423845987 484002523 429200331 879829573 361081467 878321858 204668277 757295120 834315112 822733054 496487013 571673246 588722772 579294834 943368102 995010789 766467352 104102349 921537159 458974821 93941155 108835648 265184121 229741461 350142251 226708149 169810977 244207955 38953267 164477630 948535448 817447186 68144712 176821271 491287997 377305458 733739136 453855091 30172368 237588123 533516171 275048001 459977533 233100250 543228874 781115499 295464869 69113798 462155882 132540757 980468848 882872408 910574965 253081663 997760885 67001621 19243532 718976766 782441897 519284690 565709317 45770538 110440458 705883316 393549185 909947724 671055565 835432197 589639012 972123689 321722893 813208505 567918492 55359891 524966495 988938912 333076680 443737272 748590964 349658646 178718334 612018009 850172748 190737748 710434817 716194838 575024970 285130421 998119297 813733081 974277002 198742288 160883241 610614960 70157296 448480218 881106504 381523442 78783740 401605374 322912430 228694822 57693525 733250172 864897549 123150295 403159394 351597474 389641088 168243961 863541072 388953172 311646082 905436869 698134131 171636663 576737270 438781384 160365986 693848238 462473383 788049131 545044774 501654050 946197841 920110694 384514631 366296059 285190730 668872047 84262174 919496168 906807550 992723751 985062533 59879331 646217898 123843482 741067707 851051440 71193737 313920924 441776453 1860198 265549579 690429366 577887544 425974683 403191261 854094118 531215893 393870598 737508398 23397019 141681632 338121956 123546348 664679524 935011420 713106314 185184614 698405939 319300054 772114207 587331053 665344376 732141038 519987749 5949779 467652627 751738137 919862635 230280335 702520889 674704675 51675696 604859637 773690208 572485076 977768742 864752768 79240719 410654577 260041287 360022947 926994778 668562347 306691592 878671375 631100246 948603845 103712347 279786180 126501361 257592951 477477575 723552347 620046921 603274596 780020218 449670444 228258181 557775328 318611105 831876099 765489838 347408348 308317565 946022096 750776409 962070240 184187267 491368001 72707319 630534441 739414353 212049199 405072756 596870883 901351639 189537959 189038416 807301944 265081772 778870683 562353223 723211580 596152885 512500595 395121825 248619749 669636745 504235419 324214015 676810014 369029399 898181527 282526989 829596124 436244933 708433984 322042556 674995875 972858617 471537957 717077441 146692893 618299327 654883491 427728155 540845483 704174942 159134702 129474724 259118148 941571715 566862214 922701416 129906511 600677655 817132679 760322938 531144587 910236119 705242784 670307129 718959633 982995866 620115710 581175678 736864277 993605866 182345280 194264204 992204777 908766354 287865908 891434601 444773597 850996593 848240970 231041500 866727569 9317974 814120637 225772651 305385878 812370153 795861742 892373490 247144415 911488731 497745121 146278802 491392308 68842334 588575989 669466078 997041095 195918362 40508231 930169439 255495848 438174976 859771151 244799681 725742773 568620451 301971990 991955669 677995577 909794444 201048655 823238407 539710557 148863433 749142185 752693002 664195093 918655226 749348588 185872012 626367610 471984487 720694435 677379037 481489597 985911136 440520686 714702762 264494612 83170992 456867436 702131887 302427756 39203550 448747738 867205261 871352517 625908246 152729186 478055584 272393875 76056340 750699555 464534290 348313911 922690043 860762726 393731999 671521327 668586733 757654817 131889558 729070655 4644244 319912858 771998380 698333325 353144679 450037074 347057237 317128303 523246233 115888432 974268382 401838046 234279476 762654784 656229344 377951577 197355046 127889690 622121103 986601407 557286143 691865601 477846210 28616914 495304253 805417808 553029177 968323438 39368032 384996335 491790381 557744175 758991385 610521315 797665508 841142995 903611422 478559403 755602932 105990224 74064689 538400463 265707768 701122955 899565554 736350318 781419916 752445364 424387276 357969047 110930339 589283281 843804483 166306955 360001669 192356089 332886895 277848929 880592881 197131102 311658024 665725483 680789252 70948767 867719286 798866740 627994045 905074205 826140554 27577434 663083641 586821728 941089833 103957876 844269319 967371236 230486080 564914501 590977808 425553835 472812580 524249584 123419370 860135790 565108343 742318692 11868955 706767375 661102290 434905327 187192368 589073379 877495949 715857099 540456354 487800009 335127058 737653400 178526397 65758133 560307039 126493300 113250343 91332741 691108919 654406335 913115443 531229572 771838817 90596102 481522833 945039074 241905280 553291715 723277850 17579936 61963900 970426991 933479912 840521786 389944881 27100751 664897060 305304937 551576489 297151919 397392350 209537694 498061711 460569011 616960904 262753001 119750253 883684610 696342174 365980980 57271628 933958896 289321619 307580187 395735169 613817720 948904458 767708480 201576749 567801056 335420317 735390584 426075375 963382471 635116530 702817755 825507725 128470115 330541559 539004444 276002578 112249303 410357966 821479985 108945826 811982569 42461300 139721037 791646862 200235760 301975868 916228151 561679324 495471069 622313119 283262547 625011255 586516336 117896767 376760650 545318147 903479096 308081204 287962826 349340239 385285046 498361710 171121408 943328525 633126310 4069400 115509357 514014849 226981823 231608681 694216175 593003371 37656843 22559119 453185812 772334712 334638574 313011841 841875843 16268070 411279858 322290759 212419911 895857675 339022504 295523892 365641456 784082611 908708425 265613651 30612525 315523841 162122693 446331193 439647860 351057256 882589620 664129302 904185848 337527075 46071635 362609762 91653106 580196605 118227854 274108614 547273778 710659939 574120189 376290436 373861523 526020776 452428514 949501424 342456349 210168911 920805929 384220518 566574812 172102986 547920115 635173918 994578362 8852097 362774095 179012248 236219690 353046616 27005941 477621890 100055001 158948817 150389818 889740517 335123373 72346253 396704395 201714343 594489589 871088071 914071846 189146985 231017749 831525971 593885163 286057904 986437721 433672576 535193117 823465226 609082390 727249519 512886609 424875315 984001802 689435501 152817154 897182213 14082235 876702084 240271294 176079931 199719083 745898310 529034449 580767098 42900342 162174201 355964401 486105388 403505483 754348076 959946465 429965824 197273686 993038206 632161486 264702388 76415492 661479421 901402290 87693465 228896125 578134713 523859459 115700355 864157843 276355329 538917374 550530900 466259746 34197964 502986877 198965811 66040178 612372689 589495502 969251099 920046455 849711221 807570560 313605602 385394605 491968354 837272600 403107335 844592335 810515962 203732754 410925176 151311780 670468231 344102603 866058272 60263104 681699297 316066792 594057075 603247227 304698417 955371816 291481385 469444800 166708082 319241059 145892252 702549341 142265644 47300235 498062333 3776496 291728004 852341121 168822772 980015557 887489778 294818280 963737469 162435285 431087220 628153327 461461080 635422280 3384453 616825020 13897645 408798482 327145714 708760794 808987688 690555542 985992964 17989387 871426351 375695970 172560353 178524697 240127352 145593181 189697210 246451097 867230297 444805345 888254452 561347556 142472489 893268550 686156913 868964822 478794631 23916498 900299723 302189251 337592962 856934893 93008586 674716298 471884905 525283618 780166650 311401206 151480079 118016112 912727529 819889989 514418039 722328797 792924757 933422750 600908750 280604173 908340810 515016855 167408423 679462909 372128715 455907039 245670127 318783371 836114077 110167162 931224896 465779277 965848579 544589404 774658536 461882400 962636380 685076058 401963370 491807299 975366274 722989026 240369113 151396871 354116350 21099677 990382204 177423842 286516984 105974137 724157697 776396648 514594798 213831408 529067107 15075368 780737553 548336966 81167539 800214371 954079564 909377864 216178692 6023276 328190559 986676596 740390412 408493886 767461973 101866076 368619438 168084300 449588066 632186096 791375161 797424774 805055132 751038132 445329479 560410962 878980209 308004485 315103472 98681443 574696812 141927218 683682804 31381764 733185572 321953739 660807006 891989980 275365567 477106269 186964482 575989650 552183764 518874032 63819034 577517773 876901108 351323631 251076129 402328306 450115898 61589720 990103271 919202552 724417417 802264103 439509881 973196251 845076429 196303479 505199690 961299565 27493425 776599323 970914052 180337852 266029453 405624956 213266466 6725642 225410144 457416912 616984760 958057593 275557901 426768875 753022838 578043045 556704362 508226713 104638464 502596087 908163559 315218303 673138004 926448076 592449319 865894172 588243379 536994571 247404997 408925940 825335508 796249157 531153633 908833200 955355386 301551517 918339337 859162522 330138368 347877161 107213236 965156552 442951590 81566424 928347028 258316081 560887214 100391936 410529332 925838052 975534293 832161379 593802772 315352093 6890829 732431641 798184381 233539087 849048609 286588089 791150274 859440309 556818926 592939251 500771345 712509301 689653314 804012283 157220738 713586130 326777163 708028228 658338759 719663785 973770213 735647764 669513380 880671155 838363747 865736265 28805586 256671971 8572487 923653510 990179918 269439535 305098177 119078239 550574251 405201874 22155499 548564662 811470948 988848927 475386361 218818017 634226894 454257777 197958043 908789634 19289887 538947218 608413752 975062860 737702936 297163237 317594498 220605750 514244338 678234609 800234871 194455058 2039248 680906467 296258942 354289727 767322610 744151271 272604913 784357613 848258470 17266397 313099043 591241012 72831205 796312292 569433541 538302814 440184500 426447846 52004760 673257879 453702451 150044866 200599835 922380787 449838499 173782004 864860157 341688750 294864983 551335404 121910271 640297818 344548466 579283395 557267713 639324453 656901537 498854366 220398761 445742296 165685225 888495436 895630463 445659219 378013386 789065833 652857170 301370293 684035501 113317447 611212805 742638594 949625730 51894315 161863951 773349945 726738559 65519948 768539657 735417542 693224437 4009809 747730455 308353423 241279898 149159961 846105064 94770515 108654307 839274590 23584807 29683419 567164486 837828936 40185522 852750111 930472408 462067018 320145243 62250635 61946404 871470765 730328722 894139987 992839677 48052424 984084140 71865625 620290658 682367181 389814763 886364400 954810021 530245631 592220164 999131237 462941602 98311330 853899488 26292668 662687008 147863699 576533232 385213199 210067257 171855276 371972198 126909549 52605016 695654228 753202175 866514371 32565038 962024797 892198606 609012910 241096070 564027841 167057222 536187984 65124104 17193722 60184886 275661175 637637405 85414137 803117504 320010277 704969145 232064891 705695567 733201347 729423556 824626732 737145957 917267703 129996390 544633332 792981269 365009144 700357254 681318904 809914046 57773852 892054591 810171175 405790461 74789438 441855006 624243447 741412753 954057001 283376885 510706554 897165841 986204374 454746731 696523910 441953130 889956083 828672708 70120034 952316942 947417750 957999071 775962106 991434471 451508912 122548864 292286258 431918016 506428586 713451846 221612946 409102271 354470007 503824242 34794516 287680923 801924836 970772375 412356801 703624972 382359142 298061061 788794856 410729504 316028143 862359544 527197231 827274240 419621508 917959442 993967569 560408272 501433620 45920539 502271772 169037484 733295903 904139257 742644429 805001744 437386693 827191837 892260817 360203154 623565210 83829569 571800874 727752003 889419954 155753800 591847102 224224184 585302285 37184303 254956580 917173226 559431465 111430504 131620197 656956506 170806578 972259853 250071699 808522031 928144827 845260028 237149359 82540774 228573365 279112393 852060905 966139774 834937340 863986700 428260199 683682300 548936117 989275586 651331249 544947246 47925528 162300031 416070439 207800123 36484489 272612547 968429809 628941306 453640582 190079781 999823449 886536307 62182997 404301561 752818506 148171242 966928683 399354751 605322199 109774751 995842770 54688517 416953359 964927199 822227805 803447951 257533615 479811673 29124277 6695628 584611362 653198548 302295741 740945652 588712591 214753301 392233417 754532600 509970462 991441807 478909259 811180384 612223160 926104797 911948835 555927573 582860895 289865464 994563787 980269977 925533676 234679966 292963868 990535129 37614860 658535688 145545556 28061958 329002243 720331540 559197687 512603690 14927141 201665760 986300490 125056496 674781508 298704374 68226653 854072991 723824945 427360206 552762309 464295170 647737180 106868397 37357980 75031780 909127844 761292253 158538802 322185555 556902233 796640727 263683382 929440672 848070332 537673541 291493803 401219383 359447544 595181568 820123662 742193542 802947252 102906454 4228394 398465213 101044819 699528262 679126460 494167394 283362515 56041843 964112953 70555072 602411272 737142448 177573888 568701215 830494881 521702710 447511471 197045793 767075919 720917354 751936437 476766371 716069420 812879094 924433398 569391537 693589227 981545457 120022989 551902600 867457585 520616660 357951473 434444663 209537551 713231193 507481472 569794655 752229291 596152273 886393786 420245747 144854001 610351824 552898988 662669164 60954384 4076428 706010472 716694981 986950776 746336690 60892445 582269683 944548137 948550872 136711782 488133135 64604166 559350930 133426399 891537315 221785530 956273319 752245617 680340728 725499211 75128173 580683271 316043634 299142829 273741378 939310022 665799909 287309220 624862444 792763839 256795314 18990911 50207065 869423427 411783140 577144092 225794055 326458814 618298151 765862360 765938562 243503388 596636100 40953310 584809473 148425210 407791373 768037853 259853392 894200126 771750089 589849317 649519928 299994517 526538668 698425389 662440107 517374005 401055831 537484501 810369231 990746357 828327549 619368523 584405 274881793 585471963 571397370 829136496 706178108 383757404 8238143 861549975 648228685 176517143 875594136 762927548 651671046 494779498 656226970 965391696 566435711 461009203 833885504 449661860 224134941 391541881 448890565 376987616 647227661 996452409 123852606 280358701 412923174 958274595 145551459 554847686 897825841 294493007 343817183 656061860 28707185 669552419 814920506 693795125 720796208 820323883 608214084 869191538 506998974 677509872 909654945 609179994 479795811 699822091 97574847 652413806 326400418 845268826 81127084 360446702 296326480 114413960 973229754 338248347 553251817 731841349 255724522 504215899 980296334 396685161 117678634 140724036 691280076 226393797 339024898 894509644 436779013 846984028 162050401 448437671 611777590 682798125 852729901 582292533 76775945 775324849 420122641 173575041 226468426 739077128 148474972 382229251 361584303 729835845 975178226 512049264 290640799 529396893 345301594 743910323 714437855 719482865 691581540 993569388 205013327 179783577 257240641 112634755 893219209 822993491 524813954 311773244 39376282 435347841 655603519 671106478 173016847 753181463 498354893 749360113 346595231 998081070 302953722 352019854 438318441 88218422 977997511 523413468 192506657 390034462 50859702 471146927 54076958 201241779 697803163 976012517 506955363 564971047 641331570 868960484 238251323 443441306 659269173 455992598 313719405 513294800 871260052 934289595 50259708 522056961 638420257 165177514 35528137 963865572 609031553 716991313 843162524 815098771 599186454 220857357 303841517 549595224 871841491 129984057 681819703 208240261 374377790 176542211 194064200 68287384 726140273 147896207 725841644 484564238 125366228 138263272 43433274 836210722 121995385 332620289 862535184 511888872 903991933 930814661 126830848 934447704 736468356 571030080 104841667 273557408 235933863 843918111 659720756 960168205 548107109 638937631 736112197 715990092 484054230 72680689 330149865 77307311 44559453 651826445 893948518 261316886 747255707 253724978 53502286 583563499 298995927 500036331 396654618 791748597 759730690 375872867 610679478 581986097 232994292 387230512 738939625 313155681 559308054 281925298 90750821 921231821 740215594 884394757 166742103 563927323 49875437 964139536 854680856 644549909 522686467 706861477 516117910 234555573 92352084 285364306 839743081 280694954 592841403 712860192 961292989 414613895 443530524 434944622 556585564 533412352 791119863 676280587 534171904 1921183 88574916 785713685 81543041 466502506 635994607 996611047 272113379 867053969 180044675 983948843 288131251 838584113 871991390 672685185 658627620 208771667 925837157 458052428 784723603 340960415 447623944 451207635 156747580 979597162 346163804 591171411 982944255 978564359 362762791 975799686 843683684 403696765 131714748 830117372 258547365 198389793 271509607 559721513 480011052 351751446 945007854 265196121 583525352 130279994 871548349 331020346 518975700 471949685 781934235 523006542 845306575 997095761 341134141 739294626 636908608 884653156 983337327 395962856 852503373 362902775 614474486 120433967 947074901 548957210 652153925 482334627 981197068 297065002 558572097 933147851 562870750 164259189 19017809 848731005 69414501 753617146 775678682 226389672 455253998 200902887 120342714 868306193 714401561 331844381 677371865 995701169 933235896 469914614 467893918 471962872 280265543 116595168 592186757 57532576 197314057 876112211 91111513 166641631 98640593 455728668 85283090 681404739 854749305 578320206 789299819 581052138 368620910 254082540 84247198 429014416 106260342 230463213 86063397 805709722 643379126 526907229 651289351 944415684 8826927 390543754 642705160 744372106 93880769 622785628 823564399 682178532 601273222 119579685 699290375 841588876 174748346 999694300 186480270 237153280 464301895 606861650 46437913 411663743 847476291 921367447 471826793 556892106 381186474 946990062 748491294 169075900 30821568 577611172 769642463 887115361 385592842 904729643 631952636 299682738 138704658 814028923 663459531 804283321 735717347 231740128 576540666 355338387 267949904 622546816 796027761 667068592 226176204 95732962 21585140 817105906 864144020 885323198 227309733 966212985 301001861 709160975 780803867 993290274 132242697 118330010 224044413 27666104 129761225 948216247 99873688 270427891 22148098 918920937 855942211 208552706 440892765 465213534 519777219 495303705 579165912 645879364 935339117 455362723 748721536 133043101 518039011 740622070 375899868 400817754 312347257 329172026 776479123 454780638 513210593 133720014 229023144 79765173 46593012 347514319 541809540 960297130 870020187 760638714 232350600 78741554 158767292 830530180 38659299 829346872 851437797 110789900 342205543 221481449 27465491 542098238 782279723 234313533 141055608 728814044 86070708 31884176 610756582 89176887 577471464 807278526 888239563 203661312 994147093 707104573 885838148 902074705 861781795 333850764 146128307 357620053 441013095 239253406 521887851 837398395 661555715 506455124 724822042 445258972 477877347 823234685 447897665 801003341 430737211 819406435 893679221 938201002 282509911 211115006 219175239 356576199 853562796 848070532 739518696 376544082 731411648 902134037 932392918 945461838 849546283 224609403 740233712 838464066 335138227 664107848 846336878 345759324 364479584 980940927 709316313 175820255 990252731 431297761 115671156 935575203 618124387 693786954 182615679 836411217 171907943 50903718 985388732 789649829 218814573 317502012 280954409 359324921 521416897 935635993 418109303 639100646 56126738 404383316 372425596 315246859 8695767 720366306 246690587 401117189 719742465 574023199 951732448 55350272 254745173 783081168 880408965 817350516 971392579 495427500 842428515 600988843 848629973 423485840 581541379 661787488 560189651 729241124 405892926 555556719 902913256 520192672 171520767 21761056 32820224 349647405 165115272 653056383 359455190 183507069 367350716 961615669 471325807 55340826 356658737 762330118 316826851 448891229 67666490 562106092 710421103 365499971 958813562 867311045 304606220 689142768 712895599 259821303 710805668 142061227 87944280 697474934 924743469 332049569 468915901 104908614 513073106 581600739 564222890 557023554 951888199 332762490 442583956 448726199 823687118 470823385 635499341 480127485 682701742 20227065 21287663 817780524 155687594 898328548 860694897 665007669 359274371 318692623 709832014 258682894 239258208 23041286 658910376 442087761 688782609 599616505 561054449 636911802 419579960 255931350 396691929 21901633 686011192 515804714 636333978 221804763 685005929 883544535 834653507 217771812 554009639 584060999 566376307 704929369 293220943 29524940 601942336 110366102 305433607 203997395 163559449 929928877 132583207 865381886 176648498 144176726 787255948 272619473 193617137 588536021 232481927 92068119 258127689 134704885 964929725 300760188 259341381 918003681 208050951 605950438 815148182 376949609 554454106 774080396 698242532 72578347 45870759 895962685 604426968 691960422 46027630 7886892 5703748 816023563 96190966 185602384 883159695 690287007 51961463 219137772 155750544 798712057 663665916 30563325 368367782 75553589 609350195 346664873 15992634 209440473 850924429 348366540 718203488 810014682 439244542 897679191 483293318 531339789 216596237 605630734 377505506 391941411 980183954 700847187 337046513 427911761 520184140 919520416 780608226 219980665 461742538 443091259 958851639 417737504 454590710 242725193 688941905 446451013 696672039 979182273 709186636 718081044 934377839 182987743 451377930 207465470 27912873 943739601 647179340 652318720 623684577 427412586 93501450 693594790 483322288 857846883 633543536 347842347 715708105 478127263 592977585 354104901 912936897 4004160 596320860 661113005 763886116 164779013 866495432 516493536 786526345 928409313 334017493 241143750 522166288 190605539 359417642 375963273 304919891 989596646 520372619 54912317 858166403 444618834 262758558 634918493 265009583 171387812 109765389 663947345 90647787 576880750 250806741 852859623 313030969 727826233 187764219 574545864 638542494 710587418 649265695 70141843 637624173 958954158 610907183 570007510 524147751 253126885 430581679 93506610 141460785 86738619 147216109 910418096 669921133 570150114 942030138 740737846 160568215 671363533 239212674 580830882 182462738 724017478 929020095 63864058 297641523 268367537 388538027 680665018 813982955 666088137 105083337 833336599 760029728 831298999 7306986 877985210 667621473 458155950 612464315 812896648 386070701 99645827 83155376 426609039 494835556 599070928 420285196 662708360 346336367 328229376 671543177 394564311 668496331 801294703 767353412 602640387 300013076 444023718 582438004 77516592 29081146 122446332 320737780 43127135 564526246 728383620 708217356 992706562 615792116 852716767 645629034 767599685 566431516 808723769 933437534 191785128 876882591 515404426 101123249 968574343 112830426 120037199 518269517 600470829 587950921 373769054 834785115 91211516 83239605 10795535 46148648 88919165 344138560 760280803 291318478 141861800 659060046 407949242 134658344 278834120 1230675 152883400 78435525 845206471 303365367 324742126 417725867 399849806 114756130 441815579 877455418 324345096 976750855 685411743 549643485 979377002 511872789 668275173 325631224 417657710 182627638 998774750 193080236 39161758 588335138 319600390 525407872 792196128 703103851 113479394 72892261 120777229 372204079 816273008 752320642 516925068 144007914 750628864 301856728 880986248 520959128 990361065 288008492 441380657 823150907 807020671 827463262 387834566 46064454 844689042 950317655 910411722 112749943 102703899 417145993 124624371 479852230 100296828 50659169 283624859 490922700 864008354 295935422 898897948 529981537 464995337 496788020 911696703 45861355 398424965 217017752 803541999 236724603 885998770 225984699 295983212 778750492 697885253 852175570 424313991 110699628 210745194 854512321 702334393 103960630 828474861 930144756 262501844 661897315 615266920 538255372 987267698 746924111 318660550 113929939 631336283 906983506 187845767 687173635 680447385 839853305 867689344 741606816 32512199 848276764 632829613 5721198 438349117 138127563 335776823 249508025 310356560 223924026 160008847 495892420 556767555 28966225 380772777 763965680 137193874 185850104 321184232 217630600 880629850 574125605 462582485 174735232 539246096 2503357 35875853 311526345 374685101 100400360 543985336 453098928 813636224 598880547 165839543 664486729 250062671 192039315 598513858 859302928 117919501 419038120 401387373 271185244 569036481 573560850 327483 287888592 475658090 89076578 391521393 888287698 960243804 410595922 546438397 675520999 684578700 964986918 475246006 640956559 933962848 540866903 682225853 603158076 346432497 331083891 555492219 620525408 821818318 836932387 794182669 169641403 486342975 849379558 67365390 550659096 142345842 685931284 410221609 947690600 565801218 687013073 434381062 729967228 851135934 706584440 313235942 693143808 827324093 319368176 54817169 247980583 780026205 211530964 814795658 740286768 770615808 756795346 934576666 975197332 900901656 568870057 920984033 637151570 111618697 382920227 211239962 650786915 978759599 502370159 35496761 745833581 22748389 550615452 567806828 923014230 320854233 362847808 840588179 148212037 908058003 529131698 358786783 133260998 481702301 105527615 932017139 699524126 934807103 553323753 636978712 474726480 433700584 44881919 603425689 427027110 172493474 425887285 892961044 689891977 757569379 662741737 897236683 235769985 711689172 513373593 718675709 399246374 757013642 960776018 725206581 197696502 286074998 423352069 641763651 700635523 702634641 773944385 449793825 811408455 794617189 742295417 892025418 187605762 406929455 17617561 46062210 911885613 8810808 821036916 64609500 75220703 744849750 111197390 797856580 689137192 385539410 117009360 593851719 358455257 105411171 869999351 903498520 25356438 660786390 524495741 781507560 876328396 916551474 543797828 12768093 662193056 962154425 971866997 247243101 183635487 419849081 675176337 867151560 202217128 541915954 41977869 929856261 625506164 825715976 488068677 566837134 519220356 594296632 115253615 524361121 254228253 630492564 774072356 720646467 245027256 972171692 103350837 873750468 724451182 966254258 766979675 311920190 504623601 602470710 678749615 423601256 878563820 685921262 549289556 653832995 933077966 827560217 161480771 81044999 223719440 181235857 790882521 638815623 332942282 840711910 386469580 898230733 865508932 325252877 571696054 136913313 156807856 965880110 74944813 67317389 227803268 79377077 901317854 989296340 363581793 456438069 389535210 999814189 947390714 867689687 647613227 561138040 843672902 598200091 836742433 734233794 749439160 133673829 749797178 148940378 359981255 917527680 470353022 350967248 686747562 947760030 892720703 447554384 882524570 979237686 1432870 530019316 620985704 684975630 847722024 972001740 603934258 384720686 138622539 961226629 626125124 628207207 818561840 694493591 751364662 682300570 487531206 78974739 545271975 368575689 724624115 91675071 924543852 443486746 567987288 223149939 535938452 922517369 964542664 794830351 513117227 990512967 73868012 484338036 609931070 654513690 979263503 222216408 889882261 108935081 52951271 239274216 790417991 696212894 352769398 910328355 383551147 415387656 122631736 259444248 547302131 514094499 624014149 862612962 281402189 825396865 78619847 475018007 517290920 978080567 742621448 780628248 777241086 756326477 55535504 456925509 465109260 61450395 910855702 443419730 765118649 406723866 293989016 750626173 591384639 447472120 171270173 981903100 784426262 112860111 141501616 781813338 876136030 60648886 313516015 62652651 812443550 897732644 135459956 462539841 320876266 278577647 442367513 4602783 836996708 525406655 49158337 344934538 784915675 691951280 72862920 635114506 537585754 305641915 415722317 591417233 41692715 966249768 241664764 763894185 763700319 862291102 417810124 584189623 49993520 183370272 24745369 25069737 288756121 564021339 881041789 546331305 267732741 982248186 597002101 652682792 693780122 702163567 408665996 531388020 616253610 883433144 321261240 514878978 997262491 895502351 688266123 586078058 932887973 994480163 803968626 784348926 720616451 372322152 120506083 267458948 993042484 142557935 320733043 860040173 898239340 241851122 592189535 488493596 917739455 648987184 162990069 189027701 676176399 976572866 3249722 989957856 138928120 22520667 883253880 901737013 838035304 882092183 4347844 373462890 881048997 313383560 147131625 258526386 651366214 669138567 405532856 255085710 511220332 312923125 729033453 50495789 992437351 844297675 730797335 863173991 719486217 316621313 747083408 940786426 33692041 319029848 916959500 377397006 240199677 975415940 934016755 861126445 930780479 161766106 807284725 975561385 319136071 938343383 613868925 63913414 902929631 738679464 761625228 430174583 296597598 647818695 64181900 887478610 66525671 504702824 544746160 317377237 759431130 461327233 143082358 698527148 688628660 375722374 339175930 35473232 342744608 921502866 221552258 408029278 792263741 398406583 192948794 966848139 41809235 429035320 448953094 391031507 66267587 643577574 151659528 931383631 192224612 205056147 982922302 282803360 38205157 711182097 785073921 757451678 669814041 238336767 949240054 100467158 734745421 868432602 637009447 546547983 127864844 635224457 625908258 647629870 842838631 422122732 733639218 107832909 2394994 907588345 20472861 361257603 787247933 699628498 557267693 276271661 37842110 936788032 891152718 244874149 862101189 549664826 570726754 932852018 275296564 465972543 333060769 684869295 488704948 411131358 679881051 825299576 788494095 259991245 576657887 398680675 959011759 957728475 130011489 220235684 622818587 306981093 767287874 421838223 877379118 983387803 271438847 802481055 449269580 296428895 738582065 238376732 553718081 683126084 738321235 728623911 465111599 63642005 569638814 85134950 377043893 522844951 109004632 425155879 725732120 549176644 929236827 712165895 291489865 49894499 728585019 630983833 673043267 670349100 702745968 635076239 652969309 145011004 584318946 489982884 914703262 70953018 787034918 380566846 820885306 127925888 36155281 444680089 264624254 716639942 64551950 29187557 227955435 117425147 119554255 882860555 500647404 306934820 165804973 150302610 67710897 321491416 963937553 330181162 51189025 9089027 539644183 296033019 44898523 826857253 151733380 399653702 246949954 825236853 402127187 616903225 960716876 119831263 843284908 998324437 112453230 921355779 639569592 510977268 852534388 720231991 881194603 920893161 788103619 97713531 502772135 321248333 641012536 103263815 704274839 282896757 897566360 287979656 649131529 44489052 413052423 472899025 431696370 480856931 193439576 311119688 640078241 520477051 55680985 936256762 802747490 361703447 70757234 709213565 127960037 9253806 69629614 214707534 644399152 735954883 132271361 480193745 797807940 411319780 678029789 698225823 243253620 664404585 589727598 900032066 379585584 195546633 828565622 220332330 981483809 86314332 915026129 690108691 732221216 182885476 806650985 772649523 481844511 65726338 839996238 405972289 684470493 597657956 875739704 379827330 181632252 456439802 264937242 77094556 881445915 241198249 281060471 562477478 312445341 89620105 131627416 749471004 529348879 613012866 823187488 161895913 291700513 753525389 708901158 981571132 9375905 224094242 900922188 284417992 356813153 890706094 334577586 921731820 915493584 746788419 535140725 756294812 383624635 393879387 267199423 285533470 711564462 465457934 759420255 511632429 802793294 26233435 355718319 476889524 792572887 484285630 347004984 365230590 286762724 898939140 38506596 764115428 261918368 23625972 973560677 751249151 775719032 122752601 700458411 492265927 318803868 680094597 521168423 694027661 28331572 183955130 504688653 1259372 610113089 436073440 286276031 208972109 509307415 964380473 849490445 927140898 900966686 470535387 401249877 444988839 765821372 627109221 399379119 331434222 797501447 931662172 231203256 657316334 167740497 706653656 769677955 90864657 135597341 391185604 280008129 44028352 362986412 178278122 621256550 175632091 1164785 754675497 539047073 485890347 123196998 364087118 503500895 92206306 307214522 595024265 924887991 886915708 349818116 42078814 331206459 697564678 838213394 894521714 245992296 927836513 611360835 187169778 624787090 563766529 409538226 176189195 71249178 970823779 940265610 718906518 430009672 10360760 194230338 123926346 880055914 793981939 15672884 542077563 208045487 605864743 851635305 405610708 203827381 524877583 598649085 61758908 299767881 108674691 319691601 708507606 856650959 309332401 350057121 514306559 317668880 296555353 3527691 673369318 139243970 192254489 363023823 731486126 428073644 906589812 278090057 830979383 32601996 198349241 984054989 125190102 963448231 446153916 965395150 180691876 442288023 618530375 916532378 162535532 831770699 297957018 80469882 491513738 680978874 887880178 982411225 257365852 488752741 267348805 374043081 30687363 533353571 10717366 119629976 896930204 642067078 244072345 320159706 38942478 994564665 375209373 442964454 638226229 202217593 184978817 267612958 912187472 508573362 299172271 297064323 577429122 749871748 955254005 86585464 441834793 86137086 568013948 35733865 396284612 970738502 163886921 19740921 232095113 808316537 862686360 736972214 982647369 930295553 526531901 832852686 705863096 907433100 705158226 474774702 291554310 764096307 148432317 696211643 458256848 106273874 603371328 449287958 899161330 49688302 676107602 934592572 668135966 155370000 792409910 511829964 624357649 280875583 914785484 95370818 81076902 352846464 374712886 823000254 161813493 809733999 463231864 181163858 29509352 561179638 375741259 800407242 294693316 855017038 800540130 59106097 173723079 896706552 770918965 880495958 32163571 727749521 612952670 685592693 487114985 145383448 278662671 229469310 21574022 105910099 933455991 23403903 103205455 317858664 128536698 374367059 191008328 166235691 244931399 189972106 388490292 625305494 745253088 145848969 511670141 269147723 43367020 751375712 21955532 850242354 827534072 280781230 351748269 529144595 63071293 214470194 491651220 809349465 923676366 966735012 759092649 738742450 450209253 566067514 763467270 287107191 936171804 223948848 886127075 653425531 329099534 654688482 882994584 711829853 988113570 463607335 897915726 408178055 193075610 458791651 633201785 282596464 960435341 474797749 506447824 766618189 167405924 235248224 155997374 439186924 176897454 977136909 362306222 575039518 146584260 821656280 415218987 541755648 675789234 685365671 525734829 304271255 579698313 522816675 784750171 993474861 302528095 158635173 954422174 878222996 48016259 400573349 453173036 153007294 427995644 485676148 282919799 866673973 896689235 826162664 153765323 981510932 309197556 400866756 732166941 662217586 26552747 338562700 104750571 976992464 868057069 621911183 86640129 700801528 36806222 527939553 629469267 579831279 733471007 75673098 114590995 323592103 443068650 279202441 647239641 353914594 279519265 354212195 318691998 51949492 152843947 219326655 655944869 129907491 715374717 788729574 984218054 337686931 163659059 881163320 564959103 529503910 973925800 173678838 66148575 414320681 917965229 855126623 942343501 170575977 647372383 874954274 79033623 269910295 939341270 221060717 151296082 706620971 461342663 799910356 570896109 648849073 824302674 34928880 824840818 138533574 768537532 858913934 643673213 429290847 195624896 851697400 908207436 268364896 792298882 998283409 62838544 956905883 153845705 871941727 534723871 791826722 7228168 51204942 390470198 834787351 68833766 113761493 748995002 294808896 869618938 127887553 519619641 324330684 492461902 333391891 166663948 252883558 153004111 65567760 835517187 799276723 124336657 684262387 186234267 321305422 656400569 866460728 525219052 811197889 158064519 937625142 595823415 109208493 282179785 403635812 603295988 271814992 712243905 800112767 940036887 429933302 212222819 514074617 829352990 352587145 756240559 52457819 450151682 191248634 839590146 641452770 240112238 484292371 808672411 470442542 436714542 528185463 139644026 482702142 783183064 279028785 686366205 79350059 741289671 789280975 673293109 662507509 796447939 481883197 555891114 637637699 579542247 789991012 694598426 943462542 130638963 824158209 587709796 79645714 485000677 966538565 826119773 56583381 983764620 161046520 51887691 177912496 905317656 779493959 838827360 126484967 459835737 24749170 119724880 477242858 51465998 839816563 948620939 7756726 548955460 284416658 376762551 217131138 135797836 694740766 953346328 281000083 816949053 320683244 161365165 549165046 719830827 723894473 638657436 203305351 101259400 372778979 423734394 563725421 787475352 266097617 647212736 592329757 328999984 888025929 511097103 845331953 96713938 686584150 775821413 233439546 750679094 681371543 113486905 845451463 819254647 709090179 485995915 909902880 453534307 322035929 140287108 38822126 430899012 675794289 439462673 677090903 696708890 410452053 881395624 147471197 374122883 257756018 997129050 203248223 21801195 768872839 963309747 397819213 754415238 571659683 81450739 160527675 678962217 356828161 803022408 451408491 572305341 7307667 472092275 780852192 737228128 469638932 799615643 414040606 580968653 71939636 257165151 27350644 359558133 913609195 267448821 374318724 221320347 753058249 716191957 988216251 110391566 79500181 190634552 978140249 820246879 832522101 477638214 794817858 306285434 501087731 932250231 353007264 439395406 340800218 750863349 202778906 489505400 106161578 806418242 570570657 191868834 491196657 458727915 229254012 793133248 135407040 565713308 853749813 984603394 691852118 768463557 29915848 899781630 403040649 841744597 50487286 689496912 975446907 661490972 741878764 619264785 18263795 497014374 500668996 116271326 619954747 686499395 964601095 771574242 946520138 480135198 653803292 121541459 74129215 976642167 320972842 186168144 713633747 970417631 737368704 486980969 465693557 447159094 646997876 648682286 874224279 397177710 251125259 278831669 354112441 754234131 37565081 879513587 85552269 973441128 965212854 121121011 978208467 411123401 261970902 64478237 565438721 911196212 352593781 648791220 87510822 994719581 155057777 260035556 101512804 811687865 461662933 682773530 546788889 44159240 239362750 920537090 290398870 435921242 376832766 533818973 10035493 267438073 540403898 926330982 210041890 636613514 721508000 385973103 669694073 905981303 404938069 621197464 368299391 443781897 675308496 114520360 643318159 205263788 503708184 633077293 911773401 568908655 895877529 406403725 701437411 662838771 700357689 759434443 828585639 515868785 482860354 792656083 781851707 13450839 21867152 696266690 630174316 811209902 557379869 976488867 290789531 387136951 84820880 54999146 634136602 679936372 795358560 613457652 708192718 336329801 869592609 678322751 224372736 15522931 506942518 409043006 744413971 380092872 26330970 395908788 332739720 945801960 579701304 661050103 778848200 935054031 229634347 716825077 705524825 318798048 319013648 717165636 3227029 40267216 411484670 449038751 83648886 503830993 212162389 537520271 154204067 511128596 237146250 602912469 391072547 224996812 736813080 778067506 525903180 405498132 362473952 344566239 731857139 403489012 986132150 360002520 962180214 996706683 630369742 107238757 980450053 915474238 943165926 423698171 104310338 156137297 59120940 389813455 364629761 618432448 921466434 292098603 262103538 181372687 636606108 993498641 112590338 930861 396637993 801409452 632108127 939847594 118978556 921356000 742619671 723361138 897672249 969016131 671154510 296047920 421569523 143666181 809037420 428185473 82836148 497832147 301968355 645096676 246536385 632109833 777569071 948196773 326791725 823228159 856145693 597789434 420049179 639689199 374922560 842924953 905415750 952469879 911769189 274149136 154201144 490646356 893803441 696642127 769552826 186214726 73561759 968310350 498532804 327381124 551328408 13549953 802362412 668290157 594307903 332199518 20745406 533708479 531425855 500065458 262512355 968551253 750560686 923800984 596470388 914580718 415544236 352368770 435211659 783834858 112024485 387188198 796499765 309232776 124256240 83334653 956100003 443767071 101175345 355107310 690579444 858291223 691448532 87031833 788049885 962491814 428439176 114111516 18181674 764337767 388332929 955754001 900732150 467760273 559951716 514468 481356656 467739656 914797766 549582001 880495636 487296549 677175017 8160738 490355116 796235649 278828796 747411437 273097237 283842387 431790802 441423960 938424054 152768310 253085191 567426922 819429973 63091992 694380568 135144873 65522580 587905599 899924467 574313367 646893385 73357519 428816780 613144339 675515888 180008291 542784490 634803470 827660151 725493442 234990362 100583105 2225560 416130750 386836863 165351947 529148538 97130533 730912479 409228032 843381092 523524404 199589172 257637041 105600114 782670905 857498605 762776706 754607872 373234516 683782479 789104178 68803226 276680078 363854565 437532455 215767380 567066009 174722435 295678651 175604749 51753824 353223840 507325925 147178286 716495755 15546841 292371161 243039564 273332089 909773031 855714514 110466112 348496072 29250879 818036808 541912947 843978126 241107833 305412140 899404673 594629702 251542227 104455991 159045177 829517865 204123750 306283403 318961523 5696355 579684468 434715640 161163500 89039493 412728940 734182834 232190115 289144493 722439886 185764452 777960938 906246655 521507363 526589452 766632036 942473398 962949883 102732008 959747325 143704281 640682762 464561804 178622226 184695264 424183091 607959905 566499124 945893880 779821580 179842061 365041245 846681789 680806735 736076870 715681352 185852139 792106519 568274762 647770969 606458439 973627175 451781786 843694852 286969660 760424780 155464172 102944271 517698003 282877386 957040901 293000067 981416593 827144784 146326764 325790946 720798673 12551048 880130520 237429807 924096874 510240882 906071196 717273255 692663867 668342594 626254113 426987783 758637171 928920161 796815681 279292663 340577123 626063461 35199241 341140432 895521787 87787961 475789311 24500512 343389081 143670987 476203708 726268341 959831735 257841712 322958415 54569956 486941168 21757996 935377150 115168952 903764700 280071640 259961588 894290103 531818786 18083839 669178138 943298449 750371836 310262439 257468254 768112756 356169212 796474014 961235874 692475984 304631239 567828095 598609326 293392853 932500817 611848485 829420930 205066223 190499535 795697729 669585735 297914378 454487239 327772812 99642166 477321266 91991589 442795271 722173707 42086550 827851891 670104513 809252766 222469284 457484809 106542689 169391090 557608604 839355745 105798221 554764616 51899838 119770370 801301373 60258408 749188657 780749395 958311318 329496896 156459145 524076566 807283161 673734509 791319780 695672232 703516467 801594781 141122378 436216870 653338571 90969887 847108703 313555309 333193219 880648741 777031701 362924944 992426525 22734374 699005209 18538940 630639282 678848070 738100197 117912939 88351822 513780797 728188593 681305766 409095168 152810884 147127618 389084406 916863203 88509080 690540253 549830516 298393020 368324524 647731554 569607943 885242695 591925499 394684912 259252294 415416985 244876458 741559530 640333092 917132271 56940071 589217886 734292384 266340185 636969539 386245387 852084964 746494598 232216594 651648191 986578933 837634090 93605291 287225610 98321995 379661249 522437673 720861089 625085074 81133300 389341033 965382041 204720196 55800062 815182599 834811600 672325638 844654230 640825713 667361489 850049637 500748585 36935604 435219156 880362358 439988025 815574925 715537578 879743537 983797527 178848681 186218505 246603179 837904322 516275520 912209309 474174965 222873302 372602018 760149315 920425071 963520217 924600869 204109526 494865249 339052635 885237262 570855052 439982947 286119877 664871307 47483698 915711688 458548198 754485328 713975176 983287304 741045259 646724490 588646613 47638061 324092853 530748563 419439948 952412392 915079065 277596122 112968892 956065457 240376971 976326757 272401960 275195368 860162155 678116348 348306642 227776162 980502588 466568079 933802975 662113818 897690730 362630440 679779523 799539794 635885390 14514307 783442740 725613580 750413566 483964673 493111685 177685985 375724086 8469966 412035821 519982878 535791086 254723727 955020266 369553252 694585492 215872034 704804696 59017311 644022988 712268766 555360256 913325483 433448581 18734012 357798656 100579178 97821231 953686910 772977428 675850035 657205173 789959234 328507378 600262157 843061919 595266098 830452222 136760736 465404372 276027039 62809808 738069241 411579076 255852414 521371712 527551039 318945045 159154736 598409974 553974772 669609809 758790628 29238503 701820970 49519364 747850058 962364532 484200059 498155198 889064801 745613340 211224296 361691150 584017527 868818107 284580994 564927418 908997643 717973866 416550047 339741093 938783329 956177999 542443067 482525050 711817116 599390872 117152429 188103116 945735026 708968811 817189127 269888870 684401317 166311012 477293562 395848982 438912335 807997063 325494417 970956771 618006013 105659196 651398093 332030101 735923899 320532770 336384030 683659879 677022242 530600276 757887578 663596007 347788297 549968029 960152755 729495377 9515599 289693840 620562279 826889647 136863507 88795452 762591288 396844052 666644217 566874426 450304148 172817666 234794462 273835095 875670018 917168119 217052811 234258470 726337185 559675463 628123303 93568405 472669342 780334529 200372555 864142812 719512778 42359753 929442343 54617982 634368197 798182351 931472388 78644068 634099904 786618401 935255163 713118823 474966144 195019237 201893650 293063504 239438055 87558636 520755499 237439766 994228738 10583364 569805542 147793735 859851547 613963678 123672799 292629855 599742178 84907612 595440727 280255621 867549863 279487870 340626138 953845616 174178707 714798194 65469611 596185441 401693809 422316413 229821011 176692069 372538024 641845665 751795108 832597595 74352818 677321476 279653858 719937446 174215087 625764910 513896243 835321194 619615815 142302101 867807512 515420367 773615714 268074726 337465440 198564611 312502288 171993627 806383020 78409342 525072024 527783600 894055623 510026186 557745088 877598707 824611296 396159655 347656640 910572291 750170370 29037647 252129412 65073120 651093034 36222557 783196887 705448717 454958137 271580903 964837591 58427426 383641009 577469326 858956484 693920804 136354189 231414498 87304487 729513022 640589709 233026899 300044674 124916140 820706431 664002583 502519574 744851803 513764262 440926042 512063075 16050761 177655841 911458954 506055828 1511794 709083068 969086899 208098764 404955386 789875552 295280317 539925414 502295417 398982740 998099240 816208739 213613962 684891238 192658823 425681354 768907436 978816521 558291000 996470748 107924238 180362239 181337196 38116416 124170636 332848261 517958330 174386321 857029726 893104072 134442658 887852774 559266284 812846531 357350651 760405371 752463871 793016621 443372081 981023819 937221679 335702562 423027575 332284464 431452912 374217476 769760496 792120012 819203538 162631825 721845683 60912129 868843022 156092937 857874773 791019696 140439342 820715744 891957740 141695912 220224750 874359145 104137197 101918570 241593791 653042576 538639394 281077274 473200590 805623903 628411132 664146967 648031764 97979445 266751430 577484820 28610940 729131576 239973057 121385882 286602171 529757732 767580439 947169043 95974219 651117634 474116868 799138181 405522613 333722662 509985585 298450804 7250088 822226904 437495011 286208299 38257254 399375243 568664128 961899321 256482881 149064445 700496763 174676444 348948364 914725857 511195830 970525881 587042153 285687878 935434475 562496507 421509662 967302476 13322170 71260118 721986761 350769133 160373774 810407918 897970956 594862930 959460639 64857501 679654851 577308503 673693094 183880650 761034830 768523924 904251593 540994662 227474100 843177665 569477250 315326659 171315870 266381002 452431242 391047645 828349362 94224150 486318927 1888931 899449623 876672774 911162885 965133833 512311998 32372189 934337960 918405698 990115120 892713574 331419881 504191562 402437303 589079150 310692608 306134179 775465911 209126749 305425021 156664704 646631054 551733775 99703890 781865921 853385742 266566002 291558003 496927140 99417302 585886562 567282714 82591917 661420943 391715358 631024225 288793033 895581114 484217991 814663415 737801526 476915795 60672644 987863171 871505365 236602306 954067856 607489678 829614616 508890365 397527790 907920643 34168182 237649573 506852729 204087235 501238301 649928694 179600088 762772532 789830651 188271123 454827797 585859739 127803798 453899699 27377354 935126896 902918933 679415688 541498461 883810171 375114742 842922492 971001476 901075236 754176124 3169914 135823929 366340039 902261134 370397182 665125409 473444843 582467389 11409554 670550135 627032835 987299 755331254 356294120 212364270 927186725 940968612 732711793 372055571 585748484 484230823 144967641 392215277 118395502 198101351 975316447 683099369 425083899 248688912 753653393 656202990 241581187 312362397 979932804 45164501 218516789 337063780 287126700 229994035 4053522 30971348 334404607 43511662 961251098 62911627 676794513 165746977 757638029 116294613 995098724 314757000 39744961 682168492 785747881 998187162 148938091 273662532 452753202 956931818 188558187 598215708 666443409 504474158 619648950 678962271 974097408 565544884 351370153 1283237 319536616 868193336 471004848 681928861 643892444 733095925 835450395 693013076 646661672 492170130 478330333 273209586 828398832 393131490 764073735 133590963 508635574 802794345 221542415 203640579 227074782 262632800 580081500 48740227 623672303 442232447 796789300 396159711 411252126 53157537 954263535 491575240 461385983 925717231 221294610 359082866 884426749 408020585 422009310 992069878 787709867 352595679 601574763 509315889 625638902 645944663 782633860 533094282 927125770 603720379 77076224 835364131 2680586 727832284 973839954 406774994 741499529 829968892 202927848 18653359 751745058 226795445 400941788 143597664 249138208 983919739 473143693 132224154 531366971 531166102 185106460 559839223 544823794 302959313 355784187 450399089 913590209 236786922 249569813 990419453 194240684 532652181 975319999 447400677 346031881 87681465 74562983 66170932 905005642 820248909 81677523 424325368 314176064 369112426 370696537 983778012 28546465 383338707 111094868 120363541 973365443 12900155 226661464 407227485 894609098 2847496 869690703 425181044 156064097 246259834 373141189 618275567 364748678 720622362 349855468 839156479 383824469 100017502 699979832 143105080 94229822 901801622 142694448 136066214 493737589 440337177 919132133 574213778 391872811 522405512 887206116 872000765 893517009 598463909 381401773 536271055 357548371 298378734 470405400 403957905 987198541 409280480 384217603 706870942 72863603 290437025 161110332 440273993 569901384 719788518 858006169 432560213 269587546 750074586 560860836 963673206 655636745 274464270 708698906 362458070 877468655 476155221 894496990 39484744 250000014 184738205 422009518 748380609 567338324 91357075 380783229 340682950 369584478 20447769 705910107 283325431 305152437 572570659 158370859 587196362 890713831 446008739 664601553 269134937 959089222 251640595 133800914 929809052 436546641 465396152 607575165 462646154 59796634 340841201 688433187 447522906 603695054 180486832 582748635 616987485 626303503 370627676 394246189 629062164 194608351 254466994 122846549 451006712 922951550 838588461 93305083 969493335 417268440 165661884 752554724 423913350 634642760 900262694 730573676 807368080 162426860 660505771 68993785 837883720 770721700 141892347 497664758 594283925 8285975 259156021 310468704 406005627 640161504 516961764 951949666 144992303 619429507 229102478 458375026 16491841 51326374 895518901 99764667 607090101 569368297 586105300 492132750 253201918 169125058 785629626 792796565 738369918 57667477 23570263 74402770 524848918 633195705 444745562 931299764 23683434 669344201 103455923 647087967 362339499 817650409 435126588 462200676 707488408 362928930 162655140 716685339 539871838 173647530 428041 159338175 106392896 582379953 857440337 602509674 766779838 333202114 890417372 42516198 83672292 897981643 360363824 184590335 280703446 154289180 143197473 601860054 875545841 565845310 654870330 779985005 272349709 592989808 794118144 676796267 132437879 331374789 820403266 935983042 341350433 377494047 649215858 349111541 755060516 54490350 368550466 82615565 418103241 136037545 121229768 287082237 888163520 418335645 410964889 683427989 860864275 680839318 64743765 125037844 889866239 232028952 726037210 210420253 280526341 31117651 284378824 769463218 377785567 299275321 220917178 524163781 448780728 905964267 513326906 946500365 913761201 661887195 81735341 92754412 40605759 984449357 598276422 987993684 859051204 588069340 79914774 404772483 691536599 892450234 552002648 614933855 87487553 829820371 140032968 437311407 971823765 402587470 466585794 537744307 730310551 841405118 721055420 89955780 385438278 467057913 804883064 639044168 490130294 402728056 768045760 532644152 256055284 509281091 75940432 773198235 324880528 728290533 858231039 903680502 714592537 673036255 457615059 790134008 161335011 352591496 685117103 44636504 668860413 789847754 665893494 448216073 394380873 883967036 308174796 529015508 605508724 60681535 964660290 181078792 29513434 892136112 315128588 996002759 481226559 560836295 250320095 944373873 770263816 391089809 206643923 933164330 599852002 315970107 571813809 803694924 581762153 93794948 777147529 323426273 554400982 176172717 776390312 223527017 87326578 35022880 291967561 876220693 353298314 555009879 562089932 937788528 776448632 220256526 328410564 311334827 571139917 357955786 317730224 416199365 819799192 106229570 755314842 38461403 818236671 617582416 352018180 982682347 412886039 617483805 773909546 732272025 516480702 14305788 554564113 429299169 652413454 735802916 225493280 352144998 730386417 936341861 119802774 806148822 134092418 567091433 670487117 786911832 129892051 248667131 187028236 190840771 761535399 414245501 114546972 96021918 296194506 297490202 989326009 167692475 299333343 153467417 511761601 783987464 846195350 523595445 270210713 993411588 142858344 913755968 659729464 196761080 488116070 974325409 612242029 751337284 67942586 312759451 85384003 100903928 679411743 762002497 409696133 668307822 630110400 799444289 681175851 5163358 929795465 34475378 437122476 542417537 491689137 185888562 186688063 355597229 17910111 277168783 510406198 895216042 179251108 825639070 909709922 49218792 492129218 298401171 409060768 471899028 619538707 502671323 260900240 718522288 402134926 202787258 509779081 998951038 836143739 189313087 978740372 38981999 813131670 644428800 639930875 273635653 558232084 31528799 890581363 207191485 590467561 996714467 460284807 957302416 191925488 833438854 587565361 573061919 753372286 209117154 686877373 142688588 55834909 561061614 42248431 544625065 107380875 667656735 703318392 324385437 715066058 984487693 334879810 948916087 342143434 810546418 259235215 236451012 225038787 703093001 413348914 284302178 733684566 32047816 462878127 965757169 119744480 920560886 361118918 411475653 863279256 63271192 789910040 106817485 57692485 972795696 496576995 586623416 406536063 385281523 119461575 175266670 275183773 248545935 600210471 477603247 857815589 557297003 308038269 374856576 938190153 641490165 979476539 995126102 623787747 573505754 5646334 115376970 547050075 916778909 336326871 870148528 599379785 658758125 630222162 928545442 999857094 300614164 291877604 12110713 185646191 860443911 237821450 500199755 861767929 252166160 479886887 96189524 575107396 33003539 894696493 839047061 709276414 906997773 515727913 973488374 180855418 788878769 406658613 450904479 87308511 634386911 476236944 564572220 835276114 913576363 102778569 518692413 180674373 455082676 745023034 506249342 211862737 805231115 452205844 443735547 62698701 844147713 47084779 665049775 442733811 546418304 571478826 687034592 909587998 899317538 803404748 440912804 798425216 467276455 748133141 972359423 86166514 454396457 188591220 279100269 393483125 688352387 813613436 764084634 7932169 549052431 398409129 132608106 766128825 541065012 128017592 291063199 595573510 717493976 280384407 38053003 475022523 156678461 901686252 725597361 252829425 650214922 268983644 30081811 776658477 322319772 479971466 36439520 913488718 297707648 617527943 650941791 90704795 528816405 552789703 285639374 902865730 791822841 764751290 699094307 220615970 114979746 920401070 160123867 33620632 914344864 937361266 997920831 717646619 315000511 426001407 100704630 671567205 521377783 564427715 447618547 192877495 399010089 507331265 233274097 512219423 251223947 853537913 11170718 536021209 81307454 152231453 255973079 127006467 780898778 862679241 879066530 583534993 761406550 76880837 583008531 351563575 745693394 137109843 183595849 837802130 26243030 10198057 697712533 956841926 565488695 604768389 129457737 737659638 31364116 360670971 491247040 939130224 695205967 196475567 518289575 720974107 974168959 628033093 383240642 478949675 221886881 464700304 833575490 691732460 668852417 721444901 56403786 23275980 439015361 287227861 338924101 315297214 347676272 613980655 811175255 158705595 334583382 653533408 537430743 330264225 836066741 596570509 487481735 90769308 942444363 58622685 152568659 649815294 720077223 279193726 81421486 397315520 91284239 461081451 299472851 190541730 747509780 462158349 741406862 872197809 116141664 617134352 946930271 10486752 912694460 802835467 97706986 582577555 993321414 70038845 726076024 212904051 28808323 36412824 139859349 412038642 877983201 117221111 607128744 471030856 961507973 561816593 788945811 755299300 126385527 917825154 820733100 137957365 68420759 726882474 481351265 200104261 299603128 664070443 708170781 898107865 671036756 234263987 341152273 260908253 741084044 301474086 602760512 419541423 163856683 778941338 403376442 31686452 832237583 668721556 349224400 569300506 708038174 4169660 789721003 872365971 757115764 166180337 80542956 23544233 134752705 322305199 773036060 296080350 405649300 406521543 973025269 93631642 476684116 309076276 247152542 676939291 392235988 455918501 862109383 651246318 315060628 33915444 128803387 892655311 778156367 770641687 999938612 261856215 742897541 254733679 335643673 610046743 93699609 673981771 222982983 546942940 683659977 785894168 261062112 353183623 856754430 213480564 204152741 429927880 388496992 340435496 618573710 607340400 459744466 738982675 263337948 52108827 427836900 211680708 385793174 547961358 22832422 576014174 543771132 286709814 86967223 149806702 105410265 561115315 972099901 209747148 44706370 292299087 646178930 56230029 848314024 376328956 984061032 76672869 540637828 549355595 455613202 134272199 493596219 938962945 270883314 44013061 694326155 528964591 705500636 828797605 896677955 18180227 809477613 650305170 38746928 553016288 870668722 363452966 582528501 647868080 175085946 814784584 341609227 742765270 984028744 471048333 271328187 285617650 526623175 583627440 69859271 651436458 929328057 96189897 931903056 29308582 235361540 985859465 796995706 780477103 220531776 388190692 216493911 884945875 156568966 416754267 363984462 796235340 659199166 128170440 769304012 91237910 408880002 751818960 511970930 877692346 757862166 581949681 785549071 494226678 579233624 871845102 75570613 476874950 277586598 932281941 327015946 488667046 276176124 862223362 795253128 40404738 620007360 784840451 838540818 345872567 84344820 568581370 887507499 683575529 449205990 837988496 729184249 333014192 700967051 289566702 352137579 471929264 312375311 691480809 59819907 133535487 825625301 506396302 618368428 32515148 21674511 319177351 713034961 793844527 550514984 961278062 904812778 723300818 217490046 462084515 904916357 229076428 590442636 102502857 327875289 567595837 30742970 345531443 854129407 619997986 448741091 973809634 964142984 14636106 289452953 765308225 672770379 208888584 975155302 843321323 54023665 994855934 296427259 413078262 185080365 669158498 281168124 949686502 754686878 809240095 534528535 685924516 854991925 834374532 646099149 509474662 635387058 279372371 533868083 227809713 859973051 526680870 687147074 479099659 635939403 1452978 59268907 943035966 276793779 251091681 28619682 690693028 91490935 211447496 186811810 169338194 269017582 876851787 337436419 732531446 350393694 811832965 921688460 920458636 550073839 499772468 514793207 738295760 283889327 172423677 996671544 623413708 267391535 202769338 116528044 592961343 341306622 865835505 682295975 174356206 758024266 593166657 24231705 452450072 811989559 774094869 656251000 63886139 581848002 403801247 438546322 841744061 592128271 17149208 34685661 509532181 953671203 820983571 325813424 629574287 392349574 798671644 559525201 210960421 209272094 508507674 686482046 700973216 123120251 54361146 606374545 229173583 328000685 786982817 987501112 352766242 175964866 370951848 646757711 35980470 243842348 586556289 320698197 174720083 807345298 21075692 444924893 209774366 397707056 446961198 497818964 341672122 813490391 879493880 268833901 601821239 688446013 875215073 739585003 694363992 840847260 273944123 872317786 162896524 568735745 352455513 817390110 423782904 663416163 307815739 553133612 790472852 232364782 920309939 652811637 375532834 393316486 26398753 273688499 495088124 764783299 29119794 116586745 496142451 85195404 848591304 264165406 120615669 379370928 343326949 620346800 661879056 429324885 722221192 199216076 267856129 719850887 16928338 138102950 972979689 595794366 752912726 657415818 23064877 799848954 842358274 621723350 964822472 444235221 779782844 696550271 126958182 136346740 562537901 410946764 173626782 516573326 25359560 593584108 497732761 363841063 462419940 127451293 630057589 7652761 549956970 178034950 373293533 741089352 975341124 152682514 290899954 62512133 577826924 76251541 248573556 556207825 612312793 768665431 741070220 853757788 531814543 122501784 88844987 392540640 289802110 623041781 981623415 393101333 115562924 138220241 503723288 523369778 773628475 77275941 400092561 101954775 499099310 369535290 982867447 628312384 223188040 167011217 69776 882416667 930988183 257540056 208605895 878370180 449177738 372653890 734285377 722773028 815246769 515813742 54889853 637106951 449632082 349109734 84370667 179484175 288236897 636062869 95797231 905483746 214495905 551198138 276150295 727754503 341610361 479280166 531603592 260790518 486009084 334510746 336616441 741090989 177409302 739355872 384449159 359397617 852809295 351403061 812348558 654454027 33107507 487556840 187123656 824867291 507682719 94091942 268370761 948099022 61805068 833518709 922915733 114159691 359454969 445842400 538378706 635568053 340101910 443861539 190627892 114814242 934287810 728632922 843485793 603227977 180762078 694393416 178668513 161703397 655173657 256808157 967376990 898782219 248321145 684635782 417188361 505040001 364681912 497507621 91704858 376618660 243491846 39549000 556955722 200941794 1622748 983290191 385323194 87176018 496531895 27804034 808444959 380018581 619161205 404867073 510685818 644467831 354364899 716971955 59513376 379160990 154029323 574002865 200030358 669530773 93433173 157920950 697078039 180998296 138596303 631661954 450063291 519590499 937308746 585342692 171834849 581816211 446118969 487826140 612438096 694959473 309933673 80140805 433677970 410443433 259697340 714428947 857381484 400697611 789659471 20077979 871879220 418912799 583128143 618704279 123368352 237809897 727360662 931664289 597026166 570018262 521805420 509465018 861371135 618775417 673378190 611449017 649978566 452878571 333873960 559631906 336073510 74099826 212357945 110734847 381920875 476066980 246073225 970246656 79856475 197313995 189955325 139298914 434170394 914065354 40441937 835702165 264121451 929757814 412188741 763364795 293736893 228922852 343613241 99199718 400210722 279263338 628664265 615460656 613498712 32718979 867481856 144899581 751265134 725148441 74024609 626969606 370584945 8677711 995040791 98257660 903506009 774667397 411075735 239111207 946982302 533144969 296199485 300585487 980063701 595317555 519479198 984751480 648200342 470313170 216250204 613637190 908579672 34086524 654072856 427410000 387128056 949105858 57172299 561952340 729721818 394519332 612756713 173310218 782807027 415877420 643736191 115558183 211636904 248119864 423614822 792292758 551566955 895637010 770586401 971424307 67508258 514472244 361234679 793829369 370119406 976761066 942962898 110290061 1697563 466433525 333269747 958923788 146115000 178821963 590388266 581069022 419406043 109144584 987544291 950361159 238680061 590221242 308903539 855302539 117054434 48560527 889711043 468205347 881061469 453405970 832563088 445765799 195618916 591535951 661748845 822483302 712045005 646904455 337159663 802869183 588378927 278243622 454524213 405961132 520637810 926958296 922311441 648811087 646399474 595292118 226583067 912485381 908660401 329588095 233228377 835754545 732033962 447624964 615443844 278957957 757782974 55554034 261008604 697496837 236057562 709489295 633339596 573606875 877292195 382906361 671611622 121286917 23646440 992886038 556393763 998220613 888534229 9010680 886501114 264068909 930671595 601390650 492213688 203488372 628650841 42648934 929938359 187088116 371882501 892404204 846254863 286424174 152731261 447874306 26288199 272958161 88720232 93246278 644411002 889083107 704947777 961229699 94317393 775286776 889814698 678107931 637465539 415914352 872432532 420429323 312959842 338420855 190904731 786725922 685645560 806319497 778861800 644190981 449335447 44616213 498587374 771195158 757669140 252155290 760956063 93218782 97899027 828299018 626546804 746184199 354041832 665104672 719951101 491213499 483552965 163067307 193978798 747576422 479281739 17563881 601342398 395954021 180666466 365326094 737466535 368623646 742589713 844967451 220494866 615659092 486802766 317549554 730431882 245381002 630346753 873145501 772668280 847973821 627403968 645115569 729972839 483179177 544470346 911812488 127310 275445296 674068840 34648808 270080335 972565928 68256802 643258147 465832693 673665896 641460139 405797495 822203402 297663576 983905731 700832720 959395404 158800320 218591646 558900973 257031021 371356438 271255926 324549795 528736497 574330209 958949831 940363038 161811112 657697119 905373963 506852719 440707668 94285389 86554277 162862420 575980802 509957867 877756976 733566494 89449916 281645382 563855284 335172575 505368684 163315558 298900800 825364872 273396522 824185916 333229348 576331351 191036558 231474256 589255937 645591095 778618641 782329701 35896130 355262827 141292186 226333813 600973237 947570605 133166167 896533724 650923928 702825959 121773546 78333673 894958932 600557109 794398871 725459664 706164281 819046890 808812655 365664614 610240240 452283776 516570140 475612399 323944596 509734713 35127451 996521007 424143529 436580120 117142383 958082221 458512879 690774063 607980739 971632198 446650712 586543398 647583043 214203731 108505487 998900272 587060162 109900747 431145447 299186398 251121482 997729694 417340343 3215521 406346379 358859473 264171209 759361534 393786790 795263489 748672278 461984846 102135750 727128449 431190144 305253579 139284353 376668452 904074529 840979044 765743881 90754053 687701332 331615014 923704891 180108366 186138240 180091929 652304460 910845496 743859961 44771605 576192153 13189735 129916638 119586594 627356217 728548861 27114886 249802719 370573278 863786608 767918028 465612735 108945377 365075094 140011881 365640208 220626501 423543176 921190357 310910517 477214782 638856928 19432011 148343611 466036473 750778807 412390165 327271973 970738637 880194322 960669806 976816092 59038518 638150468 905325614 887601226 873968508 835249772 116809572 875177040 446842349 801310405 686814913 274828768 410004525 899005051 619297480 335084985 34055566 725464853 67342402 889118236 761973248 585901927 882249609 153829866 716522064 965845767 731770699 655748439 189755534 481654426 111650459 529168456 187041821 152855312 617801540 834350139 947630156 288198238 371145101 617312167 611336731 457561190 794534832 532242061 636529566 912080570 567361721 107740628 219657599 724698495 267853796 861481334 454762622 969553690 888404804 833334501 855084446 73962548 385261493 386267146 322262118 735302033 454195844 317160892 705435414 94074664 919323527 69634921 528715925 159341404 755126544 230496080 220327954 995116449 746502570 127694825 189999501 618661871 818144207 381897348 50392865 536882444 485979560 484402634 635627875 58787154 986646821 53308591 620927346 670434106 771488783 792111239 179185454 179796091 39304339 278919281 545731810 635517801 452134572 52630653 493170434 828391000 319717163 797214870 463144417 248658408 983795894 137552967 645705126 861162412 66468129 244282234 362896720 926493607 494193795 239908489 277077578 888788450 831952229 193149727 199360316 500467433 422652916 589769611 475456806 223229681 284781721 947334033 621323492 976937691 884419375 590284527 619213334 433233929 545974937 376508355 104269920 812642233 485595527 259245204 270071925 895434687 873661872 959996826 388978208 666947845 138397841 301374581 460651650 572538273 78985465 76595434 768948763 784741976 31201911 250678305 612087287 262111330 441376568 136416302 207081014 639974635 694030080 57359921 954798365 991679555 329788214 604328773 734960572 53827929 219308302 96880740 69006599 825343102 440604241 223896200 748655895 788957617 953359639 469059699 330042276 946708730 805525244 752319038 247967747 537503578 374592809 398532910 636121766 695593057 987210176 836860217 146227924 229183730 701325339 208724474 97667659 590302923 696131894 522388769 670529779 891085691 174775760 377458096 225309679 547770514 267072401 269275107 866216594 480688409 128949836 486157851 968040206 374183929 467931671 620937158 893407401 494539070 438523308 991547465 781559048 600778791 5360026 206704744 334538844 506556057 91523660 447851934 677154346 815234121 720914957 590343288 42335223 838231471 603867406 5727072 808265900 780091727 81539568 479267652 387868349 951936448 825135290 89087266 511524379 329503386 952645441 396255449 949479956 978767369 274527125 312198995 631348992 739399967 480901130 501013803 76433890 392218721 15073812 869033913 907700544 551968404 202330272 745974632 351373169 397522007 284310207 584029545 154956969 321515047 902079391 944450329 814421465 576945323 472007365 318225817 546177390 103618571 395178107 655493888 494663080 259265772 241739165 617621207 78114593 672525181 979846581 617319323 148417824 904914873 57466900 541506247 630488572 303036356 757300855 502307520 65506760 189286272 394934937 791611293 544158671 528337319 997831575 485957054 295218271 928418179 652512899 572985302 36077520 866122612 692608324 451864532 291100491 269161326 610040026 680932937 692703789 178930493 315635458 36736096 222114949 304277791 456352017 229590448 988802074 879073118 879994737 232304869 465041028 822544143 214101552 247774308 454515626 124753084 613701392 896599638 512652152 803810807 557414166 965484081 656038797 575397784 891772713 777260123 42403234 278439851 865398105 293128656 375643890 605718725 252223070 869136006 440833362 406759778 70745036 996391962 490798320 972693892 555793924 758335217 341856962 434063673 469137386 723941704 242890653 504362789 225386463 883116527 830964743 570814726 562341276 412887789 708693977 246253015 613593019 825633736 257743022 29386905 121941332 200062953 480779449 200611529 884301398 256312946 205674061 725267278 668322957 481849946 386203526 271432108 962972863 340805854 622191087 990199471 248038209 432605264 686021438 999783215 663850069 796324364 912184655 693456358 910610590 454624821 796383031 938356515 559376174 512039931 336549078 783241551 440378609 423385660 654022689 77959327 879619410 635073998 452119205 130589819 82500966 40663784 54591026 489214400 547070438 626048621 88988301 789454931 470128298 652003017 681600674 470891810 559409199 855692250 79063984 145706621 641351497 999334366 913273586 332975004 148531429 294803641 342691530 768057300 29371671 972471833 713676253 831396481 817136353 211167878 622734607 422674394 850603105 291638096 477279126 724592223 126256308 204312617 800488227 188670529 299121048 881560748 131010934 605896605 664537278 333139203 929585861 830211886 860063997 21528328 737417838 431059898 285275919 460568570 243531964 386213191 637516051 761507465 261308348 594009471 498640831 718311847 908767949 281402263 28735024 960971980 152279427 899554385 993477342 413145896 956395741 33114582 230142452 625185504 8028112 799186984 535243287 791919098 735222313 7369264 809518162 553738167 121868581 691577160 78009152 435999806 886595675 794702776 596464517 778440620 607292162 748266839 500373093 686124798 637693512 61992694 148298689 435409891 237413622 544267002 555154557 645892510 71598552 251517228 708179348 171737299 258688929 643705264 519525116 127214784 373585682 551825165 917217849 672692280 509220987 738042996 844934253 470628505 839722059 58076859 460152379 377766998 120740316 299157051 570697078 343570542 474601919 549859157 302599161 77308174 870073544 309922903 490818979 557933555 319730106 684934611 985570744 347114925 90755004 442825061 236559681 899388318 613177473 835894702 256078620 315621810 124738842 638390713 467963932 196400119 206240602 242408171 722551562 450273385 42196203 786074754 180232312 406871516 52461280 786427154 931463792 478670039 30609249 524053757 480317701 213987342 831205073 466060805 675795809 706960242 466237903 901805044 709643218 8629258 208263834 574537128 440388749 721628007 11055025 673759954 271397840 799210399 741733556 221169436 891787136 473637009 739207837 156379017 624130327 816663705 750578416 800332274 118805634 780709844 252180258 42958138 748612794 27457636 949076330 87845185 504722087 554042137 210720402 780151483 263024289 540925576 630725594 523400269 261596585 689235036 10494339 537578998 850662841 128180988 243338468 615315940 140445589 824141047 557027430 779057214 144295065 878478018 595987281 849879269 177097946 127849399 46385196 465863776 868469569 445089136 930365223 294425440 143898817 603167468 146311145 752044259 790474608 382594049 319403954 714480189 221740181 979874005 835029458 841362610 134891609 731135340 982708737 270153165 978964974 27409843 597987828 957693821 425677581 696792145 557870357 920785246 621901612 298101635 900316821 812689320 53349367 161624988 680521436 187527271 339203347 645865109 696689330 558227619 621092500 956796550 911034761 552318516 893745447 124901032 655673868 752266575 102612277 349088524 72618430 871835484 403700517 619779358 150229367 589721152 346078066 646058657 386832288 345568298 441693289 955595316 333744257 278397134 237554270 31014893 364989342 575303756 789756343 977844814 863003568 569818225 318414315 726940384 307649866 890634719 669833728 18481931 959652788 717359885 451643318 7250613 921058249 230841573 253232434 595608646 227887954 262727547 238019436 94507806 709977150 909461861 994399381 365740774 989270632 170017641 875949357 922735012 365178695 975798331 364789907 163458704 176777208 503660662 826165578 859964310 840647188 185832575 378781017 389914446 111726537 195697442 960883346 285833842 327248973 979884546 549622631 95430658 933335152 591418255 68478284 946021783 152745144 630519319 852156558 963258864 346699666 358164091 847964574 996078803 922635238 246779291 493509287 797516503 648166178 359229295 222302416 725850017 510961014 721988440 312807999 657306727 203680685 34169238 35462863 146610083 454335053 266106736 634001046 536537233 566283631 289112601 498093915 729813822 994437590 192038574 701875114 270010670 931838455 507500294 103045984 308952320 858365265 52727468 980174644 980989515 656225728 980866553 928749608 77736489 446414168 71247306 647194194 90604884 84429881 452800102 39508082 659474622 160888638 254051845 29192641 780959945 386423792 560970308 300506829 188164998 584107073 532539306 183404812 238411565 985850210 704790526 743845047 53920621 947104521 307009444 933698403 931258214 871224941 833751575 13522881 2330893 364407175 195656572 734863534 218326361 568254087 918288271 542214133 278489420 699852664 616887143 828504361 128225225 781345910 59731569 609373839 25305851 434383255 781421350 369912026 236652119 30381545 682218037 902850489 28772374 187954900 836631959 121616920 714514439 560753736 953780315 769420158 95259643 646384854 519168466 616281471 515954023 961662847 361703353 291651568 544759694 421575566 642099326 325529310 678924877 937711324 356054671 575944968 107256680 119024818 291140593 132844634 772007491 689089681 781336741 923894849 748522007 506515085 495581430 692378011 927011591 379295203 970668422 908375518 226497152 562677807 745047174 773304235 796114535 425387011 664331026 568380741 44576078 708032502 384827111 181962330 638116085 101900307 277028424 298691269 725322757 470095437 209413456 137786337 862637579 534032738 688049745 362469313 32316449 174643190 945050291 720672689 543801187 173861889 634765198 186459578 738154323 440219526 968965957 288728875 133883471 420013175 991233545 754495542 155087579 193084767 360186957 953179312 6494026 27093510 408244420 785720329 699236545 43318705 508099201 732589619 163790109 270715152 567176343 343061139 222736508 866253169 563930957 382445551 31791938 173051127 25278317 704699645 651904975 172973953 939744136 720118160 575379998 711774493 930690953 902253206 332163738 854445448 846004279 410522336 547061829 29501755 680750696 696951124 64380302 92356048 931958136 155705204 644593122 587665329 652681573 197589654 574556732 114162668 441524461 303938198 834351991 775025317 307176638 265611286 410164303 722390931 164308096 281175323 919152470 946973038 600006733 571545757 945856751 275870260 403729241 299491211 341724730 896007903 63790500 396508526 383808043 390152331 728786504 923879382 183489254 802368492 773445815 277690420 190911196 2160166 82604860 249072220 750298712 129966959 379065565 207173161 976440199 510583412 738363334 819879383 869879280 969163985 313561892 554973130 110062803 24422821 9531192 377418852 424738246 201928977 468610875 456057946 386747209 921475919 712015069 498071515 576116057 114089775 901748496 338814469 415611253 197808372 431666800 497380746 760002087 665836849 505774901 309543950 462830402 768118209 172427186 539182017 822499403 773655061 960602731 368886096 863914195 976632625 249251799 316256785 465748063 694668304 126135669 100722049 694432552 543458460 677551270 490869271 174037767 391344570 515687156 904276602 256256956 544234864 390939091 815819882 10209417 514230531 185313151 443722688 979912410 372365990 667151195 846456267 965435295 784217027 970102795 569494610 844728107 58885147 26502024 889427434 826458402 826369908 252252114 384048039 856127609 291073102 501358089 215008493 328209226 340949245 956622464 338688696 355478425 342708312 927272191 436492522 113094980 385023930 149705673 491939011 455612483 870980667 941992102 531278393 932173340 918864475 917216144 635789892 81385156 756093198 488353951 519680352 311884007 321711334 753625574 124351242 508489479 877986280 920963839 798102733 141161719 277841552 966357997 950471234 856882057 831108880 232278882 207698311 129418001 170666617 716478127 158202642 132477773 729225458 672209329 931544458 804716063 413757402 321990415 833585825 626872670 590401329 926815189 876370628 352824076 860576389 53859062 860988093 737117636 812157032 909300772 243014509 726560674 303569866 392261760 317877468 289776428 887755987 247871563 990976989 861024643 886650942 281213220 77731153 199105669 873578158 967535148 548960991 536780924 111365963 952490608 658377922 920577499 983183406 48318784 520885954 51457635 323068984 97209533 379191050 542097621 520364456 947138635 439507459 490036373 333889273 552771327 753003708 331753988 271525266 634828471 121072622 659207554 913113826 369765370 400364075 258434403 811729251 717241852 948155160 894965427 487190862 408199748 624668643 746775349 429172109 749219621 653482180 592849549 858127228 870242070 886022815 894791570 744869710 700885939 742194857 50745065 339860451 987545291 362815842 951241100 877090879 369531957 237540655 169320198 510875056 239704789 642649145 682395973 563574732 981607481 507283896 512149494 705258504 679623475 543081479 999739894 955642585 267443278 448987194 637028033 248704708 309089094 838766484 305904620 227420019 730154215 659835285 687744688 154961401 72473007 989623344 893377661 585399737 767256278 733438410 62575046 526422227 93765720 624554129 830298207 903534998 755105802 403180479 967200098 156024143 681819987 502728724 465195444 686659203 41051294 306611011 878051935 303924189 694632051 930137690 584665956 483667234 9931043 274967530 246390435 713017746 205451343 594888917 831742235 990722630 665310929 516385410 474190145 906056888 626265982 206188347 858544447 556622229 613655808 968809843 131971935 741443480 796909840 523523855 779125764 286095708 237080141 487270188 80263236 9516571 207944778 227834574 393242037 949387028 126556030 463375367 883953601 36507150 471781040 21000640 784248714 598315526 138930768 691237807 644659480 686686273 451558952 170882856 620526794 26429995 179043933 230260536 528670678 708342763 64521136 437580129 102974284 658962769 429117297 900468434 363974638 675480201 596538310 709643820 350739177 876243452 751791129 867204428 980737697 195468740 289734241 174688664 994618619 100318028 195232294 508541956 766095333 53564094 237060885 672514054 511125591 318692638 421868515 698069695 505650010 328742656 925289047 258826356 263721362 230171341 421114051 455457100 432329877 508774679 744418479 527813007 721331058 496065328 626422079 422456741 632328523 190400371 648155567 117771696 595252553 538967772 340134456 985935287 517781714 301117517 745248817 976979727 449317471 845061862 529152041 142987250 677066620 607567453 762629238 650707124 329007250 892506005 61331177 829681268 264909309 262577586 62592855 315199251 905914536 888028011 458202737 598336527 861550582 372820822 396511412 424493725 999500947 743359520 987061208 840043303 34855569 371835343 30411465 349423103 119238948 247730084 519703531 406745062 373369815 816093440 160587744 14586967 590803259 174226419 556535756 230239243 239522036 392972390 896618130 299566367 760731078 118586262 987181383 642773834 842690190 243233318 977708185 886952309 553303413 646480784 226086680 772889214 384383698 72007983 64789672 249422000 555250026 859653411 832574681 146856486 946903000 640232454 486808766 601688497 840662041 484182080 354683928 383831200 242052772 600065957 10126282 354496853 537992951 298929562 364386294 33861456 629863119 953889836 485040683 266600832 50920058 470752128 349482353 195367387 50226019 4460470 450109500 443973296 225580436 754649052 581746047 118965988 241297876 712505122 698924365 239632323 669031542 104754679 194024008 626045907 409611660 35083444 498185178 655058575 949023795 604437839 811363262 334557092 558622518 734899149 47707791 470007877 409310910 714916516 951243094 756224278 498399428 971551608 181658583 625985970 855842791 239244088 488295422 745616031 908654725 132254661 944665112 131070 491608559 203778121 949977657 134171998 986351012 689423689 228124017 662162267 532804449 644240556 469589319 165631611 225617652 9235124 268427739 675947938 729613363 139006539 214355074 831793121 689746940 933593341 453986707 713259561 741848073 838710990 587165337 33732806 925278701 328782404 690594742 552188776 36223781 227296806 726135967 910890254 890965630 48681070 928883088 655473472 66534359 284356010 986410130 209279978 775433661 209201161 37048142 474490646 159516917 571156580 900344569 409544604 394968925 934870378 343112191 944593347 622340843 69125338 859145470 628054542 27238636 731474532 146165486 63784436 570990898 806671753 127171989 576894104 308704941 734902875 207497332 916875862 837919385 119735829 148222998 170241519 366447895 988375975 967564027 415200271 511072418 781391124 105572101 491700677 987341419 606572143 145562048 469909246 780576821 533638194 259692102 803341567 528555101 274849191 353685428 437888942 741343156 379160953 214021219 815220655 695495415 126369074 146954132 465534090 427771837 118713851 845347721 52547025 260000298 769547147 415600037 105028312 200836794 1556151 296194766 359912906 489189250 954416303 807266690 221606681 201990965 508648290 415682290 766105777 425022262 108972488 367878028 885063852 408934490 368845550 190123145 289177319 922110726 783668301 817468143 195142294 409699 356073758 969234278 669168336 589951337 431156979 104288957 395483859 241969784 61032985 410438364 85952492 975547368 827215595 160381580 254762712 248956012 577157393 838696005 494449776 80815930 947987850 133451370 192532142 561900791 601629632 765876767 932287458 17107249 641796686 446655256 881907 795668356 871415352 273720431 883233501 508785682 366082600 809117029 133720718 267371544 827601663 156674094 151842892 733896377 585531752 434763012 430581768 867664981 710385845 327042917 529791338 55683661 970818392 916853580 700675735 425676544 759164687 37227427 376929486 556299581 817687773 302906948 15908318 272618855 581141169 194132379 856808875 343951625 480096774 840212323 939862184 315261548 454379401 732783010 612457940 137733659 18630169 114433299 181950285 485585712 542382117 443960238 957917101 632920343 530889309 414323454 275525437 649401814 851919514 991924653 844871809 138960793 182889856 60386144 406517270 366493952 469714787 863617547 345262463 215176231 180627873 278800676 560865231 275804206 500697499 878487330 762451310 644816340 863841469 730680354 167897041 580761495 91027657 460130606 162438843 649375029 550120417 969392074 377049082 982624139 705439188 324117690 344295322 522344582 411732777 116537721 633983436 588563456 478839578 767760788 315100946 93869340 108183933 529792640 715697440 246156120 425550124 53955567 898931783 197582345 843952349 224655438 187169001 522012534 159066333 708987391 625736162 664092120 727945931 125605351 954862486 493658860 436684764 905092359 451612768 254944401 998432246 166639385 369834621 14591078 137860067 443649385 843939332 716320991 955737123 497545841 669225328 363701719 222626717 629623562 756169768 398400828 740321252 781546848 738616546 909025844 394029487 266696314 324110767 483767142 446343120 170481411 722351918 625091539 389129823 17745059 260439180 460393037 675437556 186380208 540180380 220706287 990224185 116458451 819203475 638833431 294229851 963868003 52742074 200535878 234590180 421352605 362957509 544464412 749267654 9162955 552057198 885005870 885464362 682815324 823418221 874827019 962343530 225006977 943454722 888146321 361539873 977988061 588823774 2252567 956174244 743351810 148830440 224126101 658671882 867959063 995058640 405825152 122763126 838282663 169127527 408182444 108359668 558319553 181654415 109682381 364466630 164151758 360659792 699585416 557751540 115953512 927763505 632752079 269576302 133994605 901644223 148831076 914086008 304980415 571183505 247342825 41383941 16311301 56900941 432958091 663814003 698246650 283244904 327539640 157273558 906119225 391418687 320978328 454715354 765687690 972802191 244146399 470232266 408546381 982804710 418530325 402513419 130332947 590181812 73677411 869054247 868117944 806251628 90277224 914634770 782643720 641995912 141140421 66432864 797675887 266475451 288139732 207256198 936464833 851044004 330370123 332503644 968776938 919177299 640638172 186774121 436282016 761682380 984741410 370994040 964851507 631995929 290709037 610568720 138200235 14681794 728237959 717304967 923733368 511963082 499930092 218241650 743111630 221335876 609149325 699872592 930055628 292200210 465350119 887061067 820218777 239247841 943378622 976301282 203378473 123234487 353253503 473604362 733141740 947936368 136433412 485961075 626379243 913435655 309346431 693550286 238427211 117247033 700614217 970784594 475071395 19010006 463523392 613834845 534731144 527234701 797457451 322407557 703790457 693368140 705850010 624328147 256274028 56367942 330806941 979385925 641078643 586876078 347715650 814990850 797077778 708320140 745975131 420304799 52199960 321866337 559504549 531658570 322600069 762430632 774493325 483423259 96006788 280983888 642903781 424391327 395289133 40721320 84323465 607135634 320743641 961130254 670968435 522752542 491682733 898342482 821532802 72468144 756669982 855280984 24658580 613647770 906251945 727064953 119261321 179429841 31362631 714751003 700482766 687810739 668167943 965429033 960977245 540742168 510358639 184984685 952523982 365621148 577966040 575586110 447244345 677639916 113345766 389971273 1911780 694089816 824414856 874836112 746163090 902771558 611401347 170208360 425891033 913424558 161582863 806921418 219851118 800687322 255234700 953032653 246888860 57747585 534423915 982147753 806165586 65111612 382928098 731268010 762350899 780285969 718189697 825633922 985467742 925002481 117181480 318530752 952216252 27208541 762943485 154031812 16417815 109543501 296572078 830890488 907421145 787023110 792297087 971874983 454764798 98624730 217880536 736070204 358068 562177468 705618706 188954723 836087401 377411098 729270417 560866887 323071964 623266775 943325899 121450236 515372894 524177990 144649742 610291072 585354597 469880472 869866109 855026913 829681002 662662283 584941267 585048735 764809359 272566110 13890983 685086827 713741753 468549964 452783862 334289987 998999010 994637561 554743994 889200544 973086760 723192235 708589369 816033962 416043279 810597333 612816001 721965920 300763031 922440125 395635895 221342844 710615472 595598835 709936373 918746215 354887636 745781052 623452924 921393520 968365536 550710391 229436078 859925173 16692904 530587981 545284509 466353391 770739320 568737067 744326558 401847865 493408346 164019023 838715119 712910807 202289376 900172894 826789134 951914447 709068119 261461815 525449810 466410380 908493153 704125586 966878369 181506329 115550537 889333529 220597993 3909306 491210973 812632706 915213162 993404072 573577196 590904797 663293960 921662546 710419626 883042292 981485151 940999582 818284448 884519650 95169357 293018246 534824621 1674628 572813593 256826412 970318454 83675232 70550184 76128544 486583390 155429237 747466332 168574144 572811799 524277396 755466978 99727445 370191458 677496268 606945620 373433872 467582360 655027503 51728426 967680220 148034159 711123235 321845640 410016691 16752796 748934824 138328736 578566649 482534332 772049700 197980149 768561599 3610328 864911997 905988311 450211158 624153650 583109204 269080842 990197148 331005127 849563694 149929180 572057358 440928007 780935943 315516906 891185249 741167047 741917120 736259503 314923576 148715131 592436883 85471395 522806091 222991938 275757277 390486542 321110081 292706500 62835052 977865454 717885738 83528428 911933483 941800201 562992698 711035853 468183381 255952891 362016545 30619022 528259015 499753656 351152131 34421955 615376221 239365946 793577118 84772945 626825968 869407911 116452500 275897810 342757166 872346873 307067008 596364509 588592649 237781629 731027068 726912307 308230449 150781335 202402524 360777563 624396200 287101192 348300204 160605846 579192076 996445573 718337830 627115659 369438833 424377319 102362328 139590042 352737460 73937399 45410203 900549076 702800731 955547204 153353075 324396100 207400661 18041035 625866121 746944252 471074366 241096409 311009893 912380196 409755204 667327356 477812827 239905571 474834 544097127 747156741 127823396 504199375 909268354 3612367 206840610 539365693 208763856 470884028 466786113 464865320 52219803 206501769 789621752 887930085 263345528 744300402 442026605 300292034 725608101 722867824 967821202 530120814 933372600 293828705 827408447 779231598 687409064 66470237 543047991 183880840 72116179 304484187 867724780 864297028 660125138 89718068 335044656 458683730 868826434 198526615 99541201 637769348 480097974 573849124 611564661 480954684 440639503 531586833 467379181 261261215 891605681 550779115 787706990 940683681 468364675 841663067 657324691 269527002 130282256 570696940 485363041 732070813 541315673 793779090 814356284 277294922 184096128 825015760 841589238 318647041 651682296 23847703 772246623 567362179 982432013 62134628 583753840 520077380 418042273 812021389 443620068 734197735 529511611 234208717 642033711 549153840 998699702 897357862 256177486 70229477 943748956 26546825 278702745 600573874 490219137 338539164 854611843 405965756 744234696 700471102 220253110 413088438 114993135 589786503 815631959 777067205 70120978 114255723 427781060 594060914 454647803 974053367 89688241 72450058 339233594 243235474 936802645 950973836 454157499 160711413 998286382 986958337 911282383 72198596 761998235 338125592 396162749 485408563 998840275 264141795 287078699 225297083 584330883 183623719 50856261 588910857 658465710 700530102 730684254 84976229 976635415 340705386 390098407 261992834 919814734 161073026 738043387 16303757 957068623 914332580 794238315 198617717 28103462 15566984 915317970 658782005 242356025 902607392 68426787 935103582 229876482 386503507 48878595 729502978 730198845 31482071 977828140 683584836 746030239 50477672 388631456 111706404 316389685 524342679 929206994 654510810 453265501 959869414 350173615 747060849 805028460 759187270 865811002 635661585 559189574 496087314 56892786 168186556 12801796 883963344 622543804 8720891 77420009 75019706 608510508 573283821 345045043 225910416 263681639 621924538 47392406 900215804 389030720 380067356 671628074 494088987 862465362 831696642 777688286 947340957 497827919 47695484 550337752 824711210 477526596 102171946 172498403 61118189 771222224 314706737 554242605 627396869 811677125 519839666 814921979 679545460 911834288 904439646 5528366 361217738 767098011 776866404 372636203 566437344 729738963 269333656 481061375 424034221 781025346 871844754 772718876 999767581 460018864 420962474 458839863 250990235 187967329 206653266 407684633 663254959 43611590 97999451 324793445 459926120 669676243 772888027 415751007 563623908 665995435 690042638 128440510 958899738 494369201 630662617 897104710 98816085 618211764 114133439 732865544 379884083 55894299 240666542 688706462 19083003 818992637 14859804 589221599 26226264 814059529 902780318 837653862 539944352 470979613 773973891 981839675 559157796 264075748 654142268 718945052 858868411 537908782 714235813 385874204 222225593 599671895 104390974 838590560 197328606 941214280 439786664 666724200 181360035 148939330 355261051 192600166 506477431 705133089 395316723 378517745 739194328 926107064 89816891 53973218 821908124 829121847 157393759 401120633 683294108 145468073 417914049 259214178 98653559 648731164 765182133 994495055 110964800 584175462 556080182 455374035 312692213 870606364 952147618 700990489 471823913 678354785 511970449 723832523 849523522 781578442 623948155 271893419 875851564 852491685 740421876 111582923 775158859 30616014 859281955 835859567 44634579 734139728 565636951 904842201 156679893 432078677 785565137 436738131 261094259 787065969 682681775 560720685 765756129 398987745 567345076 916879264 41252875 396050829 186378166 678421251 924469059 487657455 862637257 657706874 988765437 488566057 121310653 268666706 45176053 824749937 322843491 155740983 704545743 297318798 827898221 639498136 592603026 428181050 84630129 794346263 675104621 192328247 769815530 77024474 597382841 367543906 958158350 425380469 216800530 738611743 468846151 459067728 356022057 936925228 515295897 84128002 926763781 828187396 476036857 807346127 896359146 796222932 482876081 702012317 269804728 674964637 34373918 182658969 426679391 829121958 25478915 616578864 866131995 184438960 554295141 679933582 485677577 483068985 626731326 26556557 165524578 524842938 432957774 201726383 82110103 589816826 500246869 932809117 615229113 616243682 401409074 419310437 359571769 347388558 523274354 785242898 937696924 328677693 979005407 812121633 360198415 414934800 846987100 292031148 358425189 562188964 43576563 423053742 578671326 80837175 7554740 1585046 584579643 627519326 806956654 139349561 739640083 685661202 545411381 803918705 164071448 753696563 692623033 130596604 12450881 650781952 12762592 865329712 34623692 282320080 533768612 416281898 492652273 167328864 601093703 50971628 664328450 438587975 873928525 565208533 470859804 862900664 596238331 604199973 517857996 441122009 853160525 565328966 12382269 388926764 785945399 431466365 873016878 924126468 82911580 361660552 979478607 70711798 602443672 595431024 757037008 854993462 108494131 19067297 931282397 249936156 617789128 456027388 877877735 962384873 926449714 977206683 756368747 367525064 421311180 361177197 127031593 555140811 309718182 340160120 559891917 756708389 625600936 18240927 595248706 125880875 710244393 354742861 124405081 4506020 847706466 801941860 9229444 72541439 908384331 805361984 796962945 526953272 362696799 406891856 658189350 674750131 424216673 500968898 581345674 28312353 195667113 687826750 995050918 410848289 598439169 807013801 995841975 429380244 674418364 69997105 698588121 128435594 134161763 394851278 551394864 607032488 838549715 15290308 704482965 967347535 975601114 427907434 758901202 506415447 79242976 484367181 698670617 693766962 801716106 471203715 541745406 947823723 723802099 885791977 797350430 983006349 960237016 954937908 803263795 256595733 71979585 557295436 419164838 491653203 977285792 225902692 617633747 336382584 418065908 106019107 618311454 823203502 352463 213583489 809486002 634457310 913521231 997051520 785289020 288930357 289703719 906064246 840479777 629041387 866951863 979199534 150530185 995607842 103376431 161066496 842248420 397357929 256203544 704533654 590692774 924019225 558723534 955600697 892140011 300323747 963756682 687630304 12921640 582007560 760391071 86705469 886474566 666961149 507897547 238734334 492845341 991057553 106749708 734857810 109988549 956844423 170243465 579434136 56743106 394434640 711426430 157160014 970041729 675602555 597121463 556813532 653189876 963520193 445625807 873689650 195384875 433572579 528875907 567022622 451359187 165705201 299108035 839395946 254747568 28771912 72746927 266885481 803289775 953138511 160461866 279147801 432086637 111416702 697477656 806227594 769370113 176101919 647983217 752177024 984426737 537528929 872013892 189538193 739093942 394341426 85351318 231138483 836520881 912107820 793893234 166920339 24466638 743552608 830679484 906939215 947056542 942876225 29237970 842832197 266455522 419813236 585722136 455226517 703912537 593416669 698525641 582315551 364546879 862502921 137040685 924724939 161847849 901610811 617967520 888176117 212184191 677500174 141259552 234300504 247016837 115845125 198636396 646107501 388900878 971261860 384727265 226430356 264434249 580243470 490914973 772087295 56315441 67582103 966918431 540329261 628622677 182351814 966093205 239141107 563267223 484415096 572037640 595698426 300540132 588414557 939269426 893465988 779094996 115203027 47503649 192404869 140806351 670049367 87170439 172170079 124516098 324688539 390672132 851009032 385289958 6803346 282987091 221660972 829779169 37152138 608028861 782070209 118794606 506114197 844709811 364088562 483432770 982668928 845010952 571662994 775222482 991884504 323549205 336415563 864080146 253990506 550911903 931292782 527215920 70580580 243351680 37243176 221998534 531009080 756639838 835124768 121907896 386468809 481012252 366549885 513325948 813835572 497068426 484272139 268401321 568280528 38817387 815473394 771553277 240270058 498470383 646688697 907322729 921552811 965162955 858859101 646752301 566016876 107627622 385331737 457768648 543925807 526330015 243834301 124546067 172528012 751832381 202860638 984716208 166041189 115571112 425178679 750878534 484235709 512027363 51465072 592839667 294664899 619861451 621721729 838108940 206205696 926508820 477662541 710595994 853707545 77380591 432820608 576160148 440427946 554310967 710928647 680633683 389010643 519010420 672537522 538135391 30757863 295822170 472350629 907676866 657271243 565567597 117587807 166616938 388582672 612008920 313691706 259000274 614585877 87069788 810816958 991004844 306514116 375088653 675413640 549124826 896879852 513450824 498761484 490391278 538161557 463452302 895877589 858259053 734413376 945842754 577496518 563537471 531154457 767931224 39053550 500964417 425100774 193958393 29602162 283897744 371352992 772363970 144889804 931193380 690069469 955215095 817058202 695258266 469923500 180659994 486850308 767729452 278691798 208911689 320986015 838981466 608666104 190134691 515964798 699836108 38825511 193858608 365863590 111423250 499971750 862925530 784914339 361365160 257656145 17809666 672755458 975778023 292525487 377642438 129200453 649426677 427112013 232976283 911492975 135170316 890744664 157755542 160048309 613536607 579056273 472807058 588279683 809537183 624551 208567345 493339850 436508405 159808326 111066457 108584997 562515833 292015633 681640802 530459918 239751383 262027318 323741663 629023715 587035176 82620125 30453749 630138207 99594499 189986953 999335825 497368581 309409556 443693341 696064857 473044381 590349471 831927082 108120592 403337673 33652871 345200508 560785637 811240056 21327171 89679963 935626575 444047680 743051804 893297326 503764696 555060801 617049051 666298707 400799644 819200312 969636366 758418681 936515202 850021577 638535346 333336536 449647759 928126967 363930138 795351386 69704816 946100971 376885238 367467420 431297030 840921386 380371988 920143182 991215078 666355695 613088717 377984308 948422295 839357229 656593840 793723370 809957571 440161631 961111571 508090071 827784160 279679162 828791935 147123438 850021553 240829708 684807901 310627170 327126694 91760187 918854014 290535665 599158243 109544552 707873740 797654273 118497290 542043827 355458513 325536208 154072729 114672381 867225012 332755980 675727772 581647863 215439705 643159739 984150479 866397182 39182582 480169487 775721947 452644950 684692485 969768589 485400877 862976056 634825209 496190246 178824656 989867105 637021767 820887791 591242975 328350128 298064150 275372920 187971341 708675363 165547371 653388645 296182230 835262769 66293457 119261180 979126873 633019120 834070165 300934725 729903890 409478461 368483663 110134353 834765202 479713520 261532461 392086565 731092728 365815886 870017973 458782181 799132522 292859226 920247081 916428344 5810658 481506996 77631380 679567969 644405097 189359128 17681409 537707070 769891009 621862853 126271971 68885810 896420046 287101654 428507105 294410940 871213506 108773683 811417143 989471921 84454422 213150026 184643724 652447367 156462240 702327555 482191739 516029890 346774384 411660756 516714093 301720198 425726417 801743799 548589813 675217368 231281031 977139262 703744666 904517155 851285512 706621515 761452084 44497956 431822433 438428411 329243010 557981983 375413252 195075846 679503889 829131989 333653970 450168370 464048601 443264672 169889202 680733659 918637415 590927923 697733705 539850424 383883683 129427219 26081 617706418 341911164 287647429 103071335 183270169 207556827 803189199 619293151 723415769 994877667 975694273 659141125 432779752 74817121 429231464 704071900 906491337 95187146 774451187 926115236 420226409 666840213 567761056 931722187 463937522 525453927 473594681 279667667 409312944 88831431 273416899 304905366 789369056 811257682 779171187 114397970 435245519 232416860 131112477 276337148 505377833 888131917 179653221 425186927 602138995 696506292 372490948 877881496 98513431 365216629 431680647 90465029 31892394 922915176 864691570 312664804 297813340 650443724 889120776 992150910 967654099 37179525 522270118 175309336 5323051 651695569 679992394 65031386 896389224 404041616 546883060 647272250 314039549 491551648 890550807 724749348 962660200 401760648 543306855 730131982 244617915 908763177 594070951 408731557 112708122 553547180 35456439 186417892 534670147 493899568 626925423 132018289 313431739 663218347 381812669 910159153 972849157 243983814 216779994 769677916 629012936 696093646 523446411 596485833 62375646 911579421 887365389 579158731 695125800 402261718 832380861 611441521 921455850 110915280 165482699 998651677 22022963 704677635 898117163 584060354 396534674 11730879 26720145 192631607 45629043 900055969 221328599 427752301 137160944 8006041 54823021 981735726 897451237 922786957 839101170 6486408 911983248 542443275 754158288 638026642 511076768 518692832 145594634 784956116 758084614 695167425 240093825 440329879 62181840 679867814 22765383 342845811 3846109 526589562 422530122 21161677 80730814 480457203 302587357 230602553 416030601 767826623 60666946 758150014 216743405 664268726 697747057 630517702 654766100 543600329 572397942 145216640 129718553 389354100 801533918 748736138 854087725 93517102 79950875 349696234 730696934 938685535 149054142 561320346 661510284 174582483 234166648 86301184 644853075 976957723 237127412 815969588 797342375 262938988 958345633 758925811 806442703 489111414 792162706 328082350 479071267 172937425 860110881 959768297 402892662 973506896 388529540 861370936 104371090 7890084 359754870 77822405 210157528 528419705 670774955 947011946 574667039 85502836 975868627 867451123 491281895 994899167 659018033 677648525 59618235 198868585 568586560 455314944 746399574 992397775 656386845 264457178 434344374 645095636 698102489 672141799 696634039 317518816 707645522 244260232 691531554 787851658 996114553 441355292 587407612 755451547 553970758 630743003 451322502 426389636 216852809 888273217 925476777 243599700 597297447 286194836 617387714 933536196 928688871 395099224 193815394 885130424 551546949 991960998 39314929 79100612 691769464 912945776 732923785 57648155 849843449 819043337 454098704 447112742 971113830 193479926 951653404 97272435 832261661 68471769 782104396 48122216 62994481 666736481 7447848 558850718 474581232 949455551 825876341 210455794 421543793 912475979 805853067 279173593 101016458 559607497 948740328 783212007 378673606 446402481 302067101 972511988 705171468 681404043 576810393 88915827 486467144 964636868 252896103 817740624 456897110 581806938 345453397 338248448 89530001 95514191 26496834 904198676 301696135 960023024 494947491 809869932 32798869 128311467 697038172 488662278 541484425 660118092 304892021 957762591 771638008 711541641 61740545 56437193 54259687 46795255 368862515 211036483 397868128 866117609 723056824 788479179 436785787 751814809 207715594 159859514 789750934 982797119 972978112 894468603 9602048 185170376 602903319 165415323 825204667 916038819 948923334 651789854 839480084 985340733 156819902 612378636 918618376 292903839 596912692 278520130 22985765 44682173 177720081 640293204 408783942 905579218 429841424 793705597 943393627 669059821 717407420 998708596 612426058 531961956 848962000 169790615 945851809 466515306 901035809 359175561 320564994 141240714 752016993 288699109 110617659 746915536 746490070 33656988 258681685 433377754 811504493 659310418 367837793 546851766 473095109 876694193 65016078 731027885 710340698 1935461 675639897 932980190 989962360 777703302 723141686 525015011 194498535 490222386 900915879 840793789 744276820 180643995 600029070 274725469 267125975 781479384 888836529 328934007 543232814 30935382 259286996 148445252 411856673 908802290 718398145 275172184 326839672 360563608 869676904 95886774 899439549 685959392 562446273 33000434 749953256 161473908 691353666 133461864 611837142 897217117 873305780 302318398 426188773 866283997 210247265 250784026 740267472 526486066 262051537 600358689 251035700 473761175 787991359 567714264 497416263 485368954 768210966 81250177 349277688 528992667 483716211 887318057 62916544 622419783 672273155 468742060 209608697 110952058 395589113 632567810 152865490 938614220 339561443 449251650 892020720 518511416 144465372 985044152 833984433 949205660 82121393 102514967 927606353 847438542 217395166 336058381 771145399 681261968 539018136 896338880 649589302 863347852 470570384 846918495 92658090 881083628 395895812 122129698 10213167 969662776 635603523 820912001 652261329 141100282 423214311 577663199 724566259 12081076 705668747 56265467 925805891 24547144 856185917 96267673 746875677 797853314 687599064 869218206 654315061 707509012 380597040 803143669 956697568 61492928 531903594 945177747 751302049 144726225 551925821 535168581 345872994 471210520 904430807 618041502 98733864 27372746 751442286 892840407 669524779 793932567 508980925 944181912 454736727 802495049 21723362 754231458 440001490 130705100 727792529 859034539 208752061 733933393 984285383 98531915 216999271 506855897 822751607 625031414 314464755 290180017 31611120 314108973 794106017 814513216 876599150 412369994 351870555 533754626 188203741 852393496 40750393 252954112 987035064 599792803 12514082 174954788 24563436 694322206 29367763 260829184 772030000 993458518 148710672 87776862 121661572 685681665 475342383 475199706 37686579 434137637 171387967 994418571 305291491 451676123 518606314 707568569 72777240 723147425 401671395 322103706 899043100 798549920 405048548 85191708 468433717 947575686 541571091 727910492 745293062 963196286 334604202 109682117 342564905 532573935 518472092 318888551 616501221 591503851 747783848 803797584 15349648 923362909 392042293 650043042 837868036 246493778 357826801 578115556 383563803 721483212 11058240 905712429 510215556 199512795 857883477 953764959 130079205 856434610 354571969 6867503 430026344 701584712 353587823 791175626 989958567 250447668 760817464 217786664 615600222 123084126 322593709 830731183 158386086 890536763 511828209 82118214 899355597 882486899 80438001 408213010 191191104 884328287 743300212 829532108 538743765 926415903 759043308 199958554 419091615 913404364 707742282 963655950 656924125 314389439 565224432 206676724 530215862 166625775 908319818 351504405 623342986 133306223 952200605 459872831 54045323 673299113 617726901 53535226 138931467 91129202 292038058 322241761 907110134 940806897 399001302 72872351 216579097 500389468 166543099 771100909 308621543 146859455 202587739 942767351 38554752 507828621 759370880 226256837 943262115 279791921 433337635 250456500 981030134 554777582 412013997 43534673 655133867 262515190 815030509 20122512 792178449 641977736 260174430 261237965 98755644 345956861 812216066 101684455 81125810 251561153 657717991 198594676 28185940 501970798 334600372 761976934 591765899 964082380 58968712 882641112 503994453 519218270 58500786 637578838 87015446 9165922 737852337 925111346 709857966 244374394 425825713 994858186 385582306 112107953 475984736 692164255 999923048 317222990 535876677 680721034 389173885 649746587 679818578 651500395 249401519 176399945 890018997 727950458 421577272 849897382 814002660 314400520 967674026 4005696 445890910 775475730 502530545 923176225 739765782 517655003 313120696 876441204 558204512 375221509 286716606 94734019 520479061 741069785 168496704 231280173 636601172 902530720 429258047 557895840 843568576 686948011 653405492 235346084 721889766 555005989 962172392 879029265 604864755 376351039 149357897 324706155 559085178 441180058 835995890 491845724 788586212 140833318 170917796 448963800 701241685 241783862 163156793 966487126 795055681 69665225 674510165 743364038 910839197 652176981 769834425 871202447 398890731 30825951 911838887 787465879 714005148 589657693 214954045 957362317 872359240 861143433 575166032 839275941 384525904 74265849 607160063 205530476 973694107 104409793 315243324 525570166 599442536 872733624 337714042 434854917 473155474 937400458 491319981 899837763 473654815 761368563 343777165 920861321 611083071 565585751 955190344 569982226 68868138 885393843 976609207 251087283 81442375 647346242 96024175 811298752 164842998 11997566 782270462 413357901 794035000 448043583 135977651 688081474 278226769 152617551 935900291 187739150 423195140 398135230 13923595 242953165 787311566 8086415 501502648 979423577 935338661 39525881 547809082 598969512 316685961 717146889 125207935 167812555 553341708 66655725 247521315 577501088 548615767 957206588 865041784 293135159 30069856 869204793 637172111 219006800 979605054 278499132 899594680 825438884 796184394 24588754 884404940 291077596 757521718 252412946 272205452 510802078 787013366 923795079 63533762 187148196 418273797 576849102 849632150 138159738 354709629 178119173 234188380 200321408 260429523 168539087 420576736 11387885 594427253 140392894 591967400 245284987 20067411 642996955 565950218 813976544 643405618 777727561 777981047 270973512 791758493 94795019 364045305 365473657 637322249 953970666 369444514 446976526 516492652 944062290 23088952 463183341 489523289 669649715 479535231 820272662 680921623 629013743 809688209 421182014 339059106 748840295 502001059 344657594 611518209 784202589 590381509 199732983 907817829 698415228 378077961 342311012 954569279 778949336 304868565 596987524 476327655 201045772 989254484 945924056 22960821 22865572 134458661 53019898 790216790 563785074 739157258 791879265 356774982 594512062 763585926 737331891 916797570 167377654 536244139 624245257 728505251 925618905 558877543 393096696 963428638 556862940 414323806 592581941 567353217 707985323 667953778 524131076 67842893 393964926 210263037 315019110 74765961 74529648 457359985 140768635 289441190 666471382 433428840 903076522 696944946 951785181 452609223 305505814 6881756 471021502 72728955 481538840 658998379 643196870 344723188 772167251 625941473 208447823 949970864 901521363 897029617 389291970 843867770 198521886 869326051 579040659 348192466 404962012 583317734 483102875 896658099 302849351 20224214 326566600 214415355 626063325 341156527 859885902 902204617 457667358 879449317 291967210 767903401 390344678 691093889 206790146 30802317 210515931 930536668 176418532 650474383 749803860 944163009 13609319 848651193 174903854 90865482 544773978 663609679 868209011 267332353 939729129 14472805 534866823 564689379 94683878 197073407 294868236 843372180 65067775 985543381 35663496 523279542 824281127 554403128 447612915 486811082 653426497 245551534 821816577 830522579 702426161 924682546 403563295 420058313 98299128 957470694 937379021 809590233 613013351 35943697 952271424 173968894 908270127 6021043 570274140 778447546 992916083 61311144 388320989 282021538 447050712 468254234 625874003 514370898 422453582 732915351 304607913 198988131 528135777 96548958 347534646 94673012 58191319 58506253 643317044 770942887 194794863 262172017 451439664 218608082 23657770 933206943 769125101 683145628 774494190 915602489 960114442 789168281 317119124 321718173 65249731 877181787 297202505 50805432 608056528 327146616 71099904 993336466 465452351 98839341 857816212 798946528 861067548 333078574 696730887 273644964 974903752 715456393 569253663 442780582 783324415 77975010 950405318 892155337 844592116 460694289 234624171 45723959 385666604 859256693 60592886 272689333 507020198 333486075 999480599 943812983 236266756 878474852 63992322 326340146 840456133 324970111 618902136 105509127 705880466 750891384 967778798 873715801 750530300 6492652 756521167 194142174 742433905 774347142 954933591 223808259 46544564 679601089 554178468 812107405 663057483 670398684 144184889 431254613 258009746 906837023 663750510 206069993 626391055 72761664 30788133 595990138 232270100 493717700 5032389 411494938 464412879 431120063 142615919 981432747 881552358 129193905 888263094 453905345 436921124 24792918 789983857 223208777 225544302 793222037 909320967 189756112 592781291 595763666 205282080 640916605 33507681 453996001 238554553 444388138 396713601 778172304 578257183 661530568 112152246 594562167 996058377 908482521 487149539 318972391 844250083 753595324 846910173 189616842 854232234 992989470 497472869 726038224 710153579 854743483 178269283 523413839 190494023 722184348 647249768 30328526 901123229 150532199 806719535 573122210 869538591 722379075 659351991 101556343 352901092 394871546 399395922 135063956 836140432 414898172 912520248 623950847 339415487 105196624 160792072 814433541 89988790 683260861 588133918 480361791 745301930 458697250 959183281 833103735 69045217 53773043 132010418 895877998 906643881 784605817 938434779 477414496 134853445 759969754 945714787 173601516 524890894 772577583 561906326 186193877 81902957 978167239 12209621 485586533 886676032 504532960 128606327 763515754 430888811 847979114 925269125 108480695 899084834 40423168 466735923 21480187 260834362 358422317 7737342 43145299 885801318 966199698 794281894 855160062 389289709 901072352 471222798 960064700 829962172 484411935 518677776 16567858 221279245 82417294 93709417 654430722 670260681 354974735 909166379 686897398 723069538 141913293 50053562 554614026 550779168 658644484 309376177 240329194 852033166 685541719 760009163 410294163 453707618 858232527 878889089 735033744 138903097 427236487 216789202 610426275 868425369 34936155 795846453 692436828 764355479 503531602 104062381 266126003 228976575 800961655 307668169 237352963 573349510 318308205 492894712 672020327 913667212 84096491 946079851 376725149 368121174 514705384 501269422 525761622 248194467 963039334 460774261 987559192 290273459 817383086 777656211 324690034 445951580 307260239 953927081 659074665 301444427 214162156 683174736 706896891 308981958 579485536 678815842 370219247 4383969 252404208 936310159 607603904 405903469 747172538 909117537 640322376 34642581 991578187 107834297 85596823 387441597 14042270 133612891 691298029 650702747 708524455 900395608 818841788 104172982 940283110 175320316 562995782 343509541 477064746 379313779 909589497 333220312 786102894 931367539 176218463 953332041 578991430 535052324 340963840 674040800 325355393 598719708 620043839 555749820 31780220 759052206 949424759 660114072 106587024 478761012 528906923 625944412 449097915 923436246 754917627 382632500 186464107 806695549 211842581 652677535 346090247 534086711 218681679 7932886 376183361 720857549 69258292 568964556 268563271 621356856 816415208 489851053 831432849 435999002 957450776 746233342 182021190 296336237 301939218 822678532 657481855 367542362 874620845 563528616 591534250 695506178 950726703 905614096 924378380 487665081 712385354 309911730 266315097 492263258 107683545 920612584 229481536 452664054 262008343 855668493 645845436 41716197 998999845 595529369 921509026 287647091 311131815 407425554 565119028 614513015 412413280 386810735 592359394 840296389 863622572 391800969 240726506 986764599 685722367 612221984 669691129 562807568 775821604 388746222 719421494 827489443 498326295 279848898 422034512 254800269 162477029 105660081 361271559 628228638 362104398 27516586 525780893 995323901 895406937 651089763 273344319 247816592 226437579 773892086 955547747 96408720 695936571 879796000 820937311 478002410 942791921 193972306 760897207 731325334 805068939 919522310 517433866 970015109 80742291 210120804 484010011 750871861 589708829 291327945 963852983 547296933 598277273 457378073 832681727 891841228 962416532 311475720 707782916 224061615 77624264 15563093 783097384 54536902 506947627 778840745 84356176 295869842 387181685 543465914 260928378 324622281 466926675 177408356 767138254 818571309 193446431 191185815 785339627 699395955 623816622 751420805 615535959 938984042 771340936 865250620 205947635 238601610 738751889 661865397 980310935 693491265 885295652 795416886 877898425 296398145 759375388 383145353 826621953 122864207 146724268 110569611 608596152 349633922 608785339 977787294 167903042 568487380 536523972 104894053 685509745 819069371 656875922 909147806 130858281 170054391 34454315 704405843 269340159 849952573 216280794 192709960 606800168 802384770 434778331 441241794 289140453 894305267 610032626 906113802 460021359 529203532 960413949 350074363 661768816 589714947 224417781 129465021 725610563 739626690 464207273 560866313 715049090 511823601 805053777 891958359 591334310 679748194 164371081 178877991 12957758 864944220 850344601 92828593 783995632 401683022 638381238 987241131 733188389 977095715 501571792 16038254 478063505 375117830 200051076 91038023 743857293 56889764 277572038 128041917 557297616 103730051 117842152 905699300 135262269 923892833 717003301 51989613 380232394 572123145 894256586 375111465 268057147 416185038 982294155 929624151 559866963 665202454 693046180 795160355 644393634 190960494 173556809 519326874 656100063 906057405 794223064 163831082 185609392 518356521 927114398 163228679 469486586 118271577 118390609 298189425 425586315 852950448 768687324 184600574 713236792 412763573 797186777 844191920 414657853 865295783 921359162 303255323 388160653 662245189 605104258 815984788 893432268 864738253 233911178 931022426 37585835 678321574 618518 322864357 887708448 464592085 388303975 424865672 305978568 380721782 973896475 604592066 825935393 8669055 941541142 711318791 53775556 135780182 252868340 323071939 155891728 830575211 970623218 867911259 483537083 926976680 308735992 791243171 999527232 700601950 599283777 286409634 218758188 365140272 864070789 353166082 665457842 519188116 423476345 599507150 230645332 500198121 226183345 194134220 562709806 362702502 622683389 141765164 374274575 221178939 27062379 187796626 743026305 621252073 299040994 852341710 61071465 282090612 582775084 52350645 185530547 373764386 429336351 723168519 117235819 444970230 228254256 403072705 600442586 347916685 436688368 255522642 221121093 117818629 30448394 153658286 786973650 526646364 709522881 6354743 184810093 677678262 496243072 213502680 631108555 807424052 193313612 120022615 520818961 480023732 627897091 120350682 850146527 859514221 60302887 791331073 923698471 21197350 134724948 878436994 537199337 523631404 519670735 269671418 186529242 103927656 957010131 436092011 320459378 820090787 402636057 343634252 563374632 65234894 81213886 669899728 817205331 442912829 460037067 634999472 498549066 733621138 58679230 127610390 668996679 811904703 760558884 215441335 332097684 988130724 545355279 187368751 841548630 832506320 611883011 49589122 837017560 821525175 234466681 77868139 108167225 473755453 621412381 92238392 883087710 709986642 29772246 946139782 504898372 723255136 537675805 278382578 433905552 811782578 859189244 505400119 285550262 738137135 641717945 380811196 124530658 246799597 644618797 340938614 413660969 60718951 379515699 800501630 558772120 176878546 587792918 389011436 825400247 882547703 802049489 30430544 915420399 595887419 98333667 128663840 207993994 829936917 721127262 454671890 926956110 154073607 298021660 936346375 493588317 621384551 30821635 635164814 598674246 750466775 131370542 225720718 740572664 402354801 449898289 432739163 583752471 189964454 437724631 201945250 263500770 761079706 582783800 489472922 344426242 31839662 339328629 770617446 210419098 219218673 917134384 707803845 79497617 886086467 24055411 566386693 93303810 850077319 355598662 311955456 271122660 776132942 94072821 447132204 297039952 404127046 374399136 858088544 798646193 507175869 198462244 488248357 196014555 476654024 126479784 130550133 798252979 693517735 313451302 453580665 101472169 415803267 29712608 856913950 833628210 366105679 642157291 4184002 312919431 296265464 464127334 643935976 495113929 297206574 62179345 166074040 73724361 358429127 695613780 120371094 494554524 888116200 313724708 696843209 593776674 858759680 815822315 734225734 536050916 346239320 889909748 351945619 917601775 643340976 799317865 98154046 747319644 672120764 489669140 967583876 143809339 711709934 636706860 124836523 448287973 119640848 621959782 379406616 239425080 830645114 624472605 258768744 69478689 535218386 727780284 401857571 653907460 252285742 89549109 80814893 61476842 272172060 962597703 945550451 214650920 649367040 133352050 866119030 706947064 62265555 177008326 670527294 181955336 721545349 255598354 493678675 605497158 841395555 460360330 882511270 133424683 125732888 671787483 406165223 258026794 483581137 796467137 45054372 843714850 525325984 13901095 710205080 846671389 755348912 789483145 259985872 941664021 808320389 557208361 969903821 683569799 203099514 111691551 790408823 676106047 485083010 192088054 607028265 157586532 277773829 952620536 622369133 962678483 516986217 249560227 185180238 664112221 51346404 674307633 302430904 363111091 609533360 685472005 382936732 987767478 96373430 401996433 607888631 795601286 854804007 946269114 615162501 736179836 317255088 121758551 434580280 732121165 598556133 664428633 106129089 439507636 421505697 541741647 212527268 536643838 638766715 715224351 916259300 980649906 331829230 662947224 10702957 699961852 298396818 213532906 61754088 854508365 520381102 837929922 256823199 396352840 440772131 118487296 991675654 359608365 814262867 737137238 904817856 289763166 693420706 426708209 618648130 747072493 144767821 226189513 998628244 65942392 320704739 692078764 766811613 205822004 592153475 614410190 946482878 877990116 992374233 708737115 360400292 514774615 585584758 830161588 690916857 277353476 771265507 329536379 736360201 696699976 906740583 311001550 772069219 382243522 358863751 103679701 224721454 78151345 238838153 223211731 518236108 873848147 119682973 557176016 872858618 115513426 9968529 410785307 409567516 612049633 804555780 423222385 215877630 659397734 6262714 434875759 559978594 40985847 320956296 74313557 434852601 361770154 384278496 505288679 309896128 855667353 534060953 829986719 241730121 482027001 9616209 117393569 638997545 912741588 623941686 239579005 919380204 772153092 598388804 636471334 664595754 798900122 156884367 433145143 386681786 127580576 3997555 129605807 647995618 588145450 240291852 542216363 498029910 320722488 720386368 300327606 218808459 255483119 474326343 118581660 921861718 109318445 645836916 82518007 575438384 611861138 859527692 816333253 217094023 842340580 846844217 212897516 923308477 593362126 487547628 709793427 476733101 271956535 579455395 19322819 531192574 614669942 55713031 472340795 477400753 870418002 628825336 64020368 444999942 742034753 207759545 922251873 773137265 765893391 807668552 3465373 695599407 688675043 501778451 626955791 50620126 134486113 933779018 658003672 815279445 356275002 140448469 911270715 247334826 486272358 555825268 553905765 849185026 708280088 202160794 976746830 869319793 257254491 414275867 246896346 438761524 40811009 276254891 764776250 104511410 86412355 342625709 491555050 48310079 868004278 545895660 790731516 444643042 566640460 62572348 872248966 407697551 616952777 893411904 403223234 593203686 930429998 724580676 656394320 37246258 806248903 793595310 754841596 210657265 42264398 488458894 291767040 942334408 821634666 513443796 845957708 457683752 370814932 151978132 377378871 525645285 152608750 142745100 147609601 235348207 121646787 820589551 452576221 938090167 487920312 390499022 834160173 243207727 243594249 838955750 297016666 548327901 817598043 97698701 701194056 281242714 558043455 841626713 348579127 358062517 451530241 618372064 590584009 368674740 258589442 923151653 225904613 678093711 389254546 839542708 655178960 396435769 822461656 397658829 110115552 814170382 87940885 593250621 816070214 705956773 573117513 624816190 178889978 674042624 220579338 889622680 955486243 361497473 74011474 185317040 694940813 504345985 307366912 397203380 74161542 479083848 955494593 603603377 522554750 363399907 234972142 330002811 944001259 733242753 626887360 150849663 917461869 60676267 382557434 12893761 343239881 45928870 641471741 871773688 892346805 873118836 480209261 441325567 563158975 908205207 607690339 845578521 937084060 413339886 136346249 605900379 87956160 148529453 945258033 161976109 309945172 465477866 277826652 989740452 681845139 587270815 971772533 387191754 525434374 244029422 258876728 870003506 965787452 810025012 8617541 25905705 825788769 676255892 850893669 914366162 236293520 176229394 782340685 555493311 273350209 372611239 426881099 165386871 578578431 625022764 796966999 749957349 913166322 962900475 480912841 502551687 321637774 581651658 698749050 228205295 773042166 230705888 435270068 730441044 767923909 632174 747864783 94405993 437304082 869231721 299435448 967722696 990464847 842338203 42009828 597137377 514287501 246439149 203201769 16171697 771142736 248173746 688963092 463398348 265490136 405040374 775041066 991569354 852143590 375353574 969823984 33176418 98885001 488664574 853421730 393946054 953812670 494531438 418349819 538539404 862134329 15899616 699166817 677206901 397422254 837164224 536285610 815203353 84202044 168150877 292306293 436931964 659257156 754390925 678940755 60905818 29923429 213399730 623238986 532437555 698046858 355537602 207964488 777170264 44685310 291714633 5385110 273298704 813742092 161122810 802349649 740005826 518608235 352566185 526228734 730793231 510749572 187760219 206258607 352307620 260205129 402579565 657300236 481731092 855821286 705542977 720820473 674609153 217374479 207137756 670021464 840065607 561001139 372240655 102181727 665986445 790378994 566268454 789258052 227186703 125488917 23312610 89783886 933899697 648620160 655836853 266002850 511979457 106264662 623475446 91576309 76526931 765179573 277290760 676088762 620805820 202782322 93118780 809431364 105567861 213921748 145305162 353680215 522191397 298291622 717010486 140222708 165977249 979181374 425646628 240191472 309226996 39304757 735473772 185665352 112727672 571840959 198590180 680964182 822456023 479152995 781300769 612285156 121178321 248001621 277776237 535601831 996419281 506078238 475219461 378469317 28523257 733143634 620467853 72769263 965827033 76559764 68491869 759337409 947092516 995288517 286501477 690671888 610502149 855539230 661134979 637315042 94336896 708231985 866170011 207862676 987458765 497782102 790619185 447059391 519018114 994398559 934673912 930624953 77982716 239088790 628109228 372455277 659791369 862447538 800287263 395960400 65675523 531720535 905286232 397604771 410461558 640858938 706697503 980396521 259999380 405163056 920875329 986616808 716869978 542514824 959692739 931212716 338800293 193324174 431935274 852693557 687642145 458705364 164081161 26990551 4654815 885789609 521440938 899545396 301310720 95624255 957572015 703806340 342097138 827466173 71648636 983950150 423571585 114597157 520411395 80234484 568682860 902766014 63650900 467790563 246000639 707076012 10654178 928391069 469756937 150119134 931524660 280675189 861726461 42961179 463315054 596679282 390567163 930309502 773265453 372987982 290224305 979497376 725654746 736586479 333149883 130743292 926983846 311012088 323213407 580787081 981386263 623519584 392074086 144131615 960806355 520644999 172693247 376339292 888324804 178807739 334297904 34923641 102300560 439643484 520140089 292584245 682455994 950527747 548034360 314933237 151371719 299620639 665770345 652669211 624473986 611358376 770618126 64431276 591305532 248749259 215920981 263406308 206407110 950430226 56855185 4809828 410223289 131050577 964970420 639929835 616283129 118928881 145002758 347697196 279925964 634411707 215468215 242597668 865914715 792108994 891182599 681474443 680314660 772055822 689496972 759439121 332878052 170225804 282144484 979154392 35051190 502359146 14252825 813459326 714387464 348898409 533102459 941501342 302483227 291483331 227754018 833857071 835849938 375706960 428646514 455752574 152223535 729081363 984504936 31828010 386600586 164559423 673360229 826824689 867389205 867884062 463661466 686759263 330113305 803449062 200897539 632914203 397837235 74073574 95029846 695395290 749351770 490077668 293126444 933174947 35826789 134243098 685583414 590874536 160405524 20650796 920142003 143267260 622392651 424622613 362296591 532518430 403540057 326316074 587293114 255095273 218827745 72274444 707991586 403417797 795361711 218969830 284905802 825055036 134310454 340210440 110487290 781237469 194363369 985693379 55726174 54717106 684528611 688010046 220766024 220423789 183941542 344911842 578657989 812168828 853518394 225732429 149146372 989081743 335831294 646101407 92048841 225962310 65180941 963376847 883309841 568574578 236105367 593967535 904523538 56818014 89250100 714882479 797343173 968527641 501306639 950555754 938329801 747409239 501471540 175743763 310631327 410280505 755755767 474110266 228320451 566039093 648136143 814456513 362680018 490018231 728656280 443175221 734013122 691911465 140470216 916154437 296178604 967673970 396908282 56412006 100586982 780988491 750548374 945528686 990515470 136451498 105632150 226632471 780430930 282234349 637329907 952409770 788346170 875240859 750614820 902567714 702657843 881054801 13101649 541147462 233198122 451426743 265069967 179352543 163806815 319787835 970264887 180087101 790951361 688946553 506432438 407882510 22928967 342441821 437723664 808807731 876377456 93407 90511556 7724867 692052504 586788991 612084401 65592848 90721095 833400981 689387353 749535188 539357989 38586083 951925452 431325806 196706025 760041112 719353970 3760820 267455452 342112565 4038638 60122050 895986094 651877121 113593405 113504971 35074596 266698196 566334802 264707688 944693652 412243457 514376303 715432052 25427698 686710272 58982001 337127621 750213556 888677672 155736850 922798309 973424703 367045356 959630119 126640708 847170615 245013048 891183573 33529449 860159393 924699790 402995 834509595 642054474 325197365 243688683 942764546 347692278 172469573 277471912 855572800 103497002 597077453 127426507 201080651 474192334 492758731 202006937 523464546 981872050 534206620 432658368 306871254 552646002 664335855 119754177 118398483 954905281 376427357 412421944 425441652 535273872 967602523 336140438 634532647 957774721 6758687 621040571 23150028 77394104 577140556 268928610 55174416 192851539 350552185 271131068 911470252 561297428 526654306 728184008 56550354 681217142 543224039 982549164 458064718 483416791 456285348 131745436 795350091 896536330 591299621 980846965 400628499 321741848 504935721 326413544 589675699 552539087 193596776 327827853 778908307 781970096 768059848 415175880 434771149 274302716 417731285 311779227 583205091 959240427 104694720 307504527 974475644 645254024 267983246 172897946 327428186 876836857 283680489 991536144 77426778 636592919 640739983 16703333 210710897 183437114 940677334 685584903 525742911 543958435 268623534 245263016 427437870 491851716 388297504 301810451 401917897 285383241 518074068 718739048 409659491 582974065 811861384 547232195 395203281 289043771 874184593 726425125 316136491 472879704 152539805 809802103 79218216 344707167 474329822 259806356 743660723 769423018 538548909 391216829 579962295 909602397 808773572 161477975 393876227 521120468 800517385 242139469 963832271 103429959 684113604 646690889 964791053 782734876 827547954 271518839 353295593 611876481 675992287 906053436 291421136 257151692 478843755 425396420 619588397 183985701 466630818 859565749 16798741 395319223 941640180 349322834 128985757 343614737 66282124 132545531 213740203 864850663 412131886 148981876 850145992 805036243 940216601 513277348 756044781 203855046 669959351 741956553 321658022 667856963 859458850 881247087 807372997 987308006 942718150 538249516 386995981 658392977 741451645 33889717 630376157 154334435 916674552 728589066 212989019 765845572 812120460 89775988 410655674 123474927 692059076 364842279 881536186 612142356 621810395 936752807 758589145 967942887 717468317 777502347 145541736 992138089 19920640 779525474 403503870 928972018 814073219 911738058 208937294 984050368 291194810 85880627 468760436 856696809 656845841 27795021 631520242 525431396 564184726 53768074 34818056 791251982 437850215 995737845 18008957 992031263 456686173 741760300 63252517 941468586 487650267 889277938 5693763 383476077 203053940 7949667 892920391 433726910 473641588 802911583 505333292 960256892 573659449 828130664 377238862 209949244 681371017 71498553 43618208 857207906 302656079 718398537 334645263 636290112 377047130 719288832 173386152 97160005 746453889 785232619 751922068 310556576 232924078 493444835 361882220 45008011 201070502 327913448 414692264 356348742 605231097 682226060 736661092 104115886 178024897 475264481 313671190 82567470 358916331 853661958 774954466 87098124 829490094 855412192 375598889 672432443 591592822 713555413 536571284 220655374 725903350 104709791 588296009 244684865 148179671 762479690 162178906 566715534 666556697 527638883 448765158 357913120 577398017 363667172 477013166 631007914 481713373 221858275 242850215 662656946 644143598 262931147 186674002 415820833 358403878 343473626 918864327 70630074 966906747 979560625 123151902 64943141 138774881 177149121 626546851 512691454 602576518 436880617 131198694 44004138 955506390 738378010 236302788 257971079 330042964 857398956 988511255 100559996 954196419 977950969 302780682 639369829 588148030 812078888 937485364 843085740 712283104 464516163 953614958 323674940 157014040 693014410 342959242 694626991 369337051 322413371 986166918 478591136 701108213 821654862 482381328 518701875 848568887 707582034 135583220 863344216 461418959 90294936 125207290 212519286 485176585 49018846 13350529 534831003 304935164 544630273 680581593 631597243 37336162 949456224 916927075 120825778 990007818 815500331 545844566 738684961 2000226 34319671 977260185 455692236 827528600 645693552 232176865 331397457 676625541 470112816 529470395 27098248 534709405 54892387 218537731 521382345 449928531 741235116 566668344 417278168 839735794 290871480 409269388 207870445 926786017 405684929 636086308 386726609 195401548 80295363 405626953 927672567 437623867 17891553 712273283 780136560 893319242 655545554 612964542 31096802 906550272 347504827 752312487 67889786 804834005 671733795 295735858 600804942 316416599 425633672 524325891 636816287 104037813 822341438 592101362 306237314 805605752 335455374 292511361 494298326 477069450 502955713 742406930 65692185 752551213 865902945 420349191 389276013 36514113 979093196 740821417 174006243 555455757 191130152 611713090 815716469 744672450 690405576 938722937 47500966 842493424 711964834 364938579 443222379 645864110 110797386 125056532 255558178 882091258 290555640 372481094 637733037 489620444 331041687 882205 946213284 239761060 477050362 176141444 753730510 643359031 673269000 451333912 556854810 722358940 365902314 398988689 173529440 805871416 827835254 864684790 833967868 546912071 365902691 235264819 682197209 54709053 932140366 323902756 48666573 527149976 674345578 775690729 901169031 502755261 89038160 961234243 148085602 975754259 81816719 83368034 210239149 897129709 366057498 631711014 972323052 917406989 94403914 72752174 888536246 636031440 55200536 994004549 208124294 71784420 581986768 185379556 348903533 981282937 306577730 389923792 232117485 981393684 182554460 299392081 294874423 667307100 889164413 113131855 97369770 698025620 764801185 490831211 141631686 974182355 710785718 769512546 848447733 179936454 315164015 954911688 803372609 693017995 710131921 426470877 646916068 61782470 623117150 554797783 969621242 691628229 545036339 910952235 840265743 83014862 340324547 685263608 787307916 406074726 2391809 923326735 609370469 760114024 340444933 840326863 188841791 407190223 612208488 97590088 555573292 968707336 298124793 698475621 247016050 130008024 87675416 457066816 432955394 434086564 21853320 382890989 102734474 74000568 495461277 19889653 397856819 950729316 143913501 649098720 454981603 411291246 768871772 580956334 816694627 383193154 172218760 16827983 389927246 768376452 590186462 979517381 470723760 635676358 76770411 991292483 321678992 85629875 543428918 333557257 521852635 793362248 500175184 553710222 825111312 881583838 128385634 75100547 992333165 534879044 348808020 759159726 974994056 195277074 399362871 415766815 19491457 346400628 397026127 684999440 867352186 249597447 653873284 695380653 871649253 459251790 367291136 411200554 59478797 774162934 890486370 496262361 612830156 821930534 831430444 684633056 336021941 774860260 258774701 593675850 299909502 424443889 706287451 112610723 509765419 660317575 763640850 109150105 594880203 810643449 838997096 215237606 666400004 593710419 940579455 848883277 71709467 601275020 766937778 289244899 959662366 457349518 781114685 50849961 792438640 891941576 371290738 232692221 599096620 366029670 53658550 964858429 206963911 168512570 797253272 219375918 924506527 515734000 81260054 382601476 643974622 538726344 346641691 184933846 92455437 369841702 115017747 201574450 764417506 879703349 539273693 576757557 557601982 241410275 955363157 555753777 427803233 260737626 998243667 205000278 502409973 980219073 12471572 83296563 187981772 772211594 229862283 667159454 320466403 403173174 371154572 561705221 518213762 227936844 790502310 568445497 582013730 884482277 758211388 345128564 660482927 501372884 233271576 177953570 208242515 963113460 680560674 60096721 573408200 17698466 787703313 316435699 275087934 270975936 207708501 178556230 758659258 68209067 168561941 433107818 504325026 80898397 622750463 218205917 230175564 931463557 795813951 978979923 236692637 833245536 87017429 646485883 203370127 510871177 203762314 884028155 279121665 396785018 983048464 526309489 663702440 865065951 877713095 699935258 319320255 890742652 991221087 740954522 479304575 320963661 661973840 529529535 463287703 113436682 948749285 487753810 79639271 300489308 501750578 128415009 343501800 563452875 371960544 237052854 382542927 256983478 874132869 756409754 14334689 231828888 692733958 967889689 750533369 965440593 970143092 994249171 780398761 871648336 528103378 187002472 241929592 740152052 81594874 667783717 664464997 652524823 270272108 339067233 548910500 200629400 559524394 568250924 629147577 327329993 983642467 356986231 377387196 144926898 919036909 780711942 932057571 420147762 983510315 756078409 951011544 642969693 866201402 867514633 163155645 305721151 196832085 83696050 387158157 326112048 91442616 910059228 105320652 543525669 618674830 499730678 360475916 782863758 463963645 663395831 41944966 153498322 293271504 992373061 866222612 189815193 495003234 119135179 412881190 560328906 464919448 547221229 778716989 266461136 988862869 124658727 676444002 679987865 136579669 922349406 757949613 948669129 98091985 384734586 935171559 933277670 618858753 79861409 744596225 546334035 738232722 286238535 920157540 758035870 36649228 495538383 491319079 727440880 221681157 721634644 663090872 642761103 961717928 53427034 768624079 263623972 725594491 942737359 506409939 932249633 222176816 591337634 323555587 848460565 634223358 485990137 285239951 131503974 914941350 397589279 238432536 288765141 145640222 846437806 98563400 879427792 291064419 93150643 548444148 551694347 236573086 2343936 976886088 621353886 410948276 683083969 488261291 145704817 92365290 475336867 129240332 765269604 491183526 855625845 585017443 923815956 949715968 3219837 992943686 131917665 950739374 65454038 547709911 855753678 289723103 886093239 964043270 291469152 946750516 20991954 92636565 76892302 955989365 203774135 657481493 369819582 89230611 161321938 32624058 645076892 352533762 468222486 637000493 125827072 818685323 309968175 459728677 393354627 600782084 233971184 618501721 851316598 42388968 953264076 325220146 870319907 182829778 242262356 677591978 648102145 245176944 575631577 977893113 677952555 88220314 412774536 42172570 277987223 252639836 936952725 434302826 924470678 308924424 234260842 683999794 706764316 845734245 775177300 415056225 448472353 493359615 602412484 715395384 489234819 728252130 656367128 97504809 138629202 818402319 186081674 741277255 350283846 852856603 948530416 323839207 413299222 348941886 844471339 676414482 674456886 285754238 883634724 137049066 264477236 791136604 514708571 767343666 303231470 970859590 47355255 435810645 158744199 678038775 410356262 499351667 179791991 151919312 331558314 772094635 929935039 356266820 466951174 357653310 170379498 933324226 419754142 637253143 926802250 593883868 957635042 12911595 581878000 982241620 76384430 795471012 165135730 686673339 619954903 53287441 939270270 764918787 713875219 484553859 816764961 136289397 38733582 52232999 781070243 44000244 819013701 530751853 869460404 306261192 298159616 476558597 553213906 792083225 7068531 163086430 608747299 950024470 888287890 276054782 543246619 601927159 532729033 26130502 492775747 940899918 439823344 500643391 240649400 655764833 574621747 181677903 493283672 718921706 365730481 925473153 42470061 943278162 370733828 877300438 779650876 733660060 507801170 340358249 619357910 628720972 204529777 825754750 280374644 348391854 620382383 996028479 609598526 281447176 221947242 644289480 878244321 163114318 103682387 786448333 998251986 101825395 397772168 548793390 508545691 807110270 396710860 619866074 866867932 18174587 323922991 426180412 990174374 443297816 463192304 269258150 726420249 55882304 599609846 720879712 275528472 285645803 204839666 671568427 715322908 183174954 360680310 954542937 128081992 523365311 427734929 183635545 451105117 162201592 171909709 227253213 515841126 250003703 210688380 557186421 482550778 667352744 512616961 322813761 975369545 317135039 5157840 263059752 641014145 268680119 293293732 201345658 660222047 905793250 347713520 51419035 167167291 835864310 544869417 420423285 744287782 97326040 528164634 464688852 819381115 278676209 580932440 371546712 803287414 51274726 399506664 784939266 294937888 603506792 973361604 727866132 671832557 717282122 266701963 18319338 667903041 881119629 447130629 637645332 316128272 422256186 127359995 733811855 229129535 903797440 798066523 853545780 637971300 416377030 844493978 364752105 90930855 33210083 22814214 170614082 222849296 944531558 835755207 721550330 162815572 428489732 816062865 801554549 295048422 397822108 438199037 442508551 69157508 544534411 215916451 849126993 578821087 215234406 386153144 213509079 352111238 805452845 737814803 103205710 957595571 278344999 187115658 152861918 775499858 322167414 451656480 610600717 684734004 536252310 609137984 525676627 342245103 885343812 325215664 478573065 822394907 383152199 295321708 438717323 180568731 717799800 195279646 612503060 632515581 764387763 486648996 248945943 294967831 572812045 817090385 583846635 543268051 838205534 176545599 815294267 825313078 739125609 558273280 486907117 980571345 508949257 552136433 698454520 572801814 151670139 51572840 624786246 137576771 172907999 992264644 739703843 559703286 220254703 305722519 366729727 732144611 770404883 289487579 475550332 61259130 14605782 521831792 630112279 277056641 915947795 593891597 664277444 871221827 721534719 385886209 593051964 547752473 693713997 543171470 280804294 592017086 320114042 299580531 376166992 813656260 858202370 935244550 300089626 210522791 545568641 132141876 675518144 576199176 129554105 665980580 166175812 887759913 78650162 920351021 574714028 247160258 78214821 895341705 351450340 785856997 11587239 837279638 459876789 115936599 879945735 142983142 59945982 440759829 210541863 936079333 502852968 882016084 71993574 458189239 256370911 324393396 557103476 768794821 446934948 223466925 202159447 280574511 85994410 2796072 137318897 183493582 809859062 313450750 104198672 225858947 779483725 126892362 332760361 651471420 514121467 868443608 557096383 199110799 32344225 94305943 775929331 911492619 470810873 194139571 745468139 448838386 650683471 322547812 437004098 162916176 501390868 128721969 922705574 971269040 360411458 825593818 969496576 482930244 229730171 837753802 450070626 950634613 805223574 604558605 127948315 738093176 615051808 50937915 410328918 864057511 78636245 518733028 545121899 797706052 243473054 54715303 273090850 347615813 247909948 277206878 478733991 712911702 723332680 517869367 278474098 330799129 802899542 722448808 958864035 240524110 405969870 200078769 927282428 194419061 168564394 568252225 749798018 838524245 227288757 253047789 691168097 192597286 172309939 549455323 222270472 348853777 899003681 904523955 389394205 21968231 498611139 639250350 377625408 337261337 986852782 760036127 865724406 511210011 509999081 210881182 603795023 98896116 59624282 946155044 883959532 705070015 26643887 245897941 720545750 562700606 949066495 86519695 5289094 590179145 894020084 378007208 906621631 498214664 757781086 320293429 993596782 919288300 399702974 727047159 284369615 975995309 763012228 524571841 292459909 29364181 915262045 409037186 449847114 466264679 789757433 504186710 220586773 809928683 755033949 966157148 747579386 226434088 62803641 263453846 299710466 261241529 120085595 330834275 137296701 744088942 935020457 182085311 123216938 277462479 309425586 669352432 820158078 826412664 933831155 716925801 659263 667591244 565471913 285404894 930873233 465122857 380352658 212586463 261550799 564546346 145973026 77780616 789793408 155220295 563360114 408818276 821349028 291865712 193424098 998291328 990084457 175810589 974721634 28681566 362319224 550311065 914523867 97752713 300908636 216827589 75189083 664044172 240819899 565084554 422903992 944785957 440603805 622782698 319353437 621521278 774212640 268411692 440423238 465269123 735472214 792907897 218765648 533533118 173755429 944366150 803943408 29808579 54979038 193550573 775392769 338473411 826247728 454336157 448137671 805611780 23119217 646741853 373226232 572481202 603092825 458539523 100087246 686483266 499384342 253495576 970413787 791118834 810579391 725223957 33192171 157175874 876113018 225602588 942107996 495414548 372663435 994794073 791915994 642762964 819391190 557534066 905513870 273677944 89119339 10844377 151992966 259282753 259983340 372940165 135488573 261023768 293902305 992061345 299082582 260179549 927572583 181369348 10356005 327837946 221566730 310913820 409697505 611374377 564037322 319797792 49087999 37042861 832578916 16463748 435418670 49000711 788253346 266944090 523935121 660327754 391650218 392756018 83922665 995795910 405876488 877715207 878542425 459708123 957335600 765329537 337018258 998774625 263909167 588332872 32292414 491404164 893944501 892773693 945066232 32060078 295997591 576735283 766297338 430660331 322712802 73075874 929477104 941973431 617042907 378470184 516197374 665423354 996144969 450282888 813860013 537575531 935343400 325768441 483383132 520446856 814880259 747111790 957781566 713210799 813343388 229464246 943825973 280340310 181130043 696778643 990328510 757050414 660877062 544297187 538825456 859609589 253866850 70748951 760926693 743720163 408808518 624733027 866753803 42717085 268575920 124573800 812011642 212722084 936431669 566472336 52884855 455737269 540037929 32479442 491076189 764902988 967808023 11402893 600475355 375415766 956938071 311235141 392045150 651687960 886637034 616990554 291092495 647226223 214543503 205258680 768889825 557458640 333420950 398287382 317099110 479169189 301732649 253151097 322544062 144789290 216599623 961621460 72351294 908920928 223249052 129342398 243603928 673257373 95855722 443827222 988841463 112628116 874803133 472192220 139499159 757165294 271051903 488545515 225921011 328034385 871936421 32646444 573294057 194220983 723394483 408806932 956850849 368451917 279390862 415035952 805640276 199935120 466804636 73070803 332891029 846411541 986924037 355501887 27166769 642686423 250991738 819197006 935323186 873518074 542690056 701404177 361364319 501918863 600822630 742029294 647976667 693979338 606444146 505230872 185585961 922238970 885934590 356902233 150160789 789030509 602021590 847859691 712144918 111324449 963081975 625781264 860699589 344004330 669751280 731538625 333546479 484453969 410756341 641486498 565251835 764948289 971929278 2414962 604921911 752993451 697800275 566858141 570025918 450174339 837915413 309319498 939797591 112225613 831380064 158986216 807709280 78861286 586028548 146094239 609159561 321256615 377101469 646746921 55186742 170638947 616561655 589292938 13281081 957830940 404946994 248868698 778203547 632798036 857767811 289630083 519161982 6373782 124577236 382780950 470749980 536736085 257826216 620778474 595129915 720962154 473917765 473394989 285975918 26281607 154004714 696699952 780211856 273934897 286702858 967542552 39504295 65956043 657252197 523174524 46191199 875980572 94697126 526662519 375249095 606959916 370141562 138751726 795760641 114037538 816362658 359293282 6712370 493690865 246152621 797904491 951380588 561203052 442161057 408491955 600952604 385349549 744301987 277934374 571805561 479292247 67063443 474574886 102070564 591909625 607799688 570582341 895492570 389353227 696236939 763024911 246564549 18754022 150321372 707250295 74745654 165712475 210983976 919976638 730070890 980196780 730292005 598329500 271776193 125254768 949162812 4378835 505640320 266293712 233076453 271525766 448154781 129878270 302121320 118431568 560656768 303227027 56414805 699959423 457578662 941899502 217023795 483072653 886518019 657566164 415254375 557453096 293294325 12108521 915031310 569000277 546534516 628909933 20921137 838607754 854798697 184880151 326958371 723867791 828482755 883271402 1559593 327340216 917606997 524141889 849988490 37977705 577554634 608233013 239379923 643180899 447921975 277443787 464049271 296176344 510059066 498101990 263275943 534268677 618066749 986619538 220816106 107233743 7468110 247785060 558044907 27875561 493890535 968650669 943309537 596672312 291633441 295184450 592774926 751932240 686060703 426717496 247195784 154404673 560409966 456080500 692025165 418204910 40123160 900268700 178608450 703347163 151739766 391858663 436330576 781166874 932375005 524952077 778794290 751726921 136860554 360836023 587812566 928630286 744940885 11598831 39061246 341798858 709989013 357003331 829367441 560135701 994971231 778756093 371484504 119388799 195016171 619255987 252925063 297181143 250073630 577156419 948190672 179341997 948665214 206837306 204969141 247812622 160371526 762172928 615664554 390081354 850409629 906635791 233488805 97581874 998822242 228243013 522041869 724470979 906413430 60484549 333867188 265260942 835396394 129301891 840411204 603722752 355048073 158728392 502994488 159970021 20277107 263519118 221787448 917561603 447821788 566240434 789482538 159591887 581694276 889613737 136990108 143050930 517191161 969274559 681272778 340721926 392130811 866570342 637116597 710618183 577445209 19481001 822121408 564499182 901482960 437925362 85210049 706058418 9824427 673023533 166683886 159744752 280588599 859701817 717189097 366029010 606280010 658922505 647209927 808887745 370604055 166150112 927366724 999454768 153332583 559177905 28448814 477516775 90880098 811419191 445821512 533613097 987027616 660935178 158560582 327702364 400711093 836067422 253280967 734346694 274415456 858827467 438191789 106116302 930081827 319656764 782525770 404923945 811277211 803811740 364281014 147696391 610093031 577051194 317448134 51864144 18187672 17290024 313497551 161746937 323139710 939721627 924626947 555473532 287917551 748247747 842701820 894190568 207627702 985011742 671977708 789195629 345683138 823918672 112196197 193420662 964548450 759167120 138791624 942147604 506911012 753959734 303946699 827710543 416445088 260049077 397793939 630421678 790931860 556780309 971619628 955798430 986452895 545780060 784481060 584482173 252560214 103717049 923996583 32977254 632906629 261139758 654819027 577358305 11244361 327463232 829028007 911305991 203829570 944693470 69604201 674758805 384339276 736791847 281836715 246053111 914742562 832621469 707740031 628078379 32999351 531273183 100750755 248365404 357269879 956834816 831618806 180096167 819783237 711268398 914628651 511060577 166569161 351162758 237561092 702802411 652152783 878764910 420649524 477431077 927948212 501707760 152168439 880940575 221860386 646196130 830592857 511868992 596736243 311330410 640903733 306160648 772659876 744800768 187364785 590485318 463004668 441928961 141464588 645737567 970386973 701472620 293421006 769491221 853186486 187952681 214648806 26436542 995745418 43779450 4610128 235492211 742845231 35179486 703181823 994949690 447169707 836101894 73760360 169662457 604941584 663972614 845240924 922823714 143664029 258711692 397803698 961179605 839220432 827490432 994578187 489023537 393097080 625968559 867383582 721044119 986717517 816675614 315445285 324103016 896697140 101346331 100714593 209684547 422832100 598118795 695750988 156457615 247482039 818011812 47650621 904949465 523908214 678824850 986137966 80381991 499729187 78471538 784010875 83936189 675770736 145881758 428590714 255623085 542477176 448877321 728531389 473103971 37733312 711110900 629632491 921222833 956951866 787631476 61491798 172337328 444082759 238616535 342578830 943194972 351019206 557670507 273522411 590039843 153533493 647777468 234839617 871935524 371473200 471270249 793329990 835219100 166092920 770783570 236648868 499451665 978605273 723148738 510858388 496531333 999596633 361993539 515361277 66791552 911723643 752024755 591737450 242637111 527446684 691080649 863583548 250121029 684551929 203181532 327254405 316180420 553045600 309860551 223294291 731062871 914816242 827496186 648447133 939258236 128329793 735249457 740163999 256499757 366916574 785947379 917540372 844372459 634121569 564914495 65891321 303263599 865249394 111909313 672517177 287422159 389093916 130689950 935547922 815790775 515498967 86969025 326772540 767180099 133126346 678088166 414518279 894090164 205062873 133843344 527047033 117593813 65045954 599962727 163000220 998815765 677091098 704825701 937042770 904890743 685679448 464813581 521917980 824055521 730835918 126079393 148473313 591106012 82683929 82572357 936744063 490761946 615239728 475179345 583013895 455070916 187366237 320443553 2327360 256211306 594628353 191169211 800997179 44860748 208510097 999004312 987996946 840028856 164694933 521765628 598895036 596710380 640597785 974880309 518958227 955434914 852048480 177122318 160457999 950723043 267577817 260077002 510991843 205531586 749373721 424842097 278654847 519890957 804042415 270911067 768826899 664597433 782410112 594734169 813810302 365127052 471048689 608443137 353543526 560010007 447518063 756191265 250140275 464825735 422468262 865029700 998040212 316948774 226730523 746337731 74415148 778105564 355607587 951982758 152980503 638465345 719862313 861454747 472676657 55180942 262883783 294748665 823378839 470622732 760426535 417734197 212488975 450416283 116957327 272302762 135787587 261766398 110591864 289324550 421526051 111815401 882725541 473204588 879104255 336106707 188128259 330516768 625389390 174835048 516223398 268156787 455929607 840821286 65248934 455134979 2414347 747909310 865856474 437718820 804370083 708955535 486988666 237567934 397237433 816486332 584048775 403658412 334846118 397919 284218194 73984141 57434146 40425395 626857306 425696086 234911172 842806197 87209975 564348218 601494822 148280117 950390800 900296887 925229542 970138332 901865606 202816590 59774406 362956807 327688736 451831183 670787152 55010058 512977344 989212961 464201385 760223811 683053075 812802452 898617872 707169817 7972174 889056228 255906463 884562918 451474138 705956297 525501302 396878502 200867412 509864769 964310085 675043298 651706207 969797384 472807835 496353593 467213716 202753797 663466902 656308499 318904339 905414506 62856238 847511882 982836484 138722834 414865987 195634203 835784641 223719965 670469881 939697675 448173896 636252193 654040503 767382567 630665390 321935050 813823386 370318367 165023747 77062386 102712254 385451079 951383922 676107527 174580915 31183651 514905016 739002585 351108217 899155178 475326816 30617432 286255720 593947904 13445001 79887255 841228558 668022453 201576801 719810832 864374924 576086169 251928480 777214491 961106953 417151738 729944341 703064017 332252612 980315177 700548156 847402175 410916670 507081959 448770563 529411896 731584904 194155845 540945687 463764725 716104985 511741996 374576537 561817889 125370028 792204295 154456482 468035809 1309878 554003175 87680976 990716341 884183743 141471941 528129476 365589998 95290444 884842951 912297976 949233996 649621764 220280530 479548592 66133704 284753717 396802498 471884446 572888844 600283273 89966774 650766865 941670438 789757796 925629558 691138289 57203675 623550009 84480528 463557905 803795901 827800417 127255560 815316884 894272280 971863903 68270109 105695321 24676230 386580168 29241835 557982054 521372283 48625070 655590029 455974377 611865702 646587567 1056165 182841698 10158753 207593069 497631638 873055320 250161646 872226251 417883678 327175824 258294403 476548836 637337661 923363541 202116714 421397950 883521688 480883751 979628467 107883135 600522080 209990142 713312994 580221361 616420382 703040297 517748676 413157324 59002404 23806314 711471213 445670833 646556055 776825598 337138999 49503948 572045015 718190156 649035248 241190985 43280125 305562342 766584105 214601440 340582867 463597403 79746999 121207475 937623031 16653018 918149907 745329480 931457816 138154792 146450979 756868520 172992827 705529196 671195909 616108990 917531525 418321702 995727682 643374815 194705506 762445462 977647581 780737420 305539847 271013861 325351662 512188577 38156191 618810105 457740866 813471851 426717517 703716905 723104364 202491052 913979611 322403081 528902819 66475115 881507784 898295028 592941477 592970453 90719613 375937205 66841036 938686013 642423232 258666275 680328386 183872821 28603804 405334648 691749365 140925733 135112371 838309946 778012213 617510368 866022971 291961399 288105535 1737513 629466089 768299213 686179191 855134107 919986515 726580823 451780163 796776217 487695209 50642579 573618553 898511571 788543784 157600372 563445866 412486736 824172196 174712851 328605488 296242750 904358487 104847731 452582451 348150232 526526908 465319562 125317267 740237223 492004220 922877385 441551446 802443078 945913968 509941381 760980278 617158800 622066919 884672565 879626551 9986353 698391921 714876131 500915641 774822856 153272507 636971798 951443463 533797300 643087856 898163642 552458231 352029279 304030381 114532251 958980443 889186943 969951903 262673060 703945455 334375961 249397717 648175150 784434966 187394042 774082686 325419665 941379397 620577937 530240918 614271860 345671242 981687766 936357132 251085069 836337338 512875971 305408700 62158297 585710562 262653226 422793667 256945954 990273509 188967632 697083640 831654578 487639667 86470127 70455572 518972394 378776236 262014311 471149370 653106264 627320918 943485296 380797806 820696155 642405929 855102643 233921101 461840425 462268386 210525309 624925661 829247060 942649715 759794254 234052699 435046640 693862799 944582096 262998201 755753290 124867773 309211705 802155680 235805491 79982201 701387720 721790128 725837901 989496640 894159957 880366999 993861387 99020490 239264060 187933860 820078584 334566676 572732161 245875448 554950248 773195166 702432737 235727901 290542804 565017023 787511908 80017339 751519008 606574244 24742851 194709264 402202673 663684550 418242042 885415655 112293405 693859401 223706510 585532396 569226073 206816911 821795782 63687605 613063934 961604147 76738691 320560417 678901432 584428855 195975299 839010070 242678833 826118278 242090215 720856339 888884549 837800214 205291435 803445915 309578408 697529919 611160940 115595879 349483344 476726996 348399106 959751791 564050128 982744613 236908010 539515832 286255197 586094282 100397810 824072636 626469129 331515581 281150671 4808182 997972824 716314708 81146487 78392155 678877648 95610880 468426782 677659554 485702116 679090964 148467412 383002053 989274012 745766707 984219862 677693363 859195305 762215345 353122808 476234682 746198441 954493550 43405224 130851453 683942946 88488519 53204218 396215965 732068622 955148913 193513774 816273155 839551222 599471347 548314112 124783177 631702033 959988167 61301234 368721223 901644143 323260313 131281588 262965871 796978542 288991204 829746759 489717268 70900124 94065590 98197021 602094764 601980218 263004561 53968514 275745913 347815268 391895855 666388992 344129669 502998699 281822851 481547435 307788266 501762731 686780340 721258135 688632121 410971447 150889720 651217617 461654091 85771388 389889085 401468254 670831700 369277211 915535 74356834 300298749 982022125 461329290 552185852 602717572 422565152 523102497 107384704 497724161 155120353 111276720 60792189 327239914 923987967 51564194 105814939 171611193 625264881 524468475 36560869 651452734 799224428 782841025 6003425 32702667 457228733 498307952 260867274 462403714 714742238 247536723 247828327 904231615 147002862 375145457 767553306 15202615 729178285 757757949 867402252 220009928 756951225 628322874 338440990 712594444 324433374 338587316 236235891 433503653 449104709 261010926 367036031 451923868 3355163 520063597 249230131 814431063 261930278 401563942 967270683 134957488 760321895 210045109 286475384 834881760 238778362 688528893 61554508 624058870 316247163 246268208 800134256 851443569 317380336 670260972 976702505 433178952 153855932 835786839 76588411 374131126 540287033 848242147 622366702 640835288 999145051 314625678 368814049 471404012 59456829 372769231 506422092 364975859 891874546 645923860 809794407 503122212 579638036 118625312 666576775 537564790 193312183 243669416 951153919 650137294 173842371 777656448 682760088 825205366 878069008 551165557 606087033 924404575 500125322 747117414 194454473 148033690 926186368 468701692 991384346 757969947 233733597 250334570 286114183 376105264 904972520 620443272 286334491 202703340 808582453 970869509 931866211 886327856 338527186 506603091 215865375 735918892 778651752 160927022 315450565 645693922 257025499 233842462 688308247 144489425 930814096 898899891 540299625 406320656 443688140 229207493 584465385 724660472 145808576 155480984 868772357 520417104 55647714 976556775 817972931 475126923 988317426 405376527 338197275 743779621 803851773 965309238 483536589 411795410 988793553 12688390 849083648 245729872 602192598 358275754 327572188 786561123 421238206 477240678 74606114 110073329 387256131 858543719 426946182 825935028 683174751 381691941 254385211 727217552 658567179 944927226 471752343 832184351 569601077 833567698 763338378 586444669 808187857 709655202 232746065 392323648 461675607 303554557 282162975 549622566 720010188 438471577 6598056 999708879 493783648 336861999 953330179 174678768 872012091 330420730 460136537 368360159 261095227 884144241 410299827 750624042 220137289 929021013 394668410 296346567 732492360 600404373 985759193 901301778 196890382 345350585 56210688 265091231 589960049 93629979 395965883 971228107 29873357 428629400 705474497 583698456 22690059 961245070 245298710 822989692 305066976 864270076 37744378 273031323 793956026 763218032 89258447 332612037 221667284 453596786 379760056 905791079 999234527 232468699 163392526 476253401 144404952 915669899 45295224 798317409 711163635 54751724 395640768 925783104 84231077 739872312 102848772 710662368 304242557 447109213 22707568 327050534 62175580 874971520 337770770 743973650 152683503 463946318 141974005 392132871 858766871 460616325 91915755 809272596 256047290 60991530 76346913 560702816 115935342 966332036 273132112 464555700 519095464 821785897 931761918 533002669 368809380 512022923 660585541 938845608 835555571 779810975 576289957 149518487 165326290 339588472 252651281 573611131 953139594 983007276 726718507 329179505 465991684 812683279 301030684 248900986 838978434 455762703 608978130 154316809 240676663 292200046 851723880 206615562 958376504 173364339 289379627 417467338 132249365 49285938 730104190 38939324 481961959 186315757 933211809 669463519 735755977 820099221 843747669 512878895 850316445 448989028 140324505 465073085 510579337 482742146 313325695 46655801 906055638 342737203 829032786 386011274 475073675 33841165 516026788 732180509 115943276 454929907 142467788 446861897 176118853 614789941 604753016 951418554 326192310 678425083 323353089 834408199 456759186 628536862 309630487 122963399 48182634 133986663 286049314 239625866 422594162 822264144 362262133 935892524 961936537 241056137 500399439 249477393 465326212 742819224 214101056 211961564 297992521 161201265 663515463 878604210 59062500 411592413 319915475 993019383 129562437 185716797 953737351 509351269 962644835 662361124 409152203 127130165 260880295 548450628 369468403 378048878 686081663 212477356 549517730 289930272 348369553 240815048 168297899 364977771 573933136 706521371 272896601 702537084 749274689 116650008 804118674 430735702 938966918 835623712 31908061 160041460 74402254 657150793 758403629 640578042 452261222 506093484 131990802 783633091 5408327 362137600 107267109 75730247 835480007 801128816 968575509 581578359 248241611 232798068 511977344 820054208 268355528 504818686 921004602 519534998 89038750 299463405 398192873 584770374 500208167 271137712 888508862 13199178 442901228 524360077 201766362 612919713 436060801 747333852 842113121 744324263 150540596 496939319 552446779 117487516 793747039 912439098 786642325 103925315 544038189 604499613 432796095 360445930 131204533 744237075 380074231 152297794 136704044 266840439 463507315 552059155 775265175 863105189 831768108 812494838 643200461 329490068 846256735 105480472 185879238 928572227 580942472 997202777 414100428 961815618 954603533 507705902 614970894 728089453 810377791 772761181 133975968 686262399 318330287 883562964 556915347 249070502 937548899 217865254 380969918 460339526 548700315 312326807 376295359 403237970 695483232 566690211 764226743 9520571 503133812 121443932 311249979 567725975 134905996 482400251 671695375 138807589 28698996 908915114 626720603 295982984 183036981 862858012 128345000 898111838 383918979 967773340 574727452 404024744 641486105 649207091 596997697 617064114 480705297 307545323 225478978 656048491 476080540 829864339 207666534 953972116 105046569 527359930 8680273 251722447 780878339 44152489 292509406 210294581 558639722 297672372 385407068 515895170 424087960 737967698 523562765 282922625 396034543 195953161 881010453 524698321 785739218 42155721 218244134 202290245 35124462 354717485 146436138 257210016 407787531 614516057 871317420 417745722 935631804 873298443 382777647 496920965 865722993 378073082 287322081 368514749 904526091 764341737 929168471 679322749 314518064 315411722 170759559 266540122 783863053 220249377 904710062 834483356 419615618 87727403 797215946 486899843 966763781 493382664 695081164 217385698 800761535 206413762 320139571 239504897 891744976 240444246 391932856 369495083 20012887 140563657 598575652 638779724 405432117 396843764 480662829 849966061 180864980 635433553 105297991 388101506 986439721 195252252 63317270 924754218 52310378 998617666 749962031 533923499 303635745 904624142 858425564 184736684 978027004 983627897 223727303 147444120 978444020 649378566 816606033 642729731 821786188 543829756 561255869 494605808 698716358 443564672 849485126 661622966 582403259 859610930 297760660 738499514 303465228 664628059 956637008 480241819 512312930 756338344 881376831 322942495 49354088 965344741 740000060 77743514 565352485 63307808 610431319 814794506 382408305 649142260 238193672 938007051 524736236 589789358 377267845 157472198 525629247 642536153 251197411 963655960 733872167 790447457 15147543 579372017 968221336 499406188 662127539 929732678 335493076 711865168 54809991 341394586 127791956 947297903 843521165 861269354 997364115 216104602 573847083 504770339 239234813 453060622 309035638 998836116 620883392 398715402 515319494 309334644 827054712 126666836 997781097 22501426 876051445 539225834 369471250 153211787 379900410 910319164 384917285 198483433 508700737 336708632 176005320 755589456 423425207 481131662 991877609 687657612 671604768 707463591 591985485 99178237 125728416 408536191 583166710 825443716 961838050 84955444 223044210 310449608 692641690 600894791 169929254 388838313 454709188 190026454 806032318 744417877 365541206 114071498 942843397 795262193 863249934 784384637 631800692 758255892 67860224 839949326 329516467 145442756 108519798 641568077 802656651 40656419 252575883 974553858 995878918 907138198 720388360 326887912 989925098 532074896 191018530 687959281 416217573 408810422 679080141 688238572 416837035 831279532 742851264 688913742 70097505 988481858 121008899 251235186 403361612 152645714 896501926 763904600 859474257 716200907 573686923 618167074 298853016 954854986 47215447 201496682 520831734 907021686 712824638 423785264 897505962 75188790 517590669 346599641 57141717 381900696 441806673 243311910 1859568 470424801 655510895 72287958 940854719 196436995 178905020 919949976 850332468 402854908 69308736 305336722 797284810 647097481 477596319 372033636 647951721 431822401 992618727 149650106 470166402 560844932 87349701 637485272 226351872 536098187 811017645 512923804 792564287 902789910 659194866 325682201 18937989 890833009 534939897 68015288 742818506 883631773 134095752 570236210 145704108 249512289 901148358 380633451 530312677 152273676 654457873 894201906 2104813 825129302 408493477 855262593 990478759 765729005 386706557 785345910 319943656 436134830 294624450 992739931 185717046 701423801 522292982 471527978 119499310 221752926 33923573 581173244 86676537 980163891 624825805 10212200 631760570 609935213 547287210 831613770 192294366 414276374 822915777 69977239 769234608 607043935 393850597 695268273 719218473 911880555 917510896 974020405 623422236 31716711 258554743 189825885 114539205 693813012 191022069 712531595 58821650 654517320 101700020 571559681 920455886 717081547 453229420 226054973 882949555 235444440 110579788 677516171 329745868 787643931 977743162 866925424 494696847 505049743 341330246 680836518 759754760 276986259 127948075 170013364 315726233 253051489 196898232 457805806 219041736 554951556 969683221 910978382 13953356 566723926 84159821 450638923 418978801 180512350 335442676 327364667 814743857 711653844 292248424 164137400 379276717 33734708 234116184 781653316 505107510 678760684 987211588 26846339 34240770 499976083 427422133 865225859 733869545 365986217 581775481 102286966 778017669 724238889 950079117 583935344 36802894 851332607 618047684 764140390 947248030 179529680 406710597 366400427 973670150 199287142 940521226 678671991 585276478 978721119 113463429 823361395 171281645 424941153 905935325 856179135 210497381 541708139 701135467 530764248 316818776 587571742 145286513 936699344 420599103 511800247 215840982 432016789 609785905 100633265 875321743 297382195 432221062 605770194 475024422 981092007 305829115 422217873 697886407 266959027 557079331 353295674 510797508 329410830 764812201 153441781 148784911 363916708 754506028 909482898 446317334 224889314 680175590 77472664 585356328 984957239 520911100 484789391 423932083 314862100 894475323 820708799 829642944 712045751 794077228 453009682 560494237 816392377 794853763 288655205 611871683 531290271 886247799 837043099 753263831 436035195 314227768 746613254 119918967 934926588 890083209 540278992 994030703 632856700 89074078 184939928 385062276 465829239 609854457 492719863 342480952 698880749 656195577 834591232 235487532 387816658 908698704 767298564 772865314 184559907 989223409 60289316 824954308 998297895 495073934 235047546 115796648 265837523 640435283 561706120 497548742 511611339 555151474 512162672 586229124 297393699 857821832 461664771 865761568 202696576 174026794 924417159 329375668 12208391 24744173 385110513 307879178 456020160 653969947 940302286 459325178 124271068 461431294 547587562 755775408 461284980 535105270 465519423 565052248 252551934 402391545 205190824 418495521 100512039 447338722 28833931 774460546 490941143 828107940 857438876 402982883 83787739 536792980 277414422 383767100 4141663 711334741 621412743 914795960 828401181 23578815 503057892 578648224 782981662 995526574 527912615 663775465 514012265 942166209 535467814 638693730 397403037 461152036 292456813 868581962 501905290 451981941 851792189 765632944 227211706 512714890 669127163 662645298 254060064 296417237 208761874 993698832 814938325 420082824 223507086 898020880 564882402 473266815 98519996 383575211 427445213 870705724 377198932 562688504 839025328 529374600 24820206 610283483 521766262 984009468 147524290 289272222 929859397 768439558 136425977 403744075 4934527 785255834 407774935 963421621 555784819 6892899 593751721 981539727 830575027 435892015 637871454 859002974 314483702 222366685 688118198 129095030 662119653 231227921 744634305 855002514 636447920 334471539 254537356 911549059 794690441 512021978 654594743 978711793 649213877 274747182 544571999 834724678 810402085 677164644 233384313 64306051 892625119 304875383 719829189 773618741 361522775 152755008 836192445 856558651 66744871 532248305 311241306 314034685 640402008 122572842 370146756 801623467 175738926 325347209 877760951 987132572 122959956 760700589 758682046 787947488 658109288 16923078 578905552 441073783 828443624 28381105 239213800 726314375 909542610 304070475 276601968 669863382 216935497 983492510 30849553 157648348 537678014 51688380 293369036 65945583 803942905 773979479 733101103 724557191 343388806 977823981 647271421 444091857 545329959 457994301 125449600 966528281 140349296 496032131 319517804 832580747 689194306 17551764 649464413 760732430 878366461 711509423 288601706 466326074 484829125 947033776 331941903 895847359 165378930 519848942 754269956 795800997 797295106 933173145 925486702 375462001 682502681 345975377 926612791 234721208 403011516 27204517 279850781 535877501 455728556 751050512 557576500 598904810 881350222 857951631 825748327 79626150 998340418 389189318 646546262 131131736 840585015 538733803 660443095 856666765 524890473 702176011 887897754 591851148 515307227 716768119 573548161 446207986 895955294 17936370 6056044 327438302 411047368 506158543 834240370 371803681 947608744 576625192 605051667 700332548 46943665 204279682 63813967 837028227 98063691 534610841 610557988 742937568 127398376 956705112 201857342 107922319 448225999 556631576 141421290 879778909 399376053 813110708 92659401 783202806 688935974 213284826 384317647 595145754 432677878 203903466 45316478 500778176 919555348 747936864 743535134 686145933 208501826 714162147 195379946 718698447 857791930 196802883 807817513 290706055 677976195 578984276 546485685 533998204 17313904 544940514 301865134 968788524 602967888 968409031 297622989 172153950 8510298 196912891 815350903 660195048 16380979 44657060 756685320 144080882 600615575 196092876 203436598 445675379 915887539 856549454 749442019 286059696 542482558 177700233 307963827 811575973 998373668 132025759 537313985 531945905 817034591 344727132 525465359 902617611 87115026 773440996 812306812 532246759 452204236 626626499 721952501 926836361 68607696 363977534 718111946 751695404 113221870 760492902 553122164 507351408 935256816 575845200 229612883 808458851 423216051 661330753 301642586 579119307 88010603 26381071 541594444 743155175 426727674 137061726 543958047 36987223 132881451 54724594 383906117 486373191 473663172 175067383 12103361 148605607 809520900 752544698 918748313 985720099 113730754 813012804 406910819 825791140 916348212 485787127 125370989 996450610 659079636 407440537 382953082 834797547 5908912 604938470 837267910 151515972 388690988 623479715 840607780 974809386 445927781 784689330 907510332 83581049 697639758 667270373 796224947 423935455 995873890 209973611 965796783 845502779 476074875 766182679 341844747 720195906 861054395 982826127 9436805 143635406 960120767 168459346 364750273 922481821 64467081 373669563 467058984 468621158 949832134 546768885 355833001 825121659 878417905 454956436 461167388 69307897 369720780 78249299 801025396 571109741 914933915 534888351 719625272 558979634 493966770 695728749 467865410 879244994 585432460 905205061 768637914 539158029 918593642 170877209 941854032 107355806 966243808 183576061 694728389 992070950 275753141 175145028 169764134 70430132 216872976 55108914 295494121 460279751 713493534 442744886 898984345 487062048 123275451 454774200 611408606 18374506 598457547 212427805 832815052 694262331 673362253 480285603 331713189 803493057 147295506 213708942 318729434 998413587 89509252 699444740 716165314 705411697 526022299 975289678 101023330 293097417 643353147 339319781 127813230 753802124 512407026 376972004 216633902 210221561 826577742 944503315 289933974 432331944 820881235 504726491 356308676 773413947 823590085 707837687 509803485 793678657 834399672 702458742 310116510 88456089 355059293 387786718 245100434 154171723 579589994 669554723 491436277 858231455 48450765 970804823 929463147 617747962 948122950 817951006 115856626 414120956 561930123 293036285 665929473 54440403 237231053 658744906 599254779 554637979 85843912 13808376 481722836 578145598 611536878 26015934 573324919 465303264 716801332 605064313 993614429 867146295 848557482 696503751 352509671 244694544 919843436 717917072 983540650 864961421 648673947 887585830 101543951 833613346 686607475 979917192 909385115 659584666 169049789 53132772 714103464 594547184 571942527 693376921 776469116 144934612 572121777 322263761 410579165 428255565 846414677 489467223 15195452 78411785 202468551 675418896 516095629 622558905 903589884 241092396 899247914 765100401 595883745 552272314 773834033 745593927 84745676 157391918 84932911 500273075 312761636 418869629 841413050 388472261 5719154 786814988 728997808 705467340 75505352 813032424 719723072 733873295 715889376 489097985 187281734 227498970 613760100 621215363 955709462 581188564 427134333 390697887 925798837 253340467 928026272 138452270 470050781 699090581 467413428 135241610 800475385 843829494 452890698 368445776 369227308 460857651 267351554 275402948 554455503 593298633 102901341 874524271 660486834 959181952 840340445 775096342 658195421 19537445 84688513 486989079 43062079 582320862 640627795 871854885 582688595 218602460 276848459 821488786 919733717 969966592 941861746 474400033 178032647 78711348 513530198 422720067 398185496 990038391 245922409 87896232 409936508 735975342 682616983 709989651 324798569 973059165 117913380 494216283 41765394 524741032 751742253 952094943 600051123 715534776 673797118 361997582 656101401 168449158 33676322 963622801 989567060 894064522 650572849 695696873 611463082 799340101 281490851 101200226 385979689 703011499 907588365 528927468 898848166 31399247 813485618 310490027 188105856 286219762 909435466 95569726 844119160 325002127 373309272 247464237 788927161 51697307 73602297 481667565 863074935 15995399 866373702 329053461 647468172 944463744 380676529 144060823 973320017 2386515 141014173 414553092 468449009 155529882 137383873 695280935 607508878 810464136 275654069 804133675 960483783 17076600 24407094 573925236 584309438 714049208 860309356 510945352 507599511 574290899 647991447 99366831 8039510 567419576 468659893 222798257 306174858 573208665 790246732 660707282 75535500 988269122 197226916 197415277 719841117 85414577 246124723 756149016 36597883 966388620 360779902 328411800 988344318 667621602 717872961 414797576 929435764 996631436 617236491 507989168 611367489 48614755 564124141 242215003 912534596 215810280 374953340 762063559 739541798 644915418 586007834 85670049 983628889 508622980 494901980 836284531 296158787 461259604 400964791 826946301 408446607 525491585 864347091 238356076 745068794 965800656 699803679 448977744 365599202 829675398 793333057 206096476 605708210 940026089 710443156 294310105 84792891 948380555 863419807 964624587 602880420 575358782 775562429 565414409 208356514 14694118 952003725 830031851 338145652 624228345 628249049 315293961 424703944 320890172 754150787 505845271 8984400 339941793 238123988 304655997 165362219 17384089 469509113 961956039 408998717 494354886 15005795 4020941 974083263 954457440 378309393 492437264 755862251 407123349 786364390 483982599 980188986 422796770 236787545 918296148 838166443 61076648 718750057 359491630 165964407 196834213 272583562 579318035 685956181 260523786 798042037 383323522 240042859 721756267 241084568 808907000 740402071 731339632 984771874 661848702 17014860 321787500 372436558 437406076 135971605 638773738 213711884 293178211 922593709 149056677 175084691 186523868 512020626 686017356 747819355 412514766 27914463 504829261 8239465 734086386 487373823 753788337 556673825 251148359 951233526 134807197 172219700 65394245 926120160 684503744 694990787 522708256 472325319 267212425 232734272 405185259 47149763 972363352 371982602 692132328 122963809 268149240 750971934 853055332 138801795 949466608 641194099 909656052 951375435 728393610 645861972 931814188 747459420 594538749 587975495 97007184 697011762 93323416 452099500 130632118 333990244 989967292 676750904 537727107 88490517 182294517 40380917 981839064 344937726 874461286 197808495 626543288 700334547 949164487 220610141 111397289 393747072 713243579 544046248 313123420 16561130 877285285 371566144 314487294 67183974 563246244 632962877 817379353 844358317 965727424 538531561 334822526 518563216 143468990 633322970 8804808 63095639 119182645 235892386 792412770 794707006 859528601 254687363 341133256 578313048 739121612 915440221 613877536 423293034 169403621 53674404 36061980 392647278 550126117 435963246 939583206 364495874 534446770 449481063 124904983 993102067 661450394 104896755 354418012 818835088 428085017 679821002 447965630 761111675 989463756 44304397 192213274 801329437 852520316 402674638 659626737 473410315 646458175 353941013 814792726 289527093 219832120 654094267 362456607 818184100 299436129 646531454 328921212 937967207 396145290 516256724 178365942 338146127 618207266 615790233 916360728 478523699 154514458 296108026 418618239 916203293 932541486 22921604 252211205 256279133 14157538 705442383 469847236 362871264 255747779 345426448 824197660 640331568 800283537 284641332 644536821 171497711 315801382 937029443 911530107 87444353 335963992 437903670 225758660 579205696 789106523 623676308 240411957 203301559 333653465 344463816 316927196 234455230 639246245 264021194 295592425 723254227 914545304 947079257 258788060 207007441 489004356 155476340 771682972 825350145 376730647 971077146 499520495 504047347 235710700 322983724 827601965 500423514 911595068 735060068 553672900 930191425 878307417 374630130 496093387 445804075 702947171 984424432 149400456 412522552 897252621 914814974 555751546 224363814 769584010 934274260 411360723 241385281 152769021 531602985 499520811 169281423 130644716 530724852 615102452 793798354 472006220 660276972 20334939 430141451 551287243 940154654 172073942 965055290 84236191 970525356 715492592 817051663 163401127 235161554 373471975 981350806 272504362 748309946 73495894 5872433 738060785 466840579 312857609 88113657 296777155 61208097 432303532 71989207 678271148 353783008 563320158 959385115 743694821 862143937 235146869 460710255 750950618 104097859 881284710 725927318 38325160 689826669 994430208 733291834 544037602 324473292 822515451 182225727 393254312 736332934 484673840 758326955 984402911 250612975 153444939 796850696 724402794 319210824 242171338 377664528 192814278 163903057 587882806 566661503 962593983 25718003 505238140 951658934 404766535 550936784 537582497 293250043 819281190 718735993 333998373 603106912 533005463 426698701 504580527 558926196 638715152 945392938 76983808 877139191 952142970 326939319 129943049 443647232 8327917 527044323 41477909 481783930 405644988 519199827 39069974 194410570 561033149 377078147 179122704 375254881 138289793 638557391 972243248 935435452 236456652 182198964 307918224 657465110 685387283 721477196 538571250 664194173 919982211 128998666 435953454 948461933 917011440 396683340 691610298 296531163 166129427 12814590 994652814 403108022 97309822 875537477 187922537 603732921 66021371 504446553 319868690 896500166 809102873 395587645 630351447 419842023 710400296 283205257 137058260 598540939 118766888 195046452 355532518 549106105 644014783 867791291 926639211 59602424 906420108 238369855 49238199 311203321 378702178 78200335 683143744 583339396 48180154 75176362 799621988 418046838 955736133 258403503 658974992 848057730 888294607 772221869 185603047 533569736 921908976 336095340 232913302 535127848 553987579 579868682 789662900 12080072 647122661 29694333 656780553 223260409 53925591 614073113 665652418 392152281 424364595 286089402 876902699 384829110 871624356 370557251 309319911 112593756 756066283 153930099 768831751 708496044 412626390 383035435 52380585 298793802 713280714 33145849 229386412 287979905 506851338 881044891 138660561 9239864 589757579 765079002 762676367 221363660 43091635 767463046 655523010 426637349 588288199 950331316 728044433 353203029 837445485 862747731 497068134 822544262 625457454 222424284 353061186 261511540 743033433 890190959 123290859 328927098 805715037 701173985 541581003 681465509 617869094 689326686 27479053 481358823 130379362 964047049 836396858 885767023 853954965 569613344 891714874 361015745 703819017 660878605 478969684 175058758 604771772 168512634 365581878 337701272 605201371 143708681 789632212 660662519 374952710 619146838 987829474 723545669 777570243 550265745 423424682 753295744 22472454 613557067 127585292 920182623 144419171 10094321 608805073 10178416 762796926 518398277 337760167 452849314 277548330 636356151 258848788 750132180 818213994 333928465 491892043 881453637 221129425 710752252 82186483 27217660 954516005 373698176 635310686 566271780 490091863 282223188 697380879 558086290 752657639 346672283 179449300 928096627 414319636 993168615 233902070 560091591 633187721 543710011 461077061 267348208 647809492 516039738 995156789 160250548 703491339 805093628 875617055 21549630 795720859 835169621 242537868 551176908 719085733 929511499 348018767 348485484 957168936 623737789 451796247 636220597 454165000 245532124 825293964 619463812 360257821 87900580 687852399 169921933 87344677 34066088 470860996 152235854 942818070 93143831 4988139 333113664 250194666 179798436 907013722 588469608 449157461 40449182 507182412 465600503 439641827 342269852 147366603 943418122 41709000 899099553 481737054 792486359 542842936 133208801 48949224 775590548 849521075 257681337 213198279 263987300 573002311 730169349 571409387 412910553 470484266 609197359 624992985 202708560 636575366 305946749 53864872 587022100 998176504 630160175 357758644 258668824 208455112 398529784 45050225 30522954 115019635 790775316 141687046 699875306 491451795 92496702 975044144 284161636 231934560 325759836 135785051 321811152 640505898 81957249 884993865 861176649 246294325 468821318 45499478 757968411 231504371 352214910 490394154 255309197 882304331 819854443 332079065 294995379 81720487 642326761 454005012 882156669 130419638 284186746 956032567 997514023 548360663 506178894 403218375 357473977 680776855 715834660 935861327 88819480 261679029 394418758 12402812 391069022 895570742 709172932 386872004 233820025 523358541 670036443 875853907 520499369 297133299 451528813 65414552 988450347 631623702 727460210 945374639 660281905 317647430 31872011 34129962 539433615 442571986 246327459 881954360 783111666 527200093 445920056 552689928 64634403 191734998 906886143 27029921 458810099 282270360 981743647 204874841 747237822 922779782 374344846 613606131 156624663 463583032 202325848 971840343 693285104 270047230 968902366 921134467 441207317 859664019 563429165 877264258 875405331 467994423 557738130 76883339 982845174 557778797 969878464 678100546 980559734 595564308 822502485 207761812 409209013 10653163 530270680 998890302 884740865 94885645 911200089 937582532 487252185 498545668 141751872 861810603 118446880 950690979 227076634 920280537 610210243 455403734 985350812 895365270 262651425 455348640 45304694 691056983 578701176 928939370 543270584 237959791 705033087 277239407 923278250 465213057 679296983 539471805 519957018 865533900 983236086 950081034 687269218 595032770 849453762 76670302 436007930 803161867 606405843 515957873 292985521 544837589 796175561 889862461 937504546 103266056 41929375 220450274 854066635 98407531 974545917 540085716 537229646 48727850 993031442 198606518 352968983 927854211 666144793 14672524 199874491 934858359 721340446 176406733 310965413 792108203 629714986 866399709 931113563 487328323 76784047 454555710 755834015 14374559 600226210 505513052 300304864 722573083 715039129 434241077 125841759 856023926 519019447 90617205 804202223 244534028 737928948 674184982 272945972 479965187 811967913 335769098 734581462 412820081 932683031 382728485 544950278 398813324 713444287 873588232 838315881 769526993 317372510 280943375 230005350 212567613 5560287 773551797 823756364 27375761 765077727 914030407 454335420 56002230 776965604 261203244 112188361 862325194 513960594 912794858 478753453 663259835 486082458 972566443 602098162 48732313 899954067 453744209 896966739 156165172 768358225 403557933 395271535 313367423 618489284 247772168 103888288 817731750 754576950 501015947 977322943 921507514 425933089 77511486 977106613 85352654 317512908 879222604 71879039 387423222 833854582 177238781 284249326 327175702 99626215 55964893 529706897 632022422 241068837 18567016 10793686 387617853 815651756 717846668 517182729 343875769 951131906 347384336 996906080 491747044 624294480 19070480 561633300 893224024 607821866 501000994 449900930 366128617 612536552 317803199 753442726 556320017 344216812 457234236 127158582 30291882 845415697 710558184 940108951 269939983 906104200 463359384 189291506 710858587 838263448 588697835 391222947 737417912 371200769 497447068 622817487 398017039 467395399 774718580 80071805 154346416 374124164 728129893 494205675 6520342 167446816 871073409 988856404 69106443 545191977 526027572 297080851 936280432 964263841 443707643 14164493 493103820 794882800 650118237 554075975 751160380 921384912 234253945 647256045 260545411 995918322 848249572 746209014 217934870 456884280 604990840 264481455 358945298 285209919 166081073 537388436 103691145 806361267 276585350 322011464 754201626 621271416 369192300 329187389 109699787 146237428 342350898 791387139 290625118 578654759 253954466 269166873 597123485 374967848 450369413 564930556 761773046 792229892 179215203 868021166 956775172 592790634 49331576 918983766 61957380 761451125 685999402 613027531 389464854 969078934 8611287 783800418 438155219 923095954 328407480 994676799 975475823 514785881 676579907 911018452 349277795 272084441 907994176 121002767 629882766 887420578 392219403 621912226 853273441 276298372 519616277 326738094 919067022 185540753 54274197 137659781 838870872 367584654 776132328 681601186 842948123 314281696 118965939 372636037 922802722 282182429 573254240 668709573 245291868 198725771 388065573 397894933 484356639 90170034 419866580 362114132 36289787 488852549 579040603 198147145 794544747 797855346 173437825 853895230 444402235 804131812 931506690 560229789 336025973 183070900 894607340 111957234 4372996 369174886 917615008 622433377 275593158 47824674 864387469 593546671 968819415 751841708 881101871 741346836 81749723 25966821 145218402 989733406 870708428 447536057 319856064 129222428 955588637 967953702 500915033 640715770 420166346 146606168 230551508 991466236 265593099 240699607 228256296 430293962 80831168 757094482 14729520 430797088 763940978 822021944 388247538 164672601 754999325 466956863 943191175 332785547 913259045 513418464 386088095 232422531 665181079 937848506 744966436 113889651 873383988 230363076 45712656 443784735 405469966 921036734 953959819 280137944 363763395 552230030 847330992 48955387 987866135 534239144 249589252 198411895 648827087 902048418 499376279 639283206 23129771 80379085 915912480 992229017 714805811 301710000 398653945 361790526 836002634 679010985 994085181 952642359 9118027 562358951 470155571 825728060 546906575 333836077 48122973 443619948 635162966 863063495 916604499 377848821 173015692 108399017 986359806 749238467 307449034 270767779 100930711 61722960 142181711 702001842 123122301 683729603 452744354 690936077 857054895 980367976 971117655 15199932 143569366 829057196 665567711 715059949 857627543 755018763 97843178 107683464 13063753 376566842 62140122 850338399 728411569 215520442 533275669 946778394 540319911 640413137 486270901 965129084 449259774 459123128 4633797 163726419 852233741 590090120 444412568 276473124 809096562 733913092 428662928 69826376 17601460 600609804 651098454 457651699 725866239 522684304 456627902 548741532 407158201 495097216 189352554 110744612 409367392 178165415 749823081 681803553 933040781 556752125 584600079 85495643 176213789 727886208 796871351 49505980 807631247 99275068 409323128 491769343 733710067 955721183 23143035 986844577 331198961 763225742 388730433 976124456 84603503 607434757 725136182 100214559 813252747 74035539 210465648 500216062 707777230 443619 716499955 182537954 278018481 50556430 752366698 514272399 72916686 409722727 138447544 657436474 980809545 139165176 983799495 298451883 704380025 854160134 155680026 915155373 225146547 309879218 480652149 568779649 862644880 270981956 575827162 294878960 349216974 194638507 915693370 728353433 552533364 345329076 735223219 820455238 998975716 468602318 114120246 477824595 496750640 229008293 610878540 119675014 347213085 243753398 947676636 950507288 387882575 593164269 26937001 64677977 946698000 403599058 723830947 257194401 510417093 615988594 392487997 512159328 764912702 491221084 669459317 811963534 176720437 892011097 403614441 778539665 95571362 659489941 266179861 18756247 504030665 691455183 495031034 628505552 430764631 424325093 971365815 795306883 963672017 505137606 43989642 392437331 10825738 221524335 196438582 695956549 15483452 617822888 956051180 84196046 36164531 576592958 28868706 786738782 975082170 92728370 444155358 750687870 184448158 69745700 894779445 369934544 636135196 652864790 965504104 909262736 835390602 175986052 178747396 141893737 830009195 151423608 878540898 272889514 860180703 425965455 107945909 984840961 457860658 775453793 703121675 698372330 521691155 900220944 568469501 24413850 411505061 356611432 369986574 989009284 374870017 155740497 791587163 32444342 582996732 711167470 818324235 509623015 659109662 122503295 748184642 875500480 630267548 962003773 392921053 186195893 243067276 508361391 192714453 206529382 299522342 157707209 805667240 498545554 659703129 824310951 706858521 460569355 21029042 528296844 339446352 58537937 705885294 594996412 864117770 413748363 434669231 955078571 574980553 220141388 133002273 531366758 689601893 116077923 274132725 181103070 759854013 895928806 382249313 360445448 447099072 636595925 814345871 987855486 795892013 998370521 467200163 591675368 874058056 955005059 862097191 909561107 320199111 821776106 540374129 741672934 464619111 86082650 540900237 457936076 484635584 758478490 710486281 259979155 585792600 847054734 91351081 368190284 570112338 801143176 790823315 890693982 914191609 941257259 291054535 840177776 930006605 731989213 135077951 610086494 32175213 6394992 40857302 909259213 685827831 625660298 240591892 649012307 371002931 760515737 559980879 62774742 525477011 278553514 659168501 453174081 764246016 295719605 677933883 490094679 213668403 238768742 809792053 242015511 266111613 200879787 418781485 752918900 39080250 175277746 833454606 63244091 54875773 31767793 475178753 922693073 392148218 613322566 479205592 685848394 383612477 83605957 232322915 81362039 516136073 773689 326539719 246547169 686232985 844459268 182078430 993172457 148819904 108286430 108987199 45397731 672251449 152045185 673689275 548991947 258067742 351105262 218707754 153715662 375017983 881854257 519538983 884290209 779488810 646084394 79828582 26912897 651087359 446704595 740682918 676856838 781433924 3965467 361118304 569141001 641312620 208017777 180154097 485027532 159719747 483130487 207556384 435716128 166082764 875063509 616171774 92572201 67717341 920233061 39749860 641244383 770084125 82577943 559176414 862615585 802709192 565897152 547786889 211784069 756181891 86617681 792881367 884440364 715250116 241325828 963380815 801646791 58814523 259773706 977143091 540072074 508143798 854236196 684331648 430610069 100669314 208643375 785343302 896411256 169464566 604097511 238644126 367426056 332238160 27586888 462339237 45296698 834941506 740757785 191840841 647582448 544118555 278121139 927262923 225492410 770899730 308778063 698988468 319646206 352233948 650838682 267695059 810405069 248628249 17902750 101345405 124867631 430459011 134826901 408703289 747954467 13989876 249872729 82765358 357445375 377375882 137438148 292784646 130045900 598244484 385092051 48936962 805039319 623786792 350207425 466407786 807739122 916956030 90249093 371698294 5668938 743969240 936942790 562743404 448460581 429948955 571323558 491112740 216263926 661343008 496711685 379625036 955305652 99451614 536478956 381479747 570085676 518122318 292745890 22266747 175409840 337957365 520602533 729717316 666712471 699993011 396871072 447377197 163487886 680038842 167558363 97271300 497805231 857011205 20327240 549720798 329541896 444337922 736435127 83870614 42116080 561469082 794223450 500498802 657650593 336787483 70425796 350916829 629926064 580513619 878998877 51044557 604860716 719388161 633902875 4027791 853193744 322545307 913080420 600660217 133103210 418425019 201092420 19121556 738542304 743845625 908273400 920598985 28374254 413393410 97666395 249202264 745745372 824384541 143100224 538088301 398339023 486942554 339198300 794545537 928509853 468491567 879939280 459118724 163055686 439115521 920192172 243493812 376149733 334499381 975783615 579405810 516252782 129390248 14510686 509107229 877450827 841173275 239791767 822941551 189093894 599217757 200656718 412067100 728784001 990741302 117489652 878781092 881981648 984369443 37628949 282514759 674082284 309710524 472967780 42647605 352046132 781799396 42204780 775255128 505884612 179017181 472873506 99937298 448331786 243319190 927182746 605761230 394617138 256371562 87757540 619996235 132707055 876657435 410733153 437707544 218605772 106054319 260484617 110028661 942922537 477105908 913993892 880520063 755867360 279694973 384642945 220819858 370137621 409093764 620587113 344180635 236531291 84205835 707196302 411721024 113423410 974570723 773937357 462275026 546102673 262018516 233635931 292134865 384603262 13107745 262529925 822891180 245473039 13381520 314221885 583917506 466584419 513987943 143968458 705500409 787409555 414783340 621547 187501786 293471757 129424738 715256512 877079315 251649377 184902810 413023961 288069676 264775345 165656393 314571860 691735078 436775454 760667735 397641387 500125218 569411619 641319158 273427417 928167642 759036573 123658599 965171666 508267644 214380615 661464460 948067489 268292540 713065340 404698419 837447330 683538956 505366847 882609775 643666898 920691144 337495554 299650905 157902615 493558028 68724877 804790296 798262894 466132827 951572017 630263055 644070796 44446658 891886513 412112959 735636238 4105665 995473488 980733680 637207097 74805564 349529151 544714731 75017083 228074646 759164162 503515802 316294950 189838807 308283406 181810020 496483729 749032144 212170928 38394063 428926841 283875541 391457899 176926302 771151512 185720446 436528191 694392648 575620164 507371188 625113202 692823277 763506346 207046828 310048973 82551513 371513842 730750406 671190086 596930397 323386999 913092262 95032443 321548106 387594392 721667308 966302120 497376808 209471212 777800288 828139344 532682685 585467322 972212490 445843785 167766011 640614140 118001978 926456379 833778672 993731401 719374981 240684769 696194626 162148225 387471671 508350600 468245268 811727295 371937735 664239138 291683444 865064504 678597742 713107777 936094048 118033660 503023278 614029540 545137286 485657338 987377458 503289461 267903679 424192828 65455675 708813733 905033757 993212661 777488790 716193588 303799292 981353114 324805342 725394643 481016830 632093498 407224245 927143188 216586775 997760639 71700902 420395682 341209553 328020555 618882323 268532681 485718714 103388197 616821978 305113224 721100704 295446093 418963570 58776737 555040420 780506358 853437500 529754835 745085255 136811226 737348182 449138430 845678780 103726364 572004516 306135142 74308967 601968010 850846951 8338402 872195404 849554474 887919266 65259557 270736498 182058314 476958359 70549157 90222288 955025561 593749054 800078744 241054712 472534504 813359684 344802096 30212069 122877836 359163025 778937203 336751779 611692820 54367266 333476302 20951258 115923055 543166693 458459758 860876619 442058413 580979426 946607336 109796551 892027935 49936267 940092907 54162840 713508648 586902939 659497692 271897288 667064790 418601550 23209493 737337604 885508275 933144037 136497164 672121419 610786225 625967997 711933536 104711699 367679006 128430972 187976220 714724098 161243232 44184526 770788470 701298726 393087495 145921251 429824880 490306516 214558243 961043808 561885008 555855126 268289736 63615463 354937109 440311953 840420471 720517799 792610490 864139966 775999447 35514327 697359798 274680779 25985257 281527690 146305384 9443707 334794962 626921470 497636979 862074775 252904787 57046133 632865410 305900545 363540694 384916428 484607676 353310549 372953628 782536358 326741160 136325310 436762410 745761977 593289346 260705170 254566757 836542364 482630855 205666591 260989080 893195683 649888151 478149025 493625048 267373510 881940173 872919047 873106488 434572500 631293491 845695796 408502608 226969845 190898684 729689385 644947234 973802555 88984653 420093685 190893495 609373888 144704383 342880105 871555021 625457547 749081137 985692831 715454415 816850298 900460788 719382359 136850927 327143732 333903507 814027703 741619588 779793467 472598997 283040158 280792804 935292906 954007697 299265300 863139112 511368841 260239003 556904395 873600493 366549489 92927884 530997362 898082001 772905308 220858341 954988721 828135192 267871346 424794529 338258445 839628301 442699254 933025853 921567762 241803452 797592645 27846438 416597292 829915975 402272928 993682879 617822285 10939841 106706301 108404918 975167184 781646771 535280978 443784582 653394209 868078847 869158970 294589493 691700136 41279899 831900127 554591454 808533109 779836074 444960035 570197412 533267629 103827618 353135254 971666290 232818353 664498803 567818068 567421871 991139169 470347485 721634979 98228725 886411476 409830774 969290269 642728701 392763658 75725700 117290725 764858443 123806120 201905757 446536805 351024446 255092956 147727623 614329067 309172120 407021043 370794617 796137144 430056182 349281705 110623392 61498933 429624081 36761108 847406182 114113657 458453063 91714034 644560976 960973843 514583346 930793724 570480048 400088642 607335296 787296037 304404546 891650417 999128031 797268323 789782384 56274623 702932850 834087896 38910484 411710156 899825371 848149184 627885372 970585003 297381822 446639680 891092397 757745589 229756082 258582608 80250847 195394357 421640694 564624176 487140125 265792938 765851492 293405856 509861093 753643183 789103440 307692516 636896734 914953818 174454820 395449722 960509355 302596310 486934940 860593012 473565735 599592556 126043698 743326333 377149807 266934944 985417007 35643460 797237851 726428634 868079728 327895557 13219354 188402479 958558743 802218029 809016608 527637745 385136479 241140498 371400284 572460229 329599108 321481388 336320385 275877911 921010872 509283877 318934850 474966940 627404090 457003575 552503883 579594164 950669826 283749930 520165874 340737937 371110761 755583912 263702362 505477794 312721974 695476846 715282624 983684802 697761998 744560559 95696685 610219970 630471784 202359713 703081609 679430392 112047277 329338034 249008633 99477750 603049346 57724928 324471337 310018818 381690725 412388694 161312639 402991731 578304963 211732566 40034826 614403182 787361502 509559971 951124307 457117588 419219941 89198533 947773842 45571720 704833774 356304535 2178383 715063754 745669751 992093082 505579599 494294268 790479864 950571147 797098962 392956557 684460738 303005135 286608788 926423587 660706726 73816638 562673135 119643124 316228215 21834438 130842525 531519730 796463322 287434622 271945684 711303501 991471670 666870524 377107308 310177673 645398578 986499645 278741753 473849972 496378724 408649859 287519534 577448650 322242523 206872584 190768804 142367551 444071094 764231981 805343239 550105626 359638514 489344606 414507754 587712816 116580665 927053059 412847839 908591479 443593912 340108418 292917272 586090085 621809361 309362821 283881214 959904908 153438745 605238216 380336929 475268925 132562037 763375921 78957798 92620241 426832989 377920052 574274122 855825618 932192021 173085998 598532849 863583184 463675096 941093704 214257433 163565730 357544258 695086586 67499991 905863321 690112009 455624287 133245033 608348528 145657989 667838087 775829378 947772099 946263261 389757351 779962485 205178529 737061737 385054413 443102134 535064452 933883204 920789089 344276293 413475560 303000728 500694484 396898034 112506200 791903964 589914581 44314427 183203051 275998053 220019644 447278062 329152606 601851238 11295420 369091345 448465276 490538286 254618241 847893229 897765181 245582580 267060656 833739252 846545483 234753456 433912555 534414477 73369200 469702986 930114641 837288719 219278697 665348304 120845374 206316650 201799566 160338838 115311276 766649170 979783880 611168697 757441529 482938545 735889625 959172774 453778719 472898086 128577636 264633284 802598313 80902735 49625912 187213256 720081831 993000803 13597960 687648755 411583490 6086895 321561476 477295535 894847759 437765762 624115113 757216546 40984487 53406370 47519905 897469675 493457030 635607667 560966241 62554930 421097112 890759914 431490622 373130589 319803831 724446134 866028337 560224068 43160933 942729792 765685129 117410509 519856367 189596892 82847729 728359014 733277188 843716173 453466923 169004973 443802526 85850778 423933860 912899987 647830141 826424188 158446342 23224212 836041113 496036895 679152974 343647464 840063663 208732685 389072041 865258657 629695393 558827862 529656653 942554411 353827911 952605029 700116510 274531888 851689498 230978572 754730119 90083979 107189844 234207798 432162516 765874709 544846301 427278480 839063352 805452595 916675029 255452645 353814969 627590439 620396411 974703333 799488968 616262608 20381881 540403444 166502157 506767539 967199478 678173904 61677811 965382218 924461335 706470194 127670279 380438604 439602547 160968641 253350726 325513940 5524905 532175436 863158354 831600927 770856863 617680484 759219290 131071821 494890310 848762687 205281900 988168538 532247388 685466577 495892833 614929990 179035380 298502710 505561524 689981035 556401088 743515994 763955158 942297232 343724525 626117557 588456270 579230567 65479412 967669471 530126547 878613177 773465469 326525271 560155169 907163135 256968334 802604805 919541208 489083144 474279790 245607462 313141942 60402088 368484602 842756036 219554311 442476950 970453907 839137402 49073966 74765806 379732612 767304045 174305560 857481523 225922894 586363861 670446937 894913539 71857379 605670938 650240221 112088081 669729945 265313649 665833331 895230943 179975094 815266206 90049656 100050206 439834610 560392421 767007173 578202413 511598060 621220318 662704234 571008679 47613746 693872937 276677529 429931678 61009638 969155166 239789755 476487915 49215005 362825841 938805417 560435320 170158973 768061 632905477 657008785 914696574 691215241 688115010 970466328 676998082 823944356 318233630 626397881 939434685 91471301 718242697 624411573 598564852 638819266 457723339 152114614 293781971 133647107 426966194 633359157 741650522 714553532 587874355 746685935 577754636 568677753 731606485 434130346 533010638 527959290 478812093 5878798 120501857 363054263 44108410 439404381 121123489 599231254 668583801 102925543 361179883 316700054 437170534 132452173 383966727 833927370 956445495 770551405 79071714 438302757 731197971 601297106 969523696 708244725 822087057 302489263 241630319 648579469 770420236 746313241 841457375 691558019 730433084 273929125 298333052 178780259 993219677 300700366 142540081 254409939 361753329 997421818 541261304 331523618 759897835 955263730 503849469 814206212 666759096 994952773 752937429 641649640 336193742 696622095 586149849 74561323 4555074 440637927 511983460 521473794 131463522 719312032 37148153 92273520 325765163 985089830 777722163 345596147 9447151 200810110 652480185 238822809 95981289 547979823 981868802 838458910 25919202 421738370 324118481 752277066 147645223 669135737 753087769 281691485 731915958 39923009 750645573 137825341 373101850 421011807 250898728 296867867 25917399 11150129 31995748 255115997 435959831 381693590 184900497 107093771 986282970 736813623 923771431 529532531 678840207 141006819 427472755 572708580 972683053 12288496 8904846 162247403 704284454 37061724 640819975 953562917 429244392 212971063 874725918 847807674 176388894 196809617 613235890 106547409 310415004 6758225 373879361 39250411 765488802 617129376 802153937 841500621 174204311 799357891 185905906 142453079 122111092 368529496 440929013 368456765 952409147 544106185 785072363 322384003 95172110 610191925 341113905 381389980 789000499 399851876 223437805 254245813 845370734 250128268 534193682 161886903 265345459 418258423 826268889 332857779 122007676 154294748 771078398 336794211 738943904 104961379 165861597 854066225 23521252 59893100 836838777 323057832 425013961 296887096 717312684 898419005 82411798 305548057 356120661 463198040 621871899 858832594 137867821 653576209 978220942 967878719 369915022 382833053 578872682 843840466 759662607 926304892 254254476 270399257 693688693 130975022 697395105 8060894 115316917 298771302 764175692 656545575 476575518 929630887 258506919 556616356 462579186 903786074 478118529 595739679 616786880 532313527 939308441 300110203 498508391 15055702 414919009 219675130 495031477 646406853 674137705 765871881 184037847 920894878 122109362 924414754 173202766 149456380 537533409 194829227 44580862 701308260 550694014 648851713 151017969 304356318 726692821 317081253 351755470 331210832 306700227 505823962 35767548 107837439 682523940 795407864 571595725 730791636 393619673 817097460 440662157 319946106 841049631 629622656 584587650 87654891 521391234 42352568 951104736 752479593 41830741 23148907 955877525 363761462 14148667 116121243 734107068 326788480 232025650 671925779 959815763 255319199 291187148 233714173 581668706 895069763 301686137 912351843 633742552 567523259 526430645 30225 114265523 569070656 618020879 44426359 186407346 856925254 889076263 237617892 456588054 45524894 383806363 422396529 53544950 661124236 851910400 846628550 878743930 646942356 326369685 501472103 985351747 359576851 86184538 257569601 759607151 383018383 824429466 296469967 220024780 71321731 569187429 764530390 555002220 945699116 446344448 209206555 143546406 707304041 364443614 473836114 632457887 667164093 779817021 412182867 209075525 778876129 253242618 337783556 616574403 738733672 511427924 78640995 917227815 624922806 554370207 249685957 634444240 105727100 863310238 499618867 522933664 807013882 584094588 576502543 513830267 955057485 613757698 455616381 215601897 45032945 730596970 959463543 202692977 66175532 744541420 892207453 76737537 633104911 88607055 128497863 868198698 975504211 84364990 733201250 880874351 922935829 173650634 170613001 8934665 228929733 628174122 780291251 546238440 572510302 919884882 224907035 544749829 233845455 64449378 82504412 408114437 946743519 966342238 334126380 655764039 113809913 341432277 120268588 788947110 869901929 91395306 408682441 457904612 834992311 169951890 965000334 379458395 663220935 213462593 350683167 305875286 174949822 756329347 871489505 358711050 487080496 736608050 204279027 995205187 430249409 481063215 94258612 621825285 376848707 43494343 882856678 4906317 133515013 108927975 906448095 542029397 350529015 982064402 512598998 742204329 21507918 447923013 881736738 40186249 993622017 412344206 253689278 356990889 632973006 164499796 125721163 696555343 636458839 791100196 13163583 701908072 2275294 834977037 9815331 867078844 278294284 440746437 997835361 147424421 266289439 107073136 312193031 105870913 656686944 73547970 448125995 965604347 760627590 146368227 192498814 754977994 610083602 637290568 982622478 874574114 858266697 50373124 301373338 553371636 621484065 777070882 528050429 989714090 861702887 614269103 474494772 478170950 704223675 153453925 220523897 963638649 337133716 410994834 963475901 27782716 703778784 385599041 227310306 67706612 571956415 879221319 807504301 364909403 469251785 676939028 165769211 664269734 884181753 86429897 816536772 52507658 233216310 227988798 562427013 70943980 240316275 336899393 109459433 557219740 508742486 397194710 755826632 981266357 474357417 512601080 305629198 533575503 579115812 839901862 51208554 595861665 61369742 23073018 468882796 685940191 228304339 124125264 585851693 7323528 103072713 939538492 62122466 517722883 864280719 932529062 331043398 449466427 134204776 459230053 160553036 741352074 434128975 556220761 545656218 594452340 669090337 768311029 756672076 871167567 329050940 143478070 806248640 349443754 112259466 744558085 563035852 285039240 293652302 723522724 623995233 560799490 991628664 809039415 462706720 803581577 843650193 490889085 793887577 525399672 882461710 668486752 746958617 257713774 949113136 328756373 241357811 384375022 858907786 617095530 389696884 146698156 40250028 406888397 625148652 37293897 748096116 729353940 373528136 722152207 428556524 405046073 983997871 208181973 873130128 667875398 693753948 981762179 189395919 600125339 730071441 540243613 721884084 629523163 721531467 461721605 283626895 656659910 906511231 142655587 852261038 795101301 501287215 34177184 627484584 533144617 216525816 674667742 575560378 721687706 185294612 13277648 197341432 145053060 486296033 286818985 1546688 607242821 537133878 986864401 542901865 631891797 3096598 6550968 24184334 463186738 357250220 400228182 441446163 170031543 261609113 544348314 848033751 600541013 448721128 556729378 677751511 289191672 940559248 439247983 41583938 564964195 957858645 734604477 351126703 967249341 161728341 133754868 900596517 146899178 492641338 676553122 800577944 515482652 589667170 258356707 302350748 149656645 349686025 474298525 244144879 665572257 25103380 124458581 521921009 165125326 494757368 246479718 502882731 134289630 353402828 801192547 261455167 221966678 347813667 106018596 41728267 136621840 422342562 21731372 329651054 744888288 162457133 904740812 583853920 569110680 301667514 114577801 143642505 450628781 724387947 426078253 605254136 242220071 451506803 492024849 493380148 134923203 443644772 212353150 778910110 98171210 857124540 749884283 991936936 530011057 973372764 539515277 305000327 825626323 77253118 919658830 48658172 264350719 491633495 157803786 218879799 92605375 320621723 10385060 446628628 316903643 459148911 644225017 800176004 588284006 282607521 929615724 504772269 280321523 693582218 880769847 983381992 92769554 34012621 563519891 437633136 42299389 135120181 213031361 292824060 26346637 39827314 424249002 449280174 68637263 911547632 885355094 961615639 531834535 997772557 665636021 96775993 944695433 762979637 247212367 948993381 562566571 14915499 324748212 169525032 874680071 960617746 558312592 832000847 218158176 154202355 339854813 64221872 923697697 283954196 572477773 514326877 877234984 176728838 432686150 407747288 612115802 955524264 331204748 388871839 699006163 308989977 595371384 167389823 690626078 417081349 603643433 497149265 419271248 117841748 739578832 554145407 122695226 805906142 977785084 303774113 164723494 336466199 213398716 997270811 22005856 488884254 270555319 346059880 267782805 888078082 872684454 343484502 504754927 394141390 373722294 920362847 943936757 362379011 493606590 68845270 530127732 876488746 473113484 179311787 993919923 622798118 899918716 884039030 47244659 974337905 831999889 528844806 841536732 12176865 781797990 846746790 586999811 834802477 722069729 813284949 697331861 322538766 724799358 619482566 47011352 89631861 750447942 961118438 170195249 54088874 656581902 92200083 600410938 395151772 258207877 480645047 275065561 529147035 177682693 719004480 529205372 268559920 837710499 195663386 207315567 180475822 512119032 2218642 111945174 680362983 969331866 916409724 429896725 953279965 999568494 727561341 854571045 732269181 793257704 689263581 190093814 897861733 50205421 409035901 46872712 861066793 297060944 289850261 502453252 36848129 623305551 124573922 977289689 328859473 799904832 640500943 858055029 515651944 68140336 573434315 150939721 77084997 714482111 79002359 21194430 622918221 802458187 148058406 396345510 208942303 902598309 128447763 610332494 429086909 345144207 370172547 845699183 569192542 985304986 642445683 643774753 22209769 328534194 96288245 97223912 531091489 872212062 936885324 458255625 520782838 456414428 130871247 354740291 617266730 352444627 844998142 101063456 10699627 833960047 761153371 247160507 760386750 616194712 616050237 463985983 570770776 919372758 273232489 618814376 133610667 834729280 72464752 441723238 237850146 917910251 246777859 191734014 723585543 153804248 53037964 638719862 592723392 915643403 538101718 789241558 190216065 352981249 138506869 91536236 350689209 206583169 399585618 805272504 181004778 327125756 791998980 29713432 564062340 530705011 987422568 175188571 987101526 90900129 146082646 874998153 114348041 894533289 185640514 369835857 492159740 140047274 491546997 507735034 362923399 443519286 735012025 440902880 598717977 298679264 748758847 597629660 698542588 441519022 291631660 619553558 974333226 552901143 808867257 608676225 197655100 897102004 49592583 733502806 293333835 374549426 167177834 940878096 420934779 897540256 686956337 617225011 435492669 862948967 89567834 478809453 664237728 55612147 973430950 377165296 800588460 913363614 787370111 341982677 383826841 491728919 648557911 110691162 826633231 476818402 778833747 270119717 576903030 179582799 270486848 453690547 132815118 428077989 64072742 637377736 665446589 456226780 599833954 508470845 635711670 358863476 643713570 170523522 38525390 137045 710489956 598173527 56651770 513071392 603168388 214011081 907465470 460779561 503102438 300518480 496175292 194678751 17574028 404301271 266148445 838505593 571194769 741227438 525982157 606118029 896298204 891597909 489005455 957316890 621574440 36727437 185427095 835122755 552769075 220208133 464106372 845458751 564352056 330850784 52242571 986725398 452858738 376132050 551645531 266764774 965075515 915530120 29250651 142736534 464972405 243832025 979967247 367273044 850184344 297605392 789536991 169100209 452468562 108791433 47357360 269027888 302131421 313859651 509485574 706228837 363167300 103178239 501809748 423209673 923865642 943110893 196708751 117551132 498689106 294501756 896397184 792466265 441051987 962428692 196705298 862765481 683254150 925442716 49493775 407102125 219199515 727583407 120607520 14704170 432909098 125914723 966893651 12540648 723214666 849367314 774283684 738389060 616028999 762505946 742093760 965113727 285564187 851864165 433521874 976706161 441055548 904784467 302188884 822257805 56504742 537762269 567333226 593857770 423214031 28512434 811460729 589590243 944133357 823498653 932518995 828950286 176210238 237821499 718570102 903315031 928362049 832533518 821968688 705999829 621947730 831268241 596763189 393813349 238780291 49097752 38698014 969544491 989379455 525539653 583001639 812031566 350995548 738058697 667004142 872340398 662387816 65238133 763526398 910152386 210516144 780885499 121457689 769059348 191164131 227655094 621206045 678993744 182212196 437347990 197081085 534061669 485941181 461831614 360888839 6321339 92816700 812716369 153308080 918599130 148474112 910045786 473372787 422935219 274548744 23282938 88559658 489175980 304186781 855887727 768233585 915471639 793186597 583128536 361783810 194792871 686460429 655043349 688959313 661862594 174488806 739298028 690249252 282213134 828308713 883913988 228540045 853983606 580492479 585884930 713305101 785376133 439875036 696402671 720549953 344174038 278341424 116916415 177307882 724151085 174073782 681151410 346788903 683519775 44761761 198098638 563461842 11717504 137556207 582864683 4859515 132111522 778158735 271368631 621147583 747113668 348494660 918526524 73461309 991578672 626575085 88528504 44064381 487884972 622361197 37187885 715768022 82507298 491795388 930549124 954731855 612113133 959987781 901623183 753278926 175968261 942318524 386307559 545853544 972898861 326320997 751918112 247119539 629338884 298250178 443902837 349518549 690452945 783416805 502948792 543418656 468387917 719348840 987358985 653914271 996263415 263388891 944291376 639526455 411827435 327453431 342657113 241882966 947491920 254351735 27740500 516552163 833804020 768387594 757316938 903085102 646939671 792723141 44281254 423611863 323621549 470948561 899269237 75807786 164730322 941876905 23171091 849553522 421567081 659728609 32658935 610076426 75613006 201372431 62896571 908702593 990853779 797509620 357376499 354166492 371757061 867955235 929208999 842878040 380011769 757320955 367988949 262147135 481827647 704568335 348840877 143409785 573986059 343122489 536739459 319911703 945451129 445839952 205320206 514347771 856716672 496410447 248975662 7943184 334357193 672718714 992546291 996716986 931692098 939928456 175316646 843698283 827357722 958699695 147045767 904078035 550678403 247658330 735124767 563515182 158331314 555923786 582485586 92847531 996818477 114404690 478963049 787205841 605436837 243317008 70825219 3723614 962191970 777104542 976921730 4348096 76035 435759329 989270109 210390723 267926749 380094084 425934473 938003833 728846859 990285997 283318656 142456563 359089369 976104921 808877779 918295479 496554910 317473037 489895993 617920186 798046101 910241731 996353311 668908958 505897460 120772200 568823196 731598220 609945620 823088323 963092474 969720407 110859690 111517630 412118898 453821677 742383653 244898782 606854389 506706078 308492058 89258612 879953756 24434145 379907956 73389650 302142145 463712165 948991266 585292321 683536874 607274477 332237017 473701355 472198567 328916566 127944350 900974500 16505424 55772890 663476675 897953556 815631892 852993097 420851141 896375718 730975941 869419432 530791112 75414582 136383990 904796430 991762743 196332633 306639702 185200486 463505730 218475788 529945695 193149879 219356156 752099665 103002705 978765707 815182336 26798193 219613647 580071904 946476236 271058454 32577374 902619041 637953003 71187953 289939794 94043411 461489442 479819259 145461965 346212465 227385109 937495723 705350789 492279089 145201845 411957227 66613637 699318612 856215031 297741372 327902807 88514003 626447188 448848057 211159474 221404064 207496683 695550312 837007230 493942827 454100574 180591553 743672753 632826 529589063 328351406 217352504 904671685 906675494 473133082 178514611 134599047 12720564 408856359 508578051 817186584 557536152 800233320 365884106 226796298 223092798 473682789 814248868 743328810 947104647 823636881 495753371 426836446 69282288 944696006 511371882 606164801 604914634 391706050 331550317 865598790 728567825 136889429 81327563 110087263 149857839 136561563 982858356 326245454 516899084 178186485 140265289 860332348 413738656 144925063 766891282 750048513 217818146 736978381 303245502 842440171 911903822 443526978 46062057 938885877 610188368 254759474 115502861 400204464 929317874 434321517 977536094 987778558 407370435 295952310 772860080 371019742 627297079 544761954 546682131 278391010 274847091 418228839 441527860 107841449 621921039 97331924 350700548 912157875 514506622 805384934 809204301 534531286 897027744 774481302 25264951 822358341 687264556 230204233 739857116 185568704 592046932 935015233 210571489 27273020 80045672 32298678 846425008 533804488 442980572 218153059 675648618 975113280 704224806 326014253 930432468 460382145 596544099 57064664 329444239 255401219 746938292 662564171 1729492 423326453 484393219 740703597 60070634 514968046 921129359 399335014 567979775 225543396 992350961 226463559 819902853 164708291 695777740 344224310 763264808 363585178 629779659 817157616 816829100 972911534 638557090 313397120 905685695 249190946 849656252 167052573 398428798 168909593 450689245 412000681 42460201 565612274 565140631 495142556 69045157 540316632 927409051 706103588 639999830 663216147 866298010 812308553 288626735 841537624 524481901 334041415 968023714 488525935 497643472 101097189 191199986 295635264 892972076 732579200 388171701 487712246 669345835 761036759 469812565 658783051 525000726 609698026 67817539 496720827 25389967 608150986 555849040 621298610 853737364 713714669 344069393 892984343 348520307 483150196 778966130 778406547 213000670 99431873 701043376 254589563 104750659 731726660 455234843 522961425 836017936 834870603 818809077 399741465 221079333 145371202 215284950 518846213 974361388 890915562 134072971 265841903 718168381 970319297 520437437 110972476 899881706 935708735 139726703 858443096 535257740 581305248 954773831 637300829 252391262 887443418 865597402 699070075 277249561 924399989 709587646 30421023 691840426 12735380 354065684 945103537 681251368 104158996 455092393 837296674 202195493 253226631 347614822 293022951 615722202 945429197 803753412 804400745 899338603 744635570 502379566 950665464 565051448 37468878 564430136 660902391 665650488 943423978 458259276 124668541 291163529 692446920 194464976 745048680 828698387 609843761 86440519 449425290 310369240 151977976 420408071 782147924 469974229 413587881 303701299 247797417 469094464 579062084 167830281 823746659 322995600 415522145 586077382 774428304 214361504 705127356 854689015 337482913 509488194 866672579 91931330 258104339 494607425 411463499 975873091 736114478 470224773 694119963 518023146 166132179 153287895 568835179 687363961 782641517 689216342 285859620 841025292 792849708 396206461 447297169 214165118 19823759 937290854 181643078 849112244 150780042 968633083 296558355 94879619 519045370 14684378 967446289 675964926 302119839 542372442 717989292 688480874 994299636 614528738 846804068 921245730 91444855 571095347 708428747 210115670 916334766 189629028 917566927 499048951 775608467 301014718 92954408 739395550 222287580 530023387 987932373 985148256 662996125 353302093 889148399 842365401 356811800 796776603 205359842 259740336 104983915 816651950 343446244 453276679 705721767 710413249 868174728 655952888 389732095 917637454 262398967 558625802 61887852 547845146 766093111 732180250 152589532 110194312 784051106 122764306 433418164 525605004 947262645 109529491 427968718 80873589 369618574 278603006 754927999 562774922 440570423 757813864 842069561 334595308 560628197 16099352 55028872 406269485 939520546 948168423 243950001 433218056 949486034 955711429 487991817 502929888 827255055 784102572 75547403 90074428 631494040 765333744 350475776 891856571 563900396 555030676 974906223 471309364 594658465 912249604 51161165 148276813 505030626 906395388 493664543 981426906 51818289 783794446 376676373 681235092 511498760 971032706 620699924 102875015 284777040 587841573 370831368 71867877 398233832 516008399 135109223 366961798 881596531 530546466 123965530 254834338 987460794 894984111 523277224 508676127 983890490 408404320 896491981 755818835 428158581 161442219 969089832 560741831 351976193 369076712 644852639 84464429 782043099 149025717 524568848 589290499 712014770 58124319 655046191 2583480 647719280 611868385 158451876 33073236 292586194 655992146 800981714 792551148 669280262 934190151 514144330 276013408 689084312 714957119 443410279 421884772 271492989 827358553 760876082 809001110 31303947 873555796 493598601 881974760 490870243 29524004 524084187 232598487 574931294 82196312 300943049 762366448 344240825 322754031 80652235 181416558 104514595 192450968 47152165 845494471 89182960 779640615 150290782 808595386 380938780 758279803 712636742 901351687 826039684 108036167 313750948 801196781 161234868 892522224 904331598 735975319 565708490 288306117 976765035 70690804 935168879 314471245 2740959 98650901 853603853 325667446 264923904 20000873 290758580 340770357 64413416 854172346 553451877 778317250 720681853 532878159 781132173 868334598 813093637 452535381 818683408 571750914 360429530 566561257 725438429 95987976 294877611 781119696 650284998 74519673 246105365 564119833 101330790 116016377 864189015 339956564 387828722 499945175 483985753 216951748 39034702 972644960 75561474 984259215 594128457 825706530 172598560 964986446 176066965 731541857 341237502 375111897 516813994 548364711 216145714 911696518 208904508 723496440 128872106 606233894 188798770 344096083 548796607 952975834 112195601 802795773 645102693 181557582 147936203 775425403 77433332 346974319 280525183 330060519 99232338 105572879 162392211 272459731 258155849 88575879 240248698 549313595 308236466 757340308 382603617 956693015 503435777 608068912 241348564 606374790 677457480 863161116 456994661 87181457 97036891 57664346 324837214 431500175 255339315 490863823 178241169 358355205 267517404 299862231 252336044 447347312 129988623 941373868 455292088 172360538 29582870 151724619 252192378 727225399 122006462 828439282 575498378 904192246 316486089 818890918 449826399 300251726 816003634 213402481 306659015 971603415 132734443 348138774 542767056 971909717 317800349 685014385 951116809 351648861 904145729 653911182 263365734 853268337 381380217 820823460 166425083 89551247 857236561 737553899 800817216 461873282 4898879 194072401 167606300 810915304 190114866 799985851 20155889 941832744 246702809 308543341 835142133 714998423 623534439 383608047 240255359 926348103 109714728 862644172 812169913 785398184 724289413 902791668 157352653 401033729 853475064 260340366 46486982 132177334 313957985 711617268 652160043 540792859 102805554 529333215 174619602 730815643 625154644 602362007 660925461 911976513 304815547 763352512 230372257 149381779 983746816 134005703 592241216 78709668 424913973 441450372 222470470 813760801 105522673 311028348 141877269 6786514 470319543 367885865 622599708 597377393 279929447 917613967 888436880 622203541 444023080 950029679 659731730 975824059 328290935 207120650 1758009 427331436 903720316 509409910 718968760 271357329 707745334 192883834 208842709 414487994 370874040 848800338 802220101 483136048 98018551 584869521 204529977 235796223 294889036 973368144 127127365 189508386 363292445 782508693 83663833 520277385 235165559 14702886 133189760 287020621 759101752 23638015 64858210 808253384 603032480 224348640 72745953 492212948 626797917 161200804 800923231 749232120 507494033 294387404 63948151 390923490 54215077 758895401 974774218 326424977 448598472 828564476 986843541 944060940 180240795 604817527 348660310 181121403 334696771 54614153 871620222 150445859 581058698 437507159 554873730 19498146 413241073 116673670 794364881 619028080 250002872 413852027 906545280 789540638 533622509 684447551 951689160 881836708 457060986 52591432 814843853 609897591 16790387 808712165 995196924 122834417 183508822 572189235 758303296 644320727 756216455 131503351 613334646 395454644 269909464 528874313 841912094 752000387 26571969 225413963 91740689 296116637 600517653 651718095 757494598 367427323 311536872 998247844 866109177 24637422 888119499 286131942 531486261 546433472 523572975 167677308 489213778 653568975 749998556 677203087 437082813 191398341 794717048 574714865 881693343 230956236 631701667 585624148 628872553 749868137 311273910 89169473 810459294 846362070 598013544 242196268 428218610 862303496 214115653 395889076 178614367 595790080 997446663 68994037 387739383 496022046 566582405 648638810 761046072 690828897 164532342 575007941 715264271 428974240 974324114 305475219 387662662 780110221 38148402 880813957 456880870 679655880 859564530 979517618 869173954 515505402 211687902 994381217 378629756 487137483 472309920 706823349 37642864 888209545 618206176 198449547 997018885 856777015 422608244 706162221 519264510 576124298 22369397 829942966 456689694 953447647 268520182 511225928 969524120 49304897 741757234 278111525 997291960 735685365 302827414 119664521 718450503 823874467 360503445 744557502 704395694 301161558 979943036 490696329 38247251 910742012 711523607 505271879 444912623 295732488 549645478 864328651 61880712 276760085 701998938 885255171 882541034 284383075 715027402 170219597 918350476 766301137 153622180 846349551 515355354 16455679 107271696 882074125 519142637 789309649 459698171 787861190 524743369 837114257 314573295 102499131 506840841 165986982 169087271 368475142 438055106 240428241 63992380 809621152 915225311 103528472 708250340 923255533 214443859 693622248 966393636 897029069 927118653 575140065 480945114 977203287 171213828 254124814 651944911 373424143 142422561 487220557 485430097 973305071 750860426 299512835 833325863 846993971 918661618 651970566 346965213 123285295 928365999 602072510 957477162 129470270 332710967 366972238 864591432 372383352 47602363 241986956 911480970 269849810 397133666 219080037 208583573 684870916 670746890 264745027 528276806 491453826 520930918 254893490 79569781 526535311 469354926 969217637 186671927 695985865 545557277 628693923 522740829 690667327 103272291 384682671 338306370 345302601 705110396 959986818 829465129 589246972 156520699 82192859 289080846 169612080 928382058 707146962 88472676 490228152 978516904 837862838 947459102 914250367 261017248 139700009 174653951 282499087 289948861 109439347 141907184 128351686 286040235 650426752 950512387 176119455 61421826 526467259 718289481 796097672 8916097 375721889 605707261 71254641 754375892 535703951 981729840 279454988 218020045 599786430 571351927 541587929 187082318 468659942 496440012 894561192 998665721 381637770 676773396 104725530 441963967 191846065 404818047 504923131 360758802 155242112 649686844 810442961 973158214 700937477 2735152 839782210 458133421 810807855 420443728 229090277 353739756 814606466 276729960 464782652 771495237 812174937 245270643 912780472 304622440 239842637 836686918 730108348 811368657 316539916 605536264 50550283 783428517 990098375 855314889 929562828 865602781 222765488 478633409 859297542 234013558 112669682 399382073 526484111 340016698 99647627 509310470 680260421 333389934 625424760 545585325 414846760 974701915 646752154 31463289 243593199 294418582 187896301 444638449 250758720 541985111 321997002 866436194 457247753 254403377 247651004 571560224 782948854 845131296 811818134 932025432 500609651 988018899 576700244 417031569 550856399 273933176 736415433 164120495 566908679 481590268 457340691 385779600 158221524 189064757 4801072 291127281 458251735 214805201 232009720 640663995 901877190 589156016 688255515 895801961 633781095 739428172 737723361 754704781 535761940 287574841 980610176 36641112 134564041 890441444 13330530 870893146 330977984 96741790 553527912 665882249 613911303 907939717 887499902 663696851 52399519 362343089 802992726 905345020 95147115 5324650 314586355 661251402 821647101 520146540 321381104 929972563 875493447 858209853 974779658 171985477 856722561 28970852 16069601 173656001 108879200 779824851 391422962 154181542 182589296 889005633 267948973 964990424 486804798 849718784 232255593 746294237 914860138 280300519 922753864 620654763 96181850 113338165 83408972 705322366 831970519 909401261 862400463 506467566 804237772 147334125 39723614 975882164 474259627 131738248 209796658 395551875 26442988 509244777 298959021 739775289 825709970 319946544 290952204 178747509 182988044 94757831 619290501 665038773 696076743 951276336 503422443 341988727 915275810 387279948 353759326 243978260 489610027 793949498 753544758 744481959 942759602 476171915 237594702 196603939 518809422 544953970 884818496 124154285 439590682 468854628 560992703 797704866 249457979 502411014 783186876 802110202 446580598 710215681 302254351 697041472 408289085 94355888 501364887 531398273 358698707 726032710 425719557 756289683 948219157 970073091 721973208 836746665 899130565 157865275 4286445 69104037 746221331 114698669 828529779 638850308 369864788 609139955 303861523 152954334 391710827 421297086 835118109 718336247 74725101 918840194 124930666 467996577 330215993 36068999 958958333 265446962 62745095 494802540 63510210 978180592 176041510 960442727 241388968 901939531 940872166 140161690 738684684 568713350 527966365 854705201 837522041 277199180 674631322 592355914 763370629 330688285 171644115 55999963 182450770 670541212 729501079 667280062 979847770 466585106 746333611 545813780 516086600 536126415 948895220 169752804 723646639 591617928 991287103 445973924 126372894 574216057 485616534 335141427 131348501 375607637 135726634 562834099 123565327 209422706 395588203 67402194 660632621 291647414 331347904 698197412 474952021 654502450 867997360 464045160 740890396 607734768 139454152 339850507 300658730 965606622 695568670 251912765 943003467 551539657 797144117 14714855 771294673 86499065 214656768 582091215 500830604 608077619 308166208 769921443 136680176 930042181 949397183 827147286 361287662 230133065 389523158 243061151 210514008 764846866 972144198 327333664 857720570 12268885 687432148 67441252 612604500 349150756 370661685 650999747 263855722 810533464 345157056 23666260 935817870 773317240 763725777 295968788 749002570 262687614 313187127 891205169 307152344 489067940 132000579 827408531 82754964 880852173 382517240 416668319 524176795 727678946 419093743 405249358 522547192 788108837 897277731 666974478 778450741 877112439 386822484 747445719 732647128 201166890 608750667 212516962 669294362 753049531 668395607 493536670 735805445 502258259 151608265 906528554 906844859 764991353 954343458 268310294 449379459 947982230 565792732 521838172 365884427 145345877 151663070 194918840 306097751 319747124 363188714 708366308 179221287 834799199 938353597 811084786 339050001 832191858 209680820 566475396 114466528 758015099 861235287 375429825 782808194 687123516 630392889 982329758 944585099 76821919 52031464 845241936 381261445 512466539 782724747 717986026 235921404 259255790 255982867 637960715 784187499 52082158 214663391 56014425 613418398 38006197 616663582 789776788 279359147 17385926 412097934 992030103 484940584 94364184 119170846 475643609 143407050 345515734 847053986 90155600 49753607 271773385 333310517 57541669 224499646 159681717 8237976 562750108 97503061 233931896 559701237 772517017 422022797 943231082 992575364 329360210 840812526 55596397 286814528 122301558 126414561 816231941 498609770 417465429 562672536 400768384 797615347 52264917 351130592 903469925 281316876 477997444 119581229 667767256 555696731 872021415 344891022 240405432 959656212 853412906 603545170 732261616 391822314 639780443 18948549 198649818 172751780 739880528 765708503 194771820 635532217 963133873 340982255 849370903 473228300 181269447 271572933 408630857 763669828 619580417 654040600 316222653 637609094 247544816 69124005 425069426 177516511 651651336 357388105 66580348 538663656 595736358 184463309 305134288 223239675 475381005 618980566 691462827 380342683 911457181 528556268 148685015 742295353 541429181 303212313 399110477 712815681 990173876 881966668 17332969 332727841 976856230 720433336 537119714 907254076 589436782 361151294 297734389 376479104 56255048 914446421 116240360 416994671 602799655 479037100 43693705 761990001 520441828 572733655 406960875 611743139 954094720 562697698 476272818 175182468 87294026 297419253 57775186 979185795 511066807 174249575 785601557 404598914 268180926 722687047 383251293 831625952 524803204 607019071 487367760 461767851 695193406 960911276 668506012 263580227 653275947 476344994 533591129 623197614 341756781 239071925 291436615 307335061 228196660 875236215 116615899 783627866 603949578 518983236 343414543 585541746 448263559 930690068 411068410 601993585 541276420 290630969 870433298 356615526 505505636 967561878 186400492 717208653 527517794 10858762 160744142 442196779 212692842 207459323 314291263 108718425 819825825 678571070 769522677 38914638 277103815 532012649 581119976 865655830 490628281 635550126 794468857 999380043 650933172 616287859 515066218 68527951 290651327 874427324 375777427 642427463 416631038 909038729 188353907 552224553 356749212 675235577 348234497 878283105 177963203 732929772 522716752 194472488 224389273 377242896 227630524 505237501 312627801 618180264 761122025 308780628 636680872 64219620 704740270 870343745 149535792 848652954 669143892 379567677 991536642 82798154 803120103 398069346 824306888 180500174 991925364 26694649 742823572 149639200 275748911 695847570 598918587 821630846 582271659 165111531 385588752 975211860 84445228 75197226 259524088 97953111 184920417 800117392 548408755 236982721 383191370 445674854 576667563 558104789 895002503 964724557 851234846 908480509 752380665 595186559 473855758 846501543 386457309 118724881 445289865 741858178 718391361 60933817 961136303 214869246 803448768 702126204 892237701 888910621 313583973 989228801 869051453 498155638 333405292 884928911 122934867 311525548 169947649 916357502 154949866 46060916 488925057 272176085 932798745 180233583 276728324 58056167 25595884 55466895 985460488 570900035 811150814 262549603 447269297 891103616 791369549 696089750 486757354 104204478 304315621 372226927 351306591 523507273 723945852 707959822 865897033 777862014 830836178 713090236 231435850 520972951 653501824 630276665 129614813 220526775 286276313 792709688 250349426 229278102 156689093 744766200 144828051 473130728 636304851 369842969 708145266 216916335 488094930 4830681 297532537 145493850 837377436 554450658 314506197 998292387 744932487 571458456 830185395 256215127 679192499 526394703 4023626 397326064 193632059 417314042 443455555 855024291 88576221 947674032 849432621 596829316 694650487 862416835 261079977 324410965 945750560 388300224 221640905 401787035 803403484 279511059 305424805 168815538 766899759 977719945 725667390 783389363 337304071 77333982 503432949 396694005 955576002 439098605 131274451 927230790 110460068 520258592 480544319 761049392 903141263 412796735 397916002 697336314 819666046 671695765 172086373 963276015 246435669 259330611 784491597 391535505 718136320 102247221 928989379 775452437 80542110 594370859 216594330 599440273 812521583 634942682 774497863 59814059 512795131 615417881 281493143 290588711 283906649 535608431 277534134 326545340 191264882 538960716 918359935 914156265 948508897 463701712 364327704 298732813 339396772 245414310 440272361 538093011 73526394 193478801 69929743 196518195 975930699 648281322 640654365 827831318 954378247 568323703 962552371 469616451 451140160 539143927 27951802 530136878 161554566 745303527 632369228 324494956 74846911 171161018 640412303 486788720 365247684 439041530 652702791 107052676 499571492 198226510 360245763 863562650 503350615 156312768 989426124 293798975 918402806 349805366 155385383 618860954 988957277 175134485 356979282 977764850 695085278 844685695 387382851 697301706 8510580 170304038 310077196 851216597 543579887 260188351 504080140 518364531 771637319 628020969 36681129 167968971 546095632 772468817 502804624 997752942 93149798 705154508 655193952 465344200 271230982 757300019 980979238 802213645 828475401 135716942 890909595 91837658 762089179 191564234 81918875 480566112 98063320 627251641 893478059 869539390 859500338 532456183 394984171 799951031 75038870 706503853 904430734 281059962 263372108 44438927 187700992 1397441 67910618 423800181 651744314 973923053 853387085 562397315 434612057 652084427 119800142 255073677 595793309 723083536 13946179 191626904 660672102 508370717 724607128 511186138 185424334 692259261 824001223 744055198 674975573 623950564 625379923 106871429 126836766 748761798 827286826 868158735 594237693 93915764 488066205 5025240 950585474 374211516 573464953 994374150 669419292 607891642 722870491 864063551 292167887 970468127 74062653 52831268 11046997 86589499 144075257 933762304 442088650 331567022 690505029 653489675 899237457 538812476 329207350 56084372 379978985 475328733 573545859 476583190 555886998 971729858 82729845 291925507 107916956 899978948 887388694 235428438 949607853 143077899 366538261 408310335 918183088 84718761 127840975 700782654 813486225 893433498 758261118 614874885 440994459 619940744 61801721 757206164 160637863 883090568 774892325 858972100 184902015 974832277 2180575 765418615 263849364 78999227 997612320 70046941 59804355 94571508 643785815 477024052 136949248 218158439 126421736 150250530 59367987 584506548 27183767 76925565 584247503 992593031 215710023 129117764 994332500 321638913 932804967 524298616 151575637 254788200 285455710 791802861 306163288 638587161 377003943 497252817 840161807 985539217 158938619 335567684 942739464 564240308 336959450 283870748 598399176 748725899 261094050 510120940 231211935 459415356 318319345 625740779 512648903 795957175 219933523 358037599 641637028 407883831 153579146 734978991 36098873 879759575 138187397 781695454 624047398 410930312 426046525 445274175 581106911 860113845 819193083 953498746 739708367 989299285 916845649 602680038 650636300 106537394 312097288 543131750 587053230 36912198 150053382 661797801 583346032 2235109 314877489 840839316 649293450 988932950 723061565 261722844 646088232 904934516 625802457 881800144 512863636 8868004 440433797 229743441 400597233 762697772 396425166 392030119 859544099 872844809 709343993 834952654 199157234 647012434 735491281 881114319 719291523 260725427 98427062 969327252 867248826 115431805 265957228 115422711 906229946 35095630 195140926 431928757 298237638 928600545 921142091 520620137 264324854 484571307 161830168 288398452 535603361 289922123 374441746 318583490 662922283 870976785 692287476 988648194 750527998 810488406 599604985 508825066 174884622 456697768 532922776 220036660 266236496 801229350 178428779 378283264 443050418 665959645 254418028 653848863 282251860 818362717 840327713 81861759 54613684 694659005 341823435 46986729 718530120 413691361 103671789 522451214 204441941 193911372 190612418 530249522 210874398 771204445 105902144 808226469 282326336 263949094 730353968 123374587 4796758 296850140 690607227 888959062 570884521 393791565 847578815 186415062 758921259 791917902 100357786 644446109 894801085 193130760 755324534 689661572 660626087 904942709 722713070 73713714 198043143 279931096 852361005 255941301 42185488 327119222 439585083 800268864 377550567 296219203 113724155 155621606 235300091 921649558 563403497 303183635 200326202 485732681 126570737 45470919 14164006 768193998 941266080 460981861 401745165 751071718 753844325 948531095 553424116 327118121 892573026 434619248 145558672 85200391 135868410 829066323 947537604 375582222 59221768 103239269 785348637 107908010 755391069 367485043 523741073 743851413 252368838 882722411 489843197 487258368 558135820 606629101 451915205 992722563 365311752 54333804 11055205 485169465 829912744 798593833 61418833 760398829 262562519 447812249 777534531 753989370 130317905 102725243 798871713 335389744 601138107 402716773 564803793 815972201 924798492 237860461 752296733 996948944 901464601 156195308 256066009 876968820 996838430 757968936 930976190 501786707 736211076 704200496 123328969 556440804 956111787 240204701 582420960 36164390 668018078 289174270 246354466 374427116 208636045 822409387 1932245 103944734 846361623 59867402 213678893 608971230 352600856 206874111 393051435 197787872 373295306 775562138 320105623 285276994 841310824 983914576 226248953 42499597 352595490 334605462 690463595 760604052 178566029 950477667 107802019 657768480 439885867 48391128 786147686 274701172 477539498 752710534 872217460 104791633 698342908 987737229 487941224 406549567 194276005 322896666 837142441 366901077 106114564 994657196 21227245 741851162 417569261 152807044 842177291 330264231 591419751 380917289 635766743 583096868 158040344 490054943 452252600 682535519 12638014 773774893 910919642 475347036 995123341 775497736 831260019 846464264 771599695 588945082 54952784 330378595 25788063 996373748 615268072 36174297 804956891 583067844 622129010 357165474 388261310 315281014 857667829 242172005 355920231 56308908 538804816 35093998 795714613 294646149 317993158 447990390 144506478 592501217 292081966 389766117 961025683 268694815 532451282 943515423 839067641 394622066 58796940 312746091 514574355 800985565 646236230 397280469 779917670 3099231 114044902 838956978 917709017 19877248 80225538 38934052 525213316 120370275 133998116 502636190 540084045 968628650 483074838 33871434 5092594 605862762 690521668 498378518 671605038 21553527 522863750 975751292 706037586 26140133 762558344 112297796 586188275 881223892 901419906 644635024 961663357 681067180 238941405 373026122 635127074 157229439 872043173 992756015 786692240 83422272 143040228 720579849 154807511 631214983 402576805 535454987 509315189 265150245 930690350 147801618 595688919 94312513 487032360 558911351 343366161 341511102 289849362 803038104 808382401 105536978 434452863 910997746 266361038 388244989 438910153 436007550 297390866 317562269 489601242 261949439 641287596 28737882 334472931 672186685 735361549 733319308 529196096 316301799 603609355 824346033 267820336 513151328 570847968 71792549 709981135 412224194 431504874 390133490 311494818 882798125 956012210 791516708 865283682 609190887 516652320 283592783 307320252 776454280 330015411 752772277 770602104 391771057 171618978 526250726 261108561 693367324 41161818 343266061 781431732 43260961 320764547 143190032 164567042 132795004 996272707 672523906 249463320 22123186 53871906 135887174 102961530 506118409 720546741 7333914 443711279 587379612 506996818 834588665 451929412 834545171 716512773 919322279 459135925 430916878 702426685 938852628 562007060 814380069 397932439 278715550 688404919 780117686 505791387 218087984 844653695 277640423 280984005 760752078 501292325 369452034 243716367 18158237 216745642 206142290 303661830 948584831 317910143 938596666 237725760 727204042 895966759 68644678 543736411 784326192 117754960 993498865 945094775 512181433 118362761 517684847 107686542 265217461 430508758 943769850 403807881 824597579 269580008 652467767 940621532 505192167 757840501 291212989 103993108 236020729 255157925 690566302 930717587 340340520 710107518 487898444 343336069 365799730 316023745 577981768 608516212 510787911 959066695 405484500 676600378 935204225 298797399 888519100 493138439 880682131 272394261 27343814 100325919 132185283 988702423 72615423 88014357 843435399 894978430 211448286 699390088 436887974 160193455 819924626 213111343 293197004 589794259 408534069 48571978 999946416 471329015 602107663 803821425 679311932 576941615 995959986 535136474 356336173 493431266 697708323 575845894 429647884 913271564 703259237 632910693 449805049 589177401 257755122 453855686 359490763 812319960 60669617 880096530 690820169 356227029 436852181 228843481 388103617 892389302 535978883 944092391 342206390 575242223 928014855 541860225 172023387 342744611 541689432 612526593 111960451 929490039 837729018 806079190 688252266 978981120 794558004 79904920 489384195 443159232 522298641 470395711 288325275 40842913 163756132 237977358 200443304 46596620 38236515 6794961 490682348 566047555 177999550 954170848 230032575 597252777 930447852 333527348 816604774 148063246 337294611 638412818 604757469 533664680 296575662 113280766 441139431 554049817 586383948 948281775 430977255 842287356 399630849 258962944 552490060 609329422 870119550 778265134 72887210 589735376 739818049 564574964 953487501 355997783 495427498 438109903 191662195 450884495 434593587 812586316 779419061 57184798 349475220 305072253 382657801 427984943 479142098 145036132 882696610 15160548 481471143 429131530 755601544 518757473 981231129 2414205 660384404 580620812 720468282 416622131 157561698 954029369 860188973 273068213 313158700 975757108 340414546 164491061 781596763 251241757 825929974 226222411 782863041 750005377 545185775 205197028 724145802 437982055 874692189 491662159 124779613 422597478 607893006 622467614 389703434 400016728 629745256 652520750 342429094 276362480 879087121 904533424 682197464 589169436 171078000 676158314 473550468 156362290 796698089 275646773 939768007 756742096 743164613 9212026 346128331 555307722 711129854 319793966 824553709 724444237 320488972 44150660 847845161 801180170 837762024 430373487 556911256 709057548 551795341 977483946 11772708 449910193 749966413 876999040 716085465 337038428 724598425 494112431 670205145 414144014 643259901 9879466 131157674 39735551 12814229 94884224 614240759 392473419 267137587 844145845 663324609 495053633 918837139 367523448 121762206 713435325 140339822 249206777 645584026 321200207 873042071 252869869 163481174 694790563 851652114 846379511 108249950 956242010 100435338 226804030 800483812 579675109 497776810 657478774 157637492 756877377 321529317 484373753 742463047 595134456 717119863 389914583 676869799 183978724 515639310 941501564 749017231 557907792 419845764 471399650 16755389 67842438 356787916 17229095 682384311 81584373 612782415 244815423 806633332 191647145 253908218 594772081 850003688 923129557 507511532 242468227 193224060 916895838 730800185 700091753 396603484 840086925 411962733 833633923 119273567 191787684 956756243 898132462 175641889 668214926 968188052 978348111 117158015 841513993 725897323 695635842 930448215 179358403 948870218 521702516 818062972 833404434 247056963 722083009 172935208 142068823 394265817 216043074 272866600 292277611 596307510 294559149 147706965 778476860 210140556 978885817 602171332 53716089 863750720 315336496 500270151 779934807 132831226 915331456 341058473 446095009 25027928 247665298 277153996 528004854 282655141 324515182 359380768 752266430 298293091 34890025 97330628 840909852 254170831 569229338 282738114 476843412 896912397 338714137 548319427 570602754 268983871 506250372 110256438 783901016 708482127 400150362 252533493 323632802 399475664 166380713 497941614 759504562 460329540 748112839 953292290 315174161 362475931 698319405 603674589 670844478 27354274 959251907 917358234 432141823 24041244 288474227 30919281 526719362 104725101 266186562 934701385 18393233 293675162 643854184 434473349 8435040 278809820 978009896 29694926 98790055 973435647 650135677 900375809 907092542 754238641 595576039 45294540 59539623 344571178 76186712 61544615 194028204 96954436 964351796 862852762 425155823 181371053 975558948 770951022 822216516 976376370 751928461 267071753 342517010 990334879 991848839 261647473 575386595 270756578 175439435 440820854 590312535 48447019 119270375 727042103 660888004 957101883 481430006 55120180 701100478 719985557 822442610 141847963 364517244 370523029 196477472 962268295 249021254 766729966 678094889 684012295 142053883 170642007 206042435 976630783 310656467 966911620 898158531 108900721 689586413 922202696 62366207 970377495 576042901 340232247 466495984 936681964 541279844 13843509 609892960 946191553 509131186 950943262 133021824 573434107 924673988 678051591 727052833 708932455 692076097 660327032 584925766 880709117 747321956 757839462 665015709 187053714 619036796 620395289 152448914 231920486 830952321 75099214 65783518 714130951 608123692 765742580 351169380 98387304 179306872 389016020 753109490 774936734 860677667 443346751 358707662 589033003 708943239 753169983 314236707 664053491 202326388 955992957 455664153 444030520 749278586 80637823 939860194 139042028 480647799 228855931 235061291 89905151 470416788 646266971 907259645 162791549 126501356 873508822 697384407 372035496 264434514 972083782 477984211 860228036 104653227 245400134 730263125 363776903 182162637 973032309 673589360 1437326 577346930 72008681 869969233 932455740 651662766 854992800 389704514 457952034 97302367 883604510 801633734 582613959 437415858 42488417 622277116 267693487 574320123 821288782 266932811 879339778 671282059 559768385 22780942 461668866 779753793 753450288 421847518 805141287 429196424 956153540 525286760 914975838 55629902 736561252 283574079 712446112 756614240 119252512 878232056 137833912 170070061 821954355 358643086 529926228 465890288 895888515 880229834 416519133 719100330 448290042 821170620 460972644 195354255 716530991 777527484 862261563 514239392 777049736 175740338 392602569 445740938 57455959 923384446 627896506 67655229 834578855 899441382 670476987 352684456 290109131 679563541 825041024 556180264 671335829 731368597 639615823 58085440 403482858 823802315 883699166 262655717 83702522 851702848 696698533 422306545 596622035 823104714 754877802 259492387 510090036 483914090 714056995 745677968 424895815 761914474 9909392 81750409 952952413 289866734 292071672 675450685 158936505 952081489 721508767 942864447 461510101 814678746 476229007 843131607 157591220 973701541 236801281 388319208 128788080 972096137 704729876 90694263 156040226 968610975 35230400 833743272 409092962 194548681 475990794 355972828 65435239 982177776 878711496 163302481 221706754 528468393 289917828 126194726 258673249 8406195 621816580 42021685 740564133 326369508 854014933 569598193 295556423 704791398 904778461 300693260 361066933 978048060 763005086 577164213 694007646 594174029 930500276 684892390 580537202 364886512 973124289 511651750 430036916 182143247 869274188 290847269 684743618 283061972 464320335 127263620 554562290 59676398 416421993 134659793 82829036 407974270 891691054 810426007 153372053 505253660 299972183 342516108 856345773 946957395 29062683 139963326 194141091 772793928 155975755 138136571 689863138 502564677 205122191 959424762 771717912 476638798 71662304 249322445 452291883 665124608 759957345 925574918 558911081 330593628 729834222 251631779 376847015 959816748 83745201 782791924 486844843 165137995 914629890 885495632 271524650 452725461 314436790 375787219 338913873 227481506 520908007 584154737 638280036 260519987 609168149 344456638 184634950 611638221 921923809 344794392 410786658 383101334 622987320 483094853 680489126 536346902 618349511 157098040 478695713 923137873 858171489 235002376 20252274 313038621 319323085 139153045 498496208 528516049 26051718 778689219 225575126 557328264 852804291 684664828 671313111 927307094 44752872 391758070 185300490 301051337 785215745 726327636 317350055 243207343 162266195 632994927 554689267 220168377 755250883 174155038 675147495 995677644 81863534 937178816 548943982 169008981 248268536 222882301 243299911 530406344 303085091 635197174 498167988 1120536 373444691 472337309 697328407 957189102 948977466 512421668 745905516 899157433 232629571 222500351 422790124 95853429 185313835 406608816 476092133 111823669 309369222 804165071 898418246 640704462 10245901 921434619 646270732 514272850 382108946 518504305 802721041 984160181 582433066 40477562 871180090 308109387 230080617 350464137 12109934 113161584 3265042 549262610 798529602 665035889 654302655 620446752 46057530 544149598 867525371 838373079 172236223 634986196 626649875 841935123 657303434 821427469 163030765 788081633 400784174 193188966 769300261 546921675 134388615 802845318 557433763 36318036 319143229 282714889 644404894 715842437 468274435 660445994 927183770 575730727 596775082 693146677 777671743 136985890 222852633 942725932 326906725 806658652 126698995 468246305 807884944 860994020 567304199 531431329 931510825 973484045 685404691 232486427 324876000 995222272 265606318 844605553 248673253 868575196 168422593 689196609 338941075 10532448 941955974 915285579 999700914 210659964 946006927 435145028 28352946 320143563 44195948 95882147 792318132 353408184 240370976 796186723 934504238 787292939 662827944 286595237 240862147 394676540 542095044 274359457 136701569 541625460 486275638 229042335 65491532 119978584 129114671 138285027 27663051 915339673 86162026 636361667 426280394 607028821 827192736 109848078 83488490 230017305 130525391 357488504 946070211 169803408 753088365 395629931 394159206 910477104 108789435 811869102 200237297 19984505 439355441 907464137 222195256 360474705 105574717 495277073 976800266 60283607 616985973 75024362 538237272 72912090 890806326 895905552 64031987 177473323 220106329 211479550 243361752 496413189 48489535 141636054 900806382 757425333 177699669 289696138 533781365 844627652 640634458 910776775 82825722 628784227 593814653 410811469 538930208 491466101 860678582 257635251 908263194 169683606 524427684 663223940 320118487 505519829 443421196 255266437 928243620 470174135 795757427 745461090 703307388 71960716 613823263 535586783 349734850 503877561 479240214 60146374 379950967 519506591 277984849 788788478 179826194 38910160 334990436 918637024 791296362 886834850 427569474 323006111 749176908 752554966 513697876 961527087 900376069 833018079 390392954 611124529 221845828 773121734 570684743 838001544 147680052 998366675 205588880 377644363 694108132 2899543 217311705 779851209 349136794 15194561 434773927 730147429 804525208 76430096 768039237 258483724 796750877 535345107 877827946 933358806 317931759 275372903 55821194 628914180 258475719 812314589 803475780 83759012 687791460 211977415 173258885 794295193 245902954 769895585 731145471 518804967 680558224 167094257 304918889 390570984 91124714 753331475 78439863 275095073 605667726 536512417 914632064 971332010 435201668 721965537 231493516 277495892 427129925 585110456 323932202 276213476 986827988 786756787 342513189 661608929 922771098 170309249 426041930 49343507 454751621 630194563 570771203 3177156 891706988 553647707 106501356 382769988 173467369 340306021 316699381 219974521 799694552 969946059 657250346 967185160 31765934 497789826 869419382 178751105 61000566 218214672 76524596 286380995 380698083 809804373 269405286 182503362 455098397 632276902 87231707 150465581 474672225 442919449 887442651 27558425 761023106 407302087 602298930 528010969 398191115 710039748 361494409 319021041 33519076 41386601 969402197 658765549 420358412 623552886 725109520 514754962 88079149 863175678 561857105 852084005 26516604 382789790 200688878 157275196 965804404 730326750 258828986 845371053 171626181 49306873 299708049 853881659 652016614 197425340 77463614 239184504 491018045 51584111 353741331 533140026 848685952 210755003 447502177 741734871 108472223 307377788 204417332 329615939 907310159 351598759 891158941 149959422 303094469 506411060 520911975 324185283 158405294 860355909 986616164 677332352 341526136 524334902 523047140 899929786 12140115 44260841 354894425 423371090 337094756 260789192 547167668 892789658 786267544 138735782 128078009 955257461 744341897 602193504 330761150 314318103 181557876 844101108 694533284 968651236 701358252 289286577 667330344 145544372 570993187 225741609 227566589 386893563 249337865 53005533 907075706 717175879 744733891 129393450 414934593 848841341 966153441 797581295 604295680 48900322 371348779 923424259 865455055 571246747 56456451 182171832 684618688 559954822 982125109 329988620 924640761 72414802 241758995 229982632 303123269 159109965 802611808 555008925 958871019 921783490 469272865 670821641 127314570 7661289 131892577 549919836 75643923 740313246 739436979 673864326 53441310 552060597 575418725 969829428 681632735 150787176 789014112 154410419 990691803 673798861 679452938 173529406 146118448 617474863 93188665 342909709 623866975 668273470 588474414 442029350 654423177 83645923 49689597 790953536 31938404 219501131 258111775 898964041 934300449 566780865 935379818 907815252 789697313 648005943 132672618 731371132 613035867 94391795 991012871 586063848 961896098 174279898 534838562 661272078 862155648 871737246 878772765 297614492 162971494 986269093 338354038 61533348 999969245 399497571 503105675 294216357 782036929 7064521 111765160 222033531 111473543 378758527 860540505 761961659 84257530 733337958 11458049 515957272 566759313 36108655 142272202 93306657 650602171 134093772 685895561 945006952 727577204 589192749 34852195 883883621 833482670 415155607 125330031 770183267 975709973 925794686 880532141 670529590 423040180 688829232 562125566 277576702 515136576 901629050 177297697 51818305 217827062 211472334 423806989 775944574 471653693 290136639 37980364 984645480 214851577 408172651 319084359 73406803 685962012 417816839 487809820 410202666 379900943 583129764 489735968 417400738 210925915 315415435 708912870 728107194 747654736 285304198 896534447 29075508 762889516 566028758 333349758 608181307 980108862 978391165 188894110 834690438 800238102 394385739 302672889 306585873 37101914 71019407 549962849 302344130 5333294 594344677 882389200 688368312 7244871 900016029 505180588 832012729 779345334 679488210 471585927 360099660 368357392 536377091 66634253 619141150 890664742 120328628 972226363 982073043 858755933 882198127 7877868 197566417 352640202 760760315 28264072 212769634 418358450 588544233 191434463 767019702 832948081 467776630 126194158 233001164 503651647 430912989 275480721 445295942 831204161 625266448 406144811 160192112 615409107 525607893 81698794 273113601 349821292 681557620 947041263 101429516 59570468 526674349 593811519 464977253 316045127 211733240 785373104 494642240 375909326 819069901 766941217 990094741 674863973 6555849 765095032 968636393 653403866 356765522 160230080 221351645 678954538 940510693 35406330 707584993 411937626 657448135 760943651 81853998 573702615 576137422 757374650 544886676 668279160 966397558 146395898 197095450 785844469 921245556 553517181 527302792 489558747 944036102 274633556 612796079 575449223 672837663 64701045 13334984 174618281 247317255 331031721 480007053 940218070 740617655 330360413 476475112 849608585 236411007 26019023 722925142 595299665 745636974 593366358 980842715 809452617 566311153 882330378 844638694 893480234 503802584 649002806 39155516 294097318 278342980 511428477 185833843 66516544 175700776 302281954 371152343 30174984 443370498 922900894 948394074 453694011 993069444 190221776 358408627 288300252 353488026 882432762 238281560 501837955 499809658 495720819 11714682 13346870 861135292 363125353 703509824 137740401 174218836 398066611 383378334 124456655 234413460 605602660 940170845 790771870 331841619 851157952 276637993 366383403 561349355 641625209 652072527 418724440 132001876 285497082 268958865 35996409 87705247 598227649 637020150 466714734 910783571 846143936 20170473 966361177 620202746 57927431 922601301 91608450 685731131 95269223 400034282 924073275 796579768 370383853 692672848 569031971 760266178 770620236 292657869 968629736 854190125 662992826 209628056 836255405 493409947 383265410 221850483 381169704 950793106 609236471 840173995 289844069 884506475 68272115 992396544 456718150 163440323 646870966 365885813 753822291 21120530 920846891 251514168 567292473 255564022 528389149 138054377 148933014 909553911 404197016 581503163 251408897 397250355 423062408 120786762 866239199 456476771 51113854 284233584 738660641 766504999 338344242 75035518 124066712 738926039 973299159 590322976 551357809 439168903 347184671 248474601 959890770 347886997 739676163 261438444 376733342 150108444 247735879 330896643 66135058 101918572 394855440 875673128 656463125 909136881 695094507 672307473 799275862 815493904 839188138 328429963 839463003 89151858 699647193 58717682 694695714 375532819 442011863 316864676 640739471 382421577 923483283 663556276 883213968 398676245 965873585 970901001 295467233 859653269 694351312 186692458 527588343 537704045 648057629 847263347 377132911 464816436 761569146 215702727 738514401 388282789 976949282 312638263 271531655 390991179 467442404 658801 427961307 37607644 300385824 637502304 708704377 384076350 78937672 88847759 320489453 437310120 791010088 267061503 577212812 685713288 405217571 61803296 353681750 468657891 680827437 473668172 699505629 932638663 151675886 543042349 160678531 728720641 519646643 623564953 657344651 304779126 69586322 604305262 94401531 176509515 407583672 127393585 562488409 43986189 884131927 991575906 975950708 307176076 865477296 856217685 376355358 333551743 362605079 296915063 561995186 846825255 540632670 191612330 767788420 622159299 994670379 697499214 386005405 103774192 464996497 930878602 55572945 546466091 545567753 277633249 555055041 889831068 472624159 140702673 125829402 861131176 592817539 233823668 79753406 709385618 45526160 828215259 481745934 500417787 40154048 642702167 18745867 130980390 299253116 775146416 31161299 873050200 641229440 104342764 282821297 522991162 94532878 82457367 102923736 910364365 128413030 559799762 774456258 341181563 916157729 380727109 48070785 16919461 350059270 483999609 77294746 413884486 868365566 452006238 336125391 288798636 931449210 702789479 175180136 465020830 738900841 893112802 722724860 194951426 243613444 321457017 368968051 343948962 272620755 101173801 714861654 198734731 244299915 217002800 929241568 240468130 285689201 140485767 635026324 321218591 432907882 31818425 930791666 71846573 649225920 841476312 993331872 156411910 510153454 40316790 974044417 46426065 112926576 442061210 312710344 926314410 654981486 911825345 688752622 321734606 714011428 129412856 422056744 172930123 473633123 224668596 521847771 157696156 924570661 399396096 756864500 97715916 401184172 478344371 431801014 903556568 276199099 353961527 214248797 901330785 395673400 485897757 514453703 745526305 183973707 591534561 834138374 585333046 631784632 570486282 81394033 176447922 766922536 390923886 430690895 316040307 899445700 710296860 579565858 937173461 170439903 898348121 318234040 515144544 119998804 538643429 206249303 116363913 824919642 703557792 467143051 839582043 585450797 51714722 899461278 283709707 874779327 51831722 646592118 799884336 337904713 332740471 465579581 423768627 412270278 241173392 294032449 852460838 593130473 298593129 329099825 938285043 91932608 840417872 185858134 620745699 60189066 484583245 353898893 290255686 735388358 217807025 682584485 994436039 937344520 886242498 63649732 795471090 785473123 521269628 677713247 943738344 783691890 730584776 30080078 966345842 764533988 77749223 626065064 785696235 77390767 353005235 840773516 11187764 151734036 621644607 677230396 995607958 617290968 376365836 369938049 106295193 740360844 753851665 868098484 875255347 422231737 147432528 874108849 661741083 692336057 541729964 13296642 954819648 64122623 809654759 974644269 236432036 592733751 428222009 844815342 532216009 799457143 525363470 281987279 80603326 306612547 632606565 823354454 235964173 975224811 355893148 336039418 105187559 946571315 974659912 843539903 717859949 363674321 16147633 294160629 537642930 902470032 432797434 959241873 856089674 438546725 684754601 15702960 261788509 171717097 348320386 460030996 883425972 287302702 484715300 57620484 855777971 51706071 124432092 813183476 574152678 629658967 151207352 686283458 827902196 519307696 383360403 852802227 853127058 570161714 597280288 454835485 479204562 544515601 664889924 90129347 486045503 398744447 451034126 65632139 228324016 46963413 257638743 611988381 427270826 111917482 212410541 967745119 51633870 10072408 790558157 665896584 614748412 561918438 672870561 385375425 4228015 368549458 917978100 420166979 419995084 241602248 398699374 795167561 620428386 896027842 594996285 738456461 266411386 13989918 788976919 733168867 307398844 34480984 883544516 317360727 99506735 772757126 327259801 624198243 797037250 84698793 244056603 158641624 269506505 963939688 396252994 217799358 496305246 905524813 885857154 483926900 998120685 318426362 549357407 922595605 407071891 654080327 731410289 544105112 142946959 244686490 598531482 916939905 290528724 401554901 663984427 26598800 147925634 63748942 250350036 746813157 476859059 524889209 271510241 387758814 438940513 368503181 150620068 920899815 580307482 84712563 917412414 145582111 782592264 636842893 97715327 310259142 969488579 174962140 609264387 563754177 415091148 233464492 77108978 233964645 100656726 946893145 543627952 826231056 410166081 266044436 941823558 922060548 628736532 404010504 809656526 496416974 798084928 665604496 902622397 721436659 281586776 987368077 548193740 924337378 158632151 347258793 635858113 519041682 309308361 138368186 84556034 46021418 118416527 493618931 935752853 650519584 954790958 618409377 472225284 33278790 441397191 84932254 686845082 455850690 190662018 53606668 219379638 584898834 209658298 195056544 715794353 651376009 567227998 548888550 726027950 750556018 746778333 643560070 863438364 715490481 271221510 499581980 304681850 942332467 647819342 230313988 797610443 719787902 708627014 187359106 946843026 651742228 16457383 450033249 657867516 802606814 747206838 669156135 537692883 603943438 620222938 776033176 64968692 505112813 718398308 530174113 115317730 200378877 689922859 807634789 739406553 692705652 424618923 898881490 307060580 646040472 940797655 656156513 330861337 752314731 685162128 559231327 990547107 986101106 111710950 384429125 932279655 911824588 703788923 464088755 253409172 444162420 78890008 334552406 105854232 640626025 267507481 9119353 712665449 761547720 936141055 702307907 699257152 883320514 84589737 98741707 134745469 50662951 606175192 694113414 773053574 874035492 982184551 717700747 744809100 333478798 885426482 488932680 621746351 470333842 267156090 353643119 184923722 264533834 718377986 943471535 155396489 856096463 585158465 770451730 302153067 188459872 154115632 270449319 823681249 197307434 57362833 856591146 985072310 710421075 920479022 63925326 629496818 1075059 786867327 554838032 991120747 137716788 392985786 704924207 968150527 52570097 211083753 860163754 351007783 186771938 302243423 259208578 313288660 695876074 588735186 202099803 176654390 540295903 534536551 60945716 244462376 22808171 712936549 702330030 946465701 756809843 564343629 103900813 562928415 413957404 563850664 108764008 874505732 731816117 984439494 902533706 716399398 635879013 590562749 990190168 133456478 267043047 348079684 842517000 87649796 643144068 887275550 372862793 782508437 315181551 598538183 518243940 380103514 614270816 150835032 684967513 160746455 549730074 548609022 295437039 515244751 229022235 254295274 476621662 571435250 277787597 860178299 387145223 539417551 200947087 473744173 113765785 326476448 187198564 361550793 320942133 681350831 995208211 138362116 348395974 556122876 347043985 27654635 119063448 546056635 293464336 58492011 438396256 367512749 603666865 916261384 258195435 99253892 176309522 81595072 746099435 907403900 759867377 153557331 353504517 631648931 112679678 669068597 948824407 829037508 713047182 573195725 944624358 12522321 805610623 736165185 618219875 367467953 399594948 878583189 947871144 552090128 622123101 240302205 154871422 179975398 609203595 594352176 631687667 360594179 460202863 810969036 398219812 315818171 270131459 41107561 968819717 124889841 987740112 89093801 41765900 428764997 828634771 109785992 394374879 513706094 217568697 556397370 287005489 683632749 997221631 352455216 436023273 458338467 219725834 601239171 408186406 522627330 170204476 296229732 497059708 387012714 46445355 62471127 29280109 307475797 419285776 240458429 198445318 267571986 478411358 641222571 236723194 478669321 135666807 645375786 242591683 78161250 293155662 233604160 725145911 708808761 788402228 1650039 748467505 596431467 22658628 138476422 174805197 931460024 338379228 623836961 632951920 863390017 44866705 136484869 746498959 585614708 577599462 94210758 314000812 846770279 134729181 828616668 190288660 695135972 114025387 981869176 628136472 405703309 79364805 306966880 347216937 743096891 261956034 128137632 587815885 38813517 187640388 908156461 981354213 537906599 370791038 795969007 273886649 561009757 372729855 951933471 539184276 605995129 345598492 969762410 155349592 562810522 423399468 592045032 391494729 277663192 49267000 166845594 567384149 113469038 703436721 3609800 320539000 461070734 991228979 818205089 745020624 564208362 21297738 349006735 974904523 498799022 596074510 886375687 61646352 195766178 359874524 360519255 784084807 92272864 18100481 264522839 253331628 774106909 860364228 8055940 49250575 246652932 409744344 2158931 350335842 677456654 151345783 120106183 998565729 863939971 233265561 24922993 634362224 639876833 577240117 366311592 987579963 568041787 992521518 863748576 361576160 636910385 316476565 111218911 38560985 497796700 333180366 859757909 571621998 825074143 747094866 5016478 804667216 647338306 38022985 752936868 178258800 686353160 968277778 234642694 450920999 480529356 441012522 647133849 347140888 638702302 74043282 407191097 748439109 715318641 603522605 693521064 574318456 726738774 160935712 87402829 317976964 44137475 363927479 399781971 596192382 917925720 905952549 656401735 694019722 799455625 44483710 222255136 928123515 874917890 250788931 934357155 979635509 642525254 323683223 900700410 860856692 208538184 618154318 942413607 719507282 674908741 954039937 447524750 136702092 11507123 884588535 499232897 111279218 684974343 145622226 521251793 583840659 47115994 922701372 740276920 12685654 704202761 436185081 566686019 305099084 642722863 769365279 945775278 812482492 499584780 190763162 601332518 730860322 752039143 826814353 851388131 166735345 135200438 169115110 931548601 257236819 339311771 49753213 365205625 696877521 443066015 726148326 637718141 933129389 503920865 673356761 505695165 338801038 112470929 637768653 187005410 218144402 762851927 102154934 769679700 497589361 906153192 937752614 538771023 708887736 153901529 343338639 298177094 102467111 754797522 539769332 896572387 218863389 634202334 925444272 300339374 464392275 334919162 880407725 514194756 142244082 870880690 494698928 76972157 213878540 549838571 595370105 13204971 947055256 643890546 722966078 171876942 363660583 923495277 297495157 893964786 670279203 821121178 126921000 741429351 169105588 486491553 990869773 930932140 488484966 892147822 37291625 477288068 535720222 908114248 682263213 362645646 593960898 90936809 584210316 365256215 308300251 107943183 581205154 755417751 244731672 640452310 990150161 42065956 435616878 501332569 968968355 113224631 720318338 354469516 108314275 389481352 862218232 549631749 652530379 840699512 435566384 797581544 823403449 298206336 263140509 999318465 485804599 68050963 160989751 378959976 411325708 16252258 914921926 394961247 120095005 358452022 60458175 545310642 368883196 692767190 735182799 295985336 720362830 81365887 541831781 618394474 585937351 319052346 65354565 770645114 404404265 433604078 388023858 752350649 239207481 283042878 367891179 372522145 306159776 788105911 873614938 478681296 512736234 582274440 833403447 871481751 553907621 345300702 804435201 873595795 497256598 308871901 40147796 212749846 542821855 295639750 71018105 682097894 862494235 551790494 698844096 521783871 18578176 512217231 670431735 755136596 316296963 894067512 740253930 239293332 685208378 572849627 99368411 256909051 104952956 837456324 227535113 953538914 771640178 548517246 858021969 209407758 971148514 432602068 440299135 207120980 651108335 216857408 695960569 625724909 345186131 396722007 6978783 701938052 292925035 958032653 541188969 485660670 209285346 108071860 265348467 648790253 709998685 85740855 982961458 503831024 580504354 327101982 809017674 84537601 821636831 168782367 60546605 952146312 74408739 447252586 226138086 848278006 275398086 751440693 150217709 156736665 606783992 14844534 968707269 910638267 843245193 493517371 456678611 18390052 205710716 461243737 874052309 565775506 424039479 601338172 738174826 410493550 521525935 983458357 949562595 552048048 405913046 415175160 891624274 557962132 152355710 717747173 90719650 548784396 727693030 104280526 379560871 920128481 459175109 686104001 835103169 193612345 878594250 157982296 894288648 188999204 747975758 124989662 36394585 156970945 619327199 565628963 183987475 238555424 526837336 977540146 260658544 616804804 749151782 561872308 214650818 421316089 735254486 639947655 609870687 501725892 11740915 315251215 313010097 359780289 704835968 830012379 89036497 173417466 24891240 165226023 948655718 985754651 135023724 789571718 586072369 562789854 57764744 192365693 681246915 625277680 525644801 362277250 415052145 543427017 184635427 522816091 694306908 450575898 880436955 931150667 353565206 232712787 433752622 614682207 382693720 501076696 315751669 198586237 514278599 388545924 526798359 40990932 91644654 386053811 502646937 300306034 395797014 88536432 834226941 925814407 947472063 311926151 746409960 796071513 108185155 211305313 421403787 844639105 903602248 865757443 533706292 50924871 885217610 839286568 775556153 691635006 425157526 190188355 665796 987414431 239777523 990621944 256947477 434564598 348045258 21107535 272025478 642884861 902333726 203046237 767492692 25592249 138339535 20406843 142664338 873791828 619503850 94545820 272079792 814654967 376018417 247995959 654578075 716966326 201527501 527112673 434458189 485794998 984044823 16393660 388026522 341354368 247621710 60066404 512528563 970914160 405235937 265521824 381486381 984960578 116587653 219641653 490997465 734311463 880901808 313980461 322862382 701621408 140773457 932227393 367047558 853234466 982676939 375067141 578413204 420155604 996115221 620830051 896470099 294196718 607195551 698616034 468147059 459884599 189417500 382790071 591703945 501910790 154294073 160418697 498548472 92921565 534670260 909392828 225643920 105117917 759631401 523160220 93285234 920864945 702874534 508685652 373219806 625381838 494112000 298906408 246596487 833754251 708362350 264221211 824115815 945180394 753807184 58198889 951972015 456631435 604146591 660054890 498092275 594559617 173931046 461851074 896576503 364676860 443363431 955794988 369123941 462738770 657373054 68947948 699092627 958843334 177002702 9278725 917580417 571157124 860245562 670762829 701759228 179973184 692043343 702653899 829277359 197006914 35599366 76767751 874383776 488896274 372670609 455769518 574871918 12369611 690257220 525819766 617658281 782751189 308118825 494307973 552635363 629221904 202503411 98384052 298776424 232957117 105064334 393356271 475086902 979988019 516743617 480101032 751143782 260661633 350026943 606386760 294507905 274700316 921519217 851394567 838758330 221670149 613430034 510279831 179303328 106429568 265380221 389662556 463681956 77380843 954612361 755021428 128668158 293961833 130003361 103125044 924406122 231362973 921583899 206081235 952754030 185562572 187927360 297407690 818842249 308631599 119087674 623032565 189183249 84370758 289399009 23518718 215378261 914733850 162674381 422908392 727583221 663265659 150085947 567875237 589342391 656564362 47307481 279581 789399770 329874973 782392353 841009011 820335483 335714169 948612882 834605137 329743031 809967185 456680025 322479972 325293570 687892956 202580957 699953436 224555177 960377488 629897270 422436471 426505180 224614281 626866775 692612391 102850415 112776329 366472668 734712108 302805425 422120 44620367 222939998 472114486 857519052 715433041 333787741 871270052 457902580 953273091 856676725 973819470 526824910 272955835 825988282 20949115 510976961 471319310 680124919 267216140 556858110 670028098 277704840 478057241 966588770 635494352 937449115 554005868 702505150 136903724 945793644 190500850 133623238 683096367 204368187 199545789 384594059 277488841 475350438 690131336 770374974 203603258 709746504 334517602 679017719 204399890 287089991 953507692 695122142 392551912 388270868 811381155 729801629 493883276 296180070 44254002 793293374 151314495 667372801 71903968 720681571 675009430 15536614 974285430 87002707 252750598 828243486 729751219 899650988 393708258 572203977 46574461 864345028 152861947 546648315 293487765 509568170 63500052 779533903 176794924 877234662 917177157 404516929 839736777 365642647 137845390 133847288 205473665 9865941 521304753 814220037 860706309 92009934 155749061 71969992 690755404 736956258 301537803 750575563 604510353 201573482 207614416 470224071 435968009 767737650 8098475 259925325 704752190 856962360 120776081 683237825 895717242 174275469 427973118 59183540 797609105 24994596 803581305 714430423 492623372 908127971 202694091 509028230 93090894 907098252 536691603 597668790 866087318 88615151 896747708 833481737 645003324 348482092 617919155 298148586 416429177 874103260 726794561 89195326 877330173 594090659 892083054 78143809 946540038 114657466 128597135 116816581 899703637 888607216 655071312 589047004 192799832 538825576 37221017 408344649 611137847 920143177 478778965 367845187 415758312 987479760 922666898 786038308 698835323 977022260 459216639 460728790 835882287 710022570 745773238 126660593 265081802 499461676 737130974 138064503 899234095 489888939 773798452 852728231 164782206 91332091 140012508 463527101 167524662 967938917 215054553 79135864 733578787 723720351 447674715 770231806 827137268 766700355 142453585 77489469 248384613 897994570 673791197 185458688 421557993 57078305 450318998 817084779 861988508 121867170 240981893 579202585 801336633 743302529 224214143 459400479 64707804 429830149 100733556 964500661 364811638 839345336 860682429 874581501 197665240 302850915 980208221 162193270 951019353 831875348 608023657 609673762 784065171 100440529 362994297 516290390 768069216 136924113 637876940 538797009 217985334 437608686 757930496 824833384 996098102 737063380 254104871 939090947 374452488 948261441 552649267 376036367 526809112 533764646 625771911 681154863 591484694 550233890 721412929 817079479 280434054 908216880 522269526 525105068 166179288 678372289 870372101 548032009 604558003 965650746 485408405 766117982 681126287 198294127 819594023 961766338 77994139 302843693 623980352 474491729 31462216 756541481 47396996 692907090 812872890 319440802 263397002 954912932 694296154 214994412 434485362 853177364 830356699 400261113 853543935 969976205 276017345 755947553 890426273 369836469 617191098 155370047 97525235 613262831 613647725 156916129 539091910 357362437 416109232 375633636 262137509 720424656 701163895 551158593 423412470 844952076 347359031 190489761 839394190 69860561 470495488 628428636 176263114 396757735 113849688 671124567 859196421 643403626 851245116 251011983 913956945 221534761 870305997 593995743 688033692 266273659 889921908 558387987 919521886 76136125 561076673 858951282 545976457 431948742 880715846 624818605 285643215 173737591 563128038 924017815 119019096 518436418 491056622 873660629 348834743 668878790 928884519 519783190 601905964 295997992 257565022 835964551 915557706 718066171 802941208 598867265 935118989 940947031 616451250 587797756 486244602 688800264 655318645 66006133 704660212 442649015 200973350 607043416 699631261 657663077 347281422 847664960 968141190 749903631 829180254 985625330 513942323 596678088 1235506 31210174 548831870 968238733 278525175 516912771 344474122 976473506 280056062 799333293 696443597 591113303 517348370 430821516 249295574 451170944 43075491 19500691 16175131 891054383 859401230 936362880 822054923 951697347 999989229 760528937 455267594 453498443 907517155 696190094 632106521 20587247 61791614 131905094 737121833 556941851 346683543 237079955 974818629 222187735 428142223 21932663 987651199 355033347 721747885 650719117 105362666 630055959 41552652 608164751 826141429 240037722 53688907 26016136 549059164 852265707 506530205 973949160 772747283 441881867 862842521 25702452 887719808 266996340 128027203 149452234 513010671 45835624 234537636 838863055 410263820 924028475 343769421 416425081 565256888 168909521 562321935 484034107 941475946 498051621 66939582 774566058 260614300 43335974 212441748 196403711 543272752 884800555 984934820 360469163 397138820 842700843 9467930 690510355 837245424 849771780 974518222 709977043 633427186 684554441 74418559 599697800 442999554 714528601 571002570 970981245 536465979 21126650 652274981 664832750 513152041 164298776 142184508 403046083 783460706 238999811 848459072 832795287 310954533 394233878 693735081 939148940 623906625 883984204 355369637 981794286 73765570 622508048 394903747 16099537 387926308 718889975 303169706 751435458 444380261 215479164 189334526 938769172 143070582 637520996 738270555 201959569 179968591 420815524 957295547 322653888 753315332 419991157 100123856 534504620 189897203 387022962 722311432 40062231 101426832 821975592 172934850 732746686 987517029 897181072 673142418 694575865 790608669 452441317 833785567 824565454 293477949 169982351 980699968 582716267 347124385 646052352 97063023 193870252 310770701 244949242 186397471 804506259 213820170 963614212 138065898 356419703 637413743 125043667 763560211 531886777 828057737 409808490 895599094 339776329 986443578 272041611 365242061 356007928 722551382 90925026 991287689 755063888 770355154 925791529 2254554 493645631 207742939 7442661 207073250 676539132 372448169 547072785 810376271 289486988 375936260 602824282 157492225 793749051 427443862 764471778 46528999 785061838 503085415 333911127 650826223 600875168 172813558 753154051 171079937 510280341 263649609 697343752 350421190 688215239 78718810 680265048 358747432 433843890 3322992 629245074 990801619 980375557 323460449 486838746 226585064 619104644 562411066 470118859 682355359 302886192 4384347 606592163 645785564 882992106 746982000 682324527 355691569 646215063 790611204 269707609 934200731 326386975 660888492 930576314 94540781 391571562 207233292 434386035 726684471 990551711 45256598 998944622 163370864 662242841 384442900 732313109 351016139 515020472 138145365 109369494 298914904 82973668 662765680 192253959 546330923 63087638 856253623 502953943 43503051 535579298 920504315 202363445 994402844 478091986 447390992 393173706 614462123 547656926 761239233 936680088 919596853 489641646 385976872 597769054 397776490 470593553 842004318 612048468 829852828 614216989 824155413 128788491 591103349 533111202 250632083 987707953 471617875 198036023 105937474 377392240 313768901 115598579 77037553 485488506 939855575 836486025 813102386 60818377 821448259 762647909 868379411 676877269 994157900 68061495 412453545 261826467 717874144 394423239 583112459 275456817 507685293 21326143 330884270 248977034 212353381 784346453 91491510 828035915 353095336 536582009 273664360 820349781 484327112 276979966 316205947 468512749 633579728 532925067 624295265 141043370 301830809 533472079 475013076 940334923 391619786 455544850 688639756 511001562 702798376 47843364 582400927 5864060 594287774 211692591 443046694 750112807 717095438 898341120 449193312 864189544 416906961 346108662 765924827 1036116 628862743 938747453 373814229 608704160 696840190 482363805 40924071 74654120 188796142 704833183 166562899 162103419 253267161 660654747 394740288 813473795 565706088 24263965 914476856 178906143 163137630 166467432 503496377 947569844 50005670 514272147 483533316 744852925 393463199 689395768 194239927 424492069 754623531 717969897 876591946 582869727 25468811 979666604 808047408 159436894 132762838 824185263 662777891 139367291 92274157 591404583 620772517 339080080 22303944 53845601 393126825 197803892 542738294 669042574 226074452 915268618 510529114 891194763 725753350 175883183 262892335 246966131 560790055 426911143 612238658 76551524 68135679 276301268 427357679 995356688 439342543 770792689 328607337 995828201 469788898 669223936 381954104 241596644 648329865 450639228 902458012 317477247 775950624 696311143 566440630 718451474 737913611 463182584 914484438 782660210 966040932 570187738 24649195 339094483 657371505 678040044 692262577 59470751 692150431 786558173 817243540 477116476 801345054 631771137 316673883 789228660 141036760 689575391 789581377 524795339 443183034 381114436 900564098 322094216 115675575 257401073 749284048 172284922 506359340 100736148 403494794 810728511 130910113 270479588 547707056 262856656 906092345 873237630 390072975 348582759 132666175 914553703 769591059 446057284 364487468 657970509 927390089 612590991 30140075 329583568 727959414 364078547 358855910 738055694 872290919 543625263 953117765 937829673 324018857 645633687 964437677 381131267 866539001 311809593 545556617 36726887 533446635 119974878 824818705 948353701 441929193 332101264 515433452 287864125 219839708 58158159 192902030 642705193 641304483 277114120 314590181 600953805 391824950 152661645 303931504 693979449 100618354 228651605 337337205 701706336 663939539 783551310 294976494 17843226 988328350 770055874 268406367 277610798 878901555 841703434 305323726 123361554 753586418 722749603 504052429 408518219 567914727 940730363 590942569 739660859 232561667 402996572 132014155 4842313 91751706 596562860 458339307 153614644 520834214 162861964 680924825 880311570 865198578 532757680 800580007 760514355 73696816 819810287 630140852 567728825 129338056 474886265 437100433 929571980 774013845 150535005 55690524 883824288 32296654 87291063 907235415 224796469 114516023 477554305 592506649 667721291 802117012 949915854 851658608 671899959 964028972 496075722 890940450 64744442 758637856 242595884 966841603 725715809 231216780 482887699 996027578 159244641 140829916 734206975 582277366 271952686 848421106 332707918 863252199 337066759 111789065 465399192 264366348 63039974 188602648 419843091 84377506 33976121 27830157 390147616 524794570 90889586 985087888 233778562 864677995 373669863 445926415 76556150 446390797 218476350 625234364 60885762 117663069 366153891 535558330 301170216 147283568 313254960 898906552 105480687 993598643 267639377 955943368 961259886 4039264 265082736 859871565 409699073 13497545 846348895 418436042 89659325 200098324 806115544 182477563 380530503 975728770 303806412 10731858 511277554 505101317 551759817 169840145 456677559 655935120 496842918 129867083 634995255 649007921 189680986 131345157 819500949 721917487 343763073 771094174 708433830 672161017 924284924 922325429 831907100 394172183 691640755 268801834 82234801 60324565 380327439 864130328 159786834 394474311 381105893 178085710 917203460 366220656 825798529 422647625 746732403 990173243 127585785 594985793 730764222 659370408 649376047 832789419 112857668 386772122 87937911 326101919 729686056 254432931 795300407 819823223 246805799 272793070 909642038 380732413 664595965 253550529 768213414 360387969 12831145 646146044 731695559 799381817 619065359 625600471 914622769 951854349 304036 103816057 872225994 424504729 359702329 795698731 511928 176275227 230627619 434613286 269792371 509958373 547885344 479604561 865458603 489301805 814268858 144929424 753858188 221859716 435020287 476002714 472189679 149514571 41928342 566247391 684962619 567122557 978200720 358115854 123423443 941477451 14461527 165835553 129061822 712551159 876418755 875669266 572195486 629446841 664076951 791516225 139428321 558224531 220890885 517537297 561737768 33714518 638965541 426463201 40661648 380606618 56595620 493447218 533085872 698912132 663336506 932794345 169985382 813655106 676458007 218601999 674876786 527824024 52085919 973884323 879308529 263906026 797191725 911336550 869935375 23290182 331832826 44711816 210144800 573741154 909969942 485744477 387699343 5182491 476072206 426770057 494100789 99308988 382842977 941269679 16926052 752606971 174251854 930795581 425323851 738675223 845833882 697994231 854650101 646855786 825245288 615133350 356814818 926871475 611802646 543230858 285864245 14406477 286186303 54164352 163727553 203771659 641655365 916057898 129830441 504499515 309501678 16160796 769953537 108947127 997870041 781181160 34909940 834763596 986423238 190474593 607763202 981271412 583907768 262879260 535503380 317472531 590294261 737905189 281430804 722754696 937338809 979066673 537684522 803751825 209153492 12300266 534305245 542208318 513003794 723988439 56651961 494285441 448679110 116570986 939279411 544628619 155236032 610987646 378492278 993766076 781999427 264155458 455368366 576471309 950723265 565447511 504209665 874334103 880576718 907687328 693693175 342121161 872574124 942935118 851478375 628729554 807426963 636399572 42664013 920888289 370843311 709190281 708714802 190328962 421734281 728042221 484414804 202161926 233284164 876299602 552967116 507542094 237214049 834689709 792207887 531101550 796034489 572639246 66929223 532751852 215674485 441377545 636002402 825619195 747171374 174636105 219279951 398419687 889927319 551346567 100775471 135726989 158468060 326041615 169339355 366788941 803054964 115968987 166065826 448989344 11477670 877469935 796825080 425413113 806407904 111508881 975858677 421173657 973006861 804816137 623606844 607767709 372572945 165842915 39590278 418393429 462662523 130647868 503560628 408590369 740592069 349869395 556242626 840415989 956703596 222874594 246272431 354301216 748354496 870335174 654012550 903733224 661289731 841605365 55577916 771456288 374015821 385172720 457318843 555345774 28599021 43280283 604150229 447396512 728507592 683164963 634283470 713041033 11620089 266198966 489143265 991855264 34853052 562627195 241910723 294745767 649178370 662099642 151210539 200063643 588938100 600928130 362279836 901920172 423233591 569375348 87100118 822186214 433675044 117939162 615702104 151662777 468882956 518648182 747650570 499035474 19117514 489657449 155217087 725909085 361109441 860361752 291324282 969035590 885363544 764591418 849122922 28013989 507179434 856165095 777862197 289775358 86207806 467696706 318814303 538179989 290701823 485004253 572510066 24907327 206411647 935105338 737397908 984517817 106443125 236055606 541971598 478860130 111508769 730729650 437492464 363994150 557206283 972206519 993162869 879963663 297846401 382383487 60682735 984796785 232021827 380894077 901663237 961178419 176741320 968957254 259861374 232740605 750788515 70901652 774083721 733850759 48121841 373282232 866754786 431451013 162369932 388070094 973045189 718896089 161627523 479719137 396060328 30094353 477358375 639672011 549623908 157206084 305355570 556821856 141647373 36207974 723054884 738385665 909175421 93859055 819604543 449962245 96864418 619718623 505261708 123223448 655939703 846700167 868147335 846777384 882649053 226628547 628262470 578172645 217528692 629102853 215924023 551483990 110077981 19127708 824276530 159913641 481575805 188887910 736553210 878258531 78050684 362964625 955993674 537496086 939595037 554237558 315147307 611086984 595808841 74408055 19529058 237626514 928738484 239535627 211671016 501313794 150660852 223553082 882129096 518088918 820520607 27724181 548527512 559440291 890697638 228760287 457314161 506964731 334467018 90959138 582690946 121962502 834576973 434636842 342584333 26182322 304505392 165296504 761010301 81651720 132527444 644270014 240147744 633237241 853623060 301242256 433488707 47484053 568645786 777676602 28675290 85745737 161725049 479555339 697444960 957907138 452381410 406382493 753269132 569929164 66533633 816092005 81073319 219931269 270619826 64951823 466902822 111439126 250008912 131034177 515748953 318822199 921063356 529089994 932036961 63830492 682834220 675187106 33247654 6631056 725780950 158976606 93377394 488624911 514522703 815583569 73873363 956137484 546674384 584424586 545024833 252268242 117429416 52237309 355181079 895630399 926383638 168351619 43656077 804029415 174821966 528001822 861354687 407180528 446019078 917115169 983309706 827351410 32582233 607318147 254110924 956737725 28594165 597072439 163057596 700801479 822336684 319455020 83610173 590694332 363012411 933828688 599070374 720283940 264898838 353100194 942861077 866629988 914176384 587413140 349926292 387897133 461287975 318739041 807696668 517245044 534791292 317331841 758930397 758665815 69560630 210826940 271116464 625955247 798450554 857770527 528308759 896833100 904620011 17048105 497570819 535944322 885994689 281252794 754816803 783051809 851550464 250597853 978802162 15339655 179183935 756406588 292739599 325582955 284743975 147479216 226090894 420839115 788112224 955407142 822469429 866258070 810076088 223258120 172977271 436986419 319578139 131745882 520998479 447307056 992355520 461032842 689013771 581411388 274889446 406939911 539762689 315397343 634217240 111877444 736409897 374654661 772820560 889191498 685059584 394195539 708190339 657927179 77165327 930411528 458325623 767262943 654789732 122870061 665056106 756830047 393737921 608855781 703592220 275389392 975285623 186757101 453902326 351372569 620410102 608071965 854718383 983632781 696284794 234409145 225365761 937315346 439715577 52563565 413626245 719880523 322920404 75860023 781593045 791217143 506567041 310508484 564644046 717477033 335601144 358428114 944181412 198796730 709866675 900734877 74280405 642844236 767808290 866861998 709420055 111818868 882654738 930133969 522483798 194078660 314930940 136977065 952415822 565225379 652535729 3472488 876100422 598731352 502655535 68082242 169795125 655037048 973932033 630199309 40694638 321919099 720373775 673273892 916507230 421439237 563926609 695863903 360708058 56329313 259157600 664707289 156045763 262307857 504008274 456472571 606202856 681539509 103339543 463884079 524576850 77824943 397430108 714343680 967826867 455946598 479407400 434576197 163473367 592398784 78805212 833957659 925084524 952639725 220132364 809223980 446209806 783131650 673950751 475877337 388798630 761950644 68060062 219145458 334206162 633176040 626282872 173334253 755463297 639443148 619304399 289504509 614416174 357272837 576900152 412529053 30144147 669971449 225122171 522830372 296593172 993746774 506962199 676346541 160270847 52251740 936520573 372952368 359473357 519048122 743590954 200153490 673876404 199627446 216088755 447453015 99955951 59331856 963984406 54655155 652916700 179212598 705072680 707420039 71617580 747249504 406606059 38744984 868927911 821730685 87513716 365725244 956216603 175050988 548555333 624186053 261736553 415845075 828116708 743784232 850623735 228538048 316182846 186392794 863322103 679577899 602834258 301320738 584439364 884973439 328537578 279398005 569283128 325911150 1596953 625533582 261274660 393334213 236241140 32463603 679518960 334469525 670699875 497451987 935802662 509679332 259482983 473965344 827691643 577029391 868242776 953044018 984135096 592799921 39798401 837737384 867492965 680343565 204017696 437069023 495072750 448191936 794570616 654983104 646869625 530068727 148174725 34907337 602640045 963966315 985390328 951954456 940249243 398723758 755347237 632736274 732271024 71459556 99837668 200664902 321719220 484117742 44707153 394156309 160699713 398318954 797211615 87698232 889264051 181733221 21183485 18762426 890471146 107126951 153079989 633542411 948692781 111673311 441975402 167557596 502055423 272223650 403219102 44070453 702102001 850569946 155301190 618361095 78506946 801185094 41723411 368529963 740120708 516036134 528088496 224520936 448625983 781929321 129717172 619185337 598476667 780990041 898937863 538623833 215614395 332350358 731455736 291483106 680585119 63054720 624356968 41948283 300074510 514916297 820819039 112564994 426394385 321917874 250634715 489030589 814184091 491256244 584302084 805748069 597528763 950891755 447626515 386313326 253335312 93536997 959692285 640374935 920925731 830795833 393371970 298986557 604376146 833353900 984467214 638636869 600673334 811087607 788206325 480345334 685054262 271853450 615173179 987243829 157868303 719683696 801378738 486494640 725431500 64508232 765327536 741780862 254384177 885288729 779615355 749325194 456476660 675939708 80034519 257180359 72308696 688822411 506039579 993068863 314204934 86449522 77999163 490660170 608612590 765431374 216578270 421633250 320159241 42855426 377402653 484670176 815755451 380453462 96828583 513031422 150489603 737045513 816470086 374941303 197753896 304986964 535143025 106841418 859790194 816535577 944325329 411343273 470757741 127791169 746440351 602949639 768296981 691928964 200946087 433947757 231104389 256443024 814948274 550732138 173284134 544480459 851225455 115919207 41480153 622079941 230947116 466720087 603771249 967695357 501116036 464675453 553082489 419203138 594086566 572004315 550804880 675523571 162664909 249322393 214322385 503474858 235417496 743920967 52005609 747412446 837586301 371623776 338094076 861943864 719026792 320538386 867561619 536075541 854411349 526696941 514716670 918174901 450054942 5134262 573415654 380209935 49286616 901608104 860391808 266800433 182774346 699481125 208511204 397955260 810369465 13248314 670390072 58275418 856078199 853221894 16059774 835744930 37682659 980751717 620660172 751717484 799475763 885006554 769754212 466732965 751434730 439126094 918614420 648140982 795078899 54213830 517011357 302440711 569184796 808666040 69328028 514224488 365953245 874732148 124233182 139700120 762820471 843247666 566642857 407479441 702907091 87443563 8952556 945553321 896579130 78766822 727828127 398140519 339702831 280256948 346451129 555368897 827598829 967969168 141962014 343030402 696282584 619423314 972755036 664246313 611288315 331161610 335894639 212363918 617475644 89492795 941184607 640595557 630642327 314772708 476701228 829776423 985090602 504481959 549486943 207080622 722172957 372363284 715229395 671151667 12797078 68212524 947626456 92297457 231916478 422577871 987131764 315101211 899240121 915041758 594070602 129056314 721708671 187459004 216175992 955961466 581939417 881866498 12233828 572090518 455561739 686000745 139783433 458199228 632075388 540329837 381053739 874722126 846056378 558611815 81544695 950710420 909785725 477277721 593509531 871768272 957961652 303495931 134067636 996694797 95802683 933670948 612732811 590689555 827448226 129475945 188893115 686984573 874022647 715757926 630923636 326765862 889699582 831577896 350658026 679228083 642173328 390620765 743321689 653320633 232843992 732418611 135417525 338170514 911893957 296059822 272156130 753295446 171596573 679830013 242091409 730526259 992347862 945836009 901089459 592388966 205017417 635223160 611069770 397128207 156618386 648351058 130460865 52763456 762791729 796016784 35067449 555818809 389066021 446631297 89498570 813372220 173440046 182565569 110890519 931278560 720688738 800442321 589173205 53928636 163592015 733274057 248038252 855609713 649035683 146269572 223461987 550949079 847329496 891647899 266773627 307989126 191220128 257732378 711021863 328947971 605251314 217698112 957170261 869611403 11626754 91387900 300421999 739970605 675042042 594435101 661895534 267442993 715715342 643375215 376366346 836283255 623413760 901160308 795807530 72640876 841057981 781384496 866901195 340114804 30541291 711096041 672238625 229097707 207949691 416754081 411341470 559919455 980644909 733055330 92554947 263726832 460068653 942901525 297560841 903140433 93833793 331918442 953786805 211409616 940443736 958213146 129970240 372381897 27218454 422659852 460168483 73714032 699947762 621077146 74835654 90920788 451898784 686039616 284657041 285258531 753456384 343343517 519100394 294248596 123058278 192385297 867043046 661876157 414113358 472374852 625950154 576200048 860889295 901042908 366151956 113488196 325179224 493840181 248758190 557681505 808582880 613123220 100725448 544179089 35269699 205584057 264914038 269439788 875375510 792113145 460608796 243557287 969744282 733576266 131819092 844376173 137991139 758034516 254510188 80569388 159492456 820358214 888850578 883778189 827224150 558538477 487307932 214063169 18069889 191895235 880508854 31176906 135763402 892680714 599925521 177611435 8005553 415973621 826002420 789490234 688974288 282980055 481611905 380160961 868988924 496120645 636508091 639039974 425468863 82052639 649499603 790816921 980428911 922360752 272225552 862692625 843555714 799448238 284366163 143034436 995637710 784540469 377573869 395568391 100995430 370031061 382052658 386377527 817163056 166598231 196611362 737133547 845256320 559623198 853840533 866600411 288159642 869793778 141891368 122685459 268932569 796694521 766138205 501615358 173648263 883989970 287445861 456185164 415688337 806688294 114346303 670712552 899382603 197478909 629549745 22026391 794833146 488653197 731343110 723700505 488780023 732226158 241153806 606987492 536909627 27996553 187722050 928928604 144132864 405546042 749521265 791130226 658388268 79854525 980505881 420536885 323382862 901675988 586279476 675520580 120462144 842830233 28179405 347896998 608587113 18284462 119678751 435981443 942846461 196253417 345503817 204217663 626418150 437899332 853936740 825833073 502963146 277310692 312143329 258046602 821494485 466005744 637143257 97551677 768609322 319719339 62352597 596550855 207725645 672420833 256999556 18833465 827628889 908878424 315033739 124138741 456634703 168149999 350416632 365855934 801764697 603795783 249977131 125097292 556210471 218835432 638063378 483442643 397012691 745095270 49322490 323914445 460717247 462533197 745160336 438532220 418220489 886405613 848992416 857386574 607146167 737507112 53971222 223485013 215888668 770518830 139520910 245789381 430546644 306770281 891112349 173362909 64978747 915842467 840064730 354373504 576363685 362911219 899343529 391056654 906552617 442212824 895693471 397168056 850274844 716863015 343625967 111808059 419300779 971706831 598401091 173848995 478698180 228477260 45013233 510671399 773300264 847827457 979598891 133914253 313436221 446316847 15924403 901970393 602886418 362666777 63374582 420520023 289311858 65321736 167176259 531659505 616313107 923876219 110554643 388603850 973939169 212163387 587610778 648338899 441628334 581127567 223132404 858983366 188844092 516499795 404874721 843294282 948980687 833991228 347033468 656628291 730084252 599440401 553369800 244554957 692625001 609369371 78702207 949938739 724652298 690072673 355766328 466974078 750747543 213195899 346129091 643962667 396959562 550959550 965777308 196230127 320858031 405617591 296271978 902653579 398025440 920414734 649877903 884290819 71887104 523080023 142202695 444282147 108598974 186103197 781937530 811364794 138475964 101662315 419080440 818692721 665432715 313201302 301817235 223506541 618500447 103877151 483167936 464616358 923547315 106474804 745064837 219454315 305881793 298501976 873177438 262254266 175895032 858730913 364464823 987148505 321684392 224585976 855519695 222726613 969961238 922067 872647231 155323957 788287633 951966593 51173801 598696625 470361046 467005444 769067776 14594018 755516218 558081699 798347885 633604944 926259132 355238762 847328900 372944699 314296674 111561398 505121571 7961072 463792785 833838905 610316461 446966713 699730650 12100063 257153416 98267719 966624860 482221768 475056345 260214878 650926656 193896885 222442623 782323118 941225345 943935945 352956265 98285037 993063936 960668956 329658959 318425659 784500533 711695542 355959903 375009020 594473474 134780796 513034354 563607340 622568935 460192515 907012068 151955787 728658786 346136996 676413625 672862619 642979459 689625507 801123474 361591874 763925377 566989779 664923948 991669548 594004096 719970917 269960334 171787122 439812349 240033747 703315673 270686418 623900065 263538342 768292012 738034838 988819511 424119533 259462056 964728857 550270507 160220236 375748867 484505344 94900789 521589885 712874826 981292458 425196999 958221534 371380640 581971405 496654803 399464826 357433891 575983356 946027736 354828775 969781084 112994512 177325454 293443533 340503622 711623969 873141664 43208117 223471261 284589391 343768383 801693657 575242767 772862083 201204931 60423929 659096813 616676278 782838381 757501458 205140927 710398054 293367343 230150622 46379135 100832879 703445937 142160542 385110347 814436152 616666515 105871949 218701694 528869334 353675750 794100709 892470588 589516732 1039517 25383744 145799218 878790391 148353202 382152875 143595430 52059138 280223750 365572269 243746441 119754421 62648728 588676289 923990547 589795553 238001642 857601613 877536723 462408462 720701431 654247570 786760835 715679483 202937537 403641757 482431264 999315553 615938900 83357461 540374668 637295127 639420155 197921415 625451731 512865987 823921088 255907195 213124094 370619037 634317537 933169361 655256635 10622328 663832205 645804481 156219573 994743400 504825722 455903241 628398501 323111375 234046990 184790272 12224627 720980118 388349532 635504730 178782744 489499994 989946598 826073516 43967265 342264832 298299393 240629517 974333520 33172472 62352546 924542639 539165935 220486198 442108298 241566821 277839190 444256290 84928751 523741151 536975988 643129603 5451618 418274569 270453190 26667801 263307741 827363887 562259921 777115867 944680618 880578314 411050949 167322758 370954449 938756565 503837783 879826626 591288052 396215326 789552516 331763556 986394272 651837290 284659817 319100334 500255783 676256416 747378039 988027408 98004170 399339925 600137413 252326894 592344181 187366031 1441754 755111820 478567101 384375029 480213486 524409207 739412993 957090470 431487715 433739140 191578739 903318448 531596853 337706556 28318361 426901308 424309331 277886324 9897170 978957698 100993911 19759609 363094679 827570897 951343211 200304541 493861098 800726885 30302365 599152760 343474149 749574315 286670658 811198752 837323208 877037538 609524213 506868332 203430123 663325649 737711095 914825144 422871457 44457410 941912885 647908292 524263500 999714406 343394751 587516241 839834392 913068573 269930719 564850337 272420531 517283704 565798268 595262980 815860233 876620423 145029969 606320739 368341765 576894028 850092176 824596574 193521479 477343048 919488226 897532682 223590392 560052813 888388643 385361849 452759535 332041259 244617828 717701700 999609975 342680945 91836324 252607108 177162761 99987449 156137988 407925201 497190642 121452796 139517884 221295088 564042815 932642340 474136473 104159229 345344622 52833735 769685755 134265320 259718139 35322386 220143713 892625022 128263211 946548749 592116432 540939502 247376328 705421316 993668240 447443712 268496026 274001797 985037091 320355241 815348003 530799274 923176162 287193554 242568996 503331375 94335207 440224175 395701436 990936917 922411414 776422738 345755249 441516095 500806628 65362742 728576813 315066690 871363191 288795976 663048647 636054750 633312106 86113702 730701183 860374909 185595928 665509084 193989241 153645921 295353175 779114587 519998374 171378538 528181688 159724280 781369886 169496132 322201168 463419252 886516830 830281066 422266227 531007233 553612105 385929082 798528693 852914147 389054801 606691462 443072050 379174282 111270860 337531331 265101050 152517975 183108003 617857994 457025978 730471872 323500133 896904051 686776058 699202163 536665719 305235496 81445465 185207207 832046954 898817985 629635936 615587590 579206330 645530143 333267603 642368611 269661750 267505726 372391050 481745201 983821310 799854594 45033934 61607887 742373645 976066500 94916661 504185481 912208841 902470291 99506658 766596874 539920606 673083120 114342403 322682576 634445190 822799384 764992041 684196124 929559934 788304572 179450735 184059415 509125866 900095478 580037610 325984882 935449898 19143093 109653872 928803254 151827842 149826567 613157807 178420743 733047891 393922320 829149257 575873035 874500749 161834922 280774826 686633154 447571437 714830173 597044286 950098423 464043668 585494786 859729108 705269958 214953693 964794743 468173773 731194529 758843221 492730864 500777967 605506076 796527662 919307394 872185723 214286632 152096608 14924775 390835173 75409680 36780178 117219532 893071628 285715222 515952345 348266438 890597605 315773265 862285997 992021203 532966039 316661478 273250750 766342479 145791260 468205984 611681797 607696836 351708585 755703515 589766353 253823729 2501047 389171992 536326165 218397064 790763723 63577598 345052074 512526111 517495465 801772318 120887058 901464830 542783799 79039694 321521373 727446792 786168014 49964038 845194682 103777019 486089759 21212067 420923220 559877198 106954127 611851542 192194086 156117791 867463331 993171596 770396319 478143453 273649898 667671631 484466114 255601860 911386068 60679907 500546515 716475724 978955402 183414612 528863691 519962286 533709025 335808843 27295102 785017599 635708150 339035661 331292449 627819714 140802123 127641911 933451058 595623134 537464370 786382216 245567072 117599888 801625275 657600027 899836233 621552594 736186376 895385206 362343773 749348200 177861377 661347294 334024054 918036493 536235484 48148384 876102390 294898660 775920916 773966879 550723702 914514699 949566344 648954663 402636157 463719130 624573274 98935694 203827063 676548259 521931160 687384853 858545553 456909083 744820969 697223493 621320937 248182643 299522591 947006230 558554176 442940006 142568883 71964975 235258180 407256244 184479098 461083047 481377040 270542234 925635147 696646327 882853697 225759105 785977227 936015033 373323779 705669560 375366222 153863972 875706660 423867075 332432458 864054808 274606141 289177877 27819993 460250774 244027403 372934309 347970913 707748595 370200250 434236130 887754472 870502204 950298687 384338544 655924147 424646917 412047908 961441953 11828821 940638269 201738300 952251544 827178938 54178916 103629029 124912615 609907831 765847962 917670159 686830789 400403036 30970336 944266733 701077233 584124857 622306952 283107764 13651507 585972054 874740039 423751836 103264476 986624736 676760785 76948097 19729700 821903915 312744766 528490164 751456361 493004928 871792906 206526945 467620738 311549541 865424795 206566455 443549059 775698352 800217212 100512141 742962089 930878631 930707451 236806106 321726184 295836978 184256246 214774799 553838710 807954797 598050778 470256324 312733180 631326381 649886622 887788616 873575118 786340543 746821978 572044666 567689398 308495289 359011881 772926944 544616993 597036533 965808571 835674300 441741819 354146518 759617545 595911651 170992293 920993424 788808633 625997438 847451109 725140256 200359794 384921230 943963187 87831347 999633618 41065013 877435415 767446608 71961463 333395572 97548446 326667170 212596871 144829006 179618578 647334131 772117269 470658089 536678735 283784276 89135099 634342504 683576120 201239405 335262212 974229979 507863641 213719472 451189167 283362336 169257651 71533106 444765442 590249381 153924583 281585565 965506820 745385603 688909749 747182508 134139130 17295857 377429190 431282459 741278102 563360680 72720322 141121473 654737820 899108014 750506888 394142052 749598460 258133638 314138243 927084076 571596089 745553378 515277159 287696470 981934150 791122640 786692776 934133763 896901360 645588234 58097732 54080187 270799465 799384167 135633834 354067828 614458722 968226384 736039747 560499313 463264498 600951546 770937512 921537763 920257894 249398821 917447323 683340737 200718565 447263266 672517247 648182444 977665018 368653452 502800214 221672846 670040893 233518586 121446259 724209660 824632068 267305822 21473564 276490165 343711765 608354518 511066099 96178791 298976907 621675304 24386917 555138083 881908040 822392701 750246662 664648649 727867498 241417315 892601738 984907262 143790480 808490585 62517846 428677920 3721307 607533950 120465309 745959332 238833307 92821660 501018943 853654206 451561495 792741207 738794962 619264731 769108215 698985554 381663281 745588989 518057596 782055826 649061043 554947963 262268378 158652702 459854445 785859265 700033263 72852832 14340668 291805778 791389830 655156565 585146277 310348678 537661687 986034769 942230564 948762076 683026651 311740289 175818734 70789513 560905383 635688624 319192879 212156425 430622734 917413329 959566577 473770398 428043475 808366658 111107456 606105292 123756449 447783274 958648725 595885125 279004870 681471179 135714502 119726140 535293430 575448692 895781429 272826457 359094817 691265744 770134194 439278109 940193532 309994768 922752863 346079628 638636032 244743874 930383330 787018885 679665515 513133915 569965762 303127637 252041081 121874096 786928584 567128823 84443910 539660619 153846376 254980959 773381330 137758235 262193634 610977814 519381148 680833842 651874501 487572933 384304697 451570380 448804696 676686719 475843983 241099120 769796191 522291138 760082811 441725099 125063670 772859243 718002784 365670753 240613558 488323189 503200195 604169761 273942058 731228384 4085330 587059548 682927266 674459753 316424315 520504689 75246401 528370006 978488199 347444660 533886754 654702362 611549479 72940793 58351315 332768287 581265116 998605609 756527406 6432680 782181260 216817717 140116744 816492909 102905225 682364944 743486006 554096110 924315391 501493957 831480714 926745874 802633177 743623352 143934306 790432039 179934876 585840672 620644061 835448157 686989932 664183131 186456781 589672964 768309816 784454046 535738763 85672369 821988699 136266518 489907694 763421809 214362776 590809492 181444733 528844125 689963529 411374181 79933416 797805825 377830269 246235583 757227957 614567372 365250035 353337695 447055352 310624025 912373898 360248655 447156062 569202581 767163081 41899300 757617523 168462986 778043042 886621124 145048739 742370392 518678745 745514984 153828435 245792218 577725309 590316657 240371552 795622301 976806829 984210480 489623670 909886975 745799623 786324773 760760256 126039094 151600622 586320011 676353883 426881949 400955132 759849614 417042263 689647190 826707169 126980151 244222068 358621709 996264609 526852411 652347579 59532524 516182796 167981325 945323721 240825549 748307953 662155255 154180110 957598556 852113386 928964898 253287396 971204969 90907914 491356241 467858855 472934582 556198550 167050663 224757449 110949011 132348595 471659875 768801230 725310720 635816137 28143688 273967032 443843244 13329340 611617013 538124683 827452310 977140210 625805087 32851806 68386877 771362486 107479251 140287152 206740745 889977009 347164985 392806464 32537544 73971102 391644465 812604714 890951549 946350653 293244976 726093714 852262067 304966440 589883812 167521850 127218540 804554306 158494439 207433561 397880094 232641292 186728926 397428440 584833321 542043112 650308251 893406615 213726740 512709168 119145295 207621001 741435924 942818324 12496135 749061876 892819231 727341112 965835960 317540701 172807065 30632367 393987134 102339051 106415535 175836729 195211234 674086722 765719725 42612112 780226058 43816684 765012049 536861657 925912361 702485211 349182317 301970208 236737412 239192957 490556672 553179072 603647864 685400887 392977338 315892562 613387375 80304349 86406680 796471921 614040936 917607630 364304825 83250872 698298914 647508230 241218536 504213865 547326577 330217817 603652390 158798840 87369525 355571183 639568076 20547351 324435413 415238428 349264978 297514304 408024518 203936125 96558792 74523590 551359858 374217632 630217917 90196015 712636259 757346007 663878117 749998475 724663722 697882743 628813798 588406176 53144975 107658367 963757914 38041868 331551619 528842673 406488679 169930302 392762328 332620370 553062778 531982579 959727164 507057448 406398744 396906697 807646136 821597537 870668406 468237428 251969990 106377923 197202500 326021979 743338427 97807672 407809547 322873417 419383911 124381731 439908703 726228570 784183658 235629638 85951669 326537277 909415430 144407315 743787704 914007303 244904768 943446023 477938576 23732060 938707947 348454648 119286897 440457487 420091836 244664299 495787524 395324086 866868574 952621438 355874385 503699903 396438239 384607980 117176347 687190742 814423221 32128459 334339000 670331927 226236992 468496200 772699163 520476778 395936203 571744067 823244878 140509030 738430333 320714117 720776631 94709975 494241577 701452064 343705391 692864238 369096851 855088236 764734639 799710604 210264963 887518068 645150372 616137465 795690921 862300224 531793002 480405614 419777698 455261422 42176576 249409922 839097241 343288493 191534548 813128340 921001677 537731531 393233589 515495109 455452603 345145027 215661877 831628722 963981500 681845422 101294864 403536065 629762264 800911297 367903320 442693001 615373287 872949804 35053042 701138443 667984793 674111307 217601182 230315181 714200122 373252303 293737385 279587 949820299 653073148 801435653 116413645 367593515 472308425 921502330 506465186 121084096 718121340 651543480 642671883 538246740 959749035 62710955 635902163 904383538 403017220 523350909 551109421 66696238 829474636 263216852 384438168 800796416 628484904 798059624 273997040 703423392 730076713 619302374 371829894 94242862 725945270 133889540 645784322 707412654 139703839 211084559 720097104 836818633 354241619 147702577 182665285 194733900 953678061 137807905 912736124 67303737 269542692 265245078 511055088 571847535 843725433 148905636 863353702 240662862 846478589 469827461 252150374 518672189 298045392 894108386 363603621 75592382 527022628 158709797 339222818 728482578 239988924 391962000 214887989 549434619 333001074 891024863 342443481 184008225 529697522 679876083 763747869 806326885 400052442 390185827 823487652 166898253 365243813 910054836 740228343 796280293 339474132 387321563 101366476 624001211 168638614 933746713 809393290 807036589 433984831 70891224 611241921 839654192 340787920 215023743 888377966 296211479 140483056 698155147 429162163 101357049 28358551 897924628 749663588 304679658 73275102 761428465 11469046 771187518 847613087 543362306 356209876 583658775 478350061 538133796 879213701 393921309 287395205 457352438 855844163 547644703 576071793 735148413 198667555 371097611 859830706 724735456 520237044 43363349 744921936 455689929 347450218 647922915 855736892 792518355 646921196 337330748 896449696 861879737 431330096 465224116 44080638 343854240 169261533 435783586 299171486 422588927 427186245 516136471 193748800 542966211 241812471 481484481 532380398 665505485 498011484 774415850 802394806 285580328 618618697 176714692 603633174 845018107 593606145 390544712 963794602 56500370 138732311 228457507 858960149 909781091 399719643 40475870 222424497 806640269 706042164 400900100 669860008 498317462 374167354 682954031 713119413 780041439 188690080 929329899 696656100 950005584 446667958 992382916 193603065 434703793 414220192 150676424 11353411 815369803 824569690 674698619 981535992 441622061 938060310 938162800 700669073 103472741 437437195 613824767 913209384 724630991 403976274 509654080 678836343 406629216 569059020 480083848 603437103 605998582 941627370 817765102 429679117 432628124 74607760 583412487 660182910 200886156 688062057 904844980 174248907 63162233 735596216 332320929 875261791 692963461 377381909 264403843 340741220 224876739 524601199 701900513 911294117 301314565 474358919 614300546 861925422 797654387 726707102 538459285 355968987 769720367 415367835 86351000 896876673 85956259 23042660 146885461 233783169 727102758 785434469 816785813 757039369 762504069 191744052 409217175 46505511 348655047 691076375 195253415 548318894 777446842 371192557 274136901 214010605 495960839 598754108 104807078 758166944 20953837 782013022 679628049 735996805 222004480 930204901 789366867 77683558 474165815 463204589 683783933 900669887 624300958 658823191 546977133 158436047 484446523 135845591 634640761 123127267 950223568 195392482 469702522 180750974 285256338 751368530 562047042 138266267 905647158 773095588 769397113 336218796 749369423 315346887 979154055 268401903 748889987 64421349 869087892 706659086 814667996 751153812 229648850 740999707 363413190 887443981 473031875 953506051 785279344 410117707 841763597 900894345 520454114 912566147 100279691 165417078 465955964 500621356 885213242 337400607 474542740 366890317 102620069 752078524 793075319 669918500 417190198 506761283 144010810 980233165 678762640 64131989 266021606 335248630 475948677 698980721 92631132 929603888 613744429 752040635 239700449 682693896 514969024 442223260 352339567 233258723 419071458 301312120 89084514 38374251 979026470 356829379 183362242 772401375 714669720 496981944 210686696 86787675 725060967 728715083 64222543 328599912 304366171 16129027 398779780 277763036 985309366 746248890 843241079 136822326 967508137 308931240 82086067 121700521 409877723 269824967 895199704 1769094 688620852 342356484 461085650 71895683 69836302 517706180 180283704 887100609 644915596 650851192 50640904 436098792 202139583 747457788 842683627 240749565 41156911 547633238 502180102 365400346 521030346 88035662 510750779 18963618 883272548 660949496 615992793 115161381 39021082 116187957 347254147 420520305 8765060 469206296 410699847 285171723 23541888 688580783 357376715 265423289 201096111 39717004 3419862 729932490 659568294 860832205 993135883 694905736 45494686 907553215 139257429 32372849 404693125 803590040 517960128 288128391 448111144 856266357 197773292 86077538 961801956 701180860 804011713 227978256 194981129 888042871 68635104 98088177 103631390 248820370 222895530 521647998 683699290 913008341 608896039 425375151 915919424 565667543 692807943 34226912 746509037 923319449 169921121 143832988 470927060 227067136 22462242 401539968 556088824 713449125 789720322 383918801 804307564 451257811 510034618 828466546 926024392 175182751 836512257 946562061 391698785 964656181 837580959 605590490 2160926 464548322 689730857 945788519 192731914 824396600 408707804 926546653 891979871 588419654 570017459 886794601 377635870 414905815 167164246 391221395 705444028 132786619 233438566 895637627 139992432 923701196 465225702 504349228 892276495 526595913 36911987 937752291 458034949 813037892 95539636 669418604 23681883 839559988 844186288 962988968 308711651 3507987 369895375 551671940 354002928 557144027 163387951 294737922 413780981 962416281 144125419 57123615 388178508 859608469 531343546 886729534 107439614 278146938 316204733 96661667 363471053 374662901 757507713 958652552 750703408 223460825 477735317 594660926 593708792 865458986 920453904 480295294 479692313 19898106 936240364 701482369 237384029 709440623 402016823 551735189 739770807 345471356 752924209 555071048 488319009 353055743 863925561 20752072 679216430 338573869 655972684 818775709 505197097 325510833 304528732 294361071 687127349 466283568 299795977 849500103 186877308 545441756 243824009 337126465 896958831 962023197 344190842 585374042 813818361 231621670 260956350 156238482 123435956 870156181 34581390 206998091 911439526 517185598 587743732 305268872 64152757 45850225 569739107 470129922 706121631 27360533 866830365 208178982 834409682 306669025 685303761 455246255 827916209 957562928 610349163 715162184 188230046 163447028 184886371 460659542 786775644 409212963 483043073 765070389 159151008 552576911 61947224 73439194 542197052 205278157 132105487 304534772 755152412 517811335 57536386 279858121 170578899 739684696 88125739 128918728 397866351 726320522 874304465 565087068 309540810 555222572 606737912 674276952 795880126 379335393 604550656 682449546 793255203 100872685 832155904 639569744 155922774 767423041 885109769 972490029 277520972 45380207 824520389 606562580 778041657 879880990 52530998 156388390 972469186 247678635 70976490 66184824 236676312 422649056 638466701 95851155 5613046 858876193 900541893 614131566 743106725 60538482 598319457 52716859 301919112 877632211 165578381 128192094 559353514 469836245 820480023 348151356 824544779 974716998 668338001 238710237 515890929 949421412 67516668 564414908 406322721 955475946 189793081 907787998 857796151 670461535 435319968 825685034 169798101 738375509 495589824 865543888 668284239 788027707 439646243 429434723 780310642 108950309 369086888 381187679 986726882 232325974 920719290 844183533 464684755 96360432 3671530 544909131 875309770 29468307 422833583 970775448 136433669 360679067 668445081 98957339 223541097 531187624 830009609 342017518 332476076 245675485 553028241 945959889 74237660 649147192 393836322 19988857 947192754 272475112 300854601 905192394 223345118 219599756 14600203 147131838 744388931 639021623 467277257 217106603 8496828 136127215 357041618 765695959 520000915 101466018 357648940 621255673 967165866 664027423 798727840 681827891 824382561 216669045 24070483 251065398 182092465 987544902 362001157 141625520 957414499 790362843 931907963 820777194 89411837 575329183 728589140 69563916 381830940 990575467 564527571 501522609 692978333 693806320 955148457 168414201 268002216 202935330 215950212 752679865 248482385 491770395 131820085 439945813 578589073 980389214 560446329 883187447 83044025 165798851 624236818 997350646 346841615 67966044 528387539 352191048 337506370 45635567 194070173 756472877 871460307 17862345 567754726 90328729 655330540 135617786 936014354 947019959 560118623 305659353 804154603 956208075 696153527 686387710 808738399 590544990 915913208 445067560 75080986 596769432 43655055 981511132 898015164 714070212 763776935 516966891 384311780 256442659 166977710 293485081 227362397 578800541 200329269 798677937 564712787 56163883 551121979 89218102 887008660 420627869 573039412 268599013 674571572 435466812 341579553 39271571 551688685 730568182 515723307 39502634 58660798 507308497 120629543 166970670 998061884 941262412 478526431 368682986 24593198 589887630 203996388 32296283 814279838 567104761 326590734 713783265 382967264 206349885 961786498 964912746 5537509 566593894 787341010 42588543 891663551 138021233 638369167 283176887 549746856 975453007 417166276 640796287 11765086 296107200 9916627 61190201 232052414 460907412 368324621 309679280 26607273 386986158 489378297 76348503 578494423 822407746 10599846 472853061 724788580 569468426 952968027 852171669 84716428 769528000 487904715 9389829 521458791 288845578 883968438 756719277 400482806 694739376 346119906 196917600 404196980 770110788 649539015 902486566 418457353 820827899 569741415 432320677 80880488 399262751 503668841 728644213 682343149 936793777 12903277 633520959 705421992 825806278 373609019 74882118 82342943 952636908 20245326 401373438 856141964 171413326 419150534 595520563 429438891 379142178 197528614 381022723 671433856 953599055 771603970 188519025 316673124 962181371 859667317 602547779 599300056 649084580 799665099 825356578 30579431 30926080 951913628 946438608 53113899 218067659 688033809 850794845 449127912 4066050 820579942 188676019 206132347 784977726 238821666 5215219 461094634 894177361 984232548 831158449 777202225 557778170 340641229 532374048 752174551 30614560 846837656 43360715 377596406 583376858 930629469 938770711 427617505 801778431 242410883 951098543 5675238 133399890 302957974 872373634 333324603 57066144 893053199 417783275 103295175 329369678 124033036 782005786 787933707 824682378 18768546 292576167 530989979 986932765 752659753 195380984 10775350 432895768 575557756 916009872 683061145 6777265 843078362 836050885 562754568 190827001 970910685 59853662 221873113 409365770 442645537 500181007 381840193 964455068 299103007 350140938 214056448 944371271 136739950 485311522 813697716 749390990 170745838 960058900 868613109 446153543 97398558 976751017 493086112 662960963 746008435 69525214 493014747 327677612 377025390 720272480 628946598 980565869 195548938 599032001 459289000 858022647 590043887 418743473 816294773 163103145 606359504 190584366 363663143 754887498 154079106 655462939 756342859 927820067 355259988 838508529 755599033 724376265 651189594 52795678 741748134 435515766 177439751 317176349 119478127 789345491 483759223 16217418 676744018 940277873 867047029 339424370 258067339 926525067 236534767 402197982 91911349 425756651 925685204 467919143 30259373 117045562 2938589 52966164 341419229 445162939 236829684 197580882 40097693 192544742 938359383 771755191 180750460 93145407 308316627 656755842 73733449 605442112 868822068 16126875 139885201 601181708 217404612 549440064 646347701 639491828 543078699 951139584 806620277 660362897 383624735 10678916 97263784 851536298 899392131 430953867 875157477 477779826 554737988 320064878 655491080 369958583 27494210 593561807 469157836 497822497 374462274 55386207 392999850 444804752 855896701 924077470 379680525 43121830 153621471 856357132 61255964 208464901 264196153 41342625 169498221 797695027 757570624 573473199 287052802 168676959 948966719 711730401 982426698 835462570 517100337 423425889 847023797 405960081 142139966 775084686 644806649 967428997 166822465 280247529 73584966 751717555 684449809 666117053 30290766 698147170 327681177 764192694 683041650 86652825 659867473 553123704 808245651 329799787 932018757 149658283 510709162 95901263 836994564 888259528 148923525 806496687 649665200 889684915 467860226 870604381 450860975 400216052 708088924 724523838 784854796 708503298 335648973 542719823 518558131 824478599 271104809 139760855 951182595 335453024 557932618 484726650 163085605 881525160 188404121 518013473 969757072 643608213 913890613 62698521 23543988 908124393 495261643 116240175 96370064 793669515 111473040 267127611 973163582 104822628 546112485 490832312 796133992 274604665 741410074 801192198 367685864 952785529 759650363 457275729 278477316 276333667 883399630 299847614 298385788 74211349 526078152 520823466 505908338 796222453 217194069 331993018 400813689 236825001 502435578 420178024 975456342 36487254 899088730 4960631 792092336 331595158 628538912 810995092 462043997 18132152 890290879 507581551 591796471 398915101 679153255 87082047 299495476 861523603 648844979 973230187 844667688 601688619 218064314 87456336 386492410 745544411 980350568 979879117 594784628 399645637 787931038 379775083 564314449 69021042 871456314 419385647 530253245 373370334 270124257 172230821 200420571 772517551 775695286 493707585 752568136 740454948 127562993 48428346 805904080 862472375 411181314 741793294 736109464 509345315 79545132 946674310 150179195 211663470 576968768 294026768 20918498 760355097 844532903 486938436 638935554 988179656 559272943 463131970 120223499 283945216 994786581 140266373 882296383 640752384 531354503 386430825 860496943 802603419 392745128 683183242 216660472 597620423 973926976 433869701 879957857 237170882 834337005 476972518 359962195 796811111 439617795 526990749 463038019 303296 633083574 755562779 832319439 844800162 976324928 264423854 86872299 834141228 687516342 850513973 791024516 245877262 239558632 875437338 120371410 96354119 414827596 326225986 842574843 727204969 510227220 522647768 24707551 498149031 338495201 559600329 982232261 245411830 47139244 946602445 369482995 380244475 570109773 907467421 132966110 822184124 365529922 291703947 718342775 550013211 427443028 576810044 695134304 776422698 808916085 338138822 15699869 986293068 960656460 631058700 921799825 238566466 278846998 341852530 566182261 641622960 794518430 124699092 53984449 361356046 20184093 312378309 580461275 880378500 190745293 637333841 569577684 417161659 202374495 629934185 554230973 620612442 197574195 250055384 591565767 972042711 473335448 441052465 259613383 784624994 914684401 368783835 834143218 154899589 443046234 71478116 957439541 504228617 690401223 384884562 744916452 915423702 864921638 151581061 346559124 798865748 137429946 554904141 478461912 825078635 614764543 73164317 36841880 653951792 455363650 166095075 334194435 619577801 158025134 624179916 895029279 674347373 228082849 369150627 691435520 454076571 142962060 89396882 292910661 274867367 798691682 584599026 430383087 950907081 326171654 58750722 836445380 59573685 311196737 485591853 555107844 557424431 607913396 465753462 998621382 864117950 131352621 202617591 172151811 97886449 142969782 433698602 608843562 372023235 194060641 180095991 886271173 312587969 733273132 460728738 279700947 176734785 3150027 87122546 600121931 121303007 58738674 504954208 8448926 454794261 301257682 957804744 831001190 935103752 270898525 416361601 505451439 411035532 458112722 883967536 794766999 461537657 260920158 561673304 943850885 765779823 644759954 743489063 872516104 443274295 908245342 700800114 865054949 84182322 863507207 396179141 205337126 77444850 107808252 182676765 182823705 691020501 354345807 743358361 734076763 466198693 908249679 778083364 643612278 552407882 186082028 976652568 718976599 908382547 949473125 307058243 278934264 147965743 105991269 205168097 385192716 572540425 334044291 156936412 214617257 379073090 28785153 770594119 430963234 828574531 43991700 864759524 158047560 830810067 960632142 575488459 998801588 989325448 459295630 193057050 434196798 57366675 44118689 942169954 555351361 386988503 719670630 526524136 298162479 889154110 48621445 598224382 471867818 791822529 591474456 700006895 19391043 868330192 966475860 913777831 972342251 980605809 951094009 575186855 996814191 365441754 876419807 757745993 759353810 474779314 121490478 57937240 69278352 457599098 722832996 952420135 170665595 422546770 341351815 427793245 492525175 825840761 927867671 555589465 739221643 399113218 181748271 104880019 179847635 465459563 77112267 415047975 779203047 598987603 563235205 156620173 182221449 876488047 871325470 80177392 274433008 758398203 723733548 648385856 927365469 239419081 377403465 648284996 160387642 296748946 961712117 681519332 189867348 125801432 140424711 395065296 732584600 449042006 408028351 844237941 468966180 19470217 808207317 667462568 231666703 473947193 909504651 969924320 831050966 52128783 126737432 582328123 417717526 121790032 917094964 733867917 581080088 372123578 946960594 518406438 401361154 523419266 230616336 606067698 405212966 219129706 157136797 739130346 361361721 535254495 125023909 339757348 161278232 684563422 953498527 241706980 318335538 146216628 118577172 496093556 98598311 655842706 784091439 829130234 211770206 668988430 945009575 863875966 81857760 819684196 412476572 548210918 599706778 432895948 530689087 667807356 158372531 604633768 477428885 424403891 461671734 230920516 820684340 774336648 453653749 576029102 373615352 201486217 82487395 451861352 91368359 434188560 143902633 472653273 704328793 799005922 732723284 174861729 872536085 343631861 254118474 366327327 238831669 650318263 779007185 446528655 309953530 779148012 64429916 773256135 329220825 522585352 229404206 491803392 29354206 163039353 192177879 269166922 885099621 278873033 732303316 487710797 514491007 68838462 996941563 332869569 374236001 663068572 631929699 778908128 431013576 81299058 568706211 595192484 41522065 174182238 642930258 878352647 744394504 965985604 240124473 263336735 772652367 435307137 686123044 572561744 766860674 248443267 924009556 316336719 212607909 623302217 457061035 97762427 464942778 145390547 334070211 971281676 850029844 518646458 647070705 400877603 936528331 514910755 815266914 732975707 836142445 783634662 875559727 136984295 822532273 720421290 825861981 726691910 405975409 99165828 799770894 853591729 250368342 827225278 397708364 192762845 147538986 953489654 634371480 644583579 951036703 288303476 759635412 611380144 308350732 337995813 738365135 41612301 569407894 792078264 357418153 235511767 768706878 194550289 231664296 410980279 623627948 291988608 14807791 82769198 607110874 72507520 289513257 125366471 897057164 128846249 755588984 547098888 976116638 332911734 293843066 344652410 77459590 837820497 826040356 25231993 852592161 459411971 695925112 181026477 477507651 271230739 404901828 133691934 678225179 301355742 222198994 496086438 550363325 298589216 307713868 317207785 954363095 544325528 482026255 80774439 569969514 577526343 913631897 900765199 654875941 722907790 795909181 774450668 557086093 337400593 467274578 789243814 968023516 428780584 217913008 740578241 585537962 868251346 590123160 376175070 509985990 86717601 108211726 940854107 420709901 987012840 239127563 494663512 359784160 962269373 995033826 741054881 714784169 821086001 234597003 254108099 802576703 999871583 766168825 545506303 692444736 580879457 26641198 557259088 844123609 639308202 401897547 364800020 72144162 345046911 812035005 32692660 91988693 609769732 826385225 289924905 589866746 201628308 310538480 882582579 829914625 849009644 962143266 139696950 134484139 365255877 703355492 813023050 415887524 993221364 618907688 738499056 693037238 771326700 536072742 613876195 715489337 990603920 111575064 816679082 806399013 831855395 794393380 695497215 607873567 657678465 157364333 718311898 542029849 317352625 251955024 382697452 343596299 929251029 762647911 935271996 665462054 555565405 193769350 416638802 516331062 499544837 108145550 704117725 613371603 602971562 25927653 820903244 581443417 189671978 22474534 982029632 521977567 568392341 990798663 422817916 944177328 433076901 878766842 319780747 18459750 238837579 519096751 138267037 988299542 550506472 300620062 942117209 516322356 370073772 587709199 55491292 3965149 750497942 267891530 984815015 892787009 960665400 941451526 132225759 344677204 666038668 519177963 288369529 938208184 19559264 127139935 385613474 140095132 15954547 366742680 5416723 649514166 13263811 949455388 350375291 7037297 101435785 757547830 971219974 747040644 959007693 583894850 377532175 472993530 828913735 571800088 247573714 857686262 172681177 497452267 712987780 103232804 774787 7004944 644290713 181478705 890808248 452027043 453973457 817540747 680795304 685407059 187532861 97368120 585340792 942122966 157155180 399575882 951485970 455342346 758590772 142260932 227803987 9408030 67188816 768145719 500047899 765408640 980287505 109969342 959824727 830959647 652549172 377283383 369940807 355755441 121537673 591248028 863241374 672749219 498392468 619084915 206971394 625498309 930307115 318710110 219895128 983267208 414163547 430716842 135084509 8214563 681723158 972894058 65036285 185443939 530557351 786609560 186503550 378325467 811085603 870316791 884647312 755543582 927964725 844206210 762845926 676831943 185515193 887403718 514278736 899815988 875534734 97216889 269967003 23520753 587432703 73160487 304484308 658523758 728492913 677589273 915982363 15270060 947361194 915393554 438632889 823687604 653003425 766643729 733615992 160772853 271643090 451356750 587282285 496814145 324189158 770524101 340224786 313625055 735459759 91094821 717296077 749734416 54320063 847189193 370594720 961470994 65968067 893470099 606946944 305232597 395522025 144695947 561120513 618439022 296236148 391674258 8735761 588451067 998083601 310539463 48881799 583483205 189940075 110076783 494931419 574296770 630998904 551559481 420014486 349640933 221162703 513439954 534409285 824334235 433400166 795948954 472221721 912445359 113557838 115601554 405363747 544424810 640145181 910845020 946188826 84982574 792263058 305020477 146238347 354013496 270108692 403257892 277212766 82248588 184306986 43024930 450003699 832854360 105550300 250617033 226695609 300196285 969365964 545545149 759306396 640396004 15484793 840739773 138385843 494650325 135862080 743005119 794224518 721388900 175240776 133645375 597161114 238005021 410308069 21734249 155910023 304794269 818300150 643016662 434376522 244254200 890752097 924401188 430059037 1601219 331870213 179108248 425475258 923323811 638124733 553829613 881218530 433595392 706598088 697255670 811321198 334241071 156399079 75265487 406686738 441262106 689465951 851342738 832142726 21582284 712675581 36278502 380187714 239225203 686059979 24668280 978449469 17704074 422976807 348091299 473157341 758914462 51869625 575535698 225736696 707992714 885375358 352148950 586299454 83352857 767729153 817309127 340895474 290990850 52927626 582038765 305047907 811872416 744626570 915671800 244780823 743130013 221770586 446877320 951642961 259180839 155730643 183449594 177875265 544934208 47567702 722452190 371028769 737361439 927708695 786597983 355029358 253011228 157578564 804558157 686588463 875901060 682606531 419986110 463438300 195761383 637833337 684960934 234183756 67061530 145354806 453612441 486486518 754578161 32524044 465176966 591172726 359919353 134821861 834975514 723578233 450834894 3483212 51012447 245937008 338362171 13726186 42249897 274660932 157178370 23522009 90870599 721438477 436283598 571842152 25300448 31788779 239367716 666590968 845123570 590220229 509747294 172196382 220536849 372601182 228726892 888730288 392698615 831068077 828349944 310556044 161205196 691752021 408931136 932087294 905052331 555828412 186953337 28940871 78442522 448393095 699734236 729273988 619124821 531803041 223185896 764762119 844584620 620530104 848486196 727779798 794391162 897720942 328338106 775334952 857741552 818368144 213123555 380847925 514145672 64956670 641630586 160943201 730272483 21378633 297687420 955944294 999016657 433958431 289682690 51285678 333852367 255650582 5559116 116172878 518613563 431135878 651500305 36441590 945750839 531416981 175611837 228343141 180448343 52678327 776218022 924282092 660547181 421472497 978140524 86114818 342213424 528492856 769367365 403966311 973057971 107331637 946651169 188956107 77356039 27878680 988580632 764390513 496281013 267443390 34880425 583101260 416719573 811589927 552214617 119493568 246729108 632361585 615077471 327820922 579145659 360080604 173668399 12727900 691592798 661085936 23087899 118189302 454227816 770487557 638351826 400364301 302920758 400507755 246871423 773794832 815647205 49353428 745575807 229577362 140268701 178043404 228015091 400659758 707654307 196987914 128801727 388679671 156292376 495290012 594055299 897309238 140222537 467041870 600238930 448259218 540115015 951396482 529157970 959234791 932541857 84775643 355742373 972549255 214252643 351204454 788860811 350269907 944522222 213566197 826479247 133114008 769963456 421448777 512578004 725219320 378705530 476910363 147772899 730956602 123967448 154581557 877966164 477139514 927595454 60156427 252366720 343675327 462882868 16993663 284305771 505340843 674902510 239740732 284045194 121059548 936192128 257652944 508509307 463698736 770652240 377029301 426570801 123034761 750764644 701306989 909815549 725328601 105145092 109544844 638232211 360332897 231762844 173986072 640774589 264701309 502054835 205521848 883905666 126010820 985060686 996585063 697154699 198583833 150161825 920851996 211049957 420939834 463159536 41192932 721502362 380037991 238405307 155860703 354688981 835907055 950781530 794255706 12684254 475110085 639478570 129296822 595123237 658417462 327433909 551175597 965682146 24595549 375354552 639462734 69205092 774765788 464394993 333457850 381502590 113614340 990313664 994848875 57311540 300087056 388647927 472360196 250683697 594925886 496751712 794987755 568641863 84930654 841549458 196396396 862353676 109142192 925281164 221409129 900773755 841548775 835093528 785699818 8069226 734784064 629593877 821428681 31017984 241177112 131434684 928072054 966977995 503058261 57067037 174025514 303647641 194367046 242333110 968820384 60959763 486177447 383443272 293790552 243505659 348873028 177632963 929756687 279883990 927399166 367406269 159584167 494453347 192525588 688513574 356921526 64270042 117503687 417268485 386166604 737448363 784997739 258680900 466136194 282048247 982472644 787739579 365211553 300372341 87987427 288331512 728209770 362551745 978183159 384286590 449752321 212241260 78205162 334551003 887373993 575597860 181968705 150086161 451598369 357528897 246474081 685271061 291421776 288120810 828926952 615304085 185158354 579493270 849580909 12150026 144650255 141429413 758631369 126740986 911765822 785617077 332688760 802731861 331471473 647067237 960724496 704756920 532335546 706164187 876929255 860235637 163749274 83489499 324157107 533251259 649149511 295904945 911126681 690523157 74139794 732134180 631169127 446778066 796782625 180576308 290592061 848807007 928404815 52216278 148361254 779323340 843348200 938180894 708699052 168926818 509174039 106578217 478723912 871043344 572742837 56964784 436646673 822056784 285695317 801203831 157666497 514125717 542770794 367220779 760134202 561218674 202164553 730768755 103440329 945923506 771689890 427011352 455722149 975822160 397536981 877652780 792903773 218839460 283635117 408175065 494820164 649076892 721577516 78658642 688357602 642503514 335794174 385757631 952506562 579961787 776011324 794435452 536446835 304747467 740321226 165921177 576936189 378656867 379658205 604339476 115925506 276139768 488447479 736733258 279919138 739850592 757039078 399787605 294944528 502518064 336000479 738456437 843210645 773570147 944642078 950044359 254959109 232154539 966484095 307152280 769698013 12250240 996587618 176379436 481542848 214502270 86672178 682482810 812022923 676965116 855788628 251072169 465783460 526687478 464672355 343676166 860555273 609790963 135645141 247439231 812481675 64761400 444493459 999521761 224782048 818868442 671354115 513675142 759563665 396712914 461174362 75196088 27512267 385881487 66218901 996315504 812743430 696591436 68324883 72964914 46934829 941695937 51303541 807628810 599481356 809406548 618210473 91864133 192561490 919048993 71544190 264123329 26515990 762818056 900321558 984189682 529840799 41808660 919131658 574104460 671372944 202930341 191687962 38717013 381121816 289396917 41703829 404446300 583147246 70514769 553668060 840641742 944377927 622630579 950501805 110566298 624211467 166225041 79551375 126025506 341794353 877625011 125533825 760568391 547563668 665981225 216755780 386932571 459982543 349067313 383579900 597378829 963067895 99463619 965650837 111322706 967804857 52035877 998657301 880189515 569835512 289683690 804143293 723209821 682572697 878523225 546415662 961839240 598206542 912828397 622172406 88171546 548553526 526093878 989745033 682691257 180740455 258853151 991812431 640919289 942348305 956383063 116513901 773954009 150564947 521889131 287443659 407192771 700170668 676712430 899281316 788876870 106661198 955291390 351737461 228943305 271536693 681879591 909345869 850915656 807205702 291018791 70548937 940980661 40383838 323857044 403547535 663014689 195601068 61775688 364816610 42478450 349144843 429248129 977185983 142435236 380851333 58514097 662768447 844656486 780614579 404432844 320934274 555762183 121036991 70630393 321996766 860004487 388502876 9608591 32707867 964778607 564362126 566217344 492510344 723015595 39387964 147152808 734028474 145668191 81998050 35800926 459445186 6898793 247623471 494061085 111540577 164801486 158170480 37980044 149952865 834082445 252471502 44668214 248679121 94065656 71817926 133929909 487485674 376599894 486740980 786069403 71134986 392305435 514555388 922554498 120236387 550943277 42193813 904349341 48413763 77430053 807821627 14251607 142113001 625371551 198949805 415996514 161713809 896218401 588598718 133048114 302326437 371052042 950019395 675059429 841541168 807315591 186925496 933194866 647081436 812590075 16401090 168581197 708654961 346519011 51629226 817253458 754564215 47394281 775763579 225141288 373542783 343816474 527030234 384789774 54303391 276922422 321031279 35940972 838443781 397189153 968921353 664364442 657112005 289951600 79948924 598808631 871099846 649498260 545865561 341719074 995643715 110588914 910149127 958318275 175916783 997376289 26285758 116442119 381879161 612298340 306724503 822572323 347053655 933980639 214904716 937923438 656289299 390633053 650725637 878043848 685534545 362747531 729942238 909288649 533118457 991547619 991578858 580119384 200086503 175838919 706539956 94733891 308716928 477727388 50251757 610359201 844637195 689694055 471715789 495126866 813967890 259877449 132938927 831281386 217547041 230830107 110478614 693148774 664922290 332762466 12976181 705152790 259948804 515514490 577623576 431638380 692357399 762662001 937701244 9818722 11414625 774739918 240840787 10238905 499039508 33205606 572407151 1588228 482082651 293841693 828978274 921702175 440830060 81105695 246244958 3422632 503392201 327186694 960216074 490759093 185423941 35552227 512268985 667829035 597130873 251078945 444447749 569016 658689040 893785274 674717041 764879475 575400854 363457317 397784432 344503364 331207253 666227408 517443601 455972386 476518777 120313262 803279164 709153238 142548872 412772657 440760651 476692319 858619182 136131530 408614046 255939412 95325184 67838214 241317296 295823396 21247009 533353922 47433173 41403847 34059004 461975036 215681590 133461550 934112741 377623779 700031780 328427844 86133956 946548693 536606910 560465244 197012226 528352341 74408951 713813283 28120862 131727492 401916168 948792585 53111908 777684881 989807626 89527783 577702871 711046867 817160900 562190825 942365530 429301973 357014079 483235385 63631264 863626652 960293889 966051854 198014552 752082348 812352927 301246492 523569846 567573124 599267165 733216739 715821517 663007748 238967075 712787840 410142824 650289688 215817291 391637671 682725372 792570693 206513409 131852545 859658229 975290267 459160638 255441721 941195324 843110968 531056453 8565159 593996598 817352979 808683785 870039774 577001058 22255131 534481483 810685491 789288300 844836395 371457784 405622533 677637315 370450181 340060149 357737370 40666684 898456603 422171065 232518117 935211152 127058013 339116487 645663622 355843959 426430480 545557295 228050290 87081600 178188284 957978428 6257857 389560404 160850452 441430797 580933385 872522986 709658909 59093467 782833795 499438258 29525212 253367815 466961035 328069244 922977856 696960382 957099314 939831274 4248971 337394072 919922428 399444262 377961682 468336624 270960878 898637025 878683550 946349289 694182636 609298047 221697225 831574292 762540695 41452911 901411810 728097944 591202293 456025177 322964836 897750504 255967284 656436762 393459080 111516520 899816767 982748988 108574191 37014678 945456477 879178962 297241806 796090787 828474236 610130640 175669839 520047738 914339485 74278720 606347389 251649271 346100352 189846038 682503528 537260819 673166211 939029952 846803707 669749473 521518530 612427260 243383066 798628108 205745057 451195092 991124038 810003056 670954860 526270384 620825280 629036423 4289276 725090981 672300388 98602887 260104766 636276991 508841636 938630594 235418895 904860851 30110954 517026541 296881163 176919624 331576390 674492755 539902335 200666220 727163788 322175426 919607477 14130329 273018053 180194650 931414341 884966163 85199228 324519841 679910027 878887357 306398134 860625443 225366498 111130460 362145795 170732852 793988975 582977413 788302497 369253276 180991702 55624457 235597830 441231101 994496209 743806014 931650133 845969398 700372747 876618408 722702824 861070842 743907424 936120280 655086718 427213489 813752470 833345331 19322924 153761942 583968533 671661983 543256470 785380486 435669262 784930011 515795806 476103199 864185383 347510905 775791186 777273243 669408699 983655019 773805948 465804190 906554501 665906974 628593875 978166284 19268120 443262429 212765399 473034325 934096656 444219266 650820715 638412110 2476125 318620863 902146770 15654983 406127120 357225105 990905460 672983538 642921179 756906563 443160614 42945573 559956700 57417571 909752144 802408211 354214300 512952092 193191416 943687856 220958121 677347213 538566917 92802466 81368565 978188937 914539292 402976521 790810256 693656882 141981164 131390729 838096816 939064350 950801203 542570154 830139694 718034461 457359793 242143762 866786263 116608614 911275041 979879481 709953927 568156967 753022637 471229657 277661542 707747513 775441425 478374315 620242796 393964656 978605817 928558472 243993791 737854930 897329842 824320393 17292545 577602111 858393841 476921453 326634353 686643716 604417776 968056251 766953945 329166717 880015372 923224370 408095943 940382621 228726528 263394917 412101136 688038320 564425437 847193675 860698822 5177756 440756461 573829478 613596352 66944530 558967053 830123083 309905201 343966168 136947247 773918731 502375175 332477346 264355725 948190398 554072742 890074901 506890716 964318377 347232172 233577925 81596429 968967938 194452789 274622203 140125985 863016236 556138563 407472658 55381111 858308634 322932151 785862674 965855901 532818191 268060133 519743771 995364516 723586464 439440815 702596215 649899956 314685228 531883230 407601489 36222658 316104074 550359843 103586463 844498329 810266063 439834528 217198632 447673583 15608474 446335398 333295219 901066576 807418923 92798110 119564352 145115620 411371038 849965598 956118167 535746921 978667582 965355576 241988531 482157676 206853590 218370341 102123679 766971652 820796000 662856746 549667719 874219265 186722654 52987603 820014570 671657784 64780123 682090880 831492876 527934781 60119409 873868101 667354089 131034176 477856889 709258336 181071623 321453767 800756338 284474561 817464820 416861218 290413055 518134945 51345361 949597348 242425906 958758589 782821318 514395857 261631897 440667503 904179093 285299301 548275483 386292705 442969469 284677187 465833353 219706880 175058547 468688483 386837051 24602901 982689390 300221692 259287460 704344952 117920761 892292748 420442060 748696737 283719696 36272321 654691375 20807827 237934834 744722768 337909124 75397897 696373130 194299707 953937846 50864696 705938343 264313376 294863224 553829665 112305824 168350276 581744703 824990362 892277405 961910879 681575465 827552160 950957808 609936175 531070746 704723216 914336700 720466465 64186615 399685448 405576497 24949544 568514013 416324712 467307406 87769817 7068497 322787972 698367322 258543298 8275937 638504011 240253856 578376097 124059166 495954571 322007479 251845374 861816730 278716768 77843347 23120886 951169747 761032689 962603483 976758459 422033587 45488729 870936275 241247674 553227377 177274580 653119970 509763858 282381074 461487944 65194479 480512739 811314394 175030960 536783890 150336220 890368740 469614144 278944352 328225948 208313761 23106508 659143213 971563653 598077329 838644101 733218724 291689946 405800040 14450882 608391813 556287847 969056828 222200224 793601600 641579405 588929229 535710822 492822531 353168675 80313959 491457962 310649577 777390159 106093877 93925685 757347076 855591323 196333256 757772065 170685233 732736761 460026219 998339152 846658576 568150016 738296830 175510093 457534927 194423446 308795284 428572166 408753234 714020723 330287402 761848961 73706479 645193123 918282627 242070669 523939649 63593696 197589977 952848390 361703020 41252593 723963254 383294306 815372447 484560233 565654452 374595618 465451136 282300350 245129903 338516833 910204045 258667472 717651006 263175695 601537997 140900115 902683758 36244149 239232718 593368083 673470254 889311649 474850175 321169974 716866541 953751056 152589533 124597101 154049929 44629775 300877578 263166193 422855050 57954490 510286612 489535443 755766272 448710533 495189136 39437994 2964160 522663290 261427597 457981701 574815399 395814939 454549635 484442503 317289463 325096658 480760786 835456070 856976906 433606550 28966923 485218106 874534309 388222009 717943562 605944025 393838368 92601204 111019685 119743322 349739340 118029332 503036615 71982597 716983612 341428019 660966388 897590251 951907947 335797440 28539911 806795822 12300696 280721873 675844467 149094086 686922024 971543670 953412768 810799180 752092876 681127063 66481547 728438798 175289788 429987022 964852084 345813627 25536199 45238258 144414817 476260465 925375352 740729564 394558174 831788997 215634019 10090888 498906263 709805581 598550268 914155615 236074950 945520801 853934015 684807638 902719315 934672661 417151869 466247348 434432887 127753137 865965332 710900794 780899238 832847183 109724303 585714702 575750301 884392041 726478846 34306434 927466136 374655728 877719800 199471247 551874921 285982251 16397654 718904462 914208350 23660679 202956987 340354956 814590386 590542244 705428935 104483265 340446351 610513231 190694808 998445159 231158050 36511990 638642758 376298171 330552689 64098643 54931467 630854433 703783883 222865785 632986573 99112420 824647435 881110873 501940661 794854754 153257872 160503798 319117751 584916960 480771061 961533974 780698728 625612757 527459319 836749676 372536338 142560927 861435343 820502996 130603620 433705034 911739749 905240798 783331644 328211798 682524895 248437119 84502715 510773628 476039874 926129836 316620155 593946269 771322972 563955699 641728294 512907420 224633248 973725844 680370109 936598856 146925865 885543867 680957975 462190825 947356454 260851693 343374201 658762586 497295078 306919580 499144736 348815083 43567253 955055332 888947205 311214770 947410107 58771859 783815031 163451386 396109849 680942300 941681206 601629072 965992192 345824959 103665987 886843793 311560595 918616163 327070901 251416924 385084504 713416352 453712332 176228937 3952782 226027541 498769631 410427098 221441530 524878012 161126595 716780670 854971993 669544699 884458284 501427357 417037074 61314091 416367083 894937790 810170609 676425197 749991997 750511005 199961958 242925697 178975545 749092010 181225025 257537936 12749033 868029196 883869848 741323560 982198066 921847033 865488725 664768700 127698547 932314530 520222181 361929092 657766569 917386390 886907706 337407705 328754172 383779647 695169747 855936275 757257466 203314024 462243273 816372464 197635560 419197790 261027247 469522744 717514364 534688050 448391541 763044881 846176735 545309788 603579685 441477140 809003302 245926679 967147928 102527544 524086379 621776028 300966995 860651053 141952902 923618901 726230101 917108013 723394966 378623921 394429707 229190157 424093049 766459841 113486416 260984464 72489885 197040301 469499475 12664885 858812775 330337678 210074064 390348236 598053238 16730050 158228907 939180298 483115357 627813287 175021149 20879376 595876358 880033693 164202332 94768702 728928254 149626321 99926363 718748441 901711186 887927048 806644200 485674573 953599050 378671254 555716930 243680680 350316238 317504170 854075867 184295349 689674458 673123846 399095478 815904150 994524450 719549226 801583275 693698799 502414161 893407428 872125507 947061128 859250616 365044485 721096769 666630045 942545254 948792274 311025588 214667515 168830963 650849171 352919242 731887114 736501409 95595717 713425405 403420986 375405916 691231838 824541987 636972665 31143929 259041793 864031846 422060372 445895699 876472560 272580526 572536938 287309604 80262224 209906193 605678408 43447689 251088955 381513175 152719656 225460296 640275891 127264208 120108428 683157124 303151446 547910944 229726108 639249590 493510930 737276708 54951533 414693390 394870331 494183507 143191637 569919589 234984768 912067255 517773182 306082893 341795783 248519342 141754117 957450457 851029791 177357452 672572164 570849705 6697046 639911151 516956289 23141704 39228050 943397281 413616699 262345745 954438925 405174495 323439297 997311918 614139452 499981540 730146182 359913124 157108910 269049621 947597253 82977905 138493597 949821908 929547994 468780084 984225705 882767984 310622021 639433135 359981303 517508555 134777178 61502348 764710914 488495865 1200093 929248207 212430285 132187660 775615322 146665795 202020204 144006870 667811415 159937035 230352840 350390074 997116402 757496021 668314358 102004780 163307146 689674104 514754090 278426131 329196730 914853904 663134847 246277681 208760469 756116458 765254948 373677275 492870575 541985817 645407846 857675287 976127403 27196430 740955086 322289704 843269041 620374325 927771682 663023901 351324940 503192504 41718892 823638489 766857087 191517223 730871519 444996471 463612668 400574596 608386895 962511328 741147789 459134238 593118353 841472217 836622593 618851249 192450577 24096035 980405383 849147099 945321733 15245954 763875685 439804622 358213642 763233963 857149915 190330898 730254900 444265702 204735899 891504505 20875676 578935997 166280418 512059935 582438619 454203844 845705039 175360416 653677085 489127890 654547218 81967772 589987852 993357581 815991898 626285108 153562036 596667865 978214809 281618408 92660833 113601068 446634851 324106258 22361955 712046852 357950884 73231390 294345494 256617318 652375684 99091820 612206427 743295258 572215276 430794961 962897573 7214041 851415098 157989412 978207764 115806868 686733268 418169920 547667885 121396677 678972929 733276219 604711759 462810622 288724479 810498061 128738895 51981251 403562430 729314180 999757316 808300475 973823895 2505535 295133354 257039720 295925867 791939437 783178910 285020068 537568169 949195872 355616114 972238325 370266427 897586567 200291072 838057518 660358538 593847151 531508531 205183109 918147550 403125478 103004358 146279269 261269450 274309678 836393693 679295636 29256572 413236814 857383115 61388566 991563000 701397806 63102735 425729375 772629724 709647161 791468765 228162707 824113872 134425774 951864625 924830774 49299205 446208270 565028663 914523985 295898761 585200014 43478637 623375223 656474320 310344629 710442762 446839222 437467959 395618581 193207981 959774212 171483897 587746752 841143758 616079956 302211200 963079054 458746348 299043930 626085818 289270585 599301408 767907644 177470866 213707107 342710492 509277366 95428238 685338391 302737737 847823472 125323402 26873081 639706200 798921413 639904309 246173429 825413527 4851476 79272073 615767775 999744741 442566578 350501473 528356189 609941634 992155040 482843080 879936572 578284145 789572349 281432080 362036867 689934069 425683808 580314932 529340277 58275585 322371736 398711376 757106454 905234716 663191958 114575693 99723955 350919637 654275982 447598031 784654305 338115345 790270111 404079680 332725056 65110588 542257725 96248451 658095073 355004162 498120622 38012225 182301061 721915087 541238740 879630980 147011244 496305093 442365362 593943705 779302205 211939286 457205080 908274126 393896751 878354430 682200126 310900009 822697952 338952731 960072279 189523821 741733720 113198907 270812595 533056950 829160048 845371831 446036134 397138023 855524536 269744876 295302169 382800217 227731751 572093658 173880379 560929295 833520339 571283427 329119232 723920146 612830945 992712525 994458150 411078596 124299002 382292838 741441032 301680788 673694277 36608576 656304154 835816647 68781871 485115138 19806801 250577069 914331789 776888135 644566891 567997416 937206928 646926258 780936110 167646110 845248602 438776212 816407505 873582321 902722537 995776797 576275788 980953552 954527759 880638274 448499239 254139241 978548833 556983983 141891756 686509304 921049538 207224076 181459354 642375466 837957772 409288488 438808211 617162961 132696652 888046166 683768326 998159157 137190774 834173232 777590508 884543059 631309414 29927755 174311210 906418907 920768087 211721580 267018262 55422500 239867891 517938497 921234632 553008803 949042635 359412554 793252527 303940306 697824412 547487608 739832023 997281424 739818601 831340796 172333682 317119154 849988110 937696767 444376010 750877325 256081443 436193752 802503843 866331398 562649707 380642765 264919052 599781672 377293685 647604637 48500130 727636638 525262296 383316662 721342585 600317297 512967785 168590782 281197912 350929803 141302426 521461823 750833681 583449343 475456918 945840051 582576247 993261336 808773705 300322515 717060597 828954751 752009483 292332072 618265957 337757251 805216939 292191372 748151463 104621504 190023904 359936036 149796547 129933749 438140536 533909856 301512827 962519972 843313037 447077507 483466765 287108158 143213980 196486863 168046520 152504305 420520509 403450827 77424651 820809859 487427534 427330632 514456358 576811436 467151067 312052104 659014463 373378336 356530094 814062037 763620137 413469128 676950582 726962352 576061337 66250965 714172121 182427977 522971902 812951031 907166740 566251470 553648084 79319297 662097014 227933820 405186007 35412634 68369077 579039632 441279942 251679722 266401925 589872883 779639734 249937731 937010553 662765182 33154013 788959076 772865160 512860394 208983293 878542064 552138016 165507356 846953042 410924800 791799115 432568910 184215008 22940978 812177741 435930150 578686090 859228652 379591686 592261553 871110402 678040988 688789600 939942555 707313289 429725512 694840564 45537192 278789329 702490862 99399890 401793138 319558977 701339364 617781337 599448761 52572415 742367377 10445145 599661345 793512580 57949879 811146812 653249960 430366149 662861698 627130967 157505029 299899153 173903438 839077808 14545937 306774757 924470904 92319721 216472049 95949164 373405654 988281369 563933973 43050928 325761656 123527347 966443015 981964675 380873503 62601830 794309382 775365146 584776451 764001825 487033020 45139800 255191235 119316637 774779373 457009108 366675714 557889663 738608511 989638469 240544699 957181612 290698362 902829873 794346939 849639122 916243821 477543150 156773188 319831079 848464432 250805191 598179323 37555309 444451569 636534640 291575729 351972836 378988940 463874012 753081958 721560112 977749796 235131126 328148408 588310198 152077701 354369606 186101339 193124048 496633789 926342366 731674029 237677626 87861873 914292446 136125040 989490503 930134566 454140751 643064396 11450291 448948863 629370693 681950924 452919484 15973199 291830720 636140301 836129378 742750650 647217487 460301142 74693698 565384231 251198569 24886682 648019901 921800845 775735052 573419501 490733121 405866425 49863968 523538633 122534240 685017687 85262157 869673057 36048767 780222077 669284130 40956282 777792363 660080214 761869164 737293990 732520473 426873681 694296544 849141474 46127785 334135051 331570610 714634151 866302806 999257439 841971439 925231209 829607379 28219756 509154141 159636827 228941127 696578539 313066033 220044480 833165203 365132802 21635515 60957272 377554366 793083580 557405077 898160865 839682649 958091397 4812891 123295146 703382546 578215082 987386308 984194081 934211031 48251751 997320583 133553439 777119720 892060564 137683528 988865073 840623643 793175083 92225959 211483706 919244270 984213415 672584744 930255383 273522839 644014538 791627528 703399970 263195737 209366486 595775552 145632060 877302128 149414558 846151585 131942668 930312266 667285664 364976982 145670499 52442397 145754958 807484479 709581854 856676746 734516763 668055354 308488446 757877053 141356672 821079687 182077030 445829805 771627683 812129053 274269517 890338336 654361517 825683533 750112327 281295503 500613564 568888169 63633366 822130195 759156585 66298454 745204598 537842754 985984019 300108743 5616873 258241015 11862303 509211817 474970912 716386953 82962310 282846393 469976831 296368796 77444761 715618845 363611611 992965520 829508389 532363661 33101651 173112398 695675412 268502153 94661971 888040999 321660390 282415219 343035319 986209033 566755029 121356075 680545914 331254581 752787750 983951105 103492035 907180050 412061296 267865207 351228884 930119057 699751241 234542739 147906024 630178752 832544447 665677738 134325791 937762784 462257928 980137077 829478795 93405512 267391009 609847109 504654701 50454190 804130361 196894160 376544226 932981662 267740946 824208179 369209298 127513377 831256459 432775760 629439050 751169812 928334758 357818639 239204622 940841072 691727726 427749067 889009735 512315294 859937452 441796921 190824622 124916705 21574475 877824346 440017906 40934226 823101453 188583961 222512306 972869898 463177803 331588585 828160930 862253747 560534062 734117809 123632960 772143791 477572314 359545120 155232887 360743014 533650526 395744688 781316430 378754407 326565415 117860289 200032414 394053555 857116332 456481045 576362421 686008227 198784614 831401529 2492757 457559436 292568038 716362331 992600571 591089360 130910113 350707618 691508733 355596204 164027725 67213137 814781313 891411484 93201886 227837985 847398054 975106722 439612739 405823669 687869338 512379541 903421699 198852692 848748923 208266653 58480085 623292576 440195544 506625550 456594580 288069109 279604059 565099826 79749307 302776570 527228505 700677809 379880555 372013209 590515937 964483468 133772792 189363219 554140262 745808659 522956720 943488930 943714118 266337042 315565938 718236691 119995495 862768795 707230903 840131996 289192762 972706069 255022737 938075205 145971083 68690882 209352814 826491337 94274177 397681343 834614318 481552232 174635618 44455673 734569936 284637783 8927894 89490333 572419109 723148369 937138311 677407434 747168308 800269961 233287919 617952677 56412174 16329102 460291080 672145344 313231650 92294963 900949099 926831861 314060247 928157757 136656364 276279821 357062522 50884171 952282437 535366887 185151585 923095626 850700497 152298505 815205301 610998970 367470271 60079777 138612979 963056956 243106205 163235880 203318332 72976883 850284562 620457610 236502560 644735008 587874309 456954495 19537367 69898645 146294108 376123844 802133811 47407886 76544765 475203224 622776991 131335832 730044186 472306619 988724730 306878688 236558325 461142841 481938253 333057754 182563584 632100941 731425886 778155892 741313712 446565795 232288980 828834669 654709305 835859430 130862186 760992936 564872809 151881624 907600003 42176411 252675040 456934733 199399798 986543222 196222857 945165790 911341328 358212163 887642468 52187005 89599977 438928518 255617778 284613396 901875759 128501526 651246351 366796331 93796075 998922254 674767753 943709971 46040865 156428281 427421466 152972471 132313803 548280642 926353823 856875606 222452671 333783563 245336688 225759214 849911491 549987020 561904560 365782905 942757582 198138134 327196986 228472575 518798022 354299022 302264505 907747655 5337662 932243265 61307021 659900249 16298265 25829551 395532454 638931412 583083605 818666972 892560415 305108985 88576321 625640941 78970459 820670602 77794803 608965525 236698719 118975706 431809281 494307046 342101496 876926568 169730304 547273480 466016862 991686508 580949104 163102016 283813290 416922720 418884723 14786701 943375573 218233431 278746075 12312706 402376115 160080465 815420191 492331944 674717394 405814948 655710864 475312491 65190320 876482614 889573286 490419194 862604511 509312989 215974574 918312009 637709168 964307030 862646948 57849362 651336037 9480340 156899064 355281557 66057700 993891842 816750694 617484896 218517105 505372194 45096272 245028465 519101235 86505509 281829809 755476379 433976850 677569267 457219788 651003540 807338454 577146128 419272059 647760980 463372897 876079786 338178953 474918919 853699998 454873055 205659877 117046288 966754022 962761687 387542793 404913279 947345296 749772766 781372685 996001913 978646941 409441856 424995621 600592168 638997679 808266965 557163501 93011534 555716073 19990068 236639068 769907137 420391642 866303047 408141711 462750122 395424366 310985588 441454246 566444977 799324797 29764429 277108855 315080456 89304081 627818699 93848112 48614841 182793870 562999519 199562139 110564137 441814363 944300057 286119988 602965976 64389226 906628357 635727094 302473769 345157098 323306792 524674841 536196357 594015563 959962960 587670978 728818951 803261631 559070221 617438111 750876026 928113088 854020437 824797669 147218053 458409149 911915125 264761779 810241702 848066647 330330849 645055128 994793802 802544935 279338630 382984100 461367753 437420508 404053013 480266391 548607982 893128764 708197906 351710553 966369681 565944600 175891154 23452759 291851542 696499464 377328018 251675540 112468964 937415456 840517038 503292147 25947542 863488910 556951269 408223066 466357610 277068695 693720205 83280728 71702525 130730929 947033810 974375913 542097688 941102477 241071987 427070716 534994595 183106982 829672377 935164042 704874632 357726452 435777988 370151155 411231542 918258531 33739988 894455105 483817270 557044639 673372720 974608000 927112311 287685045 800929079 115917639 105536028 39865647 275375580 667879145 665385397 246582214 406301170 193824367 37801910 619617655 212280158 324010243 446767922 515461996 265637052 636482256 34364132 422966343 289879301 10790909 361146466 419574980 283837279 82901710 752592388 94726681 108562085 359786633 913853344 350065927 162955381 196543343 947612235 753122841 876073224 416798767 562538312 371432787 96945616 357887748 679422992 611227713 506966524 190751253 819685676 287505172 525473936 437079387 991322793 265729278 20524588 686746508 661116480 829476561 877450885 126446026 808205326 804278810 74486354 474110371 952084465 448586678 707286241 943790558 684561652 846453058 413414766 881651815 793370350 287835275 576800079 80707731 994940917 553248776 256185869 334054249 158627038 576469466 228952999 441024246 88411158 646989419 342430330 5030439 835902903 514591384 879585451 521352273 769059292 186827793 887238979 521065899 496649607 516525190 138365771 845039180 574329611 595527878 594744111 634821048 311657667 755981017 686631425 895321151 225182179 910247715 490931369 400306352 909669019 480730306 935442604 737576940 19919716 967510872 716439263 67353294 129563277 625222484 991652756 770008009 88425989 192929404 809855699 494345202 453104555 592326298 961162972 336959362 438414828 381417140 936297881 110544898 225015242 864276113 384596430 951254602 41353625 12214863 639441805 103226287 265014249 717789410 458336157 103620457 467353160 382481232 200575851 322818377 189237504 295005242 694815212 683486461 468983222 797390544 913963252 233219652 779257239 285804773 750311657 727705077 977458964 654628523 258223882 1183595 504724575 235939270 786113462 311470758 787653165 876054907 209091655 84188555 961351923 572659018 787017302 333963855 665576402 703409944 988703297 582144981 512931139 614864020 721174084 621195419 431994642 642057543 154060427 891383701 81417332 978376466 310710468 587271135 46058028 534788076 374529735 45263463 916142055 800171448 454025738 17607037 665541619 90037022 305682199 943265291 530300825 934711390 710606105 737358320 805479537 209590699 484822121 493751136 34745306 943241607 841349471 42186920 866670402 848062679 724121402 711837541 978820550 577263051 782909207 357105501 360281837 230645811 554192013 567539525 977458570 173319210 814671213 98543033 111759177 897436846 762822014 869819437 776517371 756696475 291006 588266514 824997410 700634099 177555679 474828643 606082843 905222093 367283944 133190285 811645007 667334261 890882537 454969016 795844485 166229425 262936941 360949495 330153090 331664654 282603573 671403437 604402183 991760443 665454200 274732201 966698718 383857996 765872778 316252986 621993939 826542846 948981010 217793757 645865068 994138956 981220162 86870493 683592087 737149844 346839788 636577108 324763272 540629457 273038478 195162452 436998407 90309812 475942065 436080644 886918350 626633910 623076681 496867298 893453122 233072411 434193446 424546589 658481950 784926030 462990043 328791480 566609159 317231589 956393505 836208689 310105274 265086852 600427461 706081201 637370166 191421516 51424991 777994127 13785763 129239149 687467806 142106417 932114980 464060339 12121732 347544540 351298722 981134970 102367631 161872871 349176262 562436776 144571861 282236646 492604370 521673466 200953897 769739875 245514875 141222876 334105591 390400525 169963420 746780304 614952355 914109656 617852062 378898328 728806535 995989028 921992606 937174303 909461929 523637713 509173274 232283862 410029051 398863574 121542697 264461781 802373387 431204748 615553219 358602577 862105733 955558273 623925401 715833535 85333795 869612070 170561350 698175440 154275139 962602842 477804263 279580776 346162529 392032334 205997783 260515928 253065357 996951664 426069166 705090978 254463324 677568159 290953852 528723105 736492035 662631834 215396083 851656424 925583389 551089114 483159953 7445534 30939141 421454231 548916199 650035861 816727067 234288589 71461035 771464036 661432299 561235725 65360703 267911772 376839605 935542793 650254372 981635359 458248718 640710176 883350915 433763506 835267602 20636826 772950469 445117477 361525554 49656409 788477784 538209488 851168933 779179145 636727407 353574979 118258850 342915471 332074762 866945531 709763369 168594395 911277608 215517726 494300555 968194670 953575226 735009330 350383698 652392546 369810462 780692123 640078062 360594175 866956298 205377283 226666419 205416708 373658144 59446740 749283978 958444616 519249928 512403801 910075771 455950946 678288224 659524017 451640515 24666746 306270712 812847065 142717145 79795793 239630059 370096342 453631292 848463855 780729007 392156995 849224267 747647337 519263851 745566324 617426365 820040458 734482096 380361463 115782528 26797437 641912889 947428358 37068824 480991462 739387821 990112552 863263336 644987147 594432676 709368604 685553679 597870009 781070973 426387340 546722035 524680793 765578966 452753382 213393424 573576152 772072306 527441191 380867916 601490761 486006451 745615114 353924244 849112120 305856933 68215466 212189010 430920011 793653902 308925985 580758584 28904506 842454316 447805140 53162982 815867693 151787326 37626972 466609807 715197614 418549462 562858785 255648712 145210174 598626692 131175070 590963157 455298777 193087081 571140736 432428173 267386896 143170467 865324443 715953593 672124113 553032442 240029909 491369387 129434274 965124215 37487813 844149827 868420433 262908383 807504508 163063708 189054332 621777561 994078079 613123316 357098310 118183406 646576655 591659113 123184337 536161670 49124263 365555560 28828076 831209622 962530183 564615701 677558830 248252207 526804233 301192873 344553815 446012352 866745900 555199523 163210459 215965311 696135587 188485791 138722603 376209936 434097225 337723087 654375869 154962841 691081869 690898560 974027383 754041330 451866279 916630298 41758597 882845772 501435107 761611586 277003767 720272949 708588388 810891680 814618421 742455806 104518338 567900135 295462329 874870566 82516353 322539107 909518518 209738140 125008876 136025773 82292358 468989149 229947141 100228573 773347350 763230522 828785046 745131970 141935206 802136288 282897077 27062984 242048846 682920725 886049943 899540210 567114147 319702038 713411559 744956070 247940126 759439764 868013930 504714804 222781544 774215395 733436878 498804589 126718987 531370134 896337579 289559286 872315791 867656081 676809995 926185507 893581350 699722409 131700633 787205445 904845494 75018354 733416004 491987782 100301029 814205332 331561099 805128034 833046313 510770982 174235904 879406037 801019928 208875846 12918939 608722920 451244554 164640018 24328596 904389158 126705583 742196352 710261212 897591921 231866588 420346511 672783174 831234999 879881042 842488225 626428304 511782154 23334895 10492360 789759933 463512828 813507211 588871756 564262436 857914555 233480685 648675543 74032272 810654023 638566661 19139049 639607563 709851545 264115809 549576101 269314621 296832767 914332722 972664127 375711013 899042629 385091736 208001814 259856065 690777720 943252218 291312414 977252522 389515862 11532109 217455374 348408711 124736891 723012721 531176564 702931488 674414535 283727164 450371571 765361874 293219399 126058398 131396639 802461978 725589071 788031582 724030623 422523295 715586251 296298930 879919182 909163984 95263131 215157672 740338492 760993342 72797669 684151230 844823039 281428599 503672365 698588052 360245936 981664923 254109046 149637675 803362374 845572581 322461526 47860173 245054093 355608921 261242432 217648895 909809246 189333848 241182794 81757313 671513501 936766210 821434868 564169157 839247195 14783479 654339633 791853767 287598235 277662766 308543904 203418977 838051684 413808733 169546132 199332874 655842001 291157691 185396146 173981093 529014162 35797603 558065128 945854894 871164336 433543805 290472642 160964424 166219855 755894332 270686745 151822655 72819231 735853127 146208501 133182662 303861414 425835159 188424069 91268220 694462815 357531589 335962009 337114301 118867020 67916781 561314249 975690259 837277198 940652791 459328650 622974379 62858303 450123828 555104214 729811766 142468399 69614507 571412398 328807612 9489218 513532288 921858756 416154661 354981322 535471399 830611516 522026018 321328822 924217998 344862270 49516663 277259247 367523472 293290231 248197794 593138751 830419182 673865508 590470227 721079312 287442872 471068469 479589398 619264654 500156611 188082785 184964871 242065103 46334693 467984205 820460351 684777671 429581884 887740192 624355118 224202973 428272303 816734890 126429816 322666769 861660366 270443565 944149156 991192924 974382791 724237439 110817125 401519741 94976357 572212788 339429736 321413212 3067166 229518875 298537210 743033628 380510275 210285622 36030892 619982718 657575790 80996912 264332204 956002604 870632584 170470485 999381577 11701316 661427463 144602763 790615894 180705934 222319890 109112966 63132155 685925653 350127911 44876613 951429083 794970835 103389367 913010829 235321798 509123706 908951036 732360381 71127991 681667441 257176788 614829793 561700525 935875384 396271314 924219655 656079580 41374149 969097383 621906289 875289076 865336831 297161907 335242502 175132202 357552594 349668885 157537690 566663247 134397719 715561459 496890857 576211528 291140896 95367358 164553769 254461507 708084515 344997336 451845124 137163850 28133251 720900114 94699967 544449356 771177829 340819268 528481011 368139931 777953886 821239155 749864031 719947816 35751802 540025050 238131180 806688088 241151818 938828250 883737055 41171049 682163689 461732594 328254824 906195520 84160053 183294272 485232261 825293193 353360469 791976674 127316419 261300508 831058941 196150551 584327113 184129477 263843173 869070184 842847969 118030494 39080686 264197871 953837742 632583405 392644646 796647728 123999999 123955715 962918946 449620590 477608300 734202933 721661860 108199652 133149249 570330407 329896990 699454963 250679156 437951588 570851487 194180932 175413381 522161922 853114484 590612066 273465649 248554401 669509656 978539530 699815283 411423756 713103348 699449825 817752842 132150245 965178613 299673101 392655579 95063726 540133925 138653107 20485597 468518522 553876173 758820904 929108365 796097037 892167455 894787747 440719096 19550665 211225605 263239225 620340294 975162650 327009510 427965545 4472527 841623429 501314217 460196633 418446901 751161186 577993234 370542881 465068284 696813978 269343988 317196539 625593941 639868645 321084299 716616450 729230425 585443323 261200554 16017926 664923114 543956055 157674050 324155553 872644971 561196297 381540098 45264268 364470047 177723905 573964608 753719966 424074647 222883812 824927430 905272710 158894124 718601454 135012165 519409505 233688187 648298440 741692493 441395048 838522937 904353980 233061754 490039211 193252860 501255407 669018311 860567031 286880850 961110138 997253041 12650236 926219662 194665925 334728918 998632705 39517026 444755113 164297150 708977205 115987972 87812751 130689267 589120580 333890990 94668417 650722187 550641151 516653318 600227670 516139721 50962393 246494785 924038586 392838097 964228219 17888449 176969451 589261583 926656662 283565145 86324027 102337910 96148952 145476687 396746744 529314810 994797511 370688247 269804574 660475147 335058336 217558555 963348740 985755199 169038500 68261954 778251374 495711279 709394110 349367981 665597898 230224949 490103309 601329051 366378373 388472232 338332657 576920951 132921187 360545178 516447671 115775729 526125328 750228480 421982334 398436873 553336791 109173700 863225220 708284615 220865660 90397922 625700241 846717820 818796504 951999952 398319125 455185738 315470096 350041633 507025202 714472529 847972033 742606354 455113552 803811172 841695329 420188390 890763878 924847751 560535833 42952774 871320918 211593079 124969110 854543610 27040637 493736246 662198847 754305999 713553770 539106537 255248903 338365988 386786289 515417778 559269654 922289009 486458111 356858897 887160831 399321098 55763196 774256730 170560422 429222215 573519763 649721078 687151303 580594801 51564766 267595656 71198430 275520830 395464429 875176970 451011970 704256353 319792450 827773341 706508150 264814519 22113521 15206355 236938073 852989449 897150422 607332559 45831894 675112537 854829259 889422650 570231326 776689101 960250712 93680898 202341927 838994150 275697212 963520113 526397971 73168887 577598419 686354387 442637554 127495518 913852472 250569796 873286298 227862152 60329761 609227436 340988709 469495165 934947064 457500456 562850441 807809631 361363037 974122162 873119144 693066969 71740944 860779583 632853886 553246645 833732497 121655023 336347742 301763595 100694628 394173065 105138654 429200551 795167532 237673865 24321177 643116482 362298144 636081043 437990661 217696399 720015413 460673449 705841896 787294725 544757038 178161630 861077352 890955611 519633202 413268913 239445682 853895683 683477512 536502778 865999431 262260125 726218603 914208420 738855861 616831553 784824106 635110920 541898024 135618234 872939803 493821467 367059017 668376079 592718291 258353894 641522271 331610677 499633142 979404859 286789634 804790645 613234490 660034129 856327490 141609010 869819824 883973503 807120500 115772916 291691570 56404508 388016199 71829784 566487350 840078853 882559620 386332877 666875622 109683733 247551805 474411493 669516795 411143161 865703623 302409418 466088937 483811543 52519205 476973015 429414764 288601220 244817143 879159726 577758519 832989662 156820245 929980819 829548151 440598402 499694236 569421246 19464387 510382142 435506213 446577742 607036937 377565920 384734380 679962653 287924067 769682133 463617316 385798551 467479040 406400444 348142510 833889803 819597527 859509278 727944 557596269 548802194 458000998 694613126 446043087 872163838 656226510 536011066 356919043 706735288 349152719 922819810 142157911 356115404 296254346 233987521 762918337 245149478 96717043 258087498 981352719 128904109 341294469 259464303 423134065 238032058 439987790 184510577 36160218 849160838 604072570 149752582 146409473 696924572 328491609 999222054 198034071 887424082 332584208 851117138 840092040 18259088 478217848 209567479 869462830 183109004 627789448 15205767 398252952 952280553 710534470 809114999 953752804 585629992 737505888 644968069 836936915 565849767 856438592 866785762 789362095 319529888 361903680 17611312 452927776 448610103 93994423 678576637 671491710 242973213 619357862 324331064 376355107 501031332 401812753 547700078 377189814 726996885 646841639 659161561 792947678 114212075 249520787 732771391 436164689 874018225 668145521 181106309 590808397 274268781 50916623 65656279 865472723 649353220 791548282 26713835 512972980 745617773 133257909 770916326 134717302 232858581 521290942 718344348 567586695 30095070 918355228 643691185 481697609 538367106 105089922 698135088 677340211 298241568 106799295 329367784 716829938 71345385 764609592 891198963 259281517 423093352 253789124 652343031 935205644 409941173 444659133 707869756 195979013 126494634 507737377 233421934 281445232 621737812 580050368 277499239 254867460 47717257 733480318 617169586 453704779 632085176 146589534 629061505 724872906 597365616 175782955 565456375 658615021 698389672 433258290 702859761 438332118 976119564 327836584 786916847 450513546 356226040 818634435 11295727 122062639 145690413 577246738 371029809 894412043 513707485 729869683 502779594 938188378 688453412 206100669 893802049 981401126 715790952 590462698 315862606 364939532 157392141 953867487 917489540 805002388 889955858 103622532 60360895 951659073 647470404 866100082 460535523 929818206 198013628 382525102 939383103 314371728 978552131 4728005 105864055 75183840 54058512 729106098 286514248 628702180 491954997 665679330 570262778 774133427 121402517 741532358 578139710 466817308 834792340 372811276 993295691 646956773 7615023 26837515 736814425 752314605 137395257 395836306 463466639 577163839 337271758 306438486 455500032 417131350 776915004 30183485 906435455 225455290 165574277 956464293 776633161 435307153 563646315 453866770 766464526 40307925 345700870 229805501 871519079 198844267 442897175 328127074 638706319 268130646 206647171 824164570 368151690 373227903 205905204 786844835 93249011 374008344 539065235 310712332 190085581 820007505 103265264 55596146 413444049 221459803 115120863 755714449 156267150 553898894 384880698 928561694 160255783 539368106 285117283 684505812 756707916 500079617 153932040 681570342 645244277 742154775 823408164 621432691 608827153 453494704 329449319 837873023 318509919 391187801 710438962 455555554 531649850 72808567 280887666 873695735 653091580 779720900 799409408 166032191 922058781 211810286 26106980 719510156 969808756 511241733 40960464 496910625 489750452 918313909 899704414 650024218 897791086 256570029 968244219 309655131 625318428 202804169 688641653 320759827 824580750 513335003 136383477 10125897 931416999 139551639 550583857 762408792 94236899 611607148 501312733 627027797 164512298 475278078 559918531 385426579 469414768 993334653 687703221 371698026 488336692 620940260 336109498 431048127 21472529 163815332 1686600 477930118 490373273 70607541 784881340 961652920 939915109 84333714 205913383 137624509 46847430 966422103 426492862 486448764 79602156 37584056 67897649 719621159 295372881 882534804 463752758 551451477 142994648 910882156 288694356 82682808 111661014 910656625 92102780 389928175 640286921 348062225 326997756 129907694 560742545 62580604 442520010 350241686 797637376 220208801 915790934 672271689 297644256 229165184 424373403 120158791 517380478 934705206 310546616 752930710 902035550 821963784 79315424 541942345 192871641 33384908 586596946 42012173 808456386 671266442 647421155 892356109 420644724 34710639 495060622 461526496 600462891 247363655 820643704 226996026 473995721 79497759 942271240 682124303 192228427 497791583 756286215 712189507 958691405 775987823 173499385 739212043 99982383 360531085 887207694 539337371 474211238 676564478 969628399 739472549 675232103 797833235 42983936 203978976 657690207 573835478 339480132 88279035 691390089 5501406 481007635 145075745 542429636 19979554 223679302 470902723 896951716 794080506 960595019 723894973 831281059 900923218 459504214 891119570 697280462 310659275 521359005 863871114 399908962 242286337 202876218 743995502 328091380 692989926 291803702 313438615 399959891 145694136 681998603 801368549 380032661 364477674 208893157 664897794 283200601 853619307 784105591 888145087 128060721 556618375 393899602 279274465 105715265 151345646 689238274 49177715 600343971 371426122 911054633 538967836 238039016 741351333 770174202 307178365 562965724 991679184 618981356 420501664 555215037 74033821 781250838 28372215 465909502 867156323 39262259 833231687 481232187 913304642 449953494 248740019 799311821 720810080 952427095 994481084 452743872 507029941 409507847 35785568 546636001 459364306 72759061 377347818 352874025 7916511 575052247 762705647 647770620 122712487 723800910 680068363 710186819 899341729 313252783 337309301 820721284 965819998 608864746 953335597 579607519 374041865 911173791 785365421 947428283 545916845 248923237 641394226 735899199 892578459 791619222 817027916 603751393 946207459 242912530 388306194 43289006 928002911 689479001 455783698 121121468 183728054 70370939 370295497 993898107 501114710 102697030 781434368 313519432 254562000 885086858 162675624 755648363 656172599 494884153 961006205 325151564 259528245 809214796 378806190 792710274 529328444 543523412 510242746 765437643 399215043 975749809 241645373 376472956 500214085 575308118 410261573 888675341 369561038 773531551 272344367 829290580 220316311 995275054 636139716 462795556 615958338 89819354 629594872 838895414 563228015 65744950 389610497 264055392 394054699 288121280 851702598 806583402 948979522 370209140 262226584 61822685 490952205 808742138 888915793 278434332 574377301 687664546 424239179 624048235 361675836 964450961 138119876 499745173 71748078 215954894 3776786 630256482 263163612 371990479 67350596 410697726 235909695 557458166 275796895 827968356 349545494 264297661 288817834 590058083 95183206 769897974 36601972 433612342 942442375 208434957 204050484 624225754 272041837 947431536 176265382 932367083 521258713 536629507 326983622 891899575 598939336 757119707 464999621 18787535 204140968 447871766 819857028 977350916 757414443 982091980 917786814 252122581 549606425 950909486 621690955 671796361 518591703 902629610 338295751 711604721 598416218 760442436 381876656 988523037 630739799 605969068 457598981 752590553 192248075 588530929 88524168 166654561 144946070 33403162 246471529 668563488 229266969 636332293 346669270 785444922 71408121 260658296 906147976 455861967 682044211 240000800 140044435 216124069 377375043 47652616 815271648 597194523 340703048 131402545 538979957 207629838 806747129 215550130 663980218 617358991 645985368 493945257 907843187 698636151 175335574 906087315 97490869 678764758 952576312 913792767 387637161 639904158 736499570 737254418 797566612 437635794 521830268 842218112 761279267 332635943 444790019 546307860 522279661 814532529 200004534 567348781 906381702 128452316 7282002 383938842 342594860 587697839 242673014 879889546 539400302 286688795 770905073 62507825 56044020 733131044 924552317 57932001 642387200 982305222 671104924 286309780 318756233 697877319 232055144 871359755 762727298 988060610 196217431 140252550 316466758 468758760 582736150 5608694 246774006 590431260 221278897 77164475 786873374 393691893 202010692 921154127 917667608 595603675 994951952 984801744 684362131 217638407 452192014 149980705 986830310 360049079 352843921 5267706 374100118 75559635 585757239 244861639 946296081 676799518 515326696 777332411 534351090 464611946 714374200 616378167 626079699 259967837 499860746 476135072 523898912 83576380 583330840 662719062 631048061 174165619 546818415 489564961 786123112 997919938 940089843 999765600 352252723 346720277 943752575 425297100 995016416 678843235 260556116 777153798 632979420 359549197 128712099 398234167 497794518 589687296 7879208 20988232 952415948 823215369 594294815 227835123 448075186 955816694 844989637 454241203 308973303 507583305 178416347 255988134 326649141 771986054 899066012 928555811 292603637 753679337 575780707 806024693 911731513 455297444 156427110 809292717 519224350 46650114 411657891 746185465 521721888 512809299 166948666 981784621 644879608 233276779 261001320 759547315 808952859 111774967 362129733 53021654 317464960 141124392 649252935 420597353 785942457 778377915 12352077 817158808 221910712 547797399 625717196 428377631 462485738 237709582 49096507 978168875 268015204 959945399 84084812 636084102 411879186 741928033 344309089 286352727 897660006 143505539 348777489 969250969 405036401 725228455 748109275 501658483 926884315 114986959 397213021 758670470 315045305 108809338 293559889 163161100 671720605 950877419 685057452 16367066 233945422 480678389 635444258 241169268 102941565 922795677 827052179 127423087 340856194 390263896 507754375 274239178 383752861 638553993 533900397 257997110 984440377 541791283 392605203 509933720 844474990 184676808 301676552 657147635 572834289 604459075 11498179 460288702 454274997 862686410 830178820 634150501 30846339 769932631 695894998 384794389 147184857 87137508 292621952 762941322 320288653 24403591 785448956 261342290 36290317 713156403 895023081 294247069 629912817 423670433 39572892 129538266 157814939 679506558 503610377 880725411 29550003 248394472 964284872 745028964 81154076 186911406 283490815 580444793 114060948 86549145 241818060 40006421 14080408 833967339 801589038 29142025 561518421 910822172 620288997 33946415 896245787 952394242 133629503 264215721 959137457 860609566 635238947 470159417 873981578 14203629 598028691 90269949 378343800 967890405 527530475 1115350 27842706 429560093 263912160 522868340 175397507 360079009 775512884 304566529 629051525 721393642 277558476 374256120 455442756 569117844 891428992 633894287 21536935 54033775 926548376 150704032 247629766 609934899 246244326 406605572 717618509 526653248 553042671 389136359 638739549 679084066 364379707 153323873 405139522 86358222 860875561 618584874 191114634 87872953 868405286 131335029 272161142 983937389 258119674 801146462 427083871 616741744 602951225 260349758 739917862 2084570 895260390 831138697 558086451 255179834 125271018 91912586 391393772 282854857 385161331 299488527 161048671 686761404 888864575 619801036 115807085 457963105 493671915 114181960 83761945 107545783 808873475 521809517 633176007 747913136 842037496 672793256 706818693 813458758 688617915 176309536 929651174 892611617 177715372 984840695 102175942 438362786 715911953 360757030 827285639 10524503 62823441 933089970 44191807 640961251 740090544 115707888 245127020 421585742 151805741 745167420 648606395 865443871 440819043 560682679 982746940 481257453 406295068 778237367 428473422 64096785 887595351 712047091 177128237 40511452 467955146 197649453 829988019 13864984 259352002 579793593 424579363 371681839 36849019 916082281 177372035 808327947 484082904 408817163 485738463 385128117 689749434 768117174 718547155 745421908 488676273 10863899 448971178 499634112 656627614 754607330 113117321 798166213 914624796 516586631 787859571 263653448 933521877 706904761 647990195 408306326 62169198 801522799 314725098 978704541 185925909 748687167 343131802 400364153 534770449 13141574 541815687 504956221 614645388 310193017 240608540 850183916 771908618 345137334 154009890 111766863 747475906 764836808 317010257 424055219 193030333 940118103 622263348 137191756 652195414 931057475 963735713 367069266 624013675 961397361 519272968 766514057 286966506 979675003 786068633 656081195 653435760 290448745 877874125 81495481 298730306 62167695 54923901 819524486 123164538 435936698 583147842 666337838 514514182 463951435 871465067 187527553 70702265 786139758 546399220 181863025 838027196 888212354 741268510 170803023 646222472 682409033 744884296 960949312 636252822 347902443 743149294 946738676 942744227 954630753 870973746 833648004 703915933 186738552 503153415 895118124 242032533 754411442 417741885 960064968 113787850 799639322 189010334 212138257 80331163 826419317 440658775 602998016 118541560 917311154 650022712 982189150 110448145 308797551 97793801 326431207 848396062 5314770 528928775 362448978 768108150 220918841 688650583 170106031 943172125 955599162 785005031 525368114 168884567 52550542 736607653 755806651 199552195 682197541 270376433 803602752 827553527 501189856 785558748 642203301 826575093 964379264 550159275 258445620 749541319 881839926 245899334 865900966 277736170 278787114 215549604 913793589 827037116 299492527 14783679 759757979 890467520 402444019 621669927 352909390 218345083 95398813 480398454 467124715 215671370 612676739 71734303 156755538 250464851 396273538 523299016 181409487 250876364 534420542 841669847 139615723 946070107 213925508 895225662 141598808 984807732 551091159 234551653 324053861 180712632 592486735 186839295 628931583 151174301 900436313 250837237 434451707 340498098 368396221 434001024 459498937 223885284 804153829 771315525 919778489 697930904 478216348 250429055 797781237 12985021 771117382 362522790 810812696 839782461 654755325 616023727 919447844 776061942 236247491 727621613 506565411 425854023 247514876 355836928 862040023 38522042 507041833 968257328 174563920 613885211 79514155 885799260 519245517 151909899 632542091 456276455 932276223 837986656 31178600 530525410 143142870 4334060 831751317 4560021 19295689 45154631 762904246 713105566 285988503 433110813 994225855 512433214 356262976 739915778 650583887 279588875 394186772 636483624 459520926 718969418 209880626 203834086 668470820 867723874 949860254 94842102 151793749 961737785 797018937 702534534 190314585 122576273 846679044 703672313 677309839 686247941 63437620 772420012 664019178 761486274 22638486 638095798 387713315 975508463 621116890 351122337 846747341 722685919 286248561 329565436 831472365 522935329 240667134 787508441 584187673 14026450 114009435 250862412 796786161 177316058 250716550 78585945 376612891 759370635 896004859 796363437 459025741 624329735 297668191 184385884 928546853 243589982 642567658 870310149 455983604 186406808 145100508 152448694 771940246 844371699 111431059 341709827 614462681 367374467 932236941 137215506 120554595 149103858 882134914 871010472 579602447 10442097 933446504 457778770 406554719 301093111 878291058 278777372 44519376 852619691 563265048 986780087 305624709 895721268 127556975 565966111 382101719 788288282 41699136 84156666 428359947 727966474 310050948 811174658 977486938 900359157 258235743 99020718 456783150 835039803 539790132 639943114 599540166 708487592 872571580 854655662 66523184 74708704 591858785 895904283 82475159 264562740 414690429 783250791 344226108 344464371 145838107 6292718 882156747 902577372 903295914 977149040 483133243 899071271 863802776 444438025 516443652 589883063 951819470 554485330 529794122 373439515 428791059 611406355 231813004 937030327 630328318 294142663 359657296 653853361 129041574 622137308 508432079 515408505 304576625 178496564 7619179 793863338 781086278 45482305 972084993 792818875 567925760 705610910 159167110 773996079 572745365 243152986 325477563 136413320 313049266 893674989 536187058 178761778 318073497 870112041 747377274 99880679 194445055 465323210 219487764 195834700 725425595 135330290 218607705 439008436 539886771 274291742 252459908 526421152 159889761 746292823 832046236 955829427 142682386 10372037 43209480 442305038 899512463 75294758 357136667 202818172 581744705 109895419 440066629 199603093 417553469 759970152 82212787 656482527 483948445 10043913 265219724 963416768 830287221 863994057 224691677 998915034 566456468 410636762 930996963 376261976 266962965 108881474 570993827 652169017 86823548 480632983 930401120 587732379 895221552 853871912 3539323 292825658 729367662 7582004 776667909 52303602 512779806 868195323 603457726 146809382 963706547 935762111 60106355 297271387 503848910 621150653 959712766 815161496 969974686 456535558 609860953 612610261 697246665 884490122 777430563 562461706 316447865 562216187 7397424 553262539 165007136 56109930 838937434 820557990 672271459 192984170 744894293 515683652 785083500 879654026 263789896 398479248 415690369 294502443 819941804 274132905 333471858 608275747 535650398 496370075 908177352 804906069 78734294 902233732 825436584 51615410 379279810 329502204 464806047 723288176 232468819 46714251 52928987 969776355 393519143 552747077 377547146 438929755 826792781 898206444 611340020 710030892 207819256 751539662 990348067 636800675 692104496 885537515 268747883 945489011 702641432 913175835 748166176 632724084 374904706 662413601 471055577 919597807 379646625 466903536 522414877 619894510 643625808 931941167 257224030 520743437 804173094 334913122 152493394 813643027 438281213 539141456 230398987 119228389 140766499 621890466 689970975 348007633 279493640 757370219 225936625 836377719 130127542 485795020 701829006 918946879 505537 59956976 861708956 274969044 960050960 876735586 351928345 329167231 395797003 113936024 497039113 940077556 158599081 73232763 889326430 524252875 803394540 287505759 685412115 641987178 392424008 29085681 468344752 75044067 244110450 688485085 250526423 954104463 583744453 220236593 410979695 744608621 627090398 899796943 499204097 998669985 107862468 548415189 692893376 395693603 209195796 354935325 450935998 366836784 224335224 861588795 96183788 452466898 476407945 596272391 500466800 877597230 626329442 275845139 977867686 839963757 910036790 831629172 306685740 18302440 810188 102320406 902546146 524734291 153680195 575923175 384920009 731777478 483830713 398612860 991090235 450590886 732479932 418020295 513607712 172676056 761352896 997813736 880492286 427125815 452342669 203220528 130363115 131769137 490372226 423631873 404224009 480945616 857810619 583955008 423958801 837979765 822416532 287953577 722306149 864671939 340394477 758115594 792786812 424436095 690736461 487248479 294862608 22080515 136999037 558922071 136993296 437370879 348094082 453532658 652785783 219287515 717183836 188385310 702240646 838191768 390293180 411788530 251957787 57696719 279671075 614971587 736128856 584076007 902365005 411949914 439966317 242134373 726649063 800445080 712741677 829117671 8713345 180009080 748879324 846984230 394009997 945923375 631245494 174548338 671294290 618238697 458014227 570378666 927337879 382482823 111746911 380005078 492488960 852907432 357479263 592057600 244760533 640648046 716378227 295086046 116047125 554285108 323215930 777623868 820132770 201340958 617056941 223875360 366446996 247022271 506464629 138432087 282265791 423263978 727136962 889813079 671220472 336263346 436497766 212546178 122462124 621951507 679317115 155458637 329688898 272048060 688055188 15966113 281992608 296933802 228085162 119835264 266464520 226908656 52252117 472017528 679072067 821842606 777484585 68905629 589480358 933734248 685554935 789798475 609317461 90521127 520594732 761765084 204156914 802035655 460735311 455391460 201858339 58799575 28793830 195254855 762280322 5408393 409455754 194829782 199072482 258283639 15623019 60186210 166958371 97217233 920565308 331841554 507271037 198537459 653822433 403049035 646576479 441267888 608949597 389009346 179292307 493460124 264212403 563322526 51981690 767171456 68361964 799405444 702128330 97720049 11032075 219196802 43008979 328836131 590534131 815629715 538609672 214577244 839753662 971125547 877265426 245654810 882447572 956829558 148504214 271635461 343569706 143871654 334156719 745053116 842189833 224372966 539178500 811687462 54552079 801265867 671704957 44935243 187969657 660832285 990818689 956235708 828128715 904758993 951152714 684800008 143837254 669857911 56385148 30184417 590746769 163587005 292016166 762450656 991284665 762443653 237268713 105181368 387603204 65927947 114330294 200260664 384654864 72648983 348140423 863189085 757479812 241061568 755556476 536206520 67499504 902276387 307047343 442588784 782915471 61694194 908444993 808630607 617378221 511228754 335286405 180725440 57064857 831584604 179416539 6550194 722458176 127545645 640856297 826030393 710966000 960048042 738082879 322289279 459843045 825424173 486305377 832909041 67104725 818548170 384489697 789565944 571701906 668632721 227463377 185341586 791234974 94103118 753935596 600213898 129145998 896065700 694585890 227874634 334738720 200067455 623612020 115456048 102234640 201316410 914258107 123078582 60534539 900677077 119348209 910926756 395318482 940074983 958567231 855476275 688081358 476150052 160106193 324587366 449395766 770227586 479472114 203565564 911024003 370997025 719617483 901439661 839873474 268313708 367791589 597232597 422084143 914926906 7290711 307973100 147908614 119184902 605685011 432695843 498874189 318200378 306721774 51558997 388497527 834887077 33172921 754412811 656982583 484605086 989539236 645228856 109747196 261839434 879795362 110862642 852876413 974258583 975177613 654459925 667171750 458465746 846370402 932597196 864025456 367135705 724312937 798674117 261965829 970432587 637708900 742950849 479399163 587702656 657894275 881113838 604462763 15326863 467882200 924269927 976843367 170787398 285931644 332621477 170948885 884803846 175700325 408239913 492282727 856585646 358081227 795567504 608157502 660847352 717784481 872824946 129738391 694153477 197914166 321097570 181032393 579251112 840469745 813265281 643807415 520554318 456443168 632201169 234999369 805382810 107691672 507465436 652438602 126669322 792640376 345156459 783346021 176001404 20738342 488992467 116209269 550400174 703167487 192551150 781646948 26146340 437117584 672434696 981909243 906930161 480682041 162813996 996882501 132470128 989540463 907405205 702976387 504430461 131232161 256049580 304295063 489143410 896730368 320706922 469657673 865170390 370490429 397501094 698116913 741442889 75204385 244322861 686236005 34894347 793990822 769259511 310918389 324827671 655128057 8979948 429099130 117868479 760240714 108881647 60682669 133296908 502045543 831534858 248935681 828254893 276075560 610677310 90663394 394975198 737743655 268023225 64758025 40100220 365650288 649791363 597838752 177066392 700638067 964689554 966428872 178506108 89884217 297953998 906926652 755689841 91791492 561978871 465778910 225771406 273822932 88377280 249566047 339366833 621396147 754087205 635581621 889242044 849865431 967181011 30997080 467031629 991631662 560680170 113215376 268299651 461130359 989263540 217935830 513674791 130872830 555705462 614489685 68643278 846452836 68533975 180896285 690681032 510251212 109749081 524220128 612664347 734740867 925581442 118921766 92049722 758316594 581326730 643024365 422840214 364261281 21269009 363643242 919870345 518910914 774772949 391957674 279545826 424280600 106553329 11401788 263719313 519239759 69291468 940509 382596330 747838076 440664053 48194419 386543388 778622403 196025996 88335271 912692 760532567 234269944 307077450 966518095 211599052 980299869 603675398 493030919 497633442 950171295 62249354 963315528 348119832 879564008 299329818 33745382 616235895 540539761 26474159 479855515 2461578 197289579 178637450 353901490 122487846 560442906 425478982 551651808 43715573 411618878 411413675 520737709 802988179 934634374 852450408 285650538 8925204 41408227 339575737 313825666 5496718 712853277 806857186 928574664 362673332 700420427 808784813 4400667 261627618 736405834 263927524 578533749 472816084 787584203 767890086 389707176 991930775 260870324 832530218 172714899 988380965 27185467 457903781 638937572 896234809 870248436 96043077 830528531 781907076 622027656 884552446 438780764 705364692 764716354 88619631 538956965 673489156 367794597 590772307 792751931 602915003 852080803 418434265 515243716 988531342 158136653 634982795 156434579 350506709 947067308 563982966 673082562 686225012 609839985 436287022 451156279 222090301 667508816 716008293 934440125 257994758 114484145 4828370 566307901 888701761 499835436 164141708 823682248 539314829 888879142 446486919 748564310 971884677 180406667 163485860 295691073 243554011 319231854 410013361 801906337 693593324 133232778 943209566 466393328 781696427 361419408 865855614 984029768 285814476 332287144 459983114 867572211 522775101 606217066 425511173 393832759 649113817 744557043 573414103 538874886 969191447 488804 693121322 171091281 591925947 184964500 676034767 167143243 420977421 536956518 182901 978637842 547759180 652257788 523137135 763964570 432867491 82064156 869093558 189114821 804530836 40817958 808270006 8011532 505051663 992679272 218559024 73097563 794411219 915097274 922356782 957014788 89862673 293656057 174234063 982819811 900875773 599522425 677684645 805034829 628477724 491080095 608590626 375212109 197932718 224363345 441963619 451251218 618394448 507406883 163512760 321329765 2504311 725055896 539207464 825700653 616022532 684085167 680636820 676751899 602160988 766299127 679445956 332848540 369222575 985579424 819082876 186652660 683920729 315224441 617103398 707476233 725657730 530296399 795239205 569900188 96981125 273610751 390900866 134955556 843345593 233677177 543605321 205743254 169811579 695895504 363128022 66940567 554961913 724468640 551794618 471182014 319558046 985270435 243763107 358302755 904656985 372310453 183787174 809606661 284117308 358175420 698564410 434321297 784619664 454427833 949057034 10503139 452498599 177245465 391458425 242805821 842723629 406817369 10331972 857275120 61470880 449854427 756492091 763603283 662310145 786477164 631501657 709670195 826415462 111602164 643944671 592363050 905466180 568762593 397916315 315371851 252783347 961109306 986536526 902919527 435070743 730997556 978877775 115432025 325131411 27658803 204921251 972267937 346588334 137261012 835194696 854757974 712247882 176659099 915430820 944670410 914904965 134370595 91414004 939551175 149400662 737673358 505915715 130854031 532092253 468342384 889968453 517341043 972867966 225452958 380567234 722401986 891909354 501838714 231904808 961144043 602780694 693249994 684238232 922230843 401768662 398587792 884837156 195686892 688596473 186332339 729758187 785030065 614524844 41296725 983854789 770395927 781406079 281168643 260239158 469133091 509607294 774309313 175977681 286193186 179052533 818345707 754124930 548117717 948198403 586306746 619705183 843179266 102242431 699472095 70213209 982539133 991402695 620640486 514387804 784892878 93708061 251400773 185429870 699715628 870941781 15780656 994524850 377835912 900145384 561501755 947845394 90751403 493385704 528825010 427316927 444520227 890259321 552307058 593281364 714253027 351029766 674091836 691469570 489857545 403278690 15497136 304494819 287193210 488883676 290567435 314200452 168128990 579811693 236940856 662377256 320690138 432334025 235124144 177051198 356129637 430513740 239828041 185643646 637701363 293212045 744674174 433536481 871569734 437054636 488884711 575201063 660816310 141931650 100784452 646114104 829199359 725478705 135488168 246375082 65158077 871201342 543109786 386584760 562996313 292498721 134345505 718329405 676832528 242011281 365378452 90220719 151185203 347513524 421968767 904080528 738957023 827974240 479472549 31877656 351965282 105093907 766657900 173205562 915181432 174146351 765481564 573030201 311022416 945593732 217387729 868463667 178838468 943348473 416878695 284207441 606298302 581700629 680583528 684762004 733036810 462860865 613410964 845071820 118932456 205096561 212880009 358138126 472280510 419358692 833687014 409194827 956694191 181883759 421347871 73615336 729443455 655778184 645587402 160654226 614900016 955226700 535535450 532741817 144795983 373876866 396020440 679072235 849265351 690716668 431046020 720889597 332573925 908892991 294885865 756760727 712558966 303278940 412420869 508943445 901765131 50802007 218489351 174924640 230642439 715918405 394248309 335952804 58374078 356630128 956701556 706777986 431409687 168687471 135327263 91855942 596995688 398774733 411498415 922854219 944048494 729207580 823207098 91767539 635568349 309806477 934596542 774281105 585149381 923307422 774968133 631054371 336566937 267802649 718982539 512968305 559965920 247435190 151823383 405931550 516987846 103482345 726169305 987841174 598305297 163295061 505970293 491847233 760408628 749229622 847768718 68891695 688739354 176883192 286124524 950800664 245780136 60227491 626359020 304296752 114022002 508825890 632797218 588658335 326022473 734087948 418214465 909679045 783279544 306746403 403563391 753889417 557615461 338677821 573602125 59742354 354666648 700739547 827078787 185033956 910454542 211739562 507117414 881640461 565489102 972528393 750303054 223789646 989190445 805210646 563224692 378578200 247885949 646209982 645266410 120499615 356768655 706767544 841844669 808349141 297297068 729094734 339680971 68568783 671788551 451139863 168536065 363745309 697019969 82703728 418860271 854351211 922969414 22822466 264553853 378337015 105439700 913224152 121481124 608546698 440559561 76022299 943487453 691428182 104910882 604155318 916870140 241110815 11845435 826709900 236877567 184515404 706837250 572000586 940988731 817837036 537928287 824268730 228806626 698320205 724039910 370481360 622067207 375754099 182518923 666224075 666865996 442510536 577124121 155241261 67324252 70297806 230661398 19524860 938770051 489880056 988694617 930886464 697494657 816653362 594492930 608713537 427520284 829366684 927293898 149878844 885033901 132067079 57633040 731346983 531503579 658838381 883402991 490970905 265079200 330828418 139966309 348668446 914506278 893008369 969860086 348385582 238791893 980410311 927263034 681933109 994153559 92373808 77305104 143866608 741624452 535391509 649771152 641079074 974423873 465972042 198500123 819086446 823117181 879544060 768440440 160411243 652015919 129391593 482049419 684568981 223695128 691742930 383554617 110280892 830466871 930322361 477357342 913349540 588349475 114861790 995572828 284816703 600009439 340649881 209300363 990390866 37799649 484538153 250151745 675641465 894789570 821890680 875137633 372619681 663484763 11344867 735185248 103479210 388242355 239654496 381404230 239265743 372090383 564129022 989277842 486566963 563778540 353541827 582724775 889023189 858316430 569506578 842906654 77125725 188669342 881212810 976044026 322385902 134814761 955543350 523067263 665847404 931979475 493298002 153497773 732464356 327717390 737272983 297832567 900182643 13025468 865140611 612479732 611815114 534792699 433151613 390858707 701672070 352385235 760212245 344785887 726947615 535818724 994393371 662960950 982329990 914978901 345068273 62017856 408060603 34845918 516790667 710448665 684732444 736055519 280399756 316306862 36378264 333299991 317191918 915093628 948627924 339589993 899021938 622765071 818008353 378957868 476884721 378124489 851168311 627367989 212698383 232900750 273847090 155894402 653932138 818342641 692052661 607579818 27729076 675620267 774796507 649898657 807670689 508329094 182732762 961731811 785136475 307569181 357662227 184711368 640202411 631249938 426179654 840198522 54722427 916039552 950645869 733426964 95140973 845569610 582012087 352378149 872485292 157687324 112886858 247202259 530089577 415295748 476941314 104983543 39844430 81445088 59049594 247231771 865239228 751727950 701040236 751032211 431269248 838679005 92977164 212921190 545528975 276881794 781456940 630170600 2255303 958675251 817361464 409213677 338401005 107065748 102486917 281605165 453324720 695080242 472924986 77084185 142111344 263569233 304937438 284955917 204490039 927055563 995064768 812356042 864309953 351734844 503369973 690871543 208691851 866197231 855163054 129721724 3257427 527458859 855639023 891934898 218351937 955672945 757402922 202170310 865610514 281936072 974190201 289930160 900366026 452022570 418204063 705716479 57419495 144152828 702795933 586845887 729239704 238567060 788192585 180198257 544168232 685699516 690902324 177819845 590759213 258946169 451435156 287347205 13256649 381111624 880905734 2064679 768601848 415743014 77559415 679832855 823375792 469086542 291435777 738532019 860874359 334281617 2510505 763908042 77957394 282892636 451100224 771646964 102612719 779563587 528268253 285938983 95957062 868047487 695921879 452766820 524787533 873260049 383808487 138066996 310322008 696168091 305497601 130127759 737574109 248958648 563012320 726869337 76984209 592591867 515532307 472211487 497246799 301092723 990940923 523728891 471466326 689515081 424221589 411402305 225352347 219885373 637629616 255700325 247799909 873106285 691621687 161323228 562665246 172772619 686996799 330738797 785724247 830555529 178700217 322049884 498657117 736624444 997790040 228647001 645431352 81950746 948084846 614045016 508075654 467242954 8344425 751446306 263227727 660559631 754443847 448984636 946617863 7584108 755422647 165788945 2750162 549530409 985102454 579703903 222105031 483550859 186768395 458884148 737487327 691851974 983655740 626637309 446681397 167879398 674048397 98863890 560983624 132825853 264992041 714796423 792432883 575371813 878521625 450546032 801385743 350551322 807087359 19951031 335842825 579841375 569038589 320060882 928115217 265032890 675962276 645608024 231347927 161766119 344080886 24807065 56716360 362148936 157286095 93307611 68544698 771976591 676712690 193086876 424135892 140559076 152359625 229380193 986815101 74650276 573745526 391042679 129825404 465061490 311101812 553375193 673736265 788088387 365673277 906996975 568003998 428302935 214430342 880144251 438390017 679775479 699959326 109338253 964393068 444179959 164847934 362527283 26977401 188632841 154005944 552941914 322728242 347591098 269314246 260739929 830225196 735084934 353566037 863535784 789367196 439793127 577815429 37652893 224144745 670953791 873494362 849795929 761142988 580243606 266464652 541863567 894324628 438046163 401597211 65739608 770217803 664503388 403123491 134139755 350313697 385103379 582223593 678525319 314820751 159580730 607653114 459281382 683464826 476519913 564716330 723161967 416747607 313243716 922055212 616869976 245159783 421116376 248364556 938915618 89395258 463532101 177983085 505536949 906648329 339551735 845284644 279160983 679840643 667033690 213907729 890295039 208885264 694609233 847978975 901663787 899704866 356972583 208534206 394063724 339851075 498554052 369356918 795709413 28265533 591889972 879816958 786444923 671404783 972028397 365529586 428542944 91301579 535907567 948280089 791759316 416074839 153751877 415498391 168215542 204105623 406652040 533487676 944083335 545608411 801234424 118438110 461660149 526995284 180830213 80879086 399087335 41168060 768467154 642140559 9096896 373375613 141427448 466751503 208046671 392684053 598226066 950214503 553768438 150998534 483233393 875902236 454168066 754858000 802889377 459230076 594445251 784340085 172342448 430969327 14701401 200313218 969278983 831060774 517853752 380066780 323275089 765940720 638596814 305879002 461539024 646183293 408327560 965555058 146822528 627553257 368566827 262572455 793432861 782601304 633684416 220610286 562310958 624911398 331777040 828984157 588876956 99496548 795726519 277078152 880892909 937688531 907657433 448597735 460095225 2394436 977394682 339922603 716230557 410014585 663808510 790596768 281172149 406646314 409083670 860125945 690509949 612206420 150054698 335842196 71437915 938947466 428524794 935795399 984610481 973676055 61649860 984422030 495571815 767159712 706127024 754953156 456780812 92449814 841005545 507761854 277832973 563285702 982255922 433078936 798697010 103058003 726995381 629509452 994658392 730208844 66867886 465218252 990468503 544433835 659129310 492755839 520732200 226075424 240204185 186510477 104461709 928298756 918128159 585148742 166264404 64000376 871958609 49074551 847603229 84327214 126471019 17826642 595456132 245857963 410537209 781067498 550848325 164392295 784986242 780046759 542096962 705455898 583874526 932276026 616151615 862413255 639641483 329204052 708778438 994463422 270035308 857305507 817104867 64874049 983172853 828991540 173801546 373863209 381648843 598740145 323862144 523925495 924614541 372260703 467953982 224157875 822923776 251331760 463734732 943147697 69325179 249565928 792535985 667733014 41010038 984586272 685558411 538532321 358788072 490169917 141819576 288091346 241243700 71838456 619817391 41629925 556554346 74716453 665565088 27482019 15364421 1097035 647823079 214934725 365702346 619066443 841891765 547399613 244492701 535287538 136542925 746948024 341857963 902382385 750361261 316543825 333450624 642382277 399966081 660059902 700195114 417867973 583940181 104473127 935527262 363944624 394030537 579317527 841784612 827187425 740440102 663073312 960508457 979810512 490947297 536317625 253116881 274979665 256129806 933916002 855184726 574696093 295472523 881628182 986193488 679271917 494849147 167953961 429422683 267263250 53904544 227137762 685606561 259124653 92703667 545111620 410277398 450852867 66974551 409487576 179748565 439451248 278635055 213317130 580640763 426302069 316953174 742786834 858147581 598756384 715845709 407886591 195871020 799495733 750733058 510845648 219512674 572416694 743782237 578831976 588553999 85422860 781347166 30550015 332681948 526499852 126915827 984606801 403723739 933843681 672251136 23259798 511380430 958255784 497040748 490812452 645434601 647923136 463714366 754103523 390240388 470508354 380085988 81805435 454968820 960165203 252177375 808002068 383083796 934602608 442543028 879979154 69192614 890898385 946795059 267335315 888405898 489907312 398960253 773297674 132730429 684841833 13432695 192132472 580853952 580308622 725063147 4659701 244517003 65168230 110803869 994991796 819767508 40587035 250738152 398001217 219922775 951381211 906368801 198525755 939893515 112740761 984554930 502831851 461932692 384119107 450150324 595693072 90338767 979442360 988960974 774814383 156482786 366977169 309410037 989113321 434744813 571106072 649622548 938225217 452249658 857517185 780582345 814152018 21457498 729533941 21389754 400827925 59278951 36616445 868229747 954066828 501403145 503355691 863879482 244592606 80847556 83635165 894116982 476196118 260677634 133089459 455533560 925707996 114059603 71462793 668431667 325616047 358881726 168857008 625755361 825244315 473788256 542772194 887966699 220723086 677458143 891652847 368273639 389353881 630319636 645182432 919412724 738923256 558291990 988487289 433900651 27463565 441789431 799094534 158010649 932252343 337060715 192402116 429128039 259229186 668895498 804110611 278593666 795847478 628899345 525735455 949923294 900064193 479077819 889173541 18413022 908393240 601595022 850912650 988975197 414432838 388124911 685372073 520617760 693168156 763530358 407044052 665053032 472970228 980935667 222332205 845313523 282470639 9302212 253873988 34695395 456713799 205526142 484025296 198515267 136868749 479503024 828199179 212046485 668077398 587531658 535932952 946005788 667035592 563345559 389636833 400661349 603052971 307530444 863790149 468908280 767562685 299797686 479918820 557951770 120278575 229806163 564675460 504727971 487250934 184325684 724481021 70499307 325978012 58212299 986753650 291537122 430124015 608377054 557420894 197243412 497011337 249511723 656237731 861497567 771620180 391586327 965464344 415620565 557163097 2659675 62599687 783193313 614384781 721437533 779368598 800146961 164838188 482898048 928790444 331006208 695017109 171555497 760240026 922249309 66314494 704080956 909013328 672740872 590389090 223803426 881407942 298448865 236380571 462031341 539245386 385107934 635190823 922240106 339328729 889385659 792233079 474388344 50805233 588953265 987098577 708342890 363347684 915146670 574045171 603909640 743724398 819131457 532296295 785383223 180897851 7536356 821487358 763625091 463076934 128301110 370757192 247059883 231763905 735220719 874133634 372391640 451917327 745727406 67079336 41662367 640979631 879402335 790582139 160799401 686110614 788029277 313917932 209388815 313557802 728373411 48370239 802506601 265817054 619603281 290276044 445635265 900965297 682985442 38093953 871935069 711923598 767379614 380939811 691833405 518341642 425581680 968282605 91824986 67084101 107923040 166963926 467436546 422653368 721289759 773573429 537788534 694393138 399657867 254387281 135145646 537630550 332889053 137489710 112611050 803127314 346319234 274008027 486384458 575945852 589764433 382874064 380988809 465247871 37342952 675987123 590904284 713169919 352635104 430489614 362162126 679731080 698491870 501859414 118399519 961123386 120340059 530820378 240598532 790536243 911752058 283282950 970223080 670958403 627987833 332741767 320346166 112478156 231921490 401498659 278982300 442421736 537290983 216241205 49600095 753777035 637587204 605507898 299777599 245822771 200146370 959816285 868785114 418592585 772919455 860830219 247607664 17398722 288976213 74957753 361887422 284095798 236481575 499396497 142183878 446019560 437523594 544991691 225458547 759014246 746173137 905509987 353332276 1692825 440189302 2173848 793812911 707480698 943575340 923655571 723342835 305953796 851827 178091852 720229465 656457537 642682394 113106838 556530320 62565645 576559239 715879674 661504959 718626468 568281539 638290078 2348259 304744591 590196203 711631901 594125942 833983325 299618402 648898365 431388493 803501034 523975337 587966352 28426674 180733462 929547917 455144595 162108805 189240755 468099961 839132519 888408218 293427782 727500553 287371540 737938032 9568305 739788827 25545346 18953320 700743539 719128362 907034562 417057438 555254496 643473873 207771230 415308963 407854472 950203454 97163976 96340027 372699956 670859621 664800975 211534959 998489423 949104556 637862271 942255752 150351702 423914804 323078115 597234604 679158323 497641409 951449521 512380800 279779137 708612314 342659808 118044139 76791885 75893544 544028632 554240372 519477715 578631467 443316986 24181878 573242089 786713449 387144865 282464355 920619224 455785151 437257318 637583931 888356043 48467637 238504849 493575892 876381687 259992309 477889528 470936767 319370363 794973434 410788219 493383978 55438292 866408486 383127452 533797077 928549179 181833236 345674673 136165206 900167249 434595845 16139220 702711261 250090688 31289881 861402673 280892235 348161482 722018862 654278997 836173787 999114062 73842788 887812275 31228942 226263587 519020993 505359801 34444627 234879184 852342079 819023913 73033309 299610708 77269546 549442674 262321885 836184325 864044028 240797727 591842995 264032858 382306458 510180263 632225838 397564985 361197648 781724167 427237669 9241164 327856272 705274507 36787470 304611086 526273664 46797446 986762949 363962747 100773576 593320107 396143025 99037407 827501073 901186614 823475010 858495549 87297113 439569069 178022100 599044229 559009581 626074752 227543282 142179919 81637646 20707827 7067721 901133302 589476352 423633233 288773190 613650254 844291020 839895243 995486144 277280275 26082574 888498586 168805134 500041958 732860709 869368584 225149327 572673972 836652800 359767519 718546096 727192921 718441772 346932833 642159806 215359083 42952000 539441241 9631509 169603818 165188580 500041731 495343534 172751770 924615011 427174189 905407537 837036686 233493159 686163012 811357927 579931034 489678597 831973992 79879188 807842411 696917348 717700731 885472336 534285000 582569399 880769169 480005219 837801532 505784989 145850473 756194086 411978273 916419449 811005314 834993526 547134256 6312295 389198024 570503501 689051253 455086743 789285067 754080057 791041220 154782093 347432868 56176531 803581927 836992669 971923018 742129851 371234608 395502068 121915585 366972918 3954572 735030878 825670234 192801702 983440364 862562570 918348974 608819000 68267799 240722920 89649193 220631873 992213432 524104152 797669041 4664148 341078561 460686262 783491095 454556929 766763405 287745764 551139482 333243177 707478966 684247362 872225981 595477175 607741281 52077716 416886779 987570990 66511353 937054538 301272156 347726198 865710380 540702545 153767898 64271185 823815498 157976691 217226450 728978537 134765087 465898764 918732274 233048644 68376435 531288231 466279408 258535584 689261686 677633769 608104783 701016507 936449805 516849673 560222685 345616040 476259766 766219877 578145959 716241034 871194635 153279199 441889697 521917968 591023082 435396610 528290709 236750928 990024361 575945780 24241785 589841874 598493316 783018039 658593074 212728877 169324187 409312520 175391142 17416167 58289123 587590155 8688540 873997426 784234548 47663804 124986446 446333508 397332006 55159032 319981749 46487946 826352065 502050270 777558869 117467645 160342569 820554983 138414649 727854000 494118213 504774208 146369361 889080276 696071016 328717810 996259921 998400310 636624056 436028631 947076463 600866355 698692492 546952076 11656083 519767539 364626600 335256963 836421119 446151276 903837258 248180672 234049824 308473417 146404629 918348486 390752077 166449589 153713690 76736759 740948529 28856576 266352969 422518324 420053568 501629489 381833819 584865183 160373709 350411080 63926240 706041167 388404528 168296839 783757304 760931647 530619144 99889449 179662194 504413319 178652344 774605625 882889365 74072866 646916947 371939891 463513958 116696196 986640565 289872875 249944118 799146586 690192875 883307670 464464440 307235484 240642999 592463877 604105921 776833876 77856424 856907511 544042753 396219810 78232446 232097676 296499421 993426448 329761081 10433651 838330637 706941808 609558025 536752892 617491265 405955011 238554733 733281241 904989072 75751292 253287811 788119428 683127415 154256405 818410341 177056350 856405035 14005006 149574556 254856665 556097807 529164310 686222543 964436805 40778391 886038841 359069977 659629070 332281414 338624700 738324862 71269129 840130510 519937733 834603186 885857773 133744878 484953888 440478108 654826560 740380185 487303905 99099214 107501528 982647214 643390608 721434603 572284211 870695597 850349776 997574051 651515960 531618181 961758358 938051448 751629596 757176164 270064332 202902200 169272968 829972102 755109912 851909124 315681893 99258367 578271159 606638423 147765766 699324260 589120077 403427784 579660047 753106663 685967279 398358697 118816858 850385129 615958544 385739546 701638368 823227472 521555328 688543043 657528226 794675852 166406656 146069092 401290711 152493185 224742595 471106693 933836977 86653818 764492934 999476641 592416269 56830737 385587043 926627883 354329526 354086369 293762630 38879598 470299513 581171081 108226098 825812321 727062797 477107045 213080250 795691290 329570393 934459780 855384896 935882423 113907940 585319058 654459397 467123925 61103825 730991656 835094093 855034916 510118667 542540077 137077749 877986292 740410749 517543340 182169220 398922346 726022862 296032827 81061082 347114521 680388486 85700563 21274399 809697406 260056793 686416433 402715303 228377466 429371258 17562504 332520806 175125263 697116308 267790712 750014631 73048720 794358924 94158798 356537983 46597357 261584463 115613050 349833594 692879795 195241023 472629481 913384057 48470491 196249770 496434947 452914922 323911389 353361669 82554528 232178083 586483974 331980070 701090347 480829222 478014311 849081763 334915521 726507905 43069811 362644831 313829392 551583281 861553132 385779121 987144814 553223597 88984295 245161836 113970792 950545204 802314758 595655528 100043235 979260849 584637926 209200713 814624080 92710188 30817025 990190581 617288961 49680781 464789191 98969327 319970784 375510332 182432619 834878436 554228730 262307828 52785884 394892070 167807895 467370659 288199264 287239902 996571304 196391794 670626837 456817777 185090600 478002025 326519622 704118893 117243445 641380850 478141973 393427049 417929741 459633667 144195142 755805171 346920408 135811948 195503836 390360328 445075308 738084182 767667826 590410740 404940290 135182560 97750907 284845736 406738018 10293190 387453027 782294534 274920441 588592811 56640292 562552286 358344284 593663764 554984913 29637676 724640284 527215686 549002207 523422940 755709988 956468275 105786488 906957602 162124512 737430058 154924573 411488809 885635907 380635550 597093864 445468518 230625225 778394530 369327513 433851706 293367274 918407268 40608753 888319087 86836571 13004369 31783402 725667762 666297788 430100550 608717572 161060143 761715408 307924181 578743835 339953377 686144765 39248871 265682817 384989087 567328919 342368898 532508545 786888999 644483362 67545046 343117826 820711602 926475505 164920626 339675929 684932771 581582899 216804076 639847228 110219297 763199423 374827682 851734920 191037463 250431325 5960579 684131876 965486226 598773737 683327341 491023210 931380158 955276673 158944618 406901116 132885476 703765272 407688714 79209689 808530750 167465207 884235799 581968521 454349620 253517877 276553567 139200276 147024129 996938008 850045859 25443062 453981538 247864192 479938281 458397780 841152768 558424964 714865226 293710974 202562911 376773978 543211948 981846615 78815235 219858354 240825859 300282547 907968212 381040369 883592077 869367968 535706003 894529067 620353899 251546840 95586811 763179555 12497667 637231295 698192549 56796012 686424944 124970546 740051221 933838334 288728882 854590495 802817296 82701569 656185539 246959831 248546416 429890309 409557361 668134858 442740936 162304206 614404163 674699915 3666479 113617242 793100865 182633046 894160767 828997842 857133702 261519588 551397456 843136625 169219854 842507387 754254388 363869478 588931154 564845764 572536835 170893276 524545839 823199425 40988768 27228768 449218550 207298444 966413211 738145901 606677241 837446291 127613949 831095644 497169206 786001414 531128830 657028380 674730244 710672780 416616958 928369802 869320745 470985264 699279960 301567036 261716557 759430087 592157468 751854159 377881366 835448543 971021607 898300762 403776897 782472923 59765168 711924369 505439769 577005363 717110432 334321929 34882230 527774275 24528577 479145808 111889091 775638171 171253847 404597932 372975103 193099237 934678359 986222536 885424764 387447052 995583170 274232312 380539250 292890192 14337142 353075676 22581674 520218314 950232210 461744609 858126663 554322404 172132614 227896951 351691196 633800360 220692898 846100663 513938544 573420769 308103444 46786749 744417447 365504238 562167523 587710127 328903355 605999520 460508868 804000613 610690110 524204896 357257518 715692667 282104384 970565888 806517096 467954200 74954252 702475161 26499398 384674193 788357422 874449874 393415679 14687880 384090368 941465574 614349155 745402036 323396693 88475919 331875837 668867055 635517106 587711885 554680153 811830683 448175284 432604877 365822428 204703529 378170895 413049846 246617549 911570109 256185300 737191521 430946006 816630257 450077202 336076379 763734910 129572780 145139886 107888682 210246732 422235150 551179702 930382589 627137682 703791357 597093050 486873918 327792249 154728104 948512931 25448465 436745162 642995496 775137966 448418917 906892550 180126692 750061954 367625626 201868978 652794288 446203289 968494628 331304891 383663341 843631686 130470692 475156600 305416507 912121928 716928141 300349333 673742149 952378122 49003356 930919773 202007974 34848718 710432468 20259644 465803600 167497929 732387502 339199032 900119337 989389891 597202156 498359906 815425915 793175665 832359761 807118450 437826830 144006049 666415016 546703077 334779576 986440537 781233056 661024229 759971351 231663371 898542708 236017793 146859732 547820119 606368793 337324490 72189589 269502772 349637447 112051818 782220306 7766994 981178839 509764061 347000784 539897870 38485886 663844613 405023289 292545535 460158276 770349152 798127859 797954416 902596996 243879140 460705445 3296910 961621076 509821871 67566254 608905334 746198353 768028581 406472668 390095002 223259159 117709376 68272785 918324984 693905123 725535569 578924793 534304612 563284128 910121761 126685960 597610333 29039486 754563395 308996455 758172903 429223950 240840456 109089956 892668694 269474240 888515987 26903606 654054041 206168880 751956744 878994898 126391377 8368963 730852185 986184520 866727441 942198467 435477743 201768220 412569826 843371152 757276722 8868672 405018440 454779579 442177509 542073659 364639720 464689000 718774545 424133127 288353796 856592722 839937334 991685182 910966923 588748533 218402466 630906551 949671938 714065723 412616902 502206824 726787317 831192548 293549156 18395608 524419823 208454458 128069183 694190537 48897228 12607046 120484380 640377261 271762617 994701736 481610882 500393371 273917966 810337155 8162110 502275240 719054197 805437528 643649146 17451273 62705102 477411380 912608162 867672666 64132448 382261981 400913095 553393665 507286057 784328019 902454468 116390074 745960152 365357105 432833752 529128160 338725491 959902616 434407987 936537594 342683527 444732047 499620726 52455654 581422830 723066153 465906761 407622848 276279564 925231944 392582875 32782586 250778897 994020188 947445074 260693733 244478353 119175360 161068021 277264912 692058135 18299792 653090333 747170418 725331107 649117022 354411319 724461208 581097011 346277969 775579428 841444190 724147222 533607684 676910760 822032620 975869938 218860698 246311529 156528148 644821237 951333466 850195584 283897440 965079041 761650421 223895972 288394699 797152100 646936728 238812597 112072087 339083423 597206416 566899495 934954119 497255727 809578929 749460025 598168502 434322738 980251950 264009012 829834427 895954603 666031176 904875639 554806812 612240878 469193918 96074114 661968877 440679259 341373028 674892760 202180069 408295949 379778278 708337315 301272233 971650194 979079816 357429359 974764120 433471728 513854948 590360146 629015139 634648674 758756980 563240743 45741853 971980871 665355349 492959516 481407256 975215280 784403978 838295217 1654790 861730400 634882260 432717840 350133303 196820101 420959756 120390094 709664197 555831281 236726749 138953553 937722043 226373540 538793764 279776313 410598270 515525020 884118573 606067482 9450062 410664403 971752764 811956812 397030974 372750653 647791548 745858653 336922648 672543348 989168599 924394616 925417204 186151896 492073564 220966046 415395499 886262342 657029324 968804865 2315683 525638034 40725600 849177880 504736587 61167898 626477887 689776309 439497414 131762323 30591097 60243608 892604938 910993326 800979178 64406563 364400478 728094762 491887447 84583938 278310015 53185481 109767547 667734718 56935590 164319808 330182128 404009084 742266757 923393460 490638611 470963087 273553435 730533609 667884100 797066938 664966470 383059041 659286466 852798916 259533175 821400459 536149310 353785141 271426871 795337129 947134826 428567283 582508010 906131187 615851435 959768078 271504001 435926901 363126500 188976256 588202794 952985212 961926372 453086172 876780545 650811041 435424507 693608850 276771210 364786475 876945657 926101923 610529860 214638841 721955227 582369018 140478938 987495922 714956952 485114457 448736184 84895370 234594366 358509446 905414219 33458188 608367939 987655223 812861050 857920348 127273655 986246522 16621131 834063420 920935246 259114290 353272262 792335162 806808643 992329330 387656422 137674387 294389688 665880833 584472743 947762248 854661978 797787960 986908058 581917445 480431057 563054760 554196435 123440807 360940735 222294782 946056763 475273505 174901172 125582834 514482932 746595240 716758182 362541359 372299429 770593144 165049606 910175531 819803475 900914411 121012482 96434443 690611369 446610631 444974205 688057043 674725548 955152280 836976321 690109412 818893833 319062178 844506410 974452376 444972164 278229805 486251224 398967265 403377853 598303007 583071654 235917098 117277034 300090837 423533472 1138432 446168398 445784038 300697662 500928229 703528344 868318544 555282816 778175628 31049335 76852740 861713891 708139127 926139432 727235019 974149219 807987767 502416253 986130579 810803492 770112735 883503619 77050833 994709277 666465256 518535095 478210808 924041402 388901207 449157074 211168442 961784484 703895475 901944088 749728955 621123580 517534818 505914716 289331693 440589214 7672139 351844848 609072905 296318964 629365070 322673665 537065792 549138632 505755222 146691253 494978837 997028461 232111340 190575743 687735130 332636699 395706699 965522405 565345407 697942551 622993114 272947552 992328243 593159381 814701892 637966887 753077071 750046876 644724526 617313552 150751866 724190650 327260942 642766020 837558516 529559694 519022930 614519510 951071637 236470236 703486026 391017255 784541535 152473094 17281249 642960933 433258326 659729803 359552047 76832943 856760420 515524776 774536295 212879734 198891495 131365668 985129860 279013658 720168795 635633151 466902529 833302129 411234579 51621312 814148298 32938921 842881103 372061784 778076592 579129514 549799101 94254185 408998288 179176341 803668280 122818301 984842439 81418851 667364435 81046568 660970958 803064608 107818147 877772702 440349325 542883699 952886981 117835324 917539437 823591941 696999552 708358662 333228153 180727913 139492166 555137932 559334239 568246584 572626483 353595588 799271175 150079256 722826422 730185575 547328480 774401062 417001044 334195031 344132842 848870530 903924255 841659221 135554746 56941083 514257297 649702653 157457797 915890639 472890372 709931713 758785397 949288349 565919553 164798367 927325636 445560705 84805723 515793873 658706688 768121178 445026759 878828871 197987385 693028387 972230458 722005812 455076262 262460040 615793963 208294666 156216172 939283890 649064223 734241780 510102113 999141805 232254650 895421784 580461394 520190642 677807500 523916509 35882630 420893542 201749967 414980271 708646739 748900618 908407371 512983725 783293429 764183179 743556510 151811815 141630494 248684870 96892633 606364793 809555139 900500506 40328468 171105341 980098347 57011986 819697630 334478586 338874595 631184665 991346938 15404606 428778715 808692180 622110328 716764429 811671303 643195262 261342866 336631354 770608613 225011882 221846966 759080071 70244145 860779484 650058003 12360304 195264623 579688951 80108620 581828213 930792539 183686890 419581769 816582780 537712543 143577843 879198155 132732497 715469671 944862440 10177226 284353971 610995940 25085528 185361620 813110299 934077578 226650014 758237111 780391186 855566679 132719193 868610840 548262197 620704091 698663155 887787061 180849609 385883501 52537219 266412556 550257780 463629091 565994165 483590368 239219342 280202888 772601220 286515434 72039682 93746499 478669184 436865226 719393377 17026694 596577569 218043769 725810843 905726747 665329313 718982885 965644869 132744951 723133053 112035758 187233900 176696365 271321562 260082237 178193252 807735240 121487173 738694346 718312380 300063874 57149768 408242856 519344985 968571064 426829157 495894040 587741835 322059828 517840312 439633147 136381526 342378983 643768789 174213149 415548546 632765308 314134253 217904147 232563256 699412133 612853301 620717826 529652867 850744757 790262840 669593558 906052450 128982894 78708474 40264705 831666284 14291648 775511414 956670161 817676950 881779406 792922578 814914022 888654967 711749163 522151214 532680637 565278488 223547224 253676026 850687304 124868233 514858910 742035174 99124167 458119535 33007541 642533129 956109982 153065317 939645110 625432417 510844960 811016963 717688107 856893348 85831263 371698829 798824313 515649510 869891149 740965565 612223274 257065634 64249903 963900763 388470171 999639273 861390533 698326521 110182449 704105613 843442585 943480189 734706720 670915803 433209036 447111752 706380175 87356054 683547948 530396440 873734778 112555165 684217949 866219063 755013922 43519855 852404168 908376281 890159429 649871635 863809511 998700700 879082315 934507375 370675146 804531777 730806990 735032550 516527080 358384841 968700645 640596792 569572321 359927858 707892530 634487298 854528276 403601339 830563957 977268243 734775404 751467131 252517000 201902557 728280455 510437907 246785794 585847095 543138878 297802309 16873540 152827102 675422763 967142115 484154848 486824924 659071627 404665388 315702825 722863078 606674411 987923707 723407394 876996147 297421392 709317146 868080989 519921092 389203025 312081972 28054898 53304295 479726532 351550261 193116380 312854986 150937844 313051381 342014632 523686668 858614069 40402761 902736454 683706511 45173534 883375476 462472814 833179756 959802135 400571298 204765104 15408034 340156241 78316473 481410038 465741916 569505877 367139668 917541838 524867489 673604651 26402132 291984849 951312854 403049171 577946300 927361293 494726817 98362611 714610380 591133283 176540510 178810790 338786596 712138780 614506125 770627240 30326287 992713543 291351066 765546035 242469367 304175106 707468197 951366703 268840323 375683289 512605461 828365917 461711937 878546764 459395734 370331943 9531133 810380687 152747317 561483295 568475671 526557412 419879807 382115487 702062382 517409450 266831330 508020347 203628279 378057166 668684754 31102888 934308368 874283299 442422969 208497939 507870392 367316957 706183233 29440046 655813741 496329006 558216976 250747339 89442857 83789027 829429579 585636157 676242019 272721552 971566644 353337594 457249210 471173753 335778521 749191988 309916229 740860585 136492814 140666737 109530749 715478171 640875536 984968091 816045777 846488858 580711791 110022338 117926636 891462804 818894412 491830170 586629964 296738071 607149457 999142885 354275730 639317028 454081093 646881153 410535991 45799438 558832951 653919589 635048667 706283217 709871667 657251698 737885508 794949906 486933111 649720558 687240875 993004196 334323062 38425767 475149409 863085058 51007613 756742332 165485166 105158199 994908696 740410199 236274051 513700853 194081174 640697762 661210512 974870629 971572938 433073743 872726964 624765160 596309132 255432635 985602338 3166811 642264196 931951013 49308770 287983296 184310833 361763911 624392168 246900470 408313429 343781135 244451600 40302790 263159387 485983400 287854719 549561932 134676525 485656379 67851769 516789155 916886028 516983782 826077439 214215401 412194529 397443073 446233680 155618911 441265619 40525668 758968934 654642573 30713516 43578923 388159575 472218548 598836530 59632184 257366848 167371052 716516688 273489548 430348010 652236456 145264964 786418504 250163381 229640001 133438875 404251216 221517941 4197885 856453654 821580125 392315016 581508093 857322824 782986532 248192460 147541216 778147684 610467267 579459557 943602409 406460785 978188148 22374305 143515864 792612600 403029790 587013013 635965931 332888164 730883293 735212221 274811524 460762739 116713643 331612215 616791854 54904896 903812226 572337473 912619315 72268540 766563044 390134442 855759822 619508250 202908792 91634358 161572150 506288262 647303621 275393190 469589583 181458446 198007907 729180826 833523318 92483364 294419799 875560962 160104475 798805545 220002221 391950942 315013697 283341536 313155516 356531064 371830144 38694500 103788976 538528481 932676166 486188071 311053982 982642622 549307895 976845512 162698403 650696783 211209448 908637639 29673619 683327363 224794286 862173240 45650718 871267295 805108933 490578599 992780571 167892075 85113239 766394444 700499455 353843855 743014674 234275057 686125678 867071201 711054110 999467196 294322812 497081579 359416057 152732677 287793892 643866518 847275053 804072194 288998995 544187117 496191413 52376696 462149604 588914250 841905905 521105454 490794501 815870455 287089266 112578598 359538600 33871967 6065501 441984470 146235736 290546151 799189749 662211544 546275064 850742047 902376613 901970976 544589448 377677957 990289333 643213541 299821742 66874834 986454412 546946347 705856344 235008812 520133478 242167647 775642741 107388980 153907182 304798024 755490068 587600667 836322308 106909820 884721069 45468583 558092231 561469808 595177699 57252865 69085052 313404780 741709808 119440235 443636305 299293750 902619412 65072285 43034970 881746526 57911622 882068440 959781494 767714991 946410829 371770342 435050735 293720987 144503066 193464480 963400555 629650730 995011672 485420311 394044600 653036512 504183624 653854698 372363479 479856076 382411968 715455295 612675068 15654497 924274782 436801853 353183356 515236217 564669577 764612855 697721055 420678034 535258738 854557683 708318311 426052706 707450081 998279965 529300925 560935106 784912302 401586934 960069494 259506407 291898763 668066813 276220315 352021957 802379247 346532940 812578768 383714861 189017713 362752912 351095385 496420119 70590962 798518845 761903429 983504713 673443897 993507881 266660643 95432122 530336420 633017718 787288033 448319674 457332673 296422736 521672919 368437188 715228169 113238345 356415271 765851940 270718884 408510697 167138081 818511274 213010871 892645431 856249180 350608455 798093747 71234702 422636070 989204007 395275463 501130037 994811552 121801063 664146357 573149377 460870732 714674407 762682429 726616439 362159200 662518858 546421968 13938246 772784551 690983137 97371824 506360132 820115694 777344741 960883306 4605669 939884116 863231938 844215816 413234888 296710022 21291902 186053758 509758333 536112613 544910094 221918133 822499028 167185643 402823389 351334149 688731524 200934777 210178963 988209508 25333462 920758060 512226591 961811010 267388545 3426418 238957621 576316681 539309749 378454492 143975247 712773647 685870478 202799156 649736132 565328091 877977524 638113330 301925521 556806120 580689579 134453203 936959400 549944512 318633269 735478856 938340295 12732003 431340082 472629136 719629015 761138194 518320130 463212915 160789510 294814921 785761035 778022546 914032005 474566497 571455274 839357445 934857157 553877746 382524820 37289188 740421152 756856027 563808220 326629174 432457134 888187994 319664473 988047563 129808098 162611334 779035607 353253915 413169636 303884955 570870517 290434447 105675962 127397308 355891187 402269512 796994851 846567764 284580707 26938870 769972823 7181178 538577410 980161002 417971857 432937866 805681621 487692400 480235705 728816139 691512645 975662146 185209913 679060123 504480113 900305732 763626999 51022797 269137936 886440807 503983099 587514080 818516496 47783449 841240962 599908699 935666435 341051418 141386569 890483948 656735586 597328479 939228517 257038402 191010338 33748112 106502198 241421007 629737214 978792686 107766514 56448413 362769613 733665724 123446205 200898499 614535804 999933451 783809039 673764089 294539737 330192238 168572744 533092853 91749605 260795419 936472871 958874172 5029050 122574726 81357296 305004200 71819616 787479165 598497205 832106220 77924805 539322758 169290552 902887681 79983508 889912573 599003005 325477268 444047864 588035909 434400279 722450745 496004712 826779662 599240105 428110103 30988422 607586964 218820959 980324914 550619152 216883993 941489372 51717587 801438899 8555720 113058718 710479661 282986239 210997016 913685998 424637127 341030067 721773557 41807303 449430068 68270629 991086108 412360900 448528471 989519523 545044131 72954627 683929949 153027217 263376451 571668227 513094385 759305014 272362206 349926782 842225848 790615980 894366670 734596358 115060914 763915459 841428361 488416541 777446350 57544286 580401313 49570554 831992469 445690369 221415833 295082407 606968410 250655613 676591058 842187476 562310559 488361661 96476118 933861253 560961875 694882640 288900055 921566081 973024040 215156406 588559261 45389448 522071631 878510743 716897543 68331559 215698304 66907856 869792601 735006972 289564075 83079207 13795512 424337007 169561021 379164979 847341592 28807511 937667206 538494172 753356617 242458522 197420179 643528722 81777188 448824380 272314916 122233552 31972529 822861590 2743894 946637891 393942954 723621962 501020303 633226885 223983803 719479062 949401170 710929641 707680092 789274285 683562573 315300235 910744884 492574571 257539085 485220000 597776286 732096235 582774152 770153168 960397126 837147687 727056455 671190619 234207610 544444086 504259260 759535514 862614299 4977868 123528839 914853872 606379172 449774232 226934021 777335350 883891721 725337901 197928939 398766334 235302836 90775263 203527669 542038615 616718694 227616650 441928398 802133418 391630112 283513193 555844826 821140735 598568446 615221704 181265642 485062650 843032675 189342192 59278421 616693231 918928331 999330277 280952477 159029274 750902339 638008182 66348893 163283493 196399230 117594040 759413761 609017660 306615209 999932121 164447642 681764677 507848594 271248251 152912976 329315897 632812946 711416661 73590429 889435857 646476489 876395021 661010939 179534523 7372437 486275266 709960371 825993518 887705173 573250115 140199089 343538579 720162288 882682604 628801101 547588611 443321086 394348615 862977018 197567012 273068528 236586954 196692016 904729939 940502632 538449632 723610245 151600523 449343895 430744822 935552763 563919391 373011664 634921291 90509832 335726216 571893294 430005340 947890401 66826104 768272180 41665618 786462620 803333390 361144891 869732131 604057727 914160940 835794636 346178861 78958538 111363259 889820863 382743880 114219954 105600074 756890433 177194702 859746661 787869957 981990330 378111133 529905040 115188333 879341055 582598695 569459014 301600101 674548921 10863697 127888820 727923204 610551381 738676293 69147909 384212110 304769567 305190272 542886240 738808677 248682435 253547696 727824641 965324475 833493764 181354966 216464482 897396389 291286521 530148411 3566316 568883290 125890987 374716931 402522753 600101066 672278909 407907287 632149445 310434727 88307823 623473725 403274301 73607885 584703479 978533488 210963516 257471057 5294313 11975624 873610005 672195252 400402243 505403089 413891577 534026632 41928955 106727513 244564411 790563372 426536043 975754185 453635773 446221846 776982204 2232418 194534764 75880261 338491192 420361060 242150550 76817143 665341116 471796207 407673459 241003014 816679754 283410380 811198299 568506461 763261192 836224384 777297746 695798689 298693870 751358646 798524792 106897342 169561505 220072067 399274241 234807881 141941863 749092309 619206050 615067341 150069117 583305231 505614771 746261617 214395192 912744577 425429005 999436335 178090474 144758109 580709629 553430826 593585572 75250049 767101612 361845326 643370014 783739441 699541172 977557346 305232695 369138189 182117525 555571790 567937651 349752177 716921757 324407177 743232988 932613619 471445566 645791475 665094008 944481026 28858719 319196768 735875367 298005384 883262703 874078653 727708545 242187431 386761214 970873030 340749910 699564247 802334532 317707668 372519923 76220583 231555182 113293834 249033246 465272788 680213980 505924497 351156252 687921937 373236420 430611461 513958818 987152503 244841663 629506199 539040261 904736410 36200140 189618995 588755927 243303049 444025980 513481750 713000268 405221766 806583991 57586195 547745364 202386132 268042741 29023720 91335708 692089882 982240413 789721646 182822285 505571883 647163557 774364698 963674631 286251366 743376979 566883126 729603782 940963098 847727833 51370457 897534796 463710324 234343578 199032771 138782442 929328878 793409403 127947068 589279251 293451680 139923061 991115722 294500150 212121657 980072727 180508400 431782445 327486716 25670098 765938703 979571221 919024815 310886127 42065790 542924537 663880246 452525904 134317176 630179794 117396615 953604811 586275833 249622047 513829966 112953484 682528166 10658012 201022166 139335605 136316655 405896856 614910439 529043435 350313244 128252697 662229861 200413231 316481590 588757526 878533985 86471200 215054976 248401139 210963315 954183565 105879851 133401886 340560796 714695237 427544856 364145560 516834309 472851679 108594830 357871980 511456324 720741670 919849946 678122437 662382226 861519202 306751389 949733920 468774655 125637197 397435041 995356814 232341368 915678061 193451860 148985112 6058442 261104958 915275438 583098373 525359358 214591818 382883826 551390139 821760698 810852952 394011674 45469964 381109939 202603721 744437364 233191864 963025929 281393936 297319397 101714504 835429190 170803297 571566728 315494353 711515386 736314776 867599974 64416881 970188621 867579955 137900099 231731443 284568924 103985135 749177220 558505185 628930358 602361896 298375018 884443312 616636281 713451420 903862956 498003022 233923065 808908807 920765699 813930848 138544261 777024031 570941545 427375654 898595411 609252773 640352951 693955956 793318165 953529187 40873769 831465476 959178231 625117619 503342855 130965009 424893068 778451425 229374602 893910163 427339119 595858014 9483473 166298104 211818785 584213121 468033645 590805571 919065203 399608310 432238134 671953838 722959675 293038290 373573178 75665478 851692958 239892859 263133450 733121644 689265232 506144835 642460531 937466232 833684761 187980510 231658216 208182940 766322499 175875735 857509995 925622485 702064962 725997665 301492673 711494837 182553383 986405833 675784867 598775491 813194021 689041315 209949884 345261606 936774087 570321621 629835892 782974314 698051785 579287760 135183356 142071344 408346027 499143308 877313095 68939391 353754521 938647953 535763177 145652422 585486248 151009858 234915008 480120694 831413054 720592389 772248788 256416894 44482127 943907942 67237610 814377469 303853214 42496215 142376473 204119336 61714960 726739253 482913105 231206284 704646097 218966569 387418165 435393123 258936020 977978967 329836848 486695190 656330863 724226580 64697174 850431394 29703236 516751015 952196263 176437617 414228700 255008066 784772788 385877686 709672340 921772919 834526640 638518092 335616221 143937718 396272676 16533734 385102535 282963073 240689856 137934843 620517583 363097050 715726949 726990630 402351953 695418419 601892529 770215385 180398214 103363529 472410508 714180080 581890393 908618598 370689688 88281281 192698256 345276629 955318814 113773081 137935041 318513220 625161588 411890653 237492295 721715370 195082416 569791761 139533165 780994222 715740573 250265072 650045837 428240190 400850424 673137800 201217961 366805634 5703699 710500 855845203 124910041 429782619 217164416 457834597 379901740 855016819 488633259 56535567 63981398 296502048 291586915 490199443 435528666 180404940 284844167 678996881 670852095 324028302 625223075 600080827 638311875 89306323 915747745 960598434 424331503 196991830 833297490 803327792 322090443 577767626 857129430 756751384 992533308 964572965 155469982 189169396 423758011 664547228 131494229 325027647 738705896 773586541 629691385 862583605 284362482 532434093 136685590 163007170 125362167 746540102 829173237 928125515 217244165 235651689 491715553 69867693 14826239 78959666 109044272 633200005 789175472 19598643 687489375 372445305 606389510 624454280 61088741 312324112 88487921 956466695 326890123 368303318 255626450 431292523 961167715 8448948 909502400 211414010 119352545 548381703 31362416 986147650 493636690 176925602 173889390 740035596 828040882 34840662 234818334 865326216 599394774 840518768 912488102 677653433 379772058 216995226 272151607 599751137 47396311 82720646 754276577 57080328 407735523 824110720 83816200 451337718 277932315 795929015 398688281 724102163 194510132 122658379 883265728 138069280 360675032 89944479 128637267 404742947 717330329 332086108 577978612 428241223 90509276 114745222 823638419 988812248 82197761 169640527 814733619 470457880 45234755 349039944 513476212 337294903 604339597 32194079 841734126 845083176 150218066 613387005 141334278 854288139 750501774 94599598 987734287 213789808 524861814 718232204 601539899 958761529 673482340 427055860 279897679 800740384 118298850 920305214 23815028 734312880 525100484 642772237 470224818 297856095 172019623 241042837 928109205 733578041 804064909 127218245 653495901 952544981 595338939 461217474 118893508 81263664 806706352 819665978 795299153 229567003 38015313 950477721 897529050 342813589 24305082 600719828 973610337 254147579 573745271 294099288 369236944 110564464 964240354 921068593 366904381 333133037 394410313 534719638 68147503 663655850 120027439 366717452 995685492 301168607 80654424 564555318 253688640 928812318 996054891 64596734 639307057 356867020 407954157 609088297 207605090 732491629 613892312 896697843 872190636 711577980 106012384 18556286 802673923 915184076 526124368 932671499 880819648 305842640 140355387 222479522 471678634 706624983 600985819 344440590 711646366 313412520 991811325 764845241 931362796 258262281 407174038 610660676 601270012 63228510 409550093 862051714 132077700 785890710 720689654 553347080 639145313 944332011 78330710 510003157 754603348 608777605 575296280 585591681 647364873 240693633 706071644 991507491 708018754 799333423 536432039 992689864 37075512 253276867 543347086 776183199 518425653 226132989 544051328 555666903 951519632 788141490 641210767 381499085 945818626 263095647 191690105 361774009 757435691 70607098 14091459 598625458 313091568 167666090 548114212 591943495 900341250 915358890 264425649 948390974 626274689 980023811 951059138 572596144 736388460 510120283 908141122 260726335 300782009 778512029 299401053 88449165 216554887 297959416 881420591 967939802 569532469 614372704 910382615 599504265 521663914 312448255 562082228 953118390 700597684 134530892 551384711 13226636 766735226 329720663 440346142 999732854 437554316 842827283 33728896 376405411 765581816 772269069 22810222 936502511 656959684 613730413 707755377 168834673 389126978 823129560 171963920 728038741 992745838 440867469 666549373 243020841 218068568 634977600 481968798 751538218 189516055 859531104 327160608 145204094 224364356 537686683 803787060 975744193 139338464 412885659 213363197 931624479 398575484 719838247 91926133 745699892 534932260 119425025 28850266 283843143 529015771 997819056 923071003 588078827 203835742 756527559 849574210 372291240 133067734 861269093 541921566 840606212 8664449 94771835 483717033 130582560 685852744 711085044 808930353 146077499 351833358 409946032 37801596 87585682 851631439 259649345 302161400 229207467 436809623 286615504 621548908 221655429 936157437 742998730 847732140 530003763 241122119 680977894 602092364 383199640 249246091 306807518 218746312 916881606 190340234 962457094 760917588 828838469 362559284 221539281 944928550 973752104 85970556 754852886 126319482 342005418 166242971 379570314 174313559 417867318 520719303 288448019 354698771 885131417 780837669 98666305 534110229 518086367 665586296 840619205 763737489 495027025 668519401 693034644 221086623 346614223 432781146 213430648 634153883 179650689 503986920 694793482 509337115 202892844 245284041 655196805 701919879 700731635 667222264 924552881 959328145 179226109 120342138 667995089 940900755 882926432 751275047 234015325 822191712 815272226 180396423 99312427 202820374 876625017 971146401 406491481 230827089 940825076 592470213 96029593 365407805 429736686 606041188 497088492 873702653 470358990 641748927 655512722 609272043 948684872 348768127 692155968 414308799 852982373 523611706 827574013 872755784 945553904 728864475 770083623 620300848 469225359 408836298 753826652 531413289 432619201 446180259 155437149 694323392 137466414 993465416 705422369 709026608 149389226 213083839 516347969 871782206 938425417 860458931 930393377 411202878 257746496 532707715 697767830 428612062 640222219 800077416 801557859 23834530 800288094 974868658 860236645 63969108 452717410 688640285 738999327 157211524 618332966 886216350 603698256 746937207 36251797 164872400 849160915 518394793 874600085 35152308 844204490 376483056 775313662 276151510 467895875 898679363 937231324 788223266 796279274 280588691 664517421 170486795 652855303 948016267 866193803 13419812 439169181 422811438 376891876 266684642 909659764 847133752 840790734 968836136 885388827 70623090 330209510 507450951 903474201 438152426 450955084 601867614 943067413 364792456 213633557 173119648 236724205 398353432 593448520 176360279 772535081 851300045 613991982 465718548 252610792 622388124 825921134 264589113 570642485 145283222 944763356 583579389 963254637 23361366 223572246 213852224 174088290 233773049 156355656 842258589 429791161 676676010 649516466 404904089 605361104 573614813 659074568 61740058 301596045 446770116 881213753 145449693 800728758 712657055 757322379 400151649 636301189 955857237 389356610 910820765 152827019 519792864 387835568 119110260 337098409 363253497 835996497 333149665 470760366 188132732 116092513 59946547 553723503 664786337 437371092 74746888 52833002 661059354 208896571 499759073 35716476 411019329 923938241 413509052 849710556 826212901 119755007 247836235 589439830 27444773 912757475 274317475 452674430 522177962 376222231 159157049 42663301 335143201 114999441 64445984 73112126 92965195 366772699 426038964 320191972 206947344 328216892 579556989 627771303 250819429 736034635 879547259 315243241 294952007 164711210 693329896 184661552 356099712 852086123 330925963 502136378 87244121 683621759 64785333 113285634 652536654 631317516 217032891 352689545 783327780 269413319 921371078 327111769 853764611 13461799 661893985 562322633 771801832 435383155 866925275 319946160 366131795 662915686 179978432 317650528 786857930 393856176 365188965 497830079 50478559 390333586 565632644 350124514 322632369 975056837 19829537 449157825 649563783 98528506 569020313 249979462 336019182 723304388 579810435 194608986 987515013 230943550 157407114 495995625 148357786 398283009 334695532 789341413 785722192 783799080 316727646 197765994 379720854 580501907 247401253 365932374 720450861 155938232 18346966 563531500 494312451 54068373 996243294 19407807 679078727 817491721 993091843 127542736 588979495 800670988 820767932 42690191 649828092 487686058 291670356 756576100 503395539 791663600 699911379 782865421 655922687 662855565 555180106 379829098 195872261 264008978 62622740 456135502 234306384 870251895 233058496 985355207 257682944 741497876 785595426 214066709 225828560 385605366 434659615 274421836 486800899 438344347 380758978 584678954 396113468 253905710 868472476 242364520 622875742 998915078 111462797 566515729 885468923 899867071 77157879 329436401 887961050 534764199 65033797 771951889 960138731 545006751 38929200 669734975 255499915 787776508 873491418 737924135 749852148 472878772 514369011 571075027 304205649 599238904 107536085 649247563 307924802 865937159 276240008 635703652 589124013 868425374 766984558 728528133 716048728 378729021 904740737 401211868 544035503 565406334 225735657 270911704 381109101 584408319 682719725 469437365 626699087 3971331 436000127 270713218 246773314 69905259 229941438 335331768 442117729 260571959 407981212 765038518 228417126 237411127 514631699 668649848 754490480 90469766 988482983 181468978 125614677 839822469 763146662 957461223 636136716 497625958 965532787 661989479 810058924 23533936 537602574 753163598 467634017 396420967 440836735 736502703 339364467 502009522 63571170 601014912 657712088 585976984 599303332 114118193 150049550 52447416 838492428 53175127 964151494 732161205 665280838 930113486 22757517 185911520 699619923 731902314 620163924 343500448 803394114 368288790 826447874 95929492 433020443 63740008 231026055 968353691 834339035 235450236 466324103 106814151 820897751 144362896 623217726 407895550 253412106 309893165 642452795 229824528 387484036 524104522 47909925 673095470 681045402 979834104 53266795 246735340 848131215 563256631 196845136 16192709 217672732 660220906 85063678 858514961 149272405 39569910 425655773 913443948 89136419 803543783 237052832 220991423 264608396 987710722 986992154 884773830 981263146 586956340 690460486 595379446 111903997 843377687 463161005 792894333 132533432 31733425 204300305 827591558 432724593 386906236 777847127 171814190 284422635 425075177 593531413 244803322 787602874 468509543 396389665 489060755 814593839 493236535 269461239 847124300 131912900 891467619 152338140 74958495 869793194 425253547 861874733 307204910 115398825 925808627 659132472 200620312 834906393 106929235 242238289 746633232 765013490 56061078 137765713 653432897 585735397 374926627 995664431 517095083 200385840 697731470 217820683 221155477 446528539 139465484 204036381 854930327 225735550 587314626 192268939 49319598 998458857 5988875 325692281 861143744 971621135 33612211 566944227 454353824 328633111 288865465 834028682 215993736 337833347 726836383 254426180 914067006 596384764 349471334 210636454 391091607 60481333 866668606 118180253 578331709 633151088 436635324 358821765 541828013 827947077 676007668 527318065 244666400 165445908 564109000 580161098 35709943 298398154 23179942 384366232 885501060 169507533 541077123 327381154 296223022 634553994 175270940 997856787 59248 585115339 658144315 116377934 601826571 994058243 423636958 20520284 647780820 507500711 152452348 631776286 751304528 907295041 863528895 501296186 733128573 117963212 737994306 999016829 125703806 463997765 148818556 725025658 570118693 657556541 310981225 522622829 787505885 541826205 54218324 787393247 655850958 668736550 247408103 938480289 323278067 843485805 3219369 41146626 958460418 405604803 741253366 304611541 790301594 548283036 310940971 369759287 642715054 910164833 154101560 603017489 326520840 711564808 942385176 696016994 520939751 739540885 105026606 962508533 801529132 515283165 580001392 201646964 528011055 960808039 507898093 722175234 964483196 956759318 488530214 984167120 347854859 580927957 193264839 376882455 829019819 826794798 878307435 803969842 442475247 903541167 610744501 120524117 56715218 820044770 807179505 447317670 746837232 502169246 974794649 350831017 550976213 209305433 863221210 958922022 649855570 641012194 444613831 607797855 542858861 26163522 343286151 437178135 550472176 228518246 504351446 341899058 620658592 541184430 417741630 277217286 125877891 404344348 953548370 91096022 581791664 537158795 315871438 414082488 922935889 489291692 788948724 588767816 687515935 178718086 81744344 877228331 930454476 809146957 372402221 562001432 164665077 971215181 609799293 10963548 237896334 686919432 803828353 585725248 661830971 534521799 78715022 387777279 185721688 432162195 709806464 667094064 917881754 335485740 244317635 381787234 371583256 197103418 333805539 155408648 110966825 908389313 277637910 433383359 337511053 434278330 472738723 580468574 584355477 615385935 792330370 587335825 739752117 335869146 235303062 242861129 60358884 131302464 825350175 273305134 333721882 956872981 432909053 218843074 139408857 961191912 221329143 430227431 394423405 963750563 802514569 386872350 588057233 891666251 926757693 697370471 262686974 374724551 470922034 893494718 639564719 704235001 555772849 487639777 730768652 798243643 931151555 539692078 865183864 178289943 592662234 732601136 307439540 472745075 893005239 93645266 467188376 544884303 330123733 804683556 62804977 368336166 514793361 783941370 901455624 15564718 764358921 219237490 384716029 439000278 507492056 13692026 81356051 731868328 831621959 883519151 29320983 807155402 271200447 512226512 850258451 163031315 110471067 193457596 229974735 892873562 509065630 297522907 10322492 787734976 803706080 523216525 323325782 468722484 860892418 209684571 581530783 1156659 783081508 861190395 203465316 494177205 40904771 514180327 268963764 145095575 284929386 306221680 811451329 769831532 685117108 621358443 383032404 685188082 213045924 716621951 983826294 771767824 968032832 207431406 375345959 761080847 384486602 681089424 828319333 740236734 734432584 632794244 230407671 323896696 755117845 394976190 964860124 630548099 859672332 478643178 571467818 157463410 10488909 189263098 108797167 569930468 118469682 631663891 760505474 904995222 842318998 127891004 251770828 389443108 714609444 134589229 459709555 722994112 368796958 82789124 56719300 862391246 659233423 549635397 251304937 181570886 884413436 618239105 843605571 197807623 333023889 485117804 695663685 962359138 964475558 936875038 489688729 219686736 997992082 787546096 781849843 338407196 701917805 200471784 854099749 487989188 95532788 359502907 51509056 720000926 549530576 979354491 784897339 36451497 602524091 969170746 889826641 132854545 902076845 51356912 225446912 564204732 370430182 389233478 189364581 500336342 264344735 832080404 880167541 566143899 461731841 638841361 564991817 703607212 694874275 788182695 991130251 942981402 563336457 362310035 291590617 907136348 609423899 809820725 784032727 621491042 484761342 983852989 361476100 854694894 247876347 807363126 799002723 971576627 54560986 952765319 892048864 1483615 165635983 708322392 806746105 680749614 144240169 534938358 807959146 641499054 225110332 989559515 359152266 153366976 656539437 319562978 941933722 415064431 368454466 976576438 803567711 41626331 113099914 872674709 223961 655026330 718969302 820832991 652235223 765759531 244869573 841493794 603629871 264731844 302958007 33262608 824161297 386282616 13587278 685436713 795789290 611387818 308365038 177442519 588047979 48706322 373182090 168354943 138516948 451939506 865710907 620116231 32925074 86803046 522652978 790218053 513002760 548708276 743882627 685858608 321162836 272638269 964824454 380816121 141339121 8921379 543950601 773475982 504201167 592197727 558948689 317286844 854319891 343221309 766239300 797107292 281648952 573127481 733690086 124758589 445555396 541063703 16689935 306186245 141476320 332794253 799095654 425620317 151153485 749821525 21682581 689454889 991643858 249274799 166632060 3988760 487070790 916358595 762823178 11260068 458852378 518426877 580411852 386210974 363439067 31072588 152743417 245890258 588529914 318117849 446209805 646173565 338918274 333904730 987665445 879953236 12148163 792939298 340249055 806702424 215173315 514663002 888785469 427742500 398234118 210532781 742089629 693471913 46215503 981354844 350543704 848894120 804535482 234250550 498940451 383791342 200557789 879190594 466757375 612791408 479329274 462798062 871653714 970030577 98721748 954231166 267629539 891562966 931629003 515269350 517072491 178804745 594145128 316431938 183153532 489984232 22537357 522230282 790257029 31437224 332556964 623722080 836706375 74802954 199100660 317910469 844792471 720745444 261944819 27981611 18811353 761406484 100886373 918581398 462122132 249248200 859767327 279234416 649655616 293447360 536659646 716401975 932813562 40173346 67726181 717945253 107170670 25597865 245161869 506890457 58785278 338981779 251934611 669900416 504455244 636763800 929426146 415302822 243986290 727317771 473551444 544288975 879612437 517982582 915060927 491001872 889801047 984914410 457679115 277748269 89268917 575446255 611492213 713950118 130945972 702260023 436484914 504654274 33182791 334708880 997976979 999781508 960328477 254640080 899636505 73939855 920913790 84689675 395469688 548419917 706925591 302414589 193426441 314217757 508655664 689950 823697439 677538549 129016908 48171922 151750994 516586290 538515161 293984645 961425497 53899068 458661929 965390740 818002799 164501443 20295989 951417326 58472216 763813445 776133592 74894987 895835680 285036513 667972354 476643310 928274753 629381067 85767041 525715078 42331617 496165098 411400332 238461904 243084637 860103321 690611031 668842793 79252714 918554066 760788372 244589786 837625028 36768121 122872067 684213753 402675409 956747142 195291707 789407345 18970454 193397222 280392660 121254736 310262585 106872736 165312655 86486843 216645707 898793496 991408183 310552764 370301867 531683780 559853616 181514092 177561873 630064922 224565389 491896219 352452711 646923481 784242200 370928879 881687195 415729076 864659293 517574848 141046992 474827599 363591179 603390943 760228756 341394340 539489252 288402840 961488276 14940373 62807770 251842705 344659349 589617112 412359452 130832353 570008677 630239214 787069690 972644982 524606771 743984928 421743330 327685679 644884589 932705978 174879573 272646146 742575557 790930902 159534864 933338507 667901041 344997607 803817580 127935772 176827500 708810710 389950631 682361803 672814780 912096769 91214949 334266526 135549620 665801917 250200075 691285916 381329749 254953066 860447286 541358061 119278016 778685239 552036137 278980 893630949 247179699 727444707 945008455 583386495 73427780 985534492 321197306 844081585 576963879 744579771 718245089 849282219 305614686 110164026 46989800 415669498 354404865 607285878 697430445 260901731 757693517 203448859 463837215 98366780 989307500 631931901 354889744 129783065 654830900 902967464 500215448 319166217 306533029 630813528 251344080 887137098 954398691 144989942 697215444 329925417 881703824 730673096 410166941 264603532 794733609 417550950 176157221 201629682 779822461 737360324 665901904 304331542 737785811 5738611 229104392 733000079 858000909 790127235 471465836 229294120 528771392 613076916 736324877 665207399 869537542 980292659 135056337 247287678 723541727 560088657 715132206 419053415 119073761 370330905 81668486 57866460 244156640 617546095 24752444 75828537 18517504 796470758 112218049 745880684 806379153 912476239 695011844 711859361 710441850 640358149 989794477 855894922 577623879 277098067 577537143 757199140 785510929 898313229 521742237 902151066 997535151 182739783 136557424 697905324 675171867 448167938 368262371 148717046 738916712 710824920 102879668 788882199 991307086 500196275 519847762 912778018 5230283 215841483 607054774 478032353 806295469 457498153 716687043 459559627 650493747 756613536 357852032 550778423 648039449 337980088 909475228 627238226 434090044 959549786 786717238 38077891 919580751 56617129 542885307 865204756 367058159 770390425 580206047 457575214 489011845 538995029 516992246 951640392 868658477 964306694 191638917 498703771 569152476 699834774 697760601 255255801 559005854 960445965 217388625 940228846 548605548 218454030 448395566 754157290 929234113 577101748 511700731 834132928 601358178 843456346 404166361 103877198 932640141 133711901 831770847 729556895 76782651 628536286 503533297 662779780 416906356 76613656 986278562 427731483 460751617 840296679 127616942 187527153 764850013 871161581 94289166 372118202 58126899 900742847 990535117 745102351 839981962 986112898 60380116 960628693 26264184 603291062 847935402 903785968 818337856 3642800 527161555 54970401 920623010 763224362 651493198 475916427 162183183 65143935 736640365 812950561 199477908 557165619 316024746 818898711 925978915 248640702 348039417 961272888 822458730 537241485 304774340 195610598 914658471 421133869 649799831 238873918 457136056 71719673 691278074 819980335 140160321 582770397 579038864 157951679 704647851 612380430 69652702 413888264 541741926 56646229 90965510 555731081 281628758 943712866 852697921 596174001 447992151 45644225 654454686 775480966 245752155 1794647 738805927 293949781 309077483 162184361 9743065 317472322 652978521 391318475 492256067 444857690 107809297 270498095 870008076 140433072 934595169 87177419 616341535 251015318 163784424 12437451 678726161 74620741 750567818 598161775 687722497 869256143 895732832 429683557 337143239 838147733 274118105 471508808 463339842 997201319 585661909 714036007 828959101 392110317 547888382 624822074 103584926 845019822 513504595 897885210 385664726 190647331 985703727 636203052 13318928 368658762 187855207 176573968 849976296 595281562 311702237 587387556 969380073 326630120 338265614 454316325 980542150 629272666 713028439 413736611 251815777 411571504 61144743 367845673 445156877 51101873 314850096 66276108 462589768 165882090 243944424 863873385 787471863 703955727 808654658 43396980 558186417 916630990 728514366 159081908 783075918 62008922 839984887 496044586 644556983 589079424 637789681 589223627 757193628 474672995 984023739 948913360 480017181 194445427 301557897 478722224 601702842 416240977 325472972 303480048 769057909 799944034 923021384 6729447 972550717 999837411 429559274 744832374 22985893 368773827 833021762 717548390 495368882 648315588 334520362 7611817 226991911 322792274 121334158 43179980 695280386 753705422 255804907 312710581 333979211 267829392 566833588 40634464 295358799 470556137 216866719 905204319 11151189 161229780 252025890 560507132 232738576 794751736 243216011 744711392 364712257 485667648 235813988 895912736 406321879 863682502 138303932 854014529 880469759 488375489 464810824 801718047 191140945 216820138 573978036 118660674 284548692 809115696 245795185 689793253 619026134 361290602 224417980 418394353 400899657 530419708 68337453 708326952 156261662 763617466 145978206 530141825 597103586 504587817 608505913 275422860 40032366 300729142 92811407 326705774 534483324 54398805 208258837 113636608 791983835 70494314 344914606 581849808 647580140 353722583 195437051 752522141 337035965 400228295 304933650 657371067 180478840 48409284 858173733 346068164 337250499 442405315 166566095 946173261 157244870 571736969 509907514 448453127 378697342 669976699 766080138 159921453 911918510 744821424 739557514 84855559 100693713 358230315 617174424 60324201 781112672 166042846 302678445 856986963 860601606 42920381 628338294 87731222 270137167 648320092 479220127 995782981 309683707 743929960 968626379 755943168 998462334 980007001 739671102 852358474 296840364 528008158 813090518 464391297 148213907 113569256 494708593 50170390 937668551 594485693 920932833 884581576 547290906 93140847 862600326 908375532 110525889 677781840 783843950 177512500 686761446 191218555 104574199 605776400 909490006 196524314 428256597 856408720 272665838 816527882 446204722 779617465 408498085 183864831 858470752 195996151 153646874 380049532 924841323 119793553 332958289 108125448 965317040 486349242 507992521 863850611 148003361 549966773 130605690 571755947 166684260 798333046 188863931 83120796 434863336 249148546 345626827 660173637 7257861 981236161 298229524 220143463 107377152 66360973 635009526 632648229 934427566 225039187 248974977 453651028 7495579 319576262 913653102 711085117 33442119 249530465 259678920 271340807 761568905 808849854 118639304 629845999 261025002 967505231 7185662 221454964 178346063 189965667 909610675 757409899 698345700 817437331 774349575 941428571 235118121 134192045 160973682 717793619 827909787 185183662 951204919 217663763 989049839 326944920 718205234 328743001 355105904 232645009 599599196 457695893 923666052 923233327 525892986 420426442 113502837 864738905 152402127 376597003 403732613 106511056 901867734 45017718 288158386 53414530 829261462 587648277 470045444 476945964 821444254 807556289 198456476 372356913 239182114 595053952 240451048 486575957 809056035 91732035 71835616 993805128 625658798 4318700 313718277 434650179 68797956 732366360 614503531 845995294 628414132 152329153 354993724 55546322 512754841 571163418 920174200 438882430 350007836 561331925 108160924 865396939 28937015 269190136 869678330 545159519 686846757 486134452 464822511 11514730 426233006 809682098 992341264 802865341 110695129 292353346 280653493 232171496 57601634 618540217 33531753 580882644 2473103 328271296 951649502 646809727 401985572 449327658 660672735 458120295 613797767 619502317 434088588 754420715 687490086 150895710 97439692 45033372 686649367 439959067 230440544 569391697 348742799 319994692 744291136 398686396 138617938 626123307 917583916 919247277 780818432 394785151 125194330 862444434 994131067 19809448 804325768 884362329 597773261 110988470 412363445 386047459 545942832 343445150 639997881 59151363 7026513 279219271 899782544 94672664 657761936 693283338 454001417 993235885 625064248 900048073 460686555 467324070 728615140 174514991 454190820 333580763 826816264 171699021 775077637 973002943 57919234 470053804 140256887 313388418 21386840 537849817 227934567 923386968 912242829 851927992 365813850 308073728 800735216 442479891 291156619 962979620 658671937 47956475 275521765 514955353 648703008 399127522 157457759 715695703 173255339 738469620 442967019 394519202 600391993 988727650 654499523 832823585 69659905 420937069 629824047 882826468 328954412 182062995 976019967 643497745 776797434 401446945 29801175 325727717 389373048 340029488 770482650 423894028 88248591 70151697 892569803 898648448 320654685 912568627 17929742 176008766 19358665 186781310 538329300 76685086 397139586 790440662 400464084 982153270 872843712 7302761 512255659 852623603 194498061 803339011 199163419 613004366 668056636 675576171 931251511 703042930 22723661 56494913 885038050 445992715 658239535 568254248 223824293 265809404 374728044 374669901 430253740 352504025 552917559 454189657 450116931 476142430 526596322 761136458 766797148 793268166 901198110 139209435 99671917 176586569 766910522 508294804 351180908 60379695 284106059 551144528 244969903 710856863 717974470 122245874 523571264 199637475 836099594 8638852 270603202 395110721 870178690 49077899 566093268 357266138 207206692 911969860 440276478 122359269 928416921 294791104 590435862 551290185 274448839 634596031 950353721 722494431 298895460 571903660 750612048 165173658 410178546 578307345 644142222 879539850 628135973 469922037 882986489 622139192 259058203 482613456 604695417 179014555 976718355 638891052 710293173 140253163 513645127 935499874 94888940 858116260 101810247 966656029 201011706 497761386 934395232 590694646 839009235 202729116 984726539 774898256 163030414 473209596 959914436 317635559 972899060 413644131 670962526 321552137 342446853 200772300 619047912 136295975 428526455 101334642 58245679 119638861 456849007 108402622 85016999 142184358 841900192 729223076 7051787 832838140 395223750 939775806 934250296 351861570 548651095 327550815 379539300 32534783 957929630 669454358 986285395 937633873 907935479 88000564 465031525 891409895 362535123 782394622 572285284 770670972 793319528 853601649 745422856 826430654 927904297 865072533 20933904 391029031 612392854 682619470 323667885 131932702 695657135 886109761 284997024 607943638 854349984 308082975 968910884 83000503 537998049 910006096 291712293 547751722 751673569 560182709 391974633 54801911 62291240 326231196 785094915 12743297 814529661 528640209 578809551 46107433 651081459 478650220 562441766 431218554 168852307 886639741 696396909 754519694 642047835 849148794 633947614 724035870 715625883 362595905 778642062 107602119 444941510 729997002 852791073 95002080 715169575 520011972 182653498 441854537 752907348 512709932 361040180 850626645 175991638 651072655 547598855 135808824 148687745 435089925 171981962 440986894 960165279 798175633 910436612 154944819 963877510 604523348 709718352 44474846 34856434 91669113 556977886 868430214 252293468 792869121 565801845 205213345 884300487 819309550 582115099 735612983 577150926 539475022 853392685 611547483 180202331 957589183 702012717 763307532 701274373 45928967 969808105 171947554 416391412 951536709 250525196 761225614 314824254 438672897 699109621 513986470 725896766 838271501 272092132 60654516 398007646 427733741 526217856 605877896 774950371 536589076 956368776 543796124 407703618 697640976 353050126 317949501 490853346 682526664 431064384 274799698 278658220 422744627 276940500 823911903 81054514 975171395 824178760 369668804 714324652 874426591 108007026 88258240 958417282 639834221 585366949 922327701 425743686 496607371 404260498 459121256 711889971 418998122 688645803 659320144 249283890 843002179 608336824 515016824 555159332 245326362 502020012 804548895 954194671 329186592 410832373 112131194 6055992 141081955 335050624 447071744 54667227 943844450 831313536 910575664 77113108 684574283 122154024 424831299 236434752 542943698 497291811 550562811 143787854 528780902 622413031 228064063 19272443 102865674 472579973 902064101 134430724 626299641 109390813 595730390 807537157 182739052 198587371 682581002 908820585 669964132 15005008 332249119 200341057 549340328 256862169 367831929 204413514 422558951 138401876 84909061 32147781 113262374 792884871 852333516 245266163 882806928 343357244 72778951 842428905 153610961 482990478 942049231 416938764 223477258 913252670 663968375 395260322 70950271 50286940 435654813 900431847 617107298 458220825 974898863 29897608 706766514 781169442 361403847 383285815 358101601 657993873 380545671 648211494 128336011 352705889 936021948 600071638 189219577 196616461 896680174 627135304 248098144 306963293 227662506 210213769 18902354 295257850 64217394 404150445 681570801 577180816 104719023 976366998 163184467 430512652 695322212 470602111 198633982 435137870 507033756 619730719 300815982 411500975 440282841 152747000 755798751 457254879 639489879 35967060 512393592 579534713 72156802 48531493 482885010 642177334 2516791 33101992 160958865 877412954 723740795 997021460 963373808 313198897 872846901 441502174 607614943 447491052 988815204 867108308 574185705 850849735 461869566 132032461 630220106 161210492 20846617 199950324 437177722 494610667 365774250 861529759 716610405 953875172 227882328 216574947 289222202 25315588 5869382 625725260 883313543 383228199 84008269 138031268 474212646 971626785 750116782 595359910 732614501 419016452 483687584 329844879 533794669 456773334 350833772 473016775 502460123 941385028 987892637 247702639 586015058 59718746 9341455 655271630 56258278 929519403 912876266 970566389 235065206 494001663 730143267 736229364 249303422 414198684 217909277 754185635 560019863 749058158 239093599 99590503 215157244 311161142 168599584 555854806 790442612 288491847 239702078 905313310 306195494 105603809 798666716 487355215 568562146 254363012 81335308 537502110 177383055 87720334 419825769 134562740 375823525 294922002 453205441 514512668 134944258 540754191 252760278 699918745 203143123 711138012 840593475 710476238 141487204 941462567 829090373 726212162 447233517 416375300 729156696 150106259 603320552 93874733 683450948 117069601 623000746 517697335 474370817 353917252 402299545 827406476 964972739 97991775 229430643 811936224 212694825 400068732 312388585 314658912 437078795 83595742 563005391 590735691 454678970 744329788 970776566 32791862 87827364 648040042 104835432 147166530 727959399 568287804 212813364 92458816 250617260 248355395 803228633 330621346 714332216 447514063 375616341 365259915 530829330 225130866 133359826 549503319 134073013 595966428 701598031 231166254 423461473 621302074 268444681 442640789 20096207 573845866 105669636 613971143 598041019 251358927 490042043 473969522 130714857 791531432 932729873 649479680 54863635 744472962 336663768 612471402 848202610 909232759 867457841 778929749 390427178 784089379 200467322 676554658 456291653 109973540 571116355 473663025 159977733 571126055 152742872 807489217 682419798 419952310 249003772 871599743 344317839 32024654 974304196 887236536 901354269 685581886 31776287 169423410 751998464 141982004 352874590 653460917 536487101 138213996 831132833 262040603 995596556 892658527 98421187 190534089 331040131 264898611 367513482 138371745 45261366 534651981 718192016 190838561 590709731 459201215 578544610 837490774 616528564 174591976 856378497 671531437 539464688 824397862 428489664 131341664 788567816 84445996 266285954 444561586 55749103 802738013 493838942 301298348 964825212 796888290 498715090 163239206 717937695 564573272 287301619 710465616 443996163 725638222 597030823 148089131 345168900 313569552 707003624 631149641 99055092 754870647 513537641 591704873 602761847 129090147 708448718 863300418 172929499 580006405 15491142 562297201 984111573 317464112 984403577 560289507 454802366 382067090 557270109 732832692 989255380 623784810 955032588 762035609 144820616 13958738 133789235 361677109 715419698 939915689 665772095 86016103 987655684 418418127 261980747 989103772 942515292 470063600 937373900 201873079 805337840 762686612 179800462 755754872 644375246 965730030 547577791 927913368 355058393 605434926 519155898 981219618 221747264 704095093 20040388 200901893 528438280 33819366 353006891 781568623 900635605 279010165 803938136 596030894 310043081 388153499 578302872 260621463 624732771 904101119 634127352 263623895 815204387 22000397 647780289 843600224 214557117 433632598 912845222 485486086 171941830 478376120 133734654 681025551 981391363 284450533 69596201 520765770 986698765 489478085 915492805 551382030 618928195 615616340 272004688 504619221 259678605 690238887 523808492 773784580 103834126 693880114 77648688 113705331 442511547 772581226 373396523 653274637 590204797 200433814 282918087 143536201 183911701 365589495 41799794 530649583 86028934 400013753 416668694 932797860 934780060 221032825 341110 257685840 446523002 926491055 671319962 199639608 68439809 242688507 222280393 955617692 929189297 628680507 59835097 641333602 845158608 153339452 664067984 120577929 318815690 463116265 347047599 295390767 205184198 646074374 321683269 919663598 319010857 614365722 352929153 751613204 383688996 53952490 396471127 490279446 727843596 834790231 157205885 470419460 258765007 753517980 580486638 6681700 352076014 408553239 359391596 8126601 341038928 374636833 648897187 105074369 487576482 268411061 137730645 788071500 216478769 907310041 234622387 561505248 900322749 281582449 692120057 149316240 737300754 6654990 268693046 462589656 69913012 469451613 705208731 79516522 10691758 135829872 380866912 209681443 79078066 443145135 735681756 188219260 876987292 577898979 338244132 602897294 677864482 205934732 386856183 954373615 875237352 217577351 524667534 996807308 134517951 40387425 457990920 767913260 574572483 813631010 173942635 988284778 827686131 874138480 194162403 940765731 369351059 952928498 160729060 83720912 837311781 49280605 470338624 268361500 728556564 370764894 300109752 326091385 386585541 199283985 56913892 680094927 292910234 596976193 964244850 369632372 851829163 511319588 911079286 897868107 464802663 404620241 114121538 88200355 858740518 268222995 170816125 27618884 109102593 968464330 782716463 814757593 717697443 753907436 19531993 275977835 142740665 863957822 90576987 409986147 95497710 896200972 51461662 421523437 481858193 60222781 69221008 548376552 82281868 656376406 911742514 546904158 875975813 842492520 189551622 980312949 849985662 228250252 958658454 809237935 95206808 952720142 137017803 774891244 606813507 78081999 102312094 716499807 10349141 257716600 162714568 330078617 777306534 777714043 125578186 862025356 171460095 486972748 397357546 55283201 22930245 255356449 143017176 652675383 703540325 129417244 832467588 38164719 474131354 271959482 293890487 983916704 580478561 530692948 216813452 634475640 625596247 808219840 530081327 311792798 309307256 275246404 349388955 333061533 128875913 531071563 253920829 435927678 423433717 282545863 431103406 419371322 850445302 995903253 5876420 96744164 983061255 26299375 545711107 941433756 699461374 703944249 791687103 243156304 554346621 437903854 794221266 366622194 387567009 890171273 324156436 782444533 185488108 657246504 277876418 249973879 683257412 191781906 431153979 561330938 437342749 24584684 378038420 865372148 811139402 384408511 615510047 171171424 829721780 483958373 849613902 413093002 343091580 713908187 46359504 469475539 780499459 737157166 858417822 396283757 497150865 417919938 658077732 100616915 612838951 902024773 517269966 403951864 525793267 30394687 37106789 566780914 842750767 853447037 559708257 152560235 661953296 176688152 646754533 379581516 19444162 904954047 623269764 120480347 914961630 50108474 315710562 613982465 80291094 821240935 767694527 490082591 711203272 900308517 518992517 638873512 591587669 288003114 926937267 935686494 993400991 803217686 264668790 461448465 554354266 326375821 342732072 945781811 571399688 827517365 13971275 588564236 353032780 777177667 461336421 735500159 848592822 678188896 157260300 384563018 601911676 731723497 354052206 329327613 548032145 119509184 375730028 274250291 17437011 608161836 540487800 68622635 257371618 549356675 701705595 124157638 254285083 829488777 733979222 175020243 45922515 969880316 65328781 862992534 423628967 964028898 180788820 144574994 420017003 401776299 816673807 2786325 853883266 478106188 223794027 793855178 407452751 249604877 474693686 150942943 80697952 578264527 386286285 233036512 152392972 451289798 973925267 158595911 672879238 307660094 853473168 724656788 794924140 98125627 491437643 725297828 466472519 643438757 669969000 673675288 829456394 445780675 220048387 149906679 834197176 159406848 830832404 256149545 967437184 861679860 83046315 880845840 202565300 475980208 317238612 800254824 483628763 9092966 24963504 663662332 816170039 810272968 476558737 532129221 250394493 718483048 993064259 477625234 410143128 419172454 199587098 284696801 363403302 439827452 85294594 471437913 532727901 803942178 835141308 452730947 716258240 659119230 303282190 886005820 431165690 316495364 922754876 671225991 152911802 678251071 179989158 3350697 251916493 857932719 596701746 709077517 745640473 704832291 178392458 999786300 435635212 332263115 592773972 296521098 750176792 490987321 912037265 168965292 353448621 411284924 220775976 470849967 113302647 196462723 761014234 762091207 799639365 68953663 573810069 951670168 70490223 71958950 162921744 229987137 784959794 928341374 950652927 493140227 649532106 146407158 263746138 272301407 965411712 806417037 885172295 242590051 115931736 5483804 294000207 580266307 285403462 106934564 730947972 612315287 497452599 778598171 45869426 753606208 467045603 499284982 573428721 891403160 891301073 349806863 398253485 714767796 534912760 576216644 533232257 763654998 26213642 14169093 596523487 149387083 229979047 213627155 924202431 146014077 94077174 40951925 160024400 225779620 427974551 717735789 846608065 265004599 118361452 93903470 306593400 205229729 142551721 984350341 920761906 396695965 40239021 271684688 367401291 364554195 197584062 272079635 571192293 483676789 564910480 853970185 158639756 272195901 90130242 879573733 396980761 480872928 315458829 203116153 905399974 415478563 605235177 713288236 890187760 811067650 857437262 336698801 224186023 13557775 727535435 553063929 105654111 337609897 384388979 859654606 454876770 927979522 383951186 467856643 596365500 813349591 388409151 200830503 623094841 446702540 155149278 893779365 857514527 333953113 508242988 36383764 856953840 105738290 648015580 221561266 268248442 524269771 652285117 153256205 387737506 706176504 3171018 110240736 18169296 632072346 706712969 220515396 408357805 954738669 477676140 763910516 890322952 738435832 999868556 712456194 316380235 258834939 184020289 454025253 961454291 841552474 675187558 87360292 794015052 170223480 393801258 642214837 865048797 727466804 184416029 81153778 757405384 370165896 647437344 227508746 336675383 847544573 814312343 606708889 700655110 243798854 83736484 207359389 689094589 514207671 691075766 588060486 685173797 936702697 375876137 106935387 598381371 866670853 577692747 341276266 975775171 223600095 306954035 580883232 207308325 135117376 909366128 28553641 921774426 667377022 851999518 177126386 425762512 610688759 552155441 229685001 329361913 491080513 697620133 117633790 101084208 607442381 377946923 481598598 196988825 486433327 906527215 128634298 723983687 676544195 926707404 445761062 925987095 336268876 150265025 795953259 852116634 793068404 820231913 722053831 408652017 474525492 7471526 943269039 489223885 865978285 310573905 744286955 314954510 893653173 39109006 6251264 440510026 904341582 213105257 310511792 593819617 245221739 817762022 184331859 16014990 394999324 66184881 415918069 696764870 955183392 25263847 501432278 378686519 596842718 613285596 217623589 716107500 903999108 582418823 743854748 481565549 753676279 263200150 955479796 230909172 920843353 484695394 743582091 387666602 512729729 172248643 466461965 351132003 699454594 485211579 680625621 724849099 128707463 588129437 526068746 583331903 723950240 127190077 113807534 634548498 445655777 508067774 280066955 694363925 965916488 992580324 611637227 145750831 691885820 357223762 231164761 510786336 129688402 285822323 942247467 583064688 977381342 803186896 406124994 144569364 631868279 168883990 917861290 569274757 218024591 186570128 320407383 468914325 641956817 153641257 677545331 197473400 620909079 309017151 684279322 865281404 750159577 588321594 1469308 243136695 859188051 558154960 70552828 714168 998515286 422388863 408080809 163458966 662542550 911953394 85334841 507835833 616160200 8874134 618154246 601313229 275793531 816499995 472630969 43065944 239146359 266982856 944928293 101814114 848491239 278372251 2365321 472161417 748979875 746970605 405792176 907663988 401366958 485797774 220103647 795609927 781546789 518659405 551755702 997272084 344496739 850383132 870395428 700494320 966823802 880381413 891452874 670839248 217719812 31401990 393109720 771477920 343874666 217140826 267666343 323652578 656008836 541127812 706104787 524586613 36371079 68970300 475053330 899020887 471613587 224283510 875402575 194096581 887599097 651172924 357426174 916028327 758282538 232255042 942061910 667802793 36757204 345375673 981645863 856271859 435024723 3627745 274058548 820037142 383146573 556270884 975447722 742942263 31728767 44411376 93886260 336043586 92257995 601311101 315068905 770898957 766751154 697112412 841486957 356102852 287061495 877176106 652159674 439931166 159126773 802477888 448411208 612842702 502462360 366585132 508458188 785138394 215531151 171299340 714031605 612746317 623401725 509047829 122147121 134880009 634895735 991048185 993033479 634965015 297402801 179893305 360246623 893750495 966636360 497677011 195412165 871405490 434172365 11486909 138377189 944323325 816591873 618005803 952671483 493661167 606280568 645721296 636955227 304477735 221021324 151477569 41744734 838567124 290709549 120530370 306305413 58187895 242406906 381750823 604568599 642419937 891518753 351253414 386314238 290140629 542200268 770243751 613530615 648559925 482894134 448820315 555983076 195869212 831600167 655905434 826249681 798650691 280805060 329595404 792609314 533552661 756349808 234137708 762711726 930682800 299277845 673152328 662036343 496157936 891775117 676205550 993885427 923455375 120008752 602454204 257601657 110535985 124146943 165203219 335019270 230517396 683520498 76848491 613870502 749145084 992110057 425152707 417518209 255780969 540524145 2439181 133573297 437956743 265437529 375845575 288842643 152584351 284007167 713435158 917079239 293876453 82309769 934420204 733106312 368222538 341076569 590015389 94119852 901676550 464646165 167102161 706468387 186562655 688439290 119147076 16316763 140290083 757460443 699459920 225903778 821688563 790668628 552064192 48244644 292322270 675811420 271577190 821238905 104404820 123401288 160470494 465464589 104467050 274804532 598821714 969459546 166995119 855137671 404922396 638583011 723419198 453794843 614879466 563175999 411464645 341942809 503986915 888159233 537333772 869872514 33748044 306201725 863895428 896371672 813179252 712923393 617204030 681162324 552717891 151654636 450096372 409402536 653441350 853237351 139228115 947501089 134562819 290327515 236300170 451797812 439669750 812736958 107951091 542454757 980505449 461755354 10200271 247223537 891690020 522197899 494941258 149851933 318982921 95849141 807275145 569899716 334109161 190085487 517608033 155673172 100241720 297933557 908405075 451319251 579967193 565387913 722471225 987288193 159384689 500524486 407212342 762160985 333808860 216194313 123969744 323490155 46199992 543576378 934911188 374115330 683874567 850096775 833558174 813329126 899870943 388145471 15699128 674250687 804370879 295047669 334954203 637156075 20107917 386124056 381775921 871867193 921790664 718014432 944877090 624055743 557271144 216335306 244331017 559760922 931326873 446121766 980247325 982503381 261279638 839252501 380583844 625976869 856030364 753573975 987344537 223703592 179118557 986347844 613774923 278648860 358911692 313085487 815326851 457528767 6032290 815627568 189008494 355653738 299839701 304604229 602940847 33117758 572040633 70459176 580420087 598796171 229481249 703744556 596966551 173398919 993809591 728954626 979447124 458728385 49052198 540577776 581261912 221956495 219016729 120722321 127082269 508752534 335198983 998307769 924710002 641108648 720735684 776829578 439908714 545982249 651325726 704897324 923162586 628235041 223253334 779603345 842553164 162179319 937461550 116861862 64622678 710510027 928224177 86777993 100711712 772654132 150750456 106488944 438109163 154133596 229282781 460600493 539166000 802528875 279569424 914654611 755687871 620028087 952810149 320066826 145742335 337597272 841409298 417722159 387086871 615457977 825848616 889679782 972892682 204390302 242157100 67507463 130186784 600219587 921307519 857615832 531597888 443030796 194070945 368338878 550232127 850451621 412877168 951892419 765314537 226148677 924029861 105098749 783770108 280006584 798712487 608003176 736249420 652035267 929680016 859932532 38448125 216241192 473472249 652264353 524514229 70934588 997114012 625887132 739780736 607671959 718250472 591066226 739877887 583947835 323770443 108435634 417687000 880329508 269444584 798720055 974055638 28261132 402068994 747504794 576055139 116122877 667011572 173568564 203709398 360963133 933657832 520931729 787147190 72121599 26392303 630850623 816777792 716938905 169062873 618856550 818606452 679323637 630169994 879396156 676570056 138232016 351133350 704980006 407908511 94997867 812098437 862842630 942622553 462638127 443555336 858669256 258880081 454113257 69207900 677021940 301047139 288104183 134536167 459641380 591181187 399556142 330442019 407204451 762142666 403158063 128789921 367083233 814484245 944311007 60359244 31226221 603016376 722936177 163700380 507586249 502312791 790400053 653701625 521430306 511814508 545943251 16763356 269983499 42910961 228558409 512725887 934457357 768591931 446078974 414379943 87601630 319551452 368794524 566853579 396529291 838578857 26574650 327492662 302114184 769181266 4660102 287210350 421712090 661120318 646254328 488817988 561072453 278755122 950080373 774024649 227295290 928188828 513465092 641870478 802176790 936792803 557770733 824565888 15385259 228141803 45408445 998544724 523667907 110721402 300799679 668634264 157447074 557217082 785627672 232952039 331966106 689501605 647227262 437285177 253221044 233728067 967313316 502299311 902716331 514394904 501373090 290393892 674179342 652452243 343349351 878876756 651689009 206485786 824836572 527503011 880042577 929012494 451694335 517103779 270653894 904532873 340947245 506828690 253512927 599242606 610530262 579926144 125367002 833449862 89955810 506935372 216804591 843807765 219854086 738136803 644894973 339429959 663244608 528117156 498689398 550742191 477584999 416661940 149582348 417629314 740141205 756534480 284389485 999891472 95162663 26516075 373600227 798710651 77869979 897819245 309464662 618943557 899783769 469359265 754573625 427530923 200399831 42702844 386974827 827918624 294156105 141588854 305107145 260032515 329176603 445434409 943983047 701260928 997329426 482953737 494370481 686472206 826820734 495912286 176594302 734971791 488285635 704365184 742743367 703208165 406768760 183518483 48014387 421080879 717921635 708592550 338006542 406797643 986568249 696579041 21299071 582796051 513166533 104451652 773161487 805816826 164057535 574186798 317660568 70182479 319598381 138806127 780279018 259703190 255155215 310949691 25814795 274158994 896704700 39506897 125954626 791324858 75677555 69533768 778655676 389132 714587209 858978022 37262805 958748920 548149113 599976820 718902968 707999873 9057372 872395378 821714684 941177172 941597598 127958611 47258817 234267625 794805787 288734411 370673395 464148767 760701476 667657377 314009828 874623467 712188932 463327397 859502485 116820900 156156001 586856773 88083826 817072971 702241444 774336223 925808021 431040332 938495817 302696731 456557755 755191653 42327023 894860113 39843429 107519714 473472661 82798807 975856481 235053843 472898535 111752139 848544865 529552474 962547862 926995719 156192251 145034718 554712691 292267040 767050563 363823310 570695902 793764686 337639443 43097765 337863841 355273509 570806611 10879843 989745513 714915859 791119160 507791403 431410145 9239956 149274800 760005560 725447152 619930208 168884290 597351180 329732834 471955779 783482120 897822823 354901440 913025771 800853371 696037465 159415989 125968434 282222030 278142825 464945621 114940491 771228200 487512149 496236047 250717747 907130880 672818859 121402637 633612355 278686022 325450328 26684396 623006320 289899799 656560883 867019360 287504534 231920881 94905518 932436740 737156785 27208694 974358779 814655759 467031657 664006478 772835819 91915577 409459583 267954557 628913049 194755449 604532074 943564738 755388811 865358265 354869860 81313797 925091336 191299014 306166560 531328548 131459035 637149650 882309865 118269151 149229514 30475002 312383412 238017379 244823921 612224871 732221991 244758836 722905687 760604955 426166561 124946059 194030613 578306888 488200210 164461410 30298437 267252243 364773438 186888291 414138002 468805977 426960863 670766461 234633216 523294553 34255300 954996366 536745665 182898578 791581194 736148048 584085936 708605726 394254916 879021685 640942118 252387453 1652529 691127772 262734433 441578862 884946396 807513092 999070832 792008413 69475503 783940948 839520320 543040110 895477601 313998065 823210292 280407272 498977625 990412836 861907638 833009379 481789369 726528246 874822131 430210563 28759141 412401045 994877501 400197816 541457365 109808018 535417684 675528584 464843959 952973589 217574999 968349944 903520836 345102436 328511674 692869003 115855052 172333991 35993538 880322442 331270255 663547406 750496231 961648300 798056207 342566196 443652957 200659387 59933193 792282519 932517004 501805899 914314047 121861400 10655256 545216285 627502731 162576391 992479265 691209622 56304591 27125594 594969391 476672589 217765341 735285788 911609775 891566609 963509325 546232267 810426763 434393777 690090891 690808835 692643092 463259121 830597342 479256022 515422329 489258516 785197786 853067891 827782363 234692959 62543731 675451362 855279737 89743804 104897485 820579806 937618756 982272281 43009105 844347436 791330449 553381249 924847614 375631504 400690523 190198808 623139819 815139241 507380995 667999083 450087309 196454313 238344571 375491388 424397990 923250501 152897857 872245876 761810290 33305165 814192115 930299910 307380474 17645419 210445063 402882669 248134892 827336847 760595126 304902593 383440848 124140362 271483843 857020940 14259281 20901551 515319966 172555273 730988157 143914106 993076531 649132292 664241426 634202192 39505322 879859900 891407794 752412764 362305973 290750487 680913571 453986804 942877197 937073896 191032573 249937947 859032321 322954165 234078202 624055445 372649733 835781289 735779714 913062113 710450613 918612498 759157387 643007621 832910481 501779788 220011059 973767084 603450764 914134078 426654564 767166951 8366809 929196949 963430397 261414316 723863689 210468293 366297262 954478387 378110392 55519767 510682233 323267953 223464895 726387038 471588135 568762904 788001699 105697269 204745812 723058964 280508869 125787391 915240735 915576385 751864312 440039131 702321349 21279880 906080958 505482890 245491812 998758698 189551449 687698928 849255488 720874822 806791219 773496946 235096012 322047336 167217886 493083046 103231879 440678770 745107857 82006059 943736929 426220789 11495111 379201610 836148087 698605398 50654445 590718601 11498819 906270131 740263709 149903823 704400972 840030151 335873133 2572285 347987161 926997579 743459889 890669604 742064455 274306537 827629913 393188810 863593689 792151421 117620630 379706236 53282939 780794525 19165458 665100959 694741693 306919923 273949309 760062615 410128691 552626408 503027807 552238899 733044806 460889997 603692368 259617368 473041476 951615405 318773009 864086059 624366154 52102988 501261943 735275237 308009310 684883413 551326290 394402656 444877913 123071719 934842802 965165797 84536016 247808130 786278685 381902284 705907066 421913835 158638553 348885771 784060061 735253433 545922384 889559544 777070105 666949336 779455449 453718488 79228982 600522262 819461604 446962596 290112555 226141884 391801990 57366495 967164335 335960708 183729685 501582779 556047866 775509965 854153406 778999710 632086566 735825298 82101358 799420046 34496456 78828119 349830833 81987457 803728690 110434231 758095367 873415834 923343423 98650358 464999502 564277548 810575360 870750502 237361798 980611481 28680585 65903267 705499427 353374342 656759722 325724918 298804621 586797952 225114495 715813181 305006885 161451405 111485006 693320158 450672874 178975469 847603652 900831308 961930999 1317517 782857675 762499037 928381604 443501919 601851594 908385105 71824184 496678043 917423772 121971346 519079248 339809815 693942965 377966369 429922639 345063451 920362181 124574700 837640093 250789548 400787618 483199961 21768951 485280051 537250789 925238036 42627568 531424682 226423383 407888835 433290406 945534509 673945936 154889201 197302740 717852727 930183872 830243287 607468159 557589893 487944463 781011165 930665134 426888169 561296780 249102820 138426511 64897208 842740262 337181086 314195159 175945063 592215550 986159414 845340473 612225492 890669935 678424080 314363823 493094071 854320041 567180277 233437613 336751638 669098876 772423961 360764573 435695579 990079267 4111402 185702067 416150738 659242566 67802464 524202751 89077222 280597775 559690642 122524141 228034802 712737488 497463684 355905233 22861424 528639185 205073943 246598282 700628917 45250974 735922274 249882262 526666915 609967507 374839110 750609331 868664085 727873034 179484794 409346629 57070697 527429444 867764647 305668366 624213157 112504318 149450312 205550998 271222723 676677144 65120549 932913863 293276792 15542392 732455032 529353127 86230409 14616002 32230110 884581427 95432123 255742548 939155427 48257135 647926863 680519997 598434578 948361202 179902828 604176535 802315240 904052427 329338223 547890454 309067029 416848426 585631269 519509775 40122907 496494045 752034546 557123976 123479283 481146908 781616619 360135212 750294505 305812451 198513581 459299452 288000942 138639582 255429060 971368289 491456533 343844120 932480828 782028959 820245352 430004710 937779610 96834077 840003510 842728408 169154676 327378239 604674671 936345285 223881608 545560450 334044343 390869776 119494611 348257138 965467737 174685845 555452365 292570281 963354513 391070238 967527031 739063561 161920070 823725421 615950043 519763820 919178484 593878816 726791723 939626350 644386347 857204785 254566950 584732948 504528662 48952707 375184891 801390785 245209361 689565600 376258862 201027567 902203513 298045652 737326828 732720510 653593844 597569118 507814725 840162787 794321775 389658697 831718249 527332629 678648558 881214326 478505040 518847171 595291190 647820223 692769763 672320914 632220002 161396629 324929555 426008510 735408639 665959355 301965181 654567207 95124965 718813884 407407435 353725175 788666086 610853817 528003793 379393163 191222257 437071813 447169047 307740517 578172664 580099522 651670376 439833761 929804238 8057302 153849073 37631780 501261691 965836278 102288242 21730760 878036235 537361667 574535662 231256581 513290750 930048234 85245425 810781213 621979730 213799742 303821328 550927822 70794269 333752441 602432122 885255914 743986843 237492112 82531318 889295590 614637875 955809499 291482388 163218733 503286989 210337077 322083124 945017990 880131420 548677745 627223529 891932279 475102356 84096084 457975966 994966165 917150236 256149385 597556563 935035207 581155835 39802377 22621939 515423165 75845845 569873108 329975865 571570642 98145403 139458425 782206097 150990302 617377533 713956915 370930298 211599530 842338444 771028898 272890393 380492369 983495235 910934554 624393175 71321255 207537400 632889125 240436507 688049864 770380515 948819831 882012575 852486709 158469603 850873900 547519714 531278363 962202075 465135068 425766118 370160781 997383718 511137287 681126646 768690748 821907110 704056197 873812845 573326224 464745516 291393800 111112604 873137030 684187101 97135677 539463682 886707643 866756431 535611837 906617889 916727925 86599226 434980255 818801616 292203288 938564749 904675755 856139756 986349281 588420905 97955661 362835103 468040608 782947381 720326599 120005957 614726276 379190407 27061371 879792449 915898119 525137587 402935006 832002106 823295091 990831782 742321364 900515367 131635769 861683777 285765040 394523242 257032467 858004743 662329034 965312982 804497560 549357903 631878348 262371744 555827157 11075133 230965370 704738456 27582896 650638157 515197881 568439934 403892280 612169987 846138954 386477842 756619955 317675766 70557339 479605187 997781294 487145509 441016494 956349562 684376997 732478040 150505055 666184092 161827041 97639881 351809154 840447286 780271112 470972159 308198828 996071484 306563153 82154227 58652372 165994797 423930685 942686087 972801861 644299521 431142221 31837128 692751419 664172987 388524329 505561652 591900737 98073903 404682075 950568538 83804373 819548578 284217414 41654800 161449870 870776330 881113313 879695319 172539972 347878070 954105604 901644589 331389625 490780616 804475520 198741788 304140253 841808595 876297832 546061214 643790526 152362489 887313846 148920332 717836921 18216852 740825684 841460369 548097590 244071136 940267438 293275920 426685165 369110385 364592304 799935164 475945519 850738108 553763221 414944371 980013583 429415036 761752143 76938454 658450635 681340462 421389727 362064992 697720354 672328729 958222606 768892945 954359964 191057538 782861163 657323562 841955842 755914082 744144038 560098202 5352849 853889124 24360906 743811735 445185740 427539506 130101197 250833501 760980297 676094895 239295064 979890673 955621137 761295614 490248326 819171897 270985305 176215720 370877806 284503659 556738249 79289689 196943592 270576252 34910125 583571465 862400839 106060591 943425118 170614692 554067112 673123535 233833817 641960279 606989609 621996580 818671805 899067601 136484115 689140140 987373572 484320525 812071872 231789674 337501885 413606304 908810103 718085486 327113478 912033195 484526473 489137047 611226325 197920431 806518885 708618802 885308110 412351589 789111212 524217440 770867698 638804336 91273648 37199324 965318448 658547291 583383387 101517211 394934338 292048110 550673563 915222593 435910828 774536699 189760302 990778493 734774976 835901979 396620605 420195960 5823154 414796465 400659896 259732933 320196528 692371532 277937439 504403205 864321183 79366515 122639887 429745201 654882246 478253086 168004760 826950075 62099443 30812742 930085395 204896864 181101838 82721293 48947309 742529280 504006415 662891658 73864008 349185616 471841916 676933901 114554514 707891406 282563858 81056922 454743995 872151724 718776145 929748930 183893274 338050917 890650921 632935611 842154930 943352341 72543756 876663180 532261476 255496454 50733701 253073188 483598161 409744974 293152977 337546639 50930501 771481578 328109131 209783439 295040899 252160633 425301568 503460313 911715681 164021003 242290366 387945463 713730514 316301906 439943563 214222971 788733233 220048555 989931829 381859940 489565847 628099433 297801381 352777676 496197928 525161063 261146591 762799243 866629031 982144394 851799722 106645716 372452195 617030072 900127357 798480027 294504458 60365293 683972741 438270643 604401494 62931792 150701570 960699637 100342643 48887530 102041023 197270073 145150940 287182881 584497287 917916778 458742566 350091192 86704859 792178268 874627856 786693376 476592286 474589356 375635470 629079445 53594306 909416279 747873457 64030894 874155906 869741693 700220673 970112897 865816127 339228382 40660018 518747881 829762303 731243846 85996787 786231107 185147863 768367571 768775427 998259673 304686339 888026252 897972840 567044901 201788127 655639069 482572011 932386808 556889853 371681754 51101035 316951022 223562547 653832605 94287417 902874961 920362356 262724519 423267431 987791164 300215720 669036526 589847974 241737743 486582140 875455025 193852330 547115598 781329887 801465581 839553928 123329085 708842097 551163534 746406058 984844724 3428520 576991394 671950218 891860244 824103526 78815999 724493022 488495267 123132851 951981567 891779715 629397049 119880284 965259768 691626894 548452577 368722534 878159390 630553998 673866406 698994882 831191439 221172640 42597047 778695570 234064363 700424973 208939302 135027081 957085573 388277221 690159636 505494922 976789668 14123857 272509819 865336757 858596205 337758620 568851617 195452349 427000679 132746375 408969787 673511808 466063044 207668243 276623778 108083654 120044678 812322098 3996877 432837209 836964298 549320827 696064150 418119301 710203088 262323725 946268321 466105482 714901499 442929695 992915891 330167090 172061358 895743052 195150862 349573587 30883502 157048858 682215742 291234124 936664510 418357437 76301457 343313489 252822676 512367966 526766966 13384996 727415394 44773587 94683780 705785399 259406881 410212871 859581061 557224740 96710600 41335032 609824561 446748318 238973157 34823421 42579906 839033360 186479572 758221402 605301629 332987634 916518836 22680726 111690708 249422836 255397618 120856345 118078713 604582288 44529631 573690356 881813414 721158381 703335904 505703205 201166065 110073615 745768693 437612842 704731324 356186163 78089191 898582021 12733770 497683816 357798115 5424965 447883384 549671895 120063120 617109076 608966610 257148185 449103108 207888070 444780562 275094695 608515070 42949926 219038043 404076991 455516204 328307056 664631069 223715818 944461630 616565196 208919641 114864985 986547482 683063409 703869544 659493778 708252843 433470264 755598728 78440011 545954810 896659315 666977729 46340356 373427460 950375500 332894063 274733253 126392438 346324169 513451700 661911256 596088583 708199189 691712894 231153343 71105972 168377829 422315944 663673115 86292462 21117996 192735548 885625704 845965060 827022341 169074294 182982061 572334625 32696788 804003234 368431856 472882009 424925836 868873479 111251083 192879286 868721038 499832847 669042774 931676610 958486045 724229460 930124465 121082483 450641699 554674949 843746895 151658042 662479087 726171241 712071837 920808778 204886954 650889788 735008951 418843831 947870208 421200697 506203792 111412837 233910782 657943964 793796867 497201484 20647152 182562822 760421241 313117898 369679592 167637110 255660206 646021636 807713888 409320337 465080110 821048389 336701654 165420445 701079800 152560076 381827794 854974075 61858878 126855311 806693001 551178476 921178722 96482861 372434640 212940290 49459446 957498279 74003243 221681053 430174209 267124365 963777655 838986923 609598571 373905271 28455649 901648633 512543237 358958922 396157982 576372125 42856547 256799908 852581804 611291659 776952 804520365 799775027 118191384 265016758 971586287 290128157 88162018 906788192 43697360 651221674 224486589 936733866 193072955 828230133 217992153 740884308 204073393 44439472 440306725 446389162 286997668 17133754 845702850 742624775 693464015 944306884 443894814 172086020 204065507 322397983 74301014 761360546 609535387 813130028 540684075 248336583 311590296 483094764 411957137 919813455 705359346 730526670 681427599 779501556 557694214 682279943 307477788 898813461 582979985 535705983 722954524 973251530 544231651 335687125 785463140 234128853 100620051 414792805 892915111 164099565 791710027 552124668 409311521 792112307 706986954 294544427 737292793 271387123 354908033 444325501 366579279 175902038 577295189 643409262 119885410 843150006 45383952 46804251 114126354 107139813 365117802 327125346 836445603 352080050 866118485 738220256 99254086 620195179 911827504 490239929 175058075 498802978 52644761 605629294 519376519 157521068 160574375 707935924 433259665 222794848 99131464 142048678 131817859 738733590 587132280 80609518 497516243 561868718 696558968 937185559 434033913 385900430 810669655 100282060 903929146 400864450 914654815 56075333 789002164 924035378 361318339 423344868 916622639 763591398 546824657 207934099 192468200 401098152 873982309 745730078 378929363 612678089 481716398 997309391 3580691 917882457 183411987 476712770 762593383 461266648 588502860 848889760 181336519 630174327 367579889 628242597 62621425 392604966 636877469 858225192 910891111 225622020 834987588 66166319 466068915 452722517 54405163 768098137 934708881 509751799 263496475 485668804 293015641 741189938 36498137 943659076 665711810 14512366 669111769 126484030 358310105 153830597 752523936 621302659 352048485 798976197 843997651 916933797 428354517 195086378 545024013 130151312 109686490 472735828 229910550 694687677 703556406 511081568 785720679 226631389 446299336 514449410 259103011 969438795 499761299 846771009 526921751 833694553 892649597 502730566 945899040 342658582 709433183 20089200 918727031 28740341 9641960 482413222 535823354 774223007 477735223 472883796 406876887 614960577 532228586 387749043 762000425 970423506 84080340 544286149 809704508 939680991 379193373 953315885 439394822 115955738 506302987 329488721 727917204 286222088 130231195 197404613 336155327 174298890 21265583 888525095 101625797 49180268 122293140 375289425 780865389 89025773 870866900 273755436 309461938 383795958 572655530 243780858 805297924 611147443 36737295 937744660 774330154 792575079 435493495 803703130 445177433 602746026 927191836 829355774 242900948 477249291 621984734 575453795 975286622 333391432 484641399 963729304 963699666 893218305 666188361 31047662 999592503 848128542 364145725 292738398 817849867 495944335 162378490 826588541 6931322 340427458 449047112 751190210 811405689 613986350 671577176 297334628 18507639 984034541 416716812 664590809 841770187 881862832 395589809 981050104 784584644 281451798 490923614 453557251 875622840 199379618 835724943 941581369 513517282 789074181 945620642 762265637 774364147 893233103 405536377 569741947 884440933 467542927 949382672 470368166 834799088 307341801 227515888 738889820 231384398 511153609 60257543 326562182 831278577 366587506 503748342 161373661 943277139 403673428 642374188 450509758 925658191 688861625 873212160 785264881 856287360 549060974 161571483 65430812 77907625 80897876 922692665 602393768 784391301 778937512 355064101 242574826 246158672 704900295 74789176 405992037 969155722 976697567 998010121 393274168 950329124 546406815 73807457 879572386 98500889 136543229 793303334 197148250 905857315 332597773 58228590 52448216 842763327 607946410 670438780 24210710 651534590 789194811 979997817 431074464 133692440 461616372 36689239 267839823 717867473 599089337 995318894 495378207 938847437 234747775 145396297 69987969 21144693 75612431 970973624 276463517 486329611 127376118 594630593 805936447 414630641 951107855 979085047 30577224 256873898 833069554 732444572 371053397 434861423 29209972 393267372 739832664 637485122 781899578 474495547 737494949 617263666 466950482 94073051 393191317 421156311 982574150 688760587 584002584 792780583 952627951 586354644 741659448 432856915 2829057 31391868 271955305 960950046 803465373 262898113 317966323 141936440 414290237 175176730 282149886 360393649 767897916 554979191 446611282 83729973 432837428 835677374 318249770 274725747 232845523 122295301 567490293 292424507 734501450 837065768 556538954 449216935 565220268 218546953 677954083 668067423 506719057 701132447 716538898 266637790 888595923 109419695 159888925 956697850 756913822 578287935 291627406 556006375 698536451 945588990 943725043 311218050 876615316 982152424 862906738 61749554 948697351 950870736 126342968 44158460 57161081 464466355 561703219 237850764 119602791 799907444 577224299 332740970 605628886 34185451 927334997 918052116 286293127 501583744 622438455 581177551 636234697 949815002 200696977 480862217 13950395 697424267 437408051 77582006 52377514 417809733 233001958 870628817 791694725 581679008 680488325 565042756 45331692 70802731 635741483 527920951 619762363 536337914 393739959 512365941 215429697 495490101 790390432 373920487 21975294 896504216 938577176 966610653 944891303 324026087 909310648 74032418 702223929 898686035 810108064 522573017 692975078 666971284 48250668 106148941 92887952 147430297 96133522 729852817 153070610 505665912 747655614 331980533 568586637 659122217 647909461 194278363 240170149 283618363 111411473 804132084 906065244 77467590 250787001 267583708 560966978 630455063 223790685 551709360 682246455 9264333 156998243 958716528 130349346 111193568 556872333 295619677 880916856 462546165 702339911 80057359 831848582 806442364 270677632 757299210 653225324 332622417 503412974 470431606 549841368 682746426 399652245 961244348 643949377 485640726 850293281 828995979 336848214 852633974 908140477 922564711 243768183 931088358 184514886 608113979 939536818 561443731 717463688 943113711 323917240 86511360 681631305 712732720 86328670 206271306 597859929 308872790 237082060 408984687 595560448 154052282 526893501 501970117 467066600 197721133 959210904 695353606 456888506 113917313 849348724 710846905 935133713 621897310 694821267 687117519 566976197 910040027 549406942 701698805 295785360 994203850 743224670 905805279 692386428 360299593 297574149 100812383 747499723 745717258 87708140 556247838 132732054 456247328 693096873 658921952 916350417 943312540 766960137 181719128 719191755 154197789 741083873 621672017 569219101 724529446 21731829 579570310 465028292 690506228 800915355 173912657 214944100 121571816 577164097 227484489 230033798 805143398 471088484 478235563 264735577 228203289 578814007 768530891 825001356 928207343 331281812 961493205 709858242 959928249 111212558 671747577 456368453 132673353 585545267 717562717 524610697 990807238 328801318 271151384 789978526 844659613 856977930 582405467 586811269 603482824 309814025 966657472 137036483 685548284 336593004 604542887 611455957 885290687 149935760 48490887 428607786 580825437 47659691 615250167 371408416 329425782 551814205 1676718 941932638 833052639 678460454 271790573 781570211 868690877 290155251 291196665 752459538 343901588 568202055 922187141 452770254 980910636 553334339 20508674 399668806 605057118 628804416 592223970 844451971 553482576 736188007 225912126 952763030 350004023 890370656 19169529 575287980 263075134 883276623 477679741 857832292 390131833 80822808 555627816 607261598 143957158 370337854 995498932 964431081 523248079 604038435 26916041 681008429 334160410 325661906 99699054 407347811 534203455 130630583 204937585 679229419 707087422 790818344 135433168 676371634 367165758 431848329 718312612 41152126 320554102 207800850 249552941 257378311 803567183 500744616 608238564 952781858 56771760 650368517 87838481 506820013 711576543 934270257 129727238 597553019 258620670 106854572 71661418 51786736 602551505 723642892 228735969 511096665 666933366 383479305 206882097 955193223 983872193 288600236 207455654 362325380 515156080 513696444 107780093 757716359 353782485 66318236 639449956 438264895 468795767 404463439 249891685 348454358 546031323 387060672 241617784 720652093 768072028 801173606 861566718 601006490 210639439 288154562 278662827 151906272 967202906 349513945 246570748 337612736 176961863 839505333 224579824 629146411 468706907 250474203 740126087 488763774 284597995 797626226 185287095 629949642 936634858 833087187 96172465 367562113 590545482 933750301 771401749 483765430 167523693 670740584 359999778 664223961 700168326 924278747 569970317 890352140 298206927 584908196 376389727 516476852 405629447 532789487 962425334 917260110 24145445 815047855 839877400 914867249 675949488 284940811 815126019 470966104 186524310 719820616 669982234 425501812 807202399 288342315 598752170 826638447 147953256 645608914 441535460 292065181 443887426 102784378 4318398 986324781 940283470 129517552 161440966 975676556 580241262 105253755 579473233 220952371 128172713 489380321 123656926 817298831 902743019 103712520 484283306 984609552 813761226 334676148 821139064 128666497 631945355 55723864 735517365 322064026 986728682 76560263 213451089 465984954 10064625 884511324 367392971 109588653 591589958 78208657 920949025 740872007 837165620 288987513 147338839 67662818 354867614 547241813 687211924 209495538 433626651 955678142 316911823 594028774 655581466 484388932 33884645 235722486 269600915 802143496 466163525 467800421 162881259 412879554 554632976 61301573 488336716 838665047 827939644 678407883 720381608 685033509 830323028 712080451 55437316 333648006 986546699 482972915 796059966 573309069 332438342 28406107 6998620 928973811 205920393 236775433 657721755 224997024 666642573 300982939 305532601 636797315 187897464 880509042 968552903 507988690 124907002 812285664 677360249 368997101 862890373 240632450 177828823 60810192 771192379 810604188 836297506 221561272 662768514 783854462 776143804 966103693 471091803 505363411 964039941 380558558 239101076 210473952 595802922 970725271 138908251 652049797 483207776 18335344 951629968 778097276 346082672 158493174 348552447 720231941 579818007 451795845 192762598 657105534 453552547 855930635 980954226 933196842 751120232 817531527 38253181 71526815 299647260 799963372 760829848 375775141 972361159 241941219 585832661 897662768 213594913 806720085 224031470 792457276 822453582 13853920 197383839 374831707 143880349 843377168 762861556 225770139 25676480 728392995 484166719 813071716 618349282 365801642 497571231 326002336 908821236 812397730 447883428 244163788 817145308 70940762 97633503 25817544 931487686 276588245 949405120 304837058 841982246 728378256 804812045 474115749 538821571 17018866 645506496 611623817 162870721 375454648 349786400 380009506 432424455 126911953 135654106 909182745 373210834 435114156 688316074 471018986 168442304 308555739 302938728 587864420 696316250 550377690 95739924 207055336 992080215 208004780 239111581 154019262 361201096 344571586 685950297 183131371 357593849 403760178 986095393 440173425 496065524 282739560 24385889 383889025 794947483 292158396 242461123 117416055 966903172 536985998 766974186 273847395 471167272 40612472 819499283 680035615 68406831 912669176 579924660 520629818 923970661 750447011 798202627 49860084 454364837 355826247 285545183 385060163 826423296 438118903 633654211 335183723 808636691 74282089 178988571 772914849 225420319 714577038 957294552 762638870 898836261 254580745 888063729 494313583 662123257 733322060 886075665 313392261 967404128 719988436 161152065 912839642 355640441 255628655 425849642 708475394 863676780 940323662 843704500 386915203 719641809 993706228 4623913 328787318 261181581 568823208 211532268 357404177 316587432 85826457 854236783 160282705 772124966 968705119 918791276 525530272 843589220 519024879 54150241 980810389 341286100 888279261 593480528 598239074 601035460 924962451 853292707 684476433 810128382 101684865 962074288 787371613 94096331 19114141 60352841 299319346 303720687 421210587 158085746 611961828 554084747 343416416 847802366 782622582 755364941 107835892 701938097 313857979 474292788 55439223 583136013 825925958 321902871 13510711 696513503 747065835 693327949 972783469 342591141 9818731 521395810 792554398 176593417 290486622 224316476 865067968 582496965 276297373 127110214 6055053 558415585 81595466 432031913 376456693 99923557 782579274 579360961 184198 840862710 58048316 997412728 367310195 646263153 617868542 86337700 925558838 267361218 12707444 140094094 596596093 220699474 664401612 57251685 778784738 509594702 931754311 652580994 22837620 925969595 819301531 438663099 728116594 673454139 929035870 44637548 41372920 714736378 616537676 978858733 171249183 693347341 687427507 677302896 144582799 438993075 150706052 946347246 802263031 840937886 394465864 61178578 96818930 460434035 822097902 332064884 804148326 425361826 67762860 521583666 232251741 26363091 523393217 913287749 570843724 622200150 896787737 8202031 674315842 531686776 938260541 425793626 353155618 458953936 784697053 705442707 287725528 408525488 116996236 684525770 599466737 447456972 912823784 797563996 473853732 481766961 661329312 127022162 35470087 184713252 179642386 745422080 891336936 778254197 893828971 913102591 35636459 277307767 138364359 436446786 394958473 639210942 364311196 116787456 460484369 497623027 249999446 754548111 896182072 745568039 250313647 436548074 423646559 200108628 131436205 849009053 245760909 596616929 982109850 314488602 915085298 169841395 59093206 375949297 436789071 579355824 171447130 689220347 28843403 165817083 830797252 739246197 24051696 912611203 228237087 142333717 630981525 14347877 278144120 835022321 800012396 707208491 150335357 890264387 659704687 823328141 458238565 985030636 430551698 823267071 588025264 54808471 969229293 906556641 772175789 126007948 513844812 718334351 3051141 9889672 845890371 55608399 10676015 957016482 279526484 826988414 420820962 433575517 411751497 726269600 693116103 657560027 660310725 871539419 328471436 328438854 726808823 245048412 700639214 144371977 826092960 983962393 97233583 263391040 618300343 536814370 136882645 892911195 736399113 30312363 482322516 786398746 703807301 719970338 815343692 502591742 315833170 295359068 4809458 323228830 201362960 633384057 285710555 961701093 480772949 988158671 90699597 409495695 147162972 261854916 598819850 258116991 954256467 700643750 797764932 113006959 294770949 565588469 636306171 43091880 406459148 651169925 659140705 798805886 270713889 186864311 302716503 583132699 346843782 626843898 878898643 684601355 151050544 884769343 679264529 970438328 934947382 926493808 621674752 27464243 825958225 125680974 504978235 226766743 860040352 793501922 580951856 520075193 72243391 679989533 633028387 987858431 492173261 352377568 685044546 462235894 911790231 354422765 596351998 642386417 976079978 993325255 424119749 567807659 469114981 734513868 347423015 774122891 670583087 47794161 807890401 143804204 930674586 97367524 520873694 936147478 26589333 75229663 90871858 699899463 908648671 747549377 34971158 641160016 932672976 579309319 306686754 322605698 704955302 225229830 360769152 448940531 647192020 881877368 693135088 23984655 899921569 604954110 622004003 325105476 667317562 532929243 551569813 551887628 908435293 855197889 980921449 990421139 573252015 141921416 913726271 579407171 528738295 563176806 110340896 883407363 286422262 517230552 384818554 806608630 732832841 830775440 803678505 116926511 909695612 925203610 221689972 719137257 8916381 115221291 252334552 669394134 181525779 523405130 797514861 762125790 844090029 665275474 614521834 311923364 621583251 177884751 827077570 715847512 14324888 694953648 432491539 999126175 15963147 126627617 541999580 771566342 1250549 873729096 966210052 302373565 448088304 582338715 97218313 346875724 369611470 22394233 339388680 15971204 538680076 548809176 747704429 338861241 111092997 528123962 267531932 763130511 786001758 43950129 124874154 122031157 498961028 232208774 321064316 791244274 729226279 41385686 733271780 27802468 836202245 368147677 500272145 279806172 741372540 126977202 964801451 203907056 773118465 412721545 61262810 521908757 490680579 367240510 753656986 933988114 401476549 104338333 495832451 333445544 307194976 59847791 728312331 246653266 47125193 632429116 647695672 222766114 370779140 140717914 175794020 383691724 479884314 259178746 570305994 511544497 110032944 397062857 110983635 494733906 941208613 911754700 815306870 245498553 800870264 394801721 967034433 213906068 303049879 623430662 703822759 816252321 466185661 56304661 147799270 554679549 590051103 449868824 226012655 17156323 108574523 346876705 89822240 353675842 804739499 553097911 791133205 886253256 662351644 346129575 448261636 431570802 672071235 766638189 558811499 287356515 192336782 630174060 518558547 883725057 596199196 908059403 410800459 882532321 550984402 301874513 615247801 26989084 204242764 721984590 712881508 925313872 903809582 583644059 892157351 963529129 514847371 512666878 213473106 173309369 180835022 318882282 309130665 604729152 376662233 742189267 316776272 871798084 486756017 971813980 855138873 288098267 596615198 841621806 13121604 794113814 414907535 349218682 729322632 497333068 2961352 243554437 808647628 518186151 886395517 697553248 569932482 157011739 671199776 582886237 111093237 744784238 785199821 782528284 479169778 104385745 745539510 943593756 178590372 142541604 632630445 82666970 590657923 939090811 437293467 466860420 394126081 891811727 22019298 190671758 749430772 226467647 674271070 264180055 447895971 310996740 654681473 410927101 8733909 487365224 569755110 228234099 935038427 251185809 556179007 12605008 210256242 593319388 660430216 641744836 70244231 847774634 640171373 113432676 897568495 354774045 576775920 531097537 516471881 457234915 566168648 458880604 496338382 691414447 458991682 34278469 342017118 939964954 339996222 100323186 499068370 464033564 433936165 425500469 23078668 727024287 165044672 266610141 590791624 834815984 215010594 876342114 87862659 736577953 990830364 57993288 408928879 162079187 2432395 430416509 169552597 347984956 692375482 547092157 257127230 453320849 949382627 979741424 874143477 498853814 682390565 532860456 389417532 884079729 278757957 786790792 367117920 839074552 508477372 84238770 138381229 181874497 253278535 191308433 750553182 284632098 981598437 614887916 129977645 667856757 717529688 625067490 861082920 371130476 959178607 125818802 386182160 710348233 443916547 331070901 123934460 487116370 444325917 49091142 650357847 152877032 88019327 747284707 812597611 888288896 269263159 875217938 207842026 649848803 951395933 368113390 484203848 411728699 645515811 688846914 178825146 484666083 579172001 656369154 910964468 558873390 836251626 102829808 956629289 298703534 821957082 63551191 276728956 991899046 559574949 718168665 928249473 582824266 523321544 492153155 78410075 186741769 554871911 11043996 508833719 271311236 546403910 451304158 363178654 51149080 444925794 207502820 967679807 551898089 656249794 159684304 677759640 33456077 892164295 145107611 366362976 232143078 503427331 128825026 679837151 221142433 919531805 580550970 695045896 700439238 266935386 866410644 131022008 708276518 381970201 450496736 144521725 454376933 683306654 734151000 299080872 388174023 712168579 439568696 50537924 585486184 894507423 561509740 43856662 729113389 988243417 957775739 945296561 974823285 97006865 540204241 884984264 22804856 224776385 965259198 355206358 620751188 215837482 125902155 608180518 274799427 731182045 25766892 43110394 433944532 576590754 641434031 198506003 581527085 736162237 870819149 646984623 825535957 886165605 684609583 529286724 343402057 989383688 320599791 386186034 697265521 742103081 592849025 152016580 936298150 160345802 896796343 358435038 171223303 258894284 157186927 118923659 426584948 478067488 250728082 92485003 136348769 163944457 508067932 243174945 481724803 335811488 606137622 182829015 540506207 377836555 535407089 158899976 80149047 802454271 570036139 635021939 55994951 955320661 189240016 198587165 349272355 432803085 757444433 244008704 621117577 386437051 247543067 849810430 717322548 193052928 551103487 995489692 701462253 961067283 131874683 776522144 733022748 271446208 15803946 351458207 897974832 632806783 396329783 550053157 272456137 266566140 28093316 193985366 463010372 112153164 707515180 749514280 41236721 183800882 696652399 713847735 681680822 516597260 792197937 392426790 664937253 243571031 566449694 614681572 440088378 921090555 414658357 93864621 148490334 788409418 140875765 278932503 968546682 598946090 850961808 111591910 614989805 846326410 919305218 924782523 78117379 869893703 475957009 736679717 93509170 512455376 777482959 554133229 916648920 984900622 903084781 297934538 700202492 727622265 375526800 395674729 751597934 296021886 406653744 919738655 702590858 664486822 765616077 663905172 583916454 281824301 930372711 212823077 625840368 799140122 363022076 554465713 61773182 366367895 477031168 992093502 206790506 37894044 381177709 609212398 594187856 707906848 987537320 27849142 635640730 404052504 31455260 999829186 925649311 809833510 344054758 639259797 491659174 150398842 631968558 288334441 24373682 790938049 720334104 188967881 438053985 966835595 4617217 898640714 16855069 281732367 281304026 673836146 55823159 494692371 696234229 917336727 457192145 61757719 121174122 638590736 212163005 496925533 628313873 272364023 375493050 893015625 356115458 789949056 139529504 180480229 203575874 137018238 390737898 153865075 69037545 250624503 936410210 702431271 354512885 488252338 735294545 425002828 36319602 31645436 565194451 526686606 766795186 30040179 118830279 508543325 854212554 660721147 176672539 551651787 770522818 204596170 84773186 848050949 823788759 888586537 84888696 96135739 379681318 191891093 167726550 575582940 656321279 578877481 710659821 526711757 65696242 765634895 249674447 173973013 761496750 690231829 954818837 868511613 123251220 118128764 544436396 360394601 447633477 722557125 387372983 99470660 139295621 242461231 716841689 507322141 736292149 610340445 615803552 87784403 204826725 891825335 468795405 411294548 756793772 272594419 488702375 274226379 71994763 490439933 501819508 784391546 658774829 481885784 172566917 565913039 914200453 782992616 394701801 492614479 811146577 510024256 277874306 353427052 943081377 127727424 719040438 942301100 977624931 536468947 224989847 63748917 907295329 210555686 190526132 21576539 645106195 921287659 326104749 991502687 163073929 882430513 845059099 23627714 47266942 170633968 979302052 326331951 349879673 337139613 379729837 38115322 249961745 771828904 388228283 362388297 346626525 44726624 483273485 317745705 703062407 905788827 537150247 3763717 979104825 956067600 862108954 518046861 920887008 477330932 873258945 625627497 686544694 887431026 697874333 510350744 279884243 161294213 275170204 251378949 848919549 84099505 587770780 432752458 448537443 670249253 543028514 996608038 707331799 522191268 779871406 579350370 62926482 729736097 330300689 881068423 761623011 47710206 883831884 881704528 950027036 821491910 715931654 599788265 145925063 271771692 165529453 949340670 740705828 199231706 928588619 973307673 612584463 346307367 50622455 504208065 433065410 740087634 317913352 803420551 531349253 333189032 665337589 665454099 991624876 684976675 656067260 349843239 630391917 135700240 824120562 199716343 584161475 983877667 984261241 710795662 708769633 913340805 105000178 161282769 877746771 70915114 864917301 940911631 55861132 664941515 45302752 639792946 270830743 25808584 345741347 944967208 151061149 523086745 906206905 794623755 542859055 843398309 148609167 647536601 217944240 865591693 471514730 151583772 387314792 1534860 57892482 412496942 596913927 240716392 334030779 592897607 869073152 4594723 979462528 809134333 931664468 12621255 205329642 280990700 393394833 757352522 397965288 658515550 175555709 300942901 525230551 79163039 403948592 761909439 729319715 162365243 584580759 967793626 545645800 553136732 648250518 732025407 649142364 913578328 221423791 929636017 804656159 856212312 131473599 401065441 898552143 80968963 942908167 452395722 630874645 234162608 949011372 986055046 461558059 805868496 636852560 10094804 303808080 353201275 876140504 422465078 133913174 958501084 57633416 958992915 892903838 625709308 828658917 916160228 234911188 200102408 872603616 152328511 691864007 656233015 630242502 741720142 631941006 140569183 945219395 563668214 880110712 137922954 172126115 165336235 392967921 481321185 125559875 8297619 743270326 945458535 615297076 725256211 349911246 661197072 976313127 915576069 424938624 982693938 525506317 459795836 739532032 970278064 360965542 562445495 30144242 784952250 294154888 750310699 95333895 106970919 535402100 431651009 640364905 286249101 218787039 482481735 781386962 116167141 499966237 649500681 428833551 130590518 735647683 856494495 506624729 477423245 458332421 363292255 363485500 779834414 255913891 141545606 398800800 192532029 118048589 83491920 75293124 542855905 572994068 925539228 964682655 195256906 743546433 827464669 588119859 704517462 531308807 828888286 458209564 219977772 785500431 986169414 883282158 848965908 309083599 810257727 676586285 468694564 334585346 411799391 212545538 333760059 161146115 993174752 611237753 927532734 681854295 588684717 351494247 982711654 506294705 608360812 275775754 73091646 238259100 392609721 289315603 307612924 115879518 826560634 430654488 807340407 761196910 826991208 891581854 935106725 170466460 839864772 598272072 731623819 857889061 486554804 143600857 47533364 197675795 367400287 820092741 404904788 578619210 749700605 550378879 771136616 200600922 990337808 168725911 18016415 259633093 520830328 590846444 783149158 397005824 392153761 866419189 593676374 51260429 902982262 695614653 304188946 295999510 409486513 270157595 465259050 444416475 895346550 806446353 295009016 146522416 278650227 861921425 786560128 744910354 804913074 726766092 551428654 619835939 25251149 630517862 25036596 405695336 624902856 354304910 433223568 258374334 740282547 43239236 276259600 474652804 417921650 559292484 140062405 141268322 418675464 905688700 801250456 422097490 198458497 549805843 952484107 127990386 478424281 453946749 63276170 608379489 550524243 821925252 885305490 609271462 713362070 198475741 229940735 789987364 606958436 450826239 470717609 572235990 212040633 796764853 46480039 381412311 24238893 413326576 129701217 871455250 488861296 322869156 759259169 513403761 580932034 684566228 807318168 218920375 469209781 43086250 286062706 218524332 738684569 385976430 880881871 874737329 872893639 480538687 316016907 568123593 509522892 633184231 782288412 712449729 361776496 96966068 358128802 531237114 527279544 331707029 986817645 651389141 499582189 59034563 299964717 586795845 149844876 138685054 306971466 617347420 270539896 325557546 812198327 16743253 775932954 815353134 149657126 649201222 623410203 817322127 661225501 625716922 552441958 37641278 610492444 196407827 776255948 652118318 640893521 12151973 907878654 425730199 304237031 433306116 899955648 30012491 555180884 449662656 812870251 893860248 190143723 42192905 37052076 631123787 500017755 701248241 176212791 961568890 711660795 718291714 761045121 844343301 874585373 664805515 997614957 813260511 856990791 873862038 39145902 300194341 403798172 123332578 671652957 580316948 456582098 918990029 766065036 971714352 949289851 711948047 15996227 390548719 708505401 21501083 641445841 962620716 511287196 973306614 120249617 736552515 199530953 800930077 14553518 759053481 437653481 382595350 569841080 742048957 954595687 705097239 431315331 67651582 569102973 817923847 363430331 467968366 41738836 598225967 963647642 667019406 660816126 124418802 664066167 428777838 587108467 279451142 448993929 412653898 447742580 955724114 240863819 273135259 862740050 602790006 593554859 818046478 48281916 851046647 730047834 657292774 996918732 766374735 575470766 711559741 602421735 546720677 651368347 454166894 105433484 898824615 64489630 694901695 995191971 385864111 91809973 697103735 819128183 70540885 810119259 517489613 966247391 884953113 668378400 658655676 522828129 929775469 550987291 221398253 394565690 658975256 323211775 812096624 75019173 596439719 715583553 118793872 641317956 813593271 745523305 222698449 368486216 882303995 584007411 222696131 216674519 52791844 851965685 873540171 155683132 36565137 623656155 143986535 237813614 640435583 953673062 819977129 889548722 581369835 169085303 50551281 880617043 155786870 263431949 522664800 118798463 720517238 963116921 102446883 14827687 787716494 173263560 655581589 364105370 202258474 725376423 680243953 741127778 798089595 451548703 108128336 415142710 86814690 645302299 510146696 172367811 899563283 849048559 13261529 390717582 11683161 986141531 611085611 385266888 71741516 83860306 779983061 810421961 922623266 188275718 760395901 458826135 752927853 597657499 585375589 996299374 929145117 731927666 205049525 884889500 75523144 50758038 33093099 997005768 714981749 314520432 637003145 833516593 344167250 914793872 582438810 524583130 174465535 581924940 306290931 47031686 998809486 862277572 422286704 307238658 533208101 532556657 308596818 397378079 521885748 850066148 438034328 615091753 462989508 223304933 282056242 242354265 145586936 883464531 879191180 925661852 393667668 355553327 73354959 327615168 708110279 101468415 390599778 445138946 900685083 633276982 928976208 365373455 664360413 594784994 456200834 812450796 88081690 137280573 337958707 697526161 726531476 35535657 215822650 498693599 257993006 628607246 981125064 715294713 248810511 565389844 415641811 749868578 69162148 730190635 740959624 658864374 278739367 371291504 210560344 371276916 112881406 77861883 824718057 238726670 629286713 442962458 378670147 198331556 108746559 63160102 863021260 945500732 379455944 177788684 618781368 241476358 671450284 906825777 958405327 351979078 994275778 239173045 372677811 183335722 445954 869428628 662790784 654669948 896421181 186692014 4391251 208895261 817644631 631648529 277653932 530314941 600940289 640684169 284587468 262564731 67051426 606777757 332854999 452172777 799250200 858805503 856813803 393528260 433138515 832421673 982845627 556595848 32438626 90814894 561355561 609043222 84408379 925778361 582884399 319809570 320643698 526359257 870352085 94837420 161305802 394489873 133857208 218196682 921272004 55081889 799474978 755884864 667253684 783483179 682104915 771597804 220546873 236186633 305282298 166701744 326479834 561398120 593787882 541467425 611598090 251955769 122975415 474384662 815798180 677062449 662511800 373277811 968209500 475421518 762795947 722757137 459408730 31495953 255096461 633007903 253962870 2801311 64069488 409146784 525553604 965713256 851984589 255915681 918918634 105428261 584593997 167157741 302696996 468673387 743067058 519737323 147424334 760774351 390709815 925140737 477784792 102061302 256687468 866530777 969614426 391691120 975551494 426019672 121015012 807094429 388082165 609337701 863684805 90444851 494481996 330444492 354805141 6145436 582826632 597916603 11046823 592865191 851241938 514501162 792817316 231740359 242115280 230130969 401913118 371192837 447596479 836337864 162874912 382293812 173354719 410936240 567762865 903955035 902476764 963511680 483029469 238681675 267981481 41084763 725493909 324856314 561167399 258616384 337183206 552583191 183457845 720521581 916491709 772452919 461589083 132108300 112746636 978449716 638692919 223729889 979781963 606835198 301320000 620888741 32574334 665327257 474498735 853384857 497668200 615263165 874282657 394961890 385410983 115468517 133480552 368275756 150492556 605055345 661842270 116856307 20292269 496917329 980216600 299656697 855108749 889792417 974625434 59245874 822708930 200986605 760051196 420777827 299736633 398312933 405630707 25647251 58999747 598336698 334035442 581909052 920847471 644610661 785791202 924520791 970666164 795391032 515852313 428674393 405076928 504112188 748361607 201898154 551520280 605069519 603507793 12497182 237121159 15191833 348898855 420885765 925365771 81653069 610720154 105287874 889065517 835254147 227076663 662115657 303893772 520341700 578042283 410107091 603228322 558225308 573348676 215929555 69985019 532579773 636680329 987061820 301677975 848182336 228701204 110843540 660883408 982626224 967132523 884996170 180083005 602613453 347279772 330292345 331970067 115769069 548319126 417652237 940875141 711201033 898775437 100818482 729490268 481432265 459922606 188561631 702356432 842378066 564165674 9668084 439998769 255854794 290255568 207027459 533909415 340180803 884556348 994327109 185707447 471724133 32509312 654237976 387076181 602629297 399819919 191901435 155910607 513835715 102079503 212868890 181608412 838969539 287901337 341123250 789441895 355891271 216026781 170907512 217352423 234226342 552547870 395590698 38754605 907573686 454492590 735499012 918643167 931324988 490043862 62517394 301994714 889653610 550601714 433004234 283923589 569089093 188393949 796926046 618980506 622558376 609831020 968219990 11620944 253077836 345012457 210467582 794722363 199476129 172879656 818003872 486691516 186804285 969092397 529166157 176452992 499960965 810215943 581805679 979974799 559377734 719307075 16309438 534982412 124627577 336190527 980571428 383527885 489018336 132166931 44189574 397617597 277186640 599262076 884752654 781038100 944879284 246767612 119427490 895947259 61200069 588411841 519682713 829341454 438340521 840131600 4443501 114998132 863983040 629693340 96500403 434976821 431445738 936779684 101544241 911808329 15763843 107136225 786883290 649935668 634746879 351203182 569352228 52863120 773046355 185429744 883251135 578189358 459811445 738161748 253403182 4338986 847409893 695833744 493481820 304522484 164204673 557471240 739479210 963989812 593781932 148970556 96534315 774592452 41207487 265429100 122343244 183384324 833135173 599379584 756438140 455401020 840110528 498483867 377857618 20561759 141535498 463148972 168963549 572432800 718459775 898848588 819425832 533316631 202164017 825042514 94583517 368967760 82443673 190265209 146457705 829161392 390861162 316980929 489403298 918808143 297413405 944541702 724727695 171724626 69917008 508755277 545135421 652461899 141055946 302742418 37811704 341032971 173843698 108072475 521025289 474901655 368137152 972637234 180404507 128449642 427432450 214070512 127412753 254028537 692878196 853968137 732689963 626326542 260107505 424970286 384513631 816077987 275674116 644903381 682386818 968983963 838620489 977459502 530313150 539490507 414159249 953591612 19062186 224594261 387103296 241742518 420365680 137020674 359159205 113311352 68370160 627947616 957302746 468557145 436460257 209894372 758419921 203347010 959937218 596859568 396283533 197370867 662949746 49287659 436172355 961643513 102130014 777989201 633765926 114621239 345030430 811237916 455578305 127121722 37613230 477023404 569618140 137051317 637428635 948796976 837260872 276336051 507264239 218646309 494890440 290435776 538427549 819984815 308991681 707061160 139632959 210699221 996297073 891521708 83490324 215432874 326470190 112106160 190036788 22222683 245608000 254576636 138969546 979991127 36036245 771674127 833121254 999005896 969874447 961229139 500739688 640651503 62984213 137610542 270391090 721137195 139296754 238304335 668718342 176881934 986189211 48209967 998739553 227063570 861111741 111151798 178475777 46055663 266266469 195957936 374173523 714906543 809086358 283960640 883658412 290198645 316442380 574321879 330489205 673025300 183363967 300061243 455428241 845873787 257342096 93805983 275861605 346357177 101279180 736921945 430921060 682793825 978202536 699638182 721981722 260263423 569393372 353615492 858472980 699088032 680911266 229237366 551677384 474667040 660186024 249139539 737855763 489093014 728008195 211941510 505589832 501296050 974299946 2737238 273644810 467552455 83822370 504091068 44844782 887539585 592431169 290890842 486272766 178605250 947398876 55680723 965703501 634914784 470384476 811662459 607131926 901592312 705186948 627312132 514200292 896917319 781668199 966304849 18844030 118342595 219671569 23332234 780220069 895634260 551717072 808781082 37453963 854392119 130838390 22376762 839881300 339071484 670948786 450465794 390569791 321020139 471248919 69139503 144302076 759632322 57388636 973155523 448755463 250016550 738158949 678858835 270511739 456599769 96038392 822216430 676757175 968339984 262682027 887193720 769808319 703362965 169319933 1022177 419039826 302348261 301416406 339564639 916195850 575372218 160295787 164126408 363920556 839029334 650943971 284022733 970030658 563592735 369451288 705752090 602059075 777650076 785684977 294143405 750723877 188998245 881041416 543273417 543346090 42158833 496009953 169537629 304693166 831305205 78070117 333380955 754411056 130165493 740264990 80443793 270316929 832939843 251725399 175579575 688781164 532379219 632629999 27174122 765962619 376381244 237540156 6831933 728830779 363953812 848830214 727631399 719366576 815904931 391714870 54410073 489304181 147646385 871281953 469781558 337364346 870011921 370666664 285823793 449294955 981497422 101326192 366628961 989680011 879726626 583886681 472381495 226292339 291896682 842428479 99060851 767208653 779628382 189339060 228375961 701875869 182207671 6515976 948152820 78092320 660956197 96257610 949514777 602572237 562574753 424381726 358245653 670303475 42517419 735332244 652398343 836356913 761518291 121693152 475234896 973485175 190420419 924114746 516662544 948595886 978891032 667459088 850201610 110551018 292516792 197131494 69038988 983289010 488579389 284067437 439544012 18500542 413603362 416102640 181302932 561550703 54398190 478783860 728376495 118552541 410496255 860003871 582935650 973108252 77652141 261036334 432241824 724827610 1415375 317127214 14076389 854712197 53997000 774007800 908683911 585827876 613156764 389945827 904664190 863186942 427932788 989528579 919647991 459346151 529319882 973811750 316065701 868081829 556955831 556328497 318111277 996215189 718357407 693474404 492729652 383930806 71653014 61928722 541566486 442349959 451004425 284095425 263362235 824428117 767760094 361154434 549456985 757312776 684489763 191293158 342123104 319679540 77000062 263719369 708502069 639709467 532484957 474648711 30611920 855561464 212473568 517551252 916291470 820307578 910138221 444454509 811364407 596088115 994111634 48715904 76351534 888135108 515173073 678133952 944273042 361455413 359386621 119653981 36799173 374821428 803775699 139142720 217905644 315135757 550849873 344711440 262335747 115787300 403683396 891810894 393000450 603175018 696873976 460436023 27460208 43120467 154741068 693668170 908563426 631077808 77782968 531949038 192541475 155808494 155488953 800066410 446977886 343577359 25834988 881845651 715527369 548062486 133053157 454827550 364813779 6185216 566102563 661942620 286294280 643335705 553937803 229259821 296069444 847348281 481042317 688225585 114792660 492234684 526294989 280306551 458174329 432603749 888211698 723998283 513413919 701917506 239162095 995140431 753594237 151365566 923408866 40664638 548525581 578532537 273247182 693335292 98966471 697510598 509042990 765899537 230160427 307764966 915303499 798267149 413318569 414954142 167120684 420681948 488843245 648762050 698853298 114830995 245667604 167701865 570654097 211601828 374345390 634628887 282217471 413370081 839696612 119000773 530834593 688113133 737879338 355177698 936814587 850444269 132314800 851252547 117088204 682830571 112166368 709635440 945839433 786180777 718770453 402029588 631961172 490915586 511562300 155845551 106138795 332013257 870919047 283485649 708422251 268815680 903257003 876511781 857593320 991394254 285040062 96442031 764552783 324760940 130832723 522207186 561321917 803533174 310989181 402178586 168788305 271286298 824799975 370431257 996039519 523350469 675654025 391097806 862690553 531752245 909084076 247434493 272694375 55903410 498393123 942002589 605514553 885510274 452653085 892558596 344414494 107568101 287208970 920356092 344135015 119403018 225458117 310464546 914182056 330072302 511924891 154827310 532146446 741621777 107231336 17410317 704008918 496823749 101796191 791301533 894858485 85726053 15964187 168253807 100913699 298814275 125541603 43613299 393255708 643607010 279223377 853880165 978366247 254242584 788625093 77192339 700047595 449235191 328769914 927731992 740431471 695767026 190713382 141864920 558603756 442537045 28033692 35927985 951621299 285759905 908789826 994955242 824844052 653253715 764700140 114281882 551001318 697192861 826690219 571808913 370028920 145343361 633217399 183688680 818003381 112868274 911268806 860293148 61238601 565946543 941386128 155476666 291472898 877066320 722757463 83686200 813798623 868968640 273643513 940086112 832417565 885044288 998888216 713981689 243415017 123479750 17681307 627932270 96479315 893981284 151961762 482533886 204630855 999737868 751663835 174302121 961147645 532989388 670846286 984305890 116275659 474211754 945100667 119568979 321935387 400719050 500499477 179211621 779317573 417194530 890021225 483439293 381270679 938237854 411831262 942351145 532657547 267620838 124380046 530448718 530079028 634491220 769985564 246533784 567473891 420205959 713309986 576786292 676432693 963926341 936769763 429833343 550951257 858174427 742253750 64537126 845088124 345638645 167637683 734238293 499591274 903703988 92210941 873831243 651585577 623780063 558431441 97781885 413179551 999050820 711349512 919246426 190943542 403096784 840007672 974114793 845229988 961947057 468592276 947291684 931479451 153353442 42812135 686943381 154034765 292127441 814157336 761551969 144808650 565323882 179517020 94081278 802196373 109578296 185176522 893600298 360387585 194110942 312083349 405232869 615557949 299212666 912313809 394199221 298062465 197581816 598453357 804539472 492170291 481467874 871559912 869497262 900486248 255521207 520882777 361619663 428571428 979174202 286409784 99296137 223754125 651630098 133943267 117395238 822294141 486738747 254662479 279554351 994652953 912958405 296598051 749568811 586581748 135472653 725835794 470428641 638281016 603286224 225493074 728578132 647106815 856188212 548620756 650032216 547425075 111545046 270396811 936634812 594152558 231083305 172667535 552899554 414458381 857343775 859197337 465711616 873407025 636823373 538531671 147538232 664195239 675522196 928187075 410850823 322466139 343026969 673478766 561072202 882676782 314504355 280145323 418398992 886163694 726313306 518541287 216782986 712598465 910853909 656059928 697513293 944235282 425055365 453777200 878639064 255324496 865043943 580951885 721848371 494790603 730015975 186519609 973648305 539664589 255324407 29803658 49869298 308838122 681215214 401789204 131861012 769964593 146733576 300870904 549521050 990940978 126159484 437517967 367189467 721114208 442257288 878748113 557119197 169266240 366987594 10361520 486362932 323473918 503736825 488599494 81796290 288219893 600280865 45748902 976686814 556974583 946706751 849293330 914784694 793916149 549150445 417243826 284821131 850180961 167433243 545491067 649607312 49517459 235442699 933913638 557556278 282538310 639705546 427376796 261214843 229256164 132176800 712936560 360042560 615766233 93971348 478136713 162175315 755615242 451809810 576355753 941363565 950096555 681404803 476339659 521318810 756145658 184654302 114336714 625546934 663109012 960380829 28741806 417255229 541279723 317069079 881410056 792510149 459618431 698297535 762382915 859489826 171070904 477889622 88347 776248414 704427948 350571896 909044484 886831221 385940591 940931013 198137794 516308871 26460726 308235349 807669228 947119940 389931199 344044796 98776394 852089487 200858807 466694929 605104392 831900261 117789376 848798025 361300934 721150762 861523662 850405942 454203370 728926647 326474444 41505303 111166090 497696882 356015536 923687334 646529186 719925410 266504535 977270158 950043450 586566953 430378518 575449011 461094785 291730980 650331787 450222495 789124356 813099099 826126997 324321963 937392377 618613952 64495473 192322723 355110378 281001009 974605274 565006203 14240499 269757869 174208836 918459810 605981374 556666189 561799949 648813480 879620246 930274135 313304072 856777008 27445169 874573529 405817255 808217266 403296754 797080993 574830008 253780831 434131655 852677136 948113139 784546614 168505302 57492616 727340546 587295949 682550989 73907604 864717344 389659949 842830753 551730982 47576601 527985936 855967684 956845817 982240264 652979796 782932649 893841595 99463394 160900307 957572659 923203502 659318223 621633319 705615093 309615344 620180287 191644856 509130743 753067125 2668757 559367108 90292011 14948811 227501966 310562516 356882507 507464581 454204248 228962332 530121586 939317289 662398364 158406588 722820700 718344288 731518183 368340530 330475714 973833119 913337694 321472020 28326639 431545414 454859495 370180996 906061697 565207863 524161443 48383287 943808354 759244019 521690065 453901788 108274775 581419461 981219771 546518861 963937178 652193502 530707457 772638321 296128451 422557091 850551929 790087333 959827478 552129881 931480996 707798538 20687166 780050967 411040052 887718095 454630508 748294945 166900811 726000109 391162536 243849749 433266850 848813786 363514211 587446784 343539870 942918986 274028919 441863239 132501026 169877627 431123762 976070926 445281112 378187124 583256719 683647908 43668835 505593696 995468344 431695225 312163538 24860356 37922331 8632123 147044180 618172329 631964531 398410169 697647349 933845984 532444156 191163675 688755102 493824244 747258620 313223640 193713405 909580353 617027263 376395703 174645093 110556486 656157482 804705793 775887191 103129714 597053039 40208550 543492109 63512255 311503121 607632590 933386039 785050219 170477531 467503732 943464929 350318640 527276491 659014244 123274687 53431803 600956898 676745133 485899275 745410163 22720609 565400379 335632866 238404817 699433044 233609174 682803041 572511004 977765508 136843985 959446726 544551306 346416536 14086518 690510975 812751565 560296418 295923166 61183080 298351531 430009632 39745734 832484749 893844548 943991617 846426558 602715078 965685228 20856880 318299991 140953800 486330315 409820911 649098068 715390466 174000823 182778860 143882918 203536926 555584511 718410340 13048784 554605324 596724008 407208041 949614560 340867893 514701563 585706651 512386873 896444538 745065111 975303518 313314558 754035906 808434427 40111500 792396678 352009557 171256772 701590525 405035992 135863514 252409236 725456400 896922655 813661053 795800818 92925584 749087584 18961004 386511798 865502409 351266248 538799089 307824055 784762213 263910172 77895252 972420334 252489514 251421711 722732824 848340292 163095585 214420063 954970810 208984813 272531843 875109993 219088151 315283319 39877040 298857689 636596148 135717878 493010640 379351356 288805532 386824209 945492153 83679179 928196157 935235979 797647122 196888273 97436405 378767175 799840112 217284738 952215389 280636718 290949056 197001934 125578537 184071754 380211742 504931023 568509591 983138886 682998598 380195147 583010959 907274799 295465010 901223842 966810779 747848204 192852174 794737576 306887481 968770197 169350158 341443744 576368117 308169079 356378746 711368927 997884788 436036180 376169443 990302831 213449107 884612012 769528701 213413159 724593199 223378737 983459837 547629105 4571688 231576445 356076086 827479924 189234311 396815317 126354415 759860437 76854864 471792986 431209771 127745970 437917330 393246919 817354575 522429 843245882 628123296 406241246 668163003 85545226 530945169 261897194 870053255 999986480 151388674 482341839 730768504 516934554 526019845 308375720 484040759 696416179 898342510 350346442 64291860 606290551 500683863 822372421 533171297 463058719 565722832 59774386 714905373 368309773 34530652 276997599 671538900 304014821 481642827 435917479 360184319 909596250 12605772 929587388 681530884 656841738 945105325 55954481 294086664 231447923 994507050 30547498 522423047 252731010 3320410 271572778 504775193 45594447 147813064 88021005 508460548 977860383 590355733 689535433 994949095 844962470 651499163 65903051 800752104 733814938 142712243 535805853 488612287 578845875 432686651 502882037 374091124 985816173 807600781 527996435 845394293 804714437 346043855 313977697 734251404 507655913 746062848 82674465 960307431 425004878 109351986 665839415 114829026 279515633 396116102 965245022 28376177 895339325 740953976 81787253 2071769 549161760 787280249 824256294 569548130 790687895 809774254 269611697 124305326 30103881 446687251 896858059 518362123 952307552 951995808 326003439 863648476 549064381 208924654 988095863 161727645 173024643 252511891 410250491 397721265 221301495 541828710 325697725 200801960 453084017 294406732 675120665 482557062 552971614 726608217 933066931 148352854 481968342 334480049 667093721 135548064 155289950 486307376 567826690 166191021 857541058 425701530 593693958 686306451 122326657 119460469 444540423 442533698 993732460 397710758 113156202 293128719 524867005 851335151 312476701 767443537 431698311 303311906 751741984 969343580 952183838 729867484 375822694 889778030 51183265 916748845 994220367 906566351 885507308 596036896 505356938 173714129 663002165 247477701 980684541 964085514 969243758 762394079 799723278 836986637 88897305 569748631 566172698 566380870 696375943 280964523 70684156 416503707 314485782 601034644 193227444 164878133 142754637 618457169 303425239 105169194 355392761 317755416 284400666 614155105 580590584 735260589 142580867 121623482 551674044 821631730 459803169 911937636 799934278 981717425 486117107 915059057 493105925 353597795 772431104 428058160 976553895 454448536 947870996 402137874 471693776 480819838 8345190 435460500 595849203 317041064 307927957 219353786 820866268 621189716 672179451 178447137 580753716 122992105 376592094 310641531 830887132 223451551 377483681 649808732 704319493 117636729 898498283 388764164 630208428 534238206 341999073 868147705 809536269 641299065 347676338 496389438 634934629 207576189 813371402 802948247 796954328 566809816 592196801 894363514 37667631 973215973 270713688 243827351 332143082 210579221 819890716 679799090 2902952 148883058 258649304 255165596 714139752 923365694 663099500 418374996 118317559 868899069 64372841 236663130 747030842 446890457 933968875 296279219 966212840 193706168 475666600 380293151 444879903 748623604 533474429 311582277 710066026 388331034 779828034 803542675 410678531 205121393 159858693 611497117 117470627 364986026 631136507 831233741 240994057 442839128 847065817 430211592 198569543 321495483 28619374 363288512 527893833 49781503 591056269 167602994 664277696 696671846 240846258 355633571 444460488 156667695 199032742 627843166 48413325 301384168 447306038 244715663 489068473 261422077 193052996 277600048 826523464 46890867 217253045 854154232 284280168 3903903 553582745 418364001 626117447 86542752 308363451 478942414 638506613 739623067 865004262 568114331 669272264 229835334 202950176 82165965 87498338 774034686 544240265 29325055 980143493 70647101 678258009 620623731 912020411 908659219 715737696 437314267 596758894 967117068 781268459 555558770 99921114 646009680 685578546 501651660 70023763 870877720 217103717 251377531 440220974 183790004 422522914 848050649 566179228 409581463 633079060 496858910 810446134 191573626 618929518 565248271 509617574 54079175 814286426 632192496 745479032 718776687 206287224 762955992 398738064 487491668 702962427 923075600 582917224 414002923 185281749 602457165 480477351 561479595 346295368 594190728 103108056 726436019 343328289 142760165 325280585 824518296 598586074 558596678 949899435 334599722 284675444 572028114 674865742 80976420 587641977 284820738 632347960 472972711 515706941 336214779 150378981 691101382 683454009 669489196 325605116 53475499 921706933 551925698 845641285 237754299 304740273 472490938 118698111 225124392 538405882 680709368 822071980 398373335 650970018 532148658 952681994 820514575 47012395 968840053 960648540 430451840 665350144 812945762 221095124 939048046 640992112 260471083 41071262 458843273 365705028 992951223 919279541 227606408 963390720 989274145 878546380 746460798 78697286 839424344 71220013 290508152 229907646 54685294 18249497 27398116 213872310 687286303 134174526 925079427 641412670 311037188 294389296 360877885 723636758 849500166 954619854 107058974 819046932 816765325 60224422 932337851 791273437 14348666 2362638 584542435 847212966 4231587 873174185 80676677 870622139 477731227 607840473 473870520 933032026 757208105 990958244 274196226 902905912 325536413 240903227 756164820 432647951 536553306 494060286 116888371 780909408 368258044 441502211 594962900 964623336 109010853 820428022 568819991 822919647 587441200 710560494 71710598 783661828 732743225 622600105 847561146 420576156 479496849 876911865 75676469 883638087 755342002 939070339 798874476 879596072 980829775 707044181 464354639 949931955 463794217 915831592 900840420 246765953 173148770 230443800 603185982 240664977 647619446 678815746 57294195 422930847 5412542 52610410 596350710 850899107 385634387 256853110 913967997 330872868 899755998 275632845 517213980 106496163 396563960 289612852 288584194 432115227 444506737 238453756 246950581 973201426 987090754 102165500 805628363 68812316 959550220 715986805 549074488 389453427 961985968 396446999 204639600 69457141 415275561 179814225 441336575 152690681 265071396 860392230 963046075 851671446 473849237 101097654 74991550 922851210 465880080 291389911 24169593 557423260 127351053 172915725 241442384 24960916 933266289 494279465 652265210 710854428 889518627 488318691 520750357 448766213 470784573 805576744 777573001 793038863 520930985 360797291 280783595 307067608 42139567 955142443 4751769 347105080 717863671 348653549 742489461 616941122 612412306 346577771 554135590 40096151 718733337 790016910 368158265 123624503 913519840 818864308 661349068 171591374 110350139 63343891 974975151 16191194 749811895 119879395 609776623 49725159 804752047 972215676 866849147 415123592 771090446 896185757 870719554 573481778 248145336 983975462 148351721 879631923 304450607 558436330 222502365 241797730 92152813 248264023 413352036 978837258 436929244 340229851 358892623 436683853 977204339 142600638 897360586 160543512 872514406 336779530 261703005 788438658 295752485 717007538 633317059 354150144 381543026 494000092 134995905 160228228 966639547 493981446 485696883 707174615 40745559 817132833 689562194 755237706 486752220 612527311 949332060 635666969 526019926 873409512 669903159 855610517 663362980 887870104 506082523 537867679 983434640 488082378 894726577 774733204 65787005 507624171 933467688 37559304 870713063 960071947 734099546 795538508 309129543 936222490 319486941 411232189 594474194 765762628 407695226 709292739 600275580 204221791 353031242 26466203 538497522 404256575 143266398 600189310 406867475 695114868 70444405 857852490 499208052 469243039 696426137 71901311 978771061 703718019 372576682 428237157 224635330 218878187 211701069 116725219 512823265 193710859 39655857 379559404 97275140 881554430 973758785 823295381 655941206 319821573 421990593 39160338 875381896 539982547 204756950 295924526 888341739 674537143 892390101 873517603 875454381 593555517 132437543 975255013 512719801 601067199 309337878 74634017 940087401 302593835 659669357 374282985 487404872 819515114 156468589 298152417 346866603 132166182 553092370 192297294 923200703 959450486 564553610 845156119 650646423 599922435 666058647 758867788 872834308 995970259 189405848 287708453 670676912 308388462 961999882 216638249 966313844 865118324 415422565 844429273 21287408 267569625 363418123 617318551 935154381 712248483 457730613 525794810 931160934 943783623 906354518 627337049 684450255 867422969 785287514 180634679 122827890 977604269 745527350 427687568 133329095 628908834 731859475 582062216 682886519 806785554 497454449 388196446 376476382 594698194 883111558 116069253 674649018 363574075 747698835 942026246 779906191 117830302 480105787 450906675 777659178 983112674 296174349 613635855 196579370 653904708 152563028 947277023 756123675 787548405 860903905 216941467 482869061 887438396 52935130 583947459 809984226 971810702 310527803 697390499 819016998 462404540 640849219 997473534 360521318 999973286 361485189 521731181 379043852 269259519 525061937 321413174 513642572 864632014 395561891 402378913 600285505 88134837 110299698 944837464 984486210 600910690 685926474 50871883 482198008 249761963 611785972 291517023 148887872 916761027 393332539 101284789 401566778 75345469 933589665 238193609 88670109 197628057 528137472 453844233 977149456 366305537 224577155 106522202 461661087 963591317 718726958 888535312 634634437 565853557 53881538 179395375 990597135 364256793 317360951 100349519 957268379 371374415 150861858 540671799 999552861 210886543 622782279 243855402 745832375 684675131 275527422 455083935 29575297 782521465 737425187 329316880 722361987 9580643 225467233 702436153 451559238 386397484 937698965 153774016 719191535 318054264 566284857 550224899 288736365 572700703 24041660 101257111 364095017 850319737 332437478 260528835 160497804 644035453 28312345 731651720 867706004 810525981 429505470 581604473 369697809 779245757 411932129 495246829 720550715 710973556 722133629 950971037 529573492 189657206 69452251 305241735 585014950 381413405 873256538 421870701 85754842 186644546 811024674 308181312 642918751 370260175 874818657 938109269 973158031 281682366 600183368 455233500 44032194 859565135 413252573 438223496 647583687 492588076 8192832 724259016 98196242 562354616 431203541 617384020 414096482 162052713 342692819 638915870 218584917 447172060 636308962 426109006 424238127 403551430 916450688 951026752 871078826 799177351 744029961 986350404 783646601 400376740 394034982 22168604 342176871 623299414 211804831 500134708 998564097 931043847 387981562 520812903 376953675 104920381 653568693 972852224 640703219 290584955 472582509 98428043 489838189 373710975 471491788 654497477 88843131 609631626 818083616 50372633 620783645 524761777 112706983 178881408 900503544 662175624 281772947 572347176 453193150 277415800 729395742 866383529 590639177 826306706 750435935 825303088 239361254 213512565 618808003 341354391 629354800 520595540 712036478 179516929 470546980 902605672 364988887 64472580 259559312 552271565 639187485 989298548 398052053 724683487 442381433 320032363 453323261 624613184 16223802 253192619 766351697 186597208 937977878 815002463 938492926 318456322 239896700 673429753 624684246 654630869 686594323 240202481 390302139 775787862 245850866 174903830 872935480 633026303 705582334 381701026 706805392 348034350 255438594 460007095 341493874 285880724 711553096 161954182 4291129 156674026 275125894 260034387 516578186 687226588 221974361 73866044 437967988 938707799 247069487 987804057 788423811 890554358 142552665 890956448 835761640 283637251 189326189 668414108 874034407 891060035 481195789 345693432 717649955 319809294 292242472 787266949 213343753 153247321 482983173 422831759 136608945 675370577 13676424 324762664 305963512 419360717 524654506 694066450 276051789 816253738 371184054 410071674 18477301 274682176 529161987 288472760 680118171 827723369 58566307 731569640 670863667 334117436 505839003 145465591 359773022 730322400 29913614 940491626 362019410 910541028 40118675 670046583 663219719 106051947 34545962 671579178 120928108 599946518 388704142 272655125 223394671 979414 778442073 462060526 355860393 513901603 401935431 855086750 658309766 144326260 703940709 381908489 724683787 399696627 896664930 117031970 871338187 705309955 85950996 540965064 166536036 379112849 664018967 185493488 301844187 301178473 275421879 224576519 122262373 59069374 155899234 249807315 855857172 702876749 614287623 530090969 808176107 983095331 659162364 429629909 423718065 153274798 567803112 761123190 771014705 796962953 466497978 760154193 501212500 438019468 223530516 327430072 892193626 455029623 962830466 342893651 577250696 761402567 297914648 951594293 164656322 545595933 164049479 333101740 790310595 813563742 135154582 500366988 33494020 656545131 743186680 651234575 620005566 91162535 930750676 761877249 91825065 975489137 701474793 345254800 374764180 206617433 627526698 926220758 669985120 858569128 662513633 983462249 643832075 725305007 274427961 39491568 377111715 843485817 591763028 400358064 68380387 178193066 899050200 123807716 972302275 108264177 930181404 918021140 933497301 60598465 595206147 347402551 207335579 264494718 610268681 595398490 270648549 740712563 696266219 259415552 750641065 809219228 84207158 716939633 971380443 557933931 708580794 159410441 685185008 370158275 575746227 681145475 650708437 707591587 168731348 225641289 602194659 897320177 678352537 872334201 53043151 7884153 936480597 539397725 949957459 597855617 828995115 763682677 925500465 466111605 268514657 916067458 735041488 929590461 612965354 717846160 112531887 751712159 199131748 196267371 402731697 625599988 591116827 845326783 529914907 877912913 866147672 964901624 515421479 331601534 138557544 221199760 7041104 140714661 530154269 938996446 291226963 721226569 210711561 382556497 364123902 481791683 403959731 853235341 223595752 595481063 24277 574635278 956081009 470040634 53007249 833673418 431828941 922013121 836125000 755659586 621345937 644462127 730815761 581858940 942497929 723449096 689192020 256844318 579475198 723429896 244861818 216822283 503593692 343319464 380273736 524797186 320396623 653441739 291521591 797973880 639855845 13663350 780405423 543463790 524381428 692273642 183931109 18100767 69428222 333045555 618329018 937041200 382995645 595888048 274451287 104811219 422010177 723657594 275563494 506309859 493138752 344243349 471990623 609210842 373261372 216389959 110723831 287606213 635539709 37067576 607788115 891476512 87748764 606672930 458536124 456680091 652138032 392825627 19433035 730941857 867133473 373340036 349656885 144976111 410742638 293104749 402640762 252375650 43134031 442890920 292666522 118033274 689386576 448088675 510574300 931294570 595941872 98031309 256732532 219461882 130274838 5656245 47289811 855453573 556888539 74513087 695334422 222977657 208642155 903275014 423625816 315866179 840610655 334066870 53968725 913293364 390402502 805051573 303255512 273799755 234428929 880680473 262569930 464458801 355033927 82335102 860134433 792936861 158678152 644772391 27829893 365022504 595346836 561223292 448006900 562807566 150539140 967498979 902425280 216119488 969312578 822605709 489991528 291600580 987344017 603995960 881302968 47499972 187412866 443482216 715276286 907227977 232946325 838075746 6949066 611274318 303803607 386779021 698648291 244846364 456859900 602685570 232266921 599655671 173660746 491507771 654373504 718904172 448310231 659628977 139400684 489973621 826779213 68345725 358054661 344216704 955633431 232691222 821862186 779036963 886022696 733801186 422165499 733354610 710031875 772727596 906106628 170688073 726554386 153260808 160823612 731471043 502886649 337432829 988349394 285347661 740941603 980913556 457234644 231266593 587319963 775062669 334178248 574327673 929757109 127547711 992240391 133854905 160695186 281124865 659371772 863524873 873512260 730506947 785689986 171171234 166598974 873874347 792416516 61322230 478133453 136517229 420214769 688083232 20748966 699859430 265681599 99848786 564265117 521038202 915761704 438841038 359893078 376317284 432876328 244919992 527281616 345149892 565221581 452681054 18318600 126146289 918582363 957961093 85640405 290988294 905651132 598247667 607124102 949394205 271067989 629279861 204227759 459494726 430294463 356576959 613760327 456591453 57265971 458868573 871219578 798355128 405950825 173673409 180581654 466509102 214130940 559616141 554063260 279960250 406714186 299135456 103505662 356065580 607130680 167154765 912694641 640777276 501104774 64180261 286327768 391587419 723301588 38300100 973432249 47470336 608527740 18229410 52370772 203477109 79295018 769681735 202035913 92697752 292047576 272038534 256882374 810552218 912944462 682945579 692711694 11678221 427204415 539861519 786727549 997021444 650688481 843279744 328747127 578030845 388549499 457807496 545626404 381770581 258304272 881911644 226762470 620128983 774484413 547625830 343777118 102878197 716618434 428433736 746574996 272287244 428767752 820373527 832190284 905014595 232794090 957884318 101207275 593241493 663238595 455046622 242922771 845651674 892486482 73503905 313218963 407379575 206174744 87156193 707861208 289802618 874689881 851810814 660871724 407922331 588976091 962352951 32082342 823673556 206147083 692337951 522004557 678135030 499259756 947055603 660506531 14307486 508876990 945147703 980739686 147414668 227970638 9751708 762861070 896396173 678191897 718285014 315611953 136500480 529426828 432931371 64054129 1041323 848090629 160779299 75000450 526457385 712559249 100765491 516576643 504540834 951614961 133926174 876606715 125250661 254040283 92008338 744633180 383284524 68921819 830693068 655376197 318224882 267822132 46650882 762806091 733340966 955592440 384661392 912042089 262366613 133802054 680951204 738394811 55776924 507588524 221404715 277936293 859010602 949904250 167291961 932925759 579100837 305051300 99641556 533027982 468085356 889689410 407379289 591976824 55031412 546694737 341997926 82046751 672296477 124734330 720129702 770641193 604623422 268934207 312170013 552618151 914174269 926649952 456739095 657639573 926459056 135657571 411534464 192418539 485304759 781453015 33747668 340299295 22746950 624932550 143368115 475571225 634314559 318859132 189772293 236318864 680538225 910303337 975946532 2538962 376856639 646436005 532146772 308704620 952269733 845671888 483444291 402604893 219748434 152231696 286712686 13179882 564488483 680601227 791222782 679683313 489542340 634766100 156538538 416014793 302021142 850837850 588613611 75504730 18311497 428717284 425875543 112239777 765964452 129342538 557247576 6828257 720361330 490304451 999817354 51564095 320116118 928677258 785987267 572329136 314962293 486418451 718370909 301290934 389031105 404448201 180678231 916255515 841762953 172160313 133160538 376412033 575896363 208144589 944269825 939251114 503179095 89946425 473659189 684869984 728380091 323151378 174250286 728127676 906158842 239248459 121328340 346475923 183344963 981414156 315723150 265992016 474377867 546963305 661795520 676399495 393565740 173679580 816114554 611147965 402893827 129399833 647059763 476132388 251022667 695282404 245122135 959240904 652085185 365958538 234433643 462208393 579792635 173073623 729047769 81549412 590505393 97237566 193471620 905046140 889594181 441767910 151107386 366714900 380950675 420069098 309017384 195239029 404868699 652724181 365658141 122348129 932412188 902135437 749309355 103720553 868556897 535409936 530037454 592802577 730481998 495900406 701298749 598779933 818855249 600821362 550627407 727882321 28627504 533307599 636128260 581375136 844587751 929723026 932833337 244496126 893163779 965798170 847702001 624759395 298194222 907327332 717484591 331201930 344746195 880890645 511719549 194596629 336562509 234430060 793169671 76454438 144391255 481648848 839061384 1290219 223341087 722668185 845841355 330098132 216908167 645824447 483752576 592809570 908734688 720390109 837029796 471239973 330829241 511027996 61689198 305488167 101061196 982716659 981889241 874487513 329389477 176411874 4875980 483344345 280824474 231221774 210104642 672260280 137530034 781441167 988921594 798282520 611401373 511536280 107703317 335395263 315755045 134629824 100069946 143253822 791447902 788573561 384372667 860235771 969866431 249641525 221347534 271475307 200427208 917379867 524997655 449385221 932866667 89379415 925166656 751953140 742728434 182377446 818003767 576569325 427726696 143354805 356143155 173044592 88429244 545154034 32262888 72271970 244541602 792888434 952806420 161112889 249132448 384861008 648156770 676166176 7038959 475418023 361514954 25681631 453141362 373526808 421695666 167677656 956120497 897104097 177693606 772041440 334013165 206988521 660835557 604806021 565217900 91529761 16993791 9366447 270407032 550423575 257240653 89583001 753369237 621622 117326445 337674318 558195299 291203903 63944544 457378903 674599190 655024407 313618752 374776175 228449319 627410161 87049218 619414127 312898387 728182256 409706531 654283429 385006887 681599213 977984153 834557396 161108666 587814442 964441397 227903866 28890484 412888210 329177608 367959240 538209108 437420035 494402506 281991536 467430399 991728510 351479728 979668876 978143318 663205165 445825700 113794301 203830674 200301072 241154495 72000652 557806462 150113009 241836466 577220858 194202617 961438960 709090608 893343547 806946071 40418265 832197098 224466477 222880782 830884972 230480999 981982959 286578173 488178164 987468144 524011634 858368181 914396609 936508199 948412850 535058928 22411287 573282248 88249155 257477335 924863288 775710807 246088492 288327133 733651239 594830936 986040739 674399376 640645977 417315008 65686351 898749529 750588229 401305182 346285606 280750160 208891532 958548136 506690515 470973462 819745264 793704487 350822657 550754812 292039679 559009765 495305835 976071764 698832375 106784728 320414524 121261902 999744084 455065533 561732084 255888910 175837327 514535823 425497380 919614805 266232293 795420543 339162109 798854881 185957509 449936205 931872139 978528152 187505794 689042346 470147108 522549878 380579425 497512507 557141453 573660393 441457471 318997635 605110041 272190884 260541579 159200046 779835479 717893045 464031490 502555508 705671714 619546495 503791360 889161184 947784347 922320008 859326502 891828920 722949914 639409517 275018086 333539589 583656496 960798306 909102444 407949361 859269298 516214842 167385548 473269370 543281382 978235186 314914003 117943219 393160391 722808217 653585572 196100297 672793568 605303584 529271865 3812975 573406269 329431018 302605883 881848711 108691301 36035974 996708672 517904112 502960608 47754050 988094277 61238507 580510089 13674590 296445920 442059185 645189324 87658511 541628162 932389314 334263084 607820219 957575951 795490020 959275208 230754217 481219474 85591318 385331004 753352316 569972898 299143354 476002796 298384449 466464897 482080286 2717183 975103753 860278233 160038868 283669423 535533105 849403268 858731047 120987863 653058602 167951174 911341324 433808571 598764483 135724395 652582553 638940330 270815009 119043776 421816698 956959097 760380977 131611713 935622627 426848288 878314125 556164300 796326284 372906320 633413403 664116362 446159626 687977219 534442986 461335193 423460103 640928365 493164769 476848518 454021169 806959246 523325183 41008148 722868030 936055327 777480081 852222265 296653178 5731681 182732291 750363347 845969341 905061826 814071027 115903326 914530206 208782981 158371687 727772211 745575376 422889761 91105934 906584479 891672639 300087711 109930190 449265584 160072263 481239262 318008952 577416555 499731929 64105048 739092959 128205924 147613425 239858557 537440275 85814401 565675805 457596628 475729336 766145499 336239422 751279412 384378946 830237728 572744582 253315311 645010111 573970566 419835865 260288523 170101733 582366202 28845719 523031240 927480 325770616 343280587 874736490 266857823 927409825 728506806 86190807 252105521 882021470 915613624 605507773 273518331 695694230 680931017 113049347 919543902 250149363 278707604 845910861 26068863 774749848 535397470 836088886 732818036 675629628 101340389 149931330 232062899 214521524 555325936 745115617 428886530 299972499 330405775 577383633 383693695 556550017 721594527 630021741 988431635 206448175 869979319 44861974 487722494 45708361 181552126 122514624 835192019 262566179 798314236 372467945 427664362 783691674 474980496 659234304 430460113 232240790 143289692 119840503 580974660 501538958 869909915 920062334 170428610 774803746 618700691 639471127 246285238 446457346 923153678 849258491 516381830 216475589 509551419 12209224 6660619 387381710 304390045 687457392 924214738 465251115 721647444 608147160 350561593 549490745 273542005 583888218 626675033 852221301 682585986 683811360 334488883 503964273 270056952 708796748 337356246 289827534 17324 577690484 749850678 291753930 538483887 286762156 65711724 136774941 194981125 737131501 180043653 51458844 143335949 766052523 849935228 96367418 118571140 854427524 443595788 594791 381588656 73237486 459113515 354082472 908845448 284447195 739932342 940568869 98403784 966799553 774837150 142434766 371795835 108790986 100832890 330914320 399669030 511227898 708319477 778471351 409061494 685097018 668055994 477499267 770153700 862391831 266778875 14008985 331200565 181590949 779004911 864935668 103983990 123445907 729343971 955224007 481181963 819175432 485913656 531243131 370766459 400308095 508959894 673215429 118181932 926879528 845188894 747782580 472108055 47771563 306649088 160282206 211518368 336962709 369290939 407576599 686681082 244410699 429777701 764880215 383564395 758407693 611286713 353158567 653621941 754962448 392548862 109179133 694880976 720934901 693677968 64399112 258682264 523704301 459869586 870176357 50518963 723920700 926354968 906691188 819078275 203259018 235684547 98002877 654975753 658686525 977381981 347612945 716018324 464988613 885306341 610415079 199321626 355245326 336882757 300352312 994784118 143365506 813404178 373669201 303868314 560946261 167201885 698621885 976541616 61408043 909530096 55912357 349282173 541513568 124852322 908155722 496308076 520861161 568420304 125344059 17834037 267673528 398213499 910306927 140773136 608756554 430006476 280620927 138924825 614741755 662526152 73475507 70303693 648463168 386546516 449538763 478966673 846506408 998668883 741600701 67305536 712834922 969149560 737560639 432564023 452877243 707602910 765728307 145036400 137427986 484942600 634916585 961837563 726460489 776707136 782789062 556094903 122748284 212727377 749964535 505458052 145462211 670797346 505945111 149852261 673722485 729017078 398637268 563760281 632291303 527842864 737847577 3562622 448267998 256685668 819665074 457189157 592248015 424763576 336868597 91127308 645717605 534979784 709271534 947398211 542340222 79873917 936323378 500692703 705998570 689293493 501644977 500215336 659036500 335852761 302078219 12002698 61381626 263457112 853783507 63422215 243554978 852764350 749999726 187825551 548097368 902520965 57884812 989049730 959559807 274273047 742638118 816609384 502385966 470738938 305437060 491826687 142557160 146956266 68278065 99137709 760713208 500065974 424219461 262451577 111495119 156936793 58793058 115860341 398519588 603058589 269157023 912206792 915512539 76805300 854306115 129599217 439071255 263161169 66900192 548458298 317068864 221576107 20663228 123509491 671440165 802518002 982858335 285321824 151657153 195165979 575004734 127415546 502051621 242402525 220906956 748526758 330570989 210731141 356933294 715189461 297527961 589326143 490892159 856113642 227016384 574982383 508502362 985913280 828536142 799602431 793226687 605914111 120470205 821493794 752398542 926886793 987741198 588086143 208236606 927354012 111426263 931588276 889172963 440910337 81104660 412768146 348406335 210134490 620602137 454294506 277876327 892114600 184889747 235240697 89359058 700377193 499770585 543345968 62390952 463850408 985567726 130168233 613836495 832693150 804658371 181011021 468136895 198944552 514424892 49066435 499679138 664902642 636936501 233113100 505390316 939749827 957845395 245877373 698266260 12758587 788537601 611264359 684719331 336182305 483777332 546635071 394677379 275469512 196667800 421183819 96504057 307429080 239481621 870550664 552567343 272127791 573771073 185343272 784521732 799390936 56719409 337191813 809176012 64108273 386413100 352708642 584570982 781175515 293263063 265049100 66166678 892463001 369872680 916112379 490354601 746965022 614456027 419936976 829616725 687496081 749567075 454629728 4700149 498410085 504149292 248045120 690830142 844682271 872761463 468829370 91277991 249230246 946352663 911915091 979962763 664507066 341260481 144648669 485289099 889650265 240915266 347983418 905482073 169619745 947057356 709346882 913401801 661307157 917805185 514192767 681066523 849812775 632631794 792807192 836041325 814900609 832163026 965533281 695389999 640073631 2057748 559482616 890289226 973390246 891217826 247228756 868381630 97879093 662980404 475947416 952024358 546663138 624334941 91867331 738020140 185617230 786242029 861118976 684070508 150397460 256439708 558607981 352508540 922364594 76420562 172448952 918750305 607514825 782303396 815979246 895228844 545419506 198782645 559085281 534255946 878814897 470204354 808889512 454779883 172916618 86591516 130214091 622926583 41861148 73092366 658597143 922199322 918288518 466120431 106100078 213130871 337761037 329462740 657276674 782014143 43082031 537836743 417379870 532783082 961105147 139024834 103836792 255958319 851724088 874524207 303488411 857214388 611972502 643997501 801380852 99274428 705752874 323444562 289196113 635811557 332415504 186063819 6449764 280977055 248219339 795481622 979139228 867372713 655860102 428469342 49906818 15254723 285034708 441799641 669072613 559571895 263563433 968299917 791434271 338857076 822701617 49329972 899028551 864715069 673187473 331341000 522808346 847640333 101008289 218587870 170819268 540609126 83865967 319050758 369874209 663601096 12376819 758196410 361486199 636688086 52994428 550548123 809627597 462873314 991507632 58920672 933767210 260181575 452293667 347688007 534173705 553734158 128413906 272360489 99846001 585153494 948801264 169949153 963461313 699789106 207042724 712492788 368985324 169346286 432628928 356218645 871836975 448109725 94313254 978615141 726808128 943310132 753712971 199006694 609195150 53464897 555171375 487853095 469134111 289251582 221809422 494505587 346054531 863046614 201986371 707330844 694345132 338858775 328891160 501254616 406144968 437740172 704435997 789278178 9658749 624920283 677819409 939147560 733220031 481672540 461824061 342360702 851049600 986687991 546464397 759193292 410497263 929529266 384666750 631244095 798447048 614067849 509329342 423950399 462100052 387614786 958073525 850453504 355542164 454206171 638111055 323945520 397842248 14350313 87356984 97919181 267686268 713901414 194429649 270639220 437315891 456218507 863377944 989473149 737642771 47435340 20994966 803845665 706380327 486141887 534815514 649825892 512342798 365689409 705027376 903976091 635843643 92187733 486586460 477150539 189136954 63130551 998821903 367918852 675714640 465796035 524561554 245474340 938176458 578542520 938772118 681135635 509333270 84602120 511421307 484342015 310301863 576875142 525677003 509118021 107694888 1897899 889019495 769612926 705861533 708788362 889032346 640408053 950835161 973185049 717318523 261429595 152046759 378885066 589581078 188633807 578846819 497464090 444859099 150831622 813140427 846269076 883122240 728210501 701101794 5907140 896211800 735596192 396855815 388612138 795020555 696130670 201639327 297742322 437242599 147896542 852575763 76177791 297652569 163685166 6210407 701468820 385580509 699346869 382477128 561339694 27133824 753315405 285413563 774528851 553696115 531694771 793514115 316445545 37988320 250626004 179563344 842567327 99972125 683256836 49334838 459888568 404890979 341962552 503823158 495831077 352604436 252183443 853961963 502717372 164894427 339542335 968132998 431003616 558450170 722038861 271403289 993134668 406635829 586928426 394148079 908505751 45476625 165860743 412824973 688879210 596281264 965111411 13038113 871325507 109236072 371366480 893646115 405127226 277788146 277774520 865043670 694356644 79140691 256949647 254042797 382146976 370562387 720007036 31249242 659901529 621296817 680713654 281073101 124682774 658541257 973404292 354077253 946279411 72073006 532230617 837330420 144075971 739496844 574545353 851738045 46751176 546973255 454049902 656857330 283682105 464061443 986347268 887699064 234134859 66414100 359738998 961898798 881488706 309261312 160185138 493961974 576553435 949598302 791201757 473413154 754595869 112630785 107159402 334579301 804705042 872906864 961262075 220349785 641363717 366655551 800328737 362691710 692911045 887417325 110567520 628869462 963263193 818662706 310855891 391986972 390840158 462298073 479781796 430213572 998251544 62661193 722137353 729269985 307385763 25480299 965492510 845853901 217830777 338894883 671096869 781652163 602676146 752887748 141411188 945078417 623449666 738618743 605610206 391348337 432357754 787652878 694911403 918207531 300325890 49955901 499726020 472731087 373488060 81116073 227341588 996988044 64247483 679773354 318975016 700558752 349645493 925714349 327008132 563343004 361739217 85579036 462545248 295723633 918485003 355907134 933887786 39707829 933791370 581309701 311397841 115870647 42007614 657988331 358048504 884872901 641190651 612842968 938376174 705537873 650362676 375079093 66374254 965811729 614239167 681549299 504052261 702685076 592377622 255362062 410272085 930295443 918141365 402456676 651435122 274011090 722127843 586824344 653855560 46365148 135176072 93701749 364687052 359078175 78039722 839219125 334732744 204637686 227096986 70606534 635170844 569890683 642740613 555687216 462007132 935662397 315047110 925307190 208717955 274970707 210933605 760685501 147672913 506806044 154003584 818340919 45051426 582099094 687464160 385490569 599903967 76271475 958487039 634562247 203223625 217437817 749407616 302491498 592583722 141787067 387192593 786654941 892462187 837513971 51016871 486993638 130004560 341724459 911036813 354558758 627223850 306958973 422310398 923235787 231485201 109118197 169817779 676284553 649276788 106984195 897205186 464194004 623080816 929005180 509122294 517034140 65272164 542009887 622607819 262658842 454610310 882204357 153027120 324864900 644743947 107101242 583396797 630114555 765709544 787934452 725420272 497318188 891262140 52843502 318826941 709660820 189142695 157085821 197417367 686617121 370895432 683153414 793472362 60708665 378581430 498064752 289540775 483571820 677705783 590722752 983953776 161350977 905922632 251027553 810426281 136253394 264823884 780707636 773239293 8145694 214137876 655133955 459717942 577072873 954947198 589257452 60305418 915928728 389972357 925291700 251601764 269725919 67112057 883600670 742545119 531523381 231361261 56197327 5609840 545425342 475532830 248486941 935118830 276744959 287845710 894804130 395293528 346539783 745961238 830997247 169078443 350704647 986786763 906346761 750969188 729454237 452427051 863247995 860996728 513884413 779394723 661640031 304819981 161439989 480132664 487165914 133141066 44619521 32857474 710520198 915197341 294545237 739821403 482078329 242504809 677490473 661969960 170049126 629074457 850812979 469822156 912366590 585530351 770372158 464474795 300269530 546264076 873957793 503245650 928577244 649426509 131122488 478704639 979443356 779986064 920593268 881362264 51753511 699839243 855226060 900694276 946156728 861364780 131162949 785308251 909198711 202139702 207204930 857556070 72109759 241531537 550776474 386847801 863187546 580152176 624060867 615807087 826898368 830125474 814993101 399366735 876125568 235411470 713584513 499705127 341838167 104942086 764358463 102673557 824687480 221156680 708875386 79584002 240991865 225682487 11514057 632392807 400385953 230676685 675074196 813615554 229611587 997021207 27803988 14241646 312911589 883125905 453177298 425877376 719641381 993263256 112270382 511200946 868330720 552764762 115086233 296370028 219490483 814277693 932047130 614328846 870132728 364223052 506790793 798400025 766283681 163291506 364138803 460067542 283735417 902492530 308417675 820863191 460498735 716699191 591025693 887195798 167897140 2570041 490660713 116678167 421275525 227340283 299586707 499754531 695719949 314348492 581154390 850672007 38103189 411614988 852953813 389578427 149091458 352084270 337433381 600962253 270691220 221448606 307906225 440985300 16491622 370375927 608340027 670765822 177445791 868219844 800288437 9289087 105074716 219351986 117639168 950274 448115475 908369031 582331497 186750814 412784296 135015820 597147333 76135699 871011770 547719498 107355390 609015711 350334173 184931791 576427206 536277305 593753016 310109636 56227757 677719256 398275385 603021657 698279395 17872554 609364433 693399558 625695043 467626734 86127286 635280085 300697107 451439124 218336915 672240855 489437124 607344375 556599677 938382405 272182668 447939917 518096559 308937551 74963639 103036127 479027521 891347750 834389387 863965468 647080256 780689350 987807353 387905685 648646494 616493734 597706636 219391506 277603928 919861676 32503257 794843533 169276783 990159958 967613438 987098095 683739706 365567429 76562121 224315802 517010747 260430589 30455370 874441831 47923179 65950901 634404016 869656477 665218490 870660926 253320849 99779943 877954514 733879024 652440181 330378129 510299116 303062822 60139756 467510517 602780232 157009516 75057470 983474381 114899144 840078506 23496908 479976844 94657215 270560122 956981414 278701710 66006580 572158805 192929294 916701751 246629868 928734380 497360308 457306324 389826388 75241041 921884272 973950141 477462930 1644146 478910402 809083180 788950122 445860627 741092293 113636378 394300013 173118418 504205283 856938061 934853840 28893555 529877433 168892383 126492963 355994948 522427725 708330606 85688845 798203807 995062212 412429409 757439241 134524945 707420088 769094500 127830753 763377961 879226376 769498831 75321065 168301241 45498184 549964361 760458859 399314530 758180198 767463003 550564906 483449863 475429831 945053767 785693395 50329617 780080067 159932382 917733112 937316529 73371799 828132233 812034614 217918205 26279481 350539226 158024189 665521979 459716327 892133703 956772607 140292297 927928670 38259490 147860359 747697705 440972657 389650721 498332289 707109310 828945380 995323859 776570351 857598437 433619767 988727510 523049641 545214067 571220994 488054208 364287393 122128156 513865030 41379256 303494130 369979709 290516396 235224743 590641410 54302592 32192513 898984237 620803400 718484399 891367835 797558938 926697486 61033352 295526904 876226539 837137817 61673596 535541636 119962714 961160632 742667331 98504137 987313813 940360242 453657546 291637810 834166208 520645230 699743633 106655311 271944093 361757205 309988694 857148954 902942091 527569617 632062036 541237503 406025666 758649679 740312286 705308058 895194590 506696069 23803280 825390742 410432482 159422187 923404663 654674105 168561850 22281290 643730779 420724495 729317147 254015256 240714611 28355837 299974160 50750894 953553987 799048879 406112551 500753361 956840965 303889540 178451834 187811202 785939458 101291158 196265387 352011337 260721070 199239378 76846985 975474604 537497060 204559098 204583740 404254409 124422887 596124351 566497533 438622189 973681432 287540847 566369117 724753887 37445752 749679858 47197454 873674869 677942878 599475893 206398237 902461836 116999940 739005025 349978668 502214776 629609975 719283910 324287217 381141241 87363107 122128563 444040310 706891457 983238867 557643084 824172539 885757136 598939513 680422553 711705205 386547700 388257401 10587212 785335059 185097525 749203020 481736147 101104407 918571679 954680803 9445814 330247252 888237452 192769512 77590648 77885747 504520084 668373014 799736950 926290365 703691724 472495109 967795447 145889849 717364349 613128439 614492942 827849137 251876075 265149597 618598721 858862676 330564125 72920750 907156602 457017092 383278089 976030379 186163720 437428741 251282456 605184856 352726303 335423107 609848133 526750455 147302700 132212828 763573286 348626612 15093792 695385089 854016670 417342061 153101585 712275906 630306842 419605963 690663637 217328838 477541157 187458674 736210487 173721774 177107796 836463834 857291712 400892597 285917163 534911174 957527290 184556555 945673274 590100731 733811894 790451620 732252419 485321410 874178275 884393420 513071299 339722081 693789005 31992326 807979422 201133557 681491249 69898972 159187190 824385877 382480242 816269719 843615017 819299921 164684545 85732479 428814720 901482530 651771689 423373934 703935555 812201838 804379963 568188349 531646489 66959059 282300128 10110009 502653159 22232142 871327677 146091484 282552980 670025835 161436908 836304380 857103693 532003263 798948884 691433895 225184203 381344465 732193185 616976503 918278757 924591369 421379665 872735966 801808434 379590296 916447405 516908998 422055735 506463883 267790975 367205095 984671837 200098056 257140211 103601288 977116782 497259174 987823580 615834591 403626233 487500372 222817029 704315412 652815211 288597869 785968597 448789973 498113594 1885891 564794797 216226037 34685597 638387721 175201714 448782850 729089646 770681751 20586847 789545144 712782795 257973598 261320251 969328972 549961248 477517299 379572662 713736318 445325551 14360187 719984097 493552622 738706426 758727590 26483266 389703691 683038495 256637373 524008739 309515940 137625869 699230286 805643245 658220395 551396678 332662964 153943594 632369468 546288762 2729835 153269299 593498856 48228290 711485198 412442085 422631833 821002067 857229840 819349838 803668725 664984805 275691574 877202805 994057104 565270221 762504826 649276823 694245059 170224032 12590332 463029067 556318680 650360606 333451959 143948009 412403398 711768009 7435330 569368145 649060756 783943691 279464629 127262486 440798730 19293606 433584635 129289889 983196751 183593303 981759982 233217885 922743823 815700580 169572867 182862543 776755329 3928943 669106087 608127528 32103353 659298900 62102245 555431919 334751987 484455595 221012037 628672745 269687228 962510245 782283249 230727515 287998767 496562398 728539504 299700768 811232720 690557709 446037651 711220830 209783368 137501879 382186531 886486963 32878298 435008995 841131657 985373531 356959149 613634837 38177318 420740576 803582141 963553022 96021617 775896097 971446589 929693745 563345154 999279807 439194619 986463614 20119422 812595566 164103652 468673483 161596896 730993565 430199116 959174952 575767025 946787020 429971491 60034420 856342293 92575752 517849493 754657065 98957011 294615955 547915916 700406128 679822501 990718586 357582766 877085545 734116888 740135951 350195522 238159458 259451112 260674044 410594151 113025709 82254209 202633264 484041853 629774236 534851653 99717304 754731120 364799661 430410042 594293473 481471289 286861706 743391145 605374772 878207270 159631212 561034879 975635388 14806080 73439675 709563392 730052489 708208002 897128172 929944252 362118631 976823131 873621543 743553252 264832361 109065010 795238682 193444940 668615764 262380061 169292827 881988924 365860212 147699101 669985331 131496966 885564717 710628482 919854725 551352008 598933570 484926712 902156828 48865267 346520747 897453922 612088845 832517212 244797258 165873117 87059921 615548710 812085794 337068686 189891480 157485379 91163794 236972088 238435952 118407439 300999179 620672972 713526968 414735344 210561377 507040600 635339420 322762393 994623790 432502736 450012952 459844884 934726873 17339054 744012676 189586165 248885717 978917078 33827162 197473945 746337478 756020851 971354815 597050840 564319791 402896026 416559517 263003080 330136476 509729991 611814945 373659794 314077466 288905693 778132218 498624004 155052878 30221640 623091299 2586898 707358010 434602804 416303803 214277561 446514896 363634148 517468421 712701804 612554911 422522682 280905062 267072168 269606455 644164116 802901622 957024153 364655679 528611221 650732215 74363445 370107569 730205170 895335927 321008421 606564869 462679506 183258793 590169114 281496159 349720020 582712430 235145394 227120085 777254025 856943230 723783889 137907380 564984622 975160415 423212935 563086600 77560540 215406595 755234622 197938860 333248001 712372019 265465213 469886696 348992981 351864985 34448754 756181927 247319 219729974 636226201 684531189 443793725 660954855 324696411 522779047 133239056 350969808 881289456 75653531 596899951 190292464 767793842 485763742 975006189 504884188 799429094 89908864 413836500 797440671 333515030 505879686 88519048 921063535 427003178 180335711 571514571 608311906 992073185 595082127 736393246 51799757 580773720 974140362 669581189 867574074 843481329 288072378 321656191 175514574 48625301 331865983 893523027 910455659 125105086 897288038 114155257 362147050 170948353 360540210 88455064 718682079 832401054 484365642 192294720 999575 290515459 968655929 927150609 131857704 500566831 597225290 354309621 914003026 726709846 963207420 367365160 493842580 223166382 108817138 571767256 948907390 448933294 892632419 808213712 538781983 205978892 652523329 819069635 717990385 249707170 771194634 86495749 629182257 686428334 912343109 80584143 197521422 842738548 608208536 253139613 934255021 701858365 161641614 163300691 356969584 699460444 364176258 817228244 754953799 586749225 713678505 786128327 13757490 279480313 512721133 424121169 914331808 18266289 67739771 899385284 921432205 809819888 508276813 323271680 886803851 40036696 118211437 668954396 431262624 273625062 861733166 43366972 847217376 459342579 386009339 314576723 382038710 729251211 255663327 837322428 978307631 689092038 704050562 709769667 3396681 764691505 155565413 633643335 64800228 37917292 565547125 991520594 248049612 254413586 334538319 733042185 100643326 912368307 896494620 161502950 517843879 591845946 41797818 293830221 842746639 58825559 261785710 617621412 276042123 650940504 841777639 472116040 478789186 196485118 878412166 17766136 532198169 331165843 749330677 826342102 280513509 514956920 969328182 710665702 609610669 10755418 79775297 643062294 828973244 622614245 603372083 312054427 994090317 431678684 598700295 573100984 172919898 265778492 996636390 954535567 694378330 58165963 47836047 22909633 540478946 564393986 756446070 931778973 679507040 458310314 391260414 640617939 625875189 878630565 102856041 543898970 261422903 799870252 844852879 273029851 978291449 627513404 815544283 183484344 832919262 313356805 443286131 275143402 638146170 910599971 931078840 185783337 730690251 169664360 509402373 428231889 278282667 661791617 604109490 390351367 212517165 271715908 65872961 927350283 315245693 59418742 27829887 803305590 455160577 56681410 10961224 533335469 46347767 531345869 300318089 371496420 368090994 919726829 257526606 99663703 869501147 481163504 354276455 699801393 330297814 105761783 592812634 795570784 202522416 708525279 54893871 328322585 442518159 75422689 908990240 648450319 946227923 965433046 173490479 672364687 174452575 983192729 821462614 399084543 28913836 988536119 667843215 786939622 531750112 941638368 941162823 531958177 95238098 108422940 160899921 350196666 152718712 343302021 146031107 115432084 551175061 655763701 574795111 129017574 682185167 849030441 580081803 430177726 917875138 674106684 408494256 181253910 818011819 191340356 420127067 668079891 464325990 752594970 295375689 633911043 540804424 990832334 990382180 182343691 248454528 145757321 968791011 649020589 47677752 668278148 428960482 15223243 317432677 277909332 367505207 12992206 73604416 962848319 722166906 54378539 685739290 910514920 563260852 283509257 249473987 809519797 587962032 259677818 612571062 257468551 936770595 81738946 387633410 982899470 812311343 633206412 786513360 567050312 473602782 880542736 814875578 603308707 853742353 421251373 691932747 740987555 401083605 942285774 448852251 554492716 608410771 641745810 432589415 972566997 137746760 493609834 180572406 533980987 386497851 612474681 700251958 541170827 426542241 265897493 226685019 55885364 971753357 898567276 56155881 588652956 339791797 518994113 89957304 558717054 46860738 805516698 285652259 105141138 130553604 514482664 967908793 468872078 910589846 362824684 852164400 739473132 355832424 939770278 612038260 350901651 429040364 378466042 325159648 910473879 884655051 29411232 516335211 464222691 661506398 305332529 125043174 36124783 410673986 913879155 946479148 188571349 255682336 606713784 192147972 752780810 683184607 692192274 766525072 97072606 722098417 611037813 654158564 989425631 522614537 120076775 150927284 620029211 988026124 343073717 423263249 715889774 154784467 89660590 596011511 13555436 214777556 979994683 55364994 955518508 780027084 988426404 434073448 318899307 428904094 943954336 359343587 337797623 508560446 135264831 545187629 339369929 237214747 480595479 375022645 776811499 320953826 156393621 23661925 674091726 567564079 937975025 93154369 401901918 831003249 780901643 666402018 491761299 198726999 154530199 385061965 680966535 683077036 921555076 195712369 244808732 319062181 859317182 514479071 258110929 572988290 733213451 491926414 164076024 928372636 190038975 136684496 55925785 539930528 879880068 133137476 894240615 349168868 579722508 86733519 14200347 814916616 487418763 489485025 229247384 867741895 689517585 101879379 292053942 653987347 542965010 301316651 965938548 161512061 746639831 834087224 349609600 668932201 364041955 181921770 113279112 232815707 870525965 451539039 246577233 30856689 108989615 352466817 710078745 619271668 768834826 222127940 462512494 42513940 869519647 990577379 328400763 832347286 843847329 42332320 253433941 770838051 136112480 591016177 134795470 429325968 662372933 393379782 632268114 595473491 800412151 952830804 6451070 227793719 72992212 689407210 814033913 602254678 445126783 526925425 239779046 103454304 106731349 271913751 598176279 816698321 695374895 297264987 309571992 187856660 853351347 910803412 308813994 813244727 36883628 269488805 332734184 540712766 176377150 930966576 50808212 427907534 810469920 588808188 891267574 813456691 218771019 237137597 681286930 951978676 329869934 945832464 299780127 416552089 752926257 754115608 437757068 124584829 282203469 737551483 802395049 980712815 517353833 683545092 990534479 467338780 408938571 579217347 432302164 687088304 122711895 943815011 328491929 703284583 528072041 635228709 3729881 361960983 179128045 164717736 717836449 309257951 802698242 452687392 325620456 935918322 169821711 503940870 999955640 547583522 856672165 494330633 99731257 586976999 14464561 952036477 525171470 822371832 883882805 928093164 289152382 699637135 818587583 893101340 850792298 258533247 821939296 825388691 49144863 680720044 975226674 888574434 22058448 357216978 290675135 34404217 264605044 998235182 951848909 693018922 154177049 954071161 613936509 183933552 451465168 710092697 6784507 567047925 553477937 124149749 982626730 272463643 893665366 10025921 809766834 304148774 570318114 732642831 848970750 953991482 329117846 949577006 796043053 438151309 295295545 263149671 267061415 313648445 234914828 272362931 557251133 917496678 786566470 370644961 808931946 384220486 916844202 931953331 508337151 572947672 503078785 340377424 304667703 994783457 685011833 107148334 953335440 306620895 680357980 277538488 403956893 5702959 263698691 354803939 978828539 395027876 559360563 667084003 787779935 781324701 491964801 443317584 864816295 103856289 791854817 525604359 391529328 757832954 306781218 270263516 475391740 58250304 343958652 349832498 442279112 983627040 819849131 676679613 68876938 555058331 908147883 102996995 874060896 23724513 502377 142608644 54044995 248208291 772301596 133459964 834646601 504841480 305632119 970781561 725729744 198128798 665015085 123401375 123864005 920214046 702182789 673372075 56025245 365245237 764562292 259000115 539286457 799776263 538211567 58986381 168766364 357961207 975933910 704007357 45652000 138618054 182502940 266867905 216531615 585120688 912918928 662043965 135021112 480631905 10121789 925549097 919661154 179963008 231148514 731746689 363345924 532391051 57546439 94104059 562459531 218643808 369105513 971910750 30712407 407838766 260505035 375402348 113424082 61987238 862389284 388445548 63270651 54562732 597688911 952301573 482212643 417365433 369997439 679951920 423900345 695109526 543483542 525759518 99912367 745465383 131109582 111128667 852694215 802662870 280363568 730151272 758784722 707613510 681293550 640109992 232865032 606784321 596618644 849079703 255691349 871372915 147930519 779869557 912225013 59609671 77034810 47736789 762842649 148676297 9962437 17456953 905979068 608554490 31254145 80011579 676620600 274472704 418861871 712288877 163189778 956716061 245693246 452201995 510024550 456388597 220697036 748256963 481377967 734605582 540350718 727497417 153814342 909824917 837330578 500612499 462980768 99398412 765626741 124797975 200728569 331942037 856187702 909163164 693721936 840540587 196336991 594370771 639715519 501478833 442716101 811827327 101137856 102638758 329801307 199774865 800832046 933939728 886209229 241141760 473245145 296057733 156942338 741660453 241028822 894515526 196834142 719345569 859175978 170561905 479859407 187595521 815325542 136301747 475532126 636706656 247596911 686907490 525556923 888030027 142317270 994419346 351602769 621083633 882448985 398022649 26848117 19806818 939946118 214197310 156029969 544664277 991175031 648840273 599701514 760174491 671194312 416367343 516381270 328071626 360813047 690471149 929849216 80339600 249371059 441278086 693270556 473212396 724910744 277228095 327677943 82324023 596919869 610817332 843056465 564445539 31496065 245217154 616843739 270994723 812236073 554594463 105935394 226326747 504420388 6654392 483549257 415740636 653219345 712504383 239419731 182466368 403573689 520357487 554444731 873325752 280139285 137343372 26355776 641030080 439363600 104566710 979742914 196096361 800680656 638635055 464913443 582238509 359228662 611666713 62631234 691267371 481976953 249168192 940160658 443152591 403485509 511016775 251280539 744253994 940861436 544150913 611011186 146208722 271988235 550147822 631967769 315142915 107531944 410021165 898784442 822777441 905276725 7369481 583181737 46954790 367287835 238912770 780665045 764575436 828512140 398103567 62899154 361029635 658749271 652114183 378540229 861952487 765941929 921652611 707524642 703688224 644833431 226360744 155360443 843882216 246574453 594613572 252180167 847270054 60233142 714227774 484944629 964135749 347811178 255331104 907205153 113389226 789426000 212797146 456093929 428840276 378503285 451947057 989494336 621765157 376297367 92092178 607035912 425964822 947103782 119307046 86505916 875618683 137583016 374713153 545522710 474126528 839062581 864497882 695757972 679483680 182335923 886255139 910913529 320653983 106657790 938168066 210085096 489351566 759152881 265604721 729579998 345360777 838393694 97640591 954197546 17715821 915567270 298516041 547694205 692522954 821753562 555759036 968593479 597716343 350792728 758783391 209062288 809948338 169829473 737275232 661270816 375258608 508694433 767072705 867743534 310115125 132033993 749471709 654429462 284788529 418727454 55038467 878760266 366735807 641976054 192461538 379821369 161521716 130030558 163075315 771616683 481922379 718256364 378055941 620896356 928460779 773778295 118296609 250050631 298036207 560445595 649398213 637100306 588731819 53274017 112565411 833253682 770264326 788945218 638666196 500592996 500993110 76373919 885325897 152447102 887907545 697064701 486348297 83943094 212899 145359952 843434929 80365950 48321394 343088902 199305963 514919272 520159703 571852340 440597289 201957086 456157281 353646493 693821542 247599953 261390008 375034835 749546562 930296171 981983088 306253734 237780236 539501364 593922223 171750631 788239216 594409690 834928291 247081825 992869650 158199321 128029631 816621328 363338289 364931408 99402589 375586066 607092577 774643157 650890380 829012833 191275107 510716010 312723158 828762428 981001726 512099061 329065084 884345242 911991553 133522602 851128756 482704073 426812643 686154605 963996956 179112977 366588022 848449035 415790530 922470407 298534549 618537216 384165425 900873266 389098872 120425129 493275174 286421261 635308830 840992896 957203544 241241256 884921282 503815182 799901915 845122876 784883330 294082991 451355479 713318224 874127777 947558724 128089776 537913389 135472036 311621848 573280107 255806580 804681951 981846157 772797049 17290501 328096329 966662819 947895984 484915411 922325998 696246413 964820293 306957551 585514243 164335001 421239972 263379977 419153612 75226454 127313228 908355544 86552618 956824559 398131056 552420563 86591126 594872061 394537055 938606822 944288117 854435916 117756885 363100199 554174609 358995277 519670818 451082945 263696824 51549413 654227186 659512044 984491817 505339289 233919399 819620087 300431694 806536928 232323923 682025601 441799786 201022159 83324444 653953880 2991754 978379038 142728501 352609611 335296335 397049479 248986643 816022036 64888013 489908828 389901165 881427544 617066351 621464265 780057032 413372492 741349001 273586706 55565384 141559746 571504437 805062824 460310836 76423680 623747938 455577035 420472817 595664059 284756192 196601600 924871903 757819884 247254376 621770485 473585182 859762935 831004043 878412946 198166997 22537452 234744526 252913517 555337933 15188533 32427639 892000364 906383327 702706220 870224015 385547313 452270906 832812220 540624126 325933976 91023645 879930466 426770963 500384408 313456329 839427141 801044003 221910910 74920308 839704389 201314749 715649153 882217696 347245467 714786409 78567200 912073268 413775719 431369842 965940642 778871810 363858447 642396616 199817120 606342373 726384385 409982902 555705164 13631430 60458283 747708669 949524034 916126082 134463348 913807251 752741545 176202990 451573621 619925159 693907722 117671093 592686803 291320082 811071043 969953463 672564166 12484358 60353101 833577252 272300578 299859402 975590153 414011987 534085775 26157735 9812036 708603978 173269333 349452105 1718824 944943975 282306779 394338549 486448590 282886797 932905210 163234333 76585526 593099807 960582626 153165209 395443236 972841450 551924142 755784741 682590103 731336018 569442068 371317977 129998192 886914166 168010154 739100701 528939595 804460454 111977711 435220509 480684368 937671763 910086590 365159597 590794482 461616201 369564618 539485824 51128101 831608284 427025272 447397131 491761354 349049442 98373742 545949368 982181316 857990469 542395807 734118706 83648257 116945633 524602450 6963149 167984950 540940412 388929680 668019274 390677580 442523521 51743214 280011016 644601000 492625572 189612218 467465031 434267320 636432553 88104044 359457731 988232472 408945815 131453296 782375047 352134375 706945855 132904707 444177998 249066665 119330393 612626350 622124923 917743689 900208040 939747489 265257488 148262910 660419774 619727115 565915625 930295458 838795475 474425685 630124003 143379825 515486032 445350719 558650585 114149578 95582600 573845758 323277027 660924246 208351346 911262776 788027903 518973494 650501667 489828743 195205337 355440341 76741299 308729617 782393049 69433132 229311861 508785393 347833072 348844210 813558371 250448780 928324448 279062096 433673231 411575049 547624682 334081168 136424226 361340917 147848640 363127851 720615108 53215604 493694858 895820077 360624816 210818842 89086356 25014670 557537408 335568116 777903091 563799715 548063827 289358753 843532076 704959671 727675980 784521098 269604413 273138840 447264601 550119756 68188827 416255415 16450142 709462315 261139372 203497580 194579470 62997129 653858322 155144209 943697088 60451629 485725182 874610604 735115852 747566755 643534358 845999888 451366775 879781126 27706137 115754624 450741799 360949158 242270229 245426390 833007629 854332905 152806295 301579373 54884514 395836633 955657024 366365638 395544694 995048908 95264313 515932358 958226114 831390943 307112082 954815998 800110542 533778831 576628396 173267120 990274093 976114543 249861171 369942784 396022447 91366554 750691081 597999176 755747995 340505416 848534238 867205102 843364493 949098012 98617301 113604201 803140253 179379520 509472300 327398446 359358305 142021975 333293766 990813730 532998939 276624317 132243573 24459523 855763663 979226635 242615274 382012031 730349104 758129585 737512523 552741492 108290728 510265849 207377395 928873307 490082276 81150850 308820545 797900803 40328817 768100361 103188723 551115929 156992639 978978110 143910526 504229621 779993283 925381729 610503260 953722048 544286350 232176235 732913364 851432634 245891877 23437149 166895298 882090547 846456807 994899035 300865393 397483516 31604573 757310801 237784877 788698565 149494164 535014640 826596707 627922817 778746248 312779969 61985200 793687328 171584352 123392660 822546060 355134142 298337936 922868151 645040300 950615915 87982101 867643208 766376711 205514176 212288385 321135642 38400129 923132929 713873061 806930473 656780827 859460411 997424830 986470019 506953556 766961073 703198155 53276475 492982491 123755353 56648325 873168263 158554429 711549543 706928619 391344391 933923634 755493102 82514324 783350363 157119128 970244743 851137207 960858765 717409427 124930236 838425127 811669548 983722826 205306330 628279348 821760200 222218918 655090500 370091877 435536229 64454037 256885188 836088698 239508693 354981385 106183413 926218736 445512530 199382671 871194568 151388159 258332348 488988719 832315535 37821749 591171547 240446056 524800894 60435515 169443571 986915193 395038358 761999598 711368836 741616114 800691964 244991995 173328329 777772249 570457626 194606263 391516671 254191571 206333786 770847618 530096412 640956678 497257202 624721660 483476467 812852637 38626848 115563494 729553949 352898562 515961095 886762372 150446427 257379611 59046515 965139604 602882239 398476829 861634104 718103827 518452846 672326282 705645074 538339011 28190593 66852405 582718526 905997514 785227856 851474432 417392042 733648963 725092493 410937258 367408335 551785308 251344479 146683335 829858995 806862797 791705033 578250274 624960816 926405407 767844368 563451558 138810461 455247386 975004615 840099360 891181815 150439005 296477894 27780171 125180018 802729133 846103857 396817923 729254828 427659028 73913928 422815405 978027572 287328207 949709602 215050263 682104097 4184099 823111281 380219910 735529578 166534718 699046286 410132037 73610737 429469323 962689886 452075257 582658143 345907251 332498677 536245507 71573765 140153878 334350870 295654174 160701736 190396956 211244292 237602810 955568417 413292453 262501725 618620091 543832301 744622557 746601956 960051991 272859264 324067731 590451985 168861801 62853463 612649512 994765320 357927477 237834011 89559524 94724990 228607798 455545978 236721079 638597542 523715367 615290547 670059604 285292387 716450471 114267313 180969886 950130409 438943367 668216009 528552544 293468732 47297354 978882764 846569185 838084905 607077649 813232982 286845442 310811631 252712950 96108394 869854488 993094613 61174719 895659612 211744751 882859579 692397840 720041042 669730771 968002328 809495104 468755684 377098642 1278317 618537175 296209859 92098287 440538859 267909606 713815082 889452893 443728723 233981057 476848113 580274688 974284463 550875699 388901235 837560889 708243515 421516626 76781695 94286352 56524399 119695580 405787567 728459061 932375367 909792364 119520528 468655366 197608412 18543444 344194758 686727104 296298177 694133469 172370819 20839100 393404376 182999847 960831320 660662694 114967533 657604633 8727355 490946590 28470910 567803540 336259304 701786912 976797958 273435518 928026535 700946421 322534271 302856122 411470477 237596534 989397313 924735244 565730410 461674914 724120366 7545552 18865861 601772552 544366873 296273028 736279029 511471673 502316994 137972340 414052467 509845657 525888252 128409229 55815621 787593914 450416828 941189848 47870137 181760542 699235859 183444151 952805784 266659419 191142021 317250176 53413250 382841446 945853538 684054564 857694848 855407977 107254160 816915220 223055372 493374974 992567760 235346129 655196677 914131708 476864166 982077652 558646350 761137648 531243057 744458041 792723563 695395979 773099222 233681130 894939976 523117018 418199889 102456622 994816245 452662181 248134276 86876644 564915317 192397879 580010759 163313849 275406427 636127588 87180078 479547445 769399486 735279160 812154787 408859135 665137595 314183380 433593616 596085383 362686525 919856213 644554475 30138011 283811257 514956878 436396518 32955139 733802601 704254266 40792692 355954023 745732518 677576046 582634635 691612175 457890662 281781075 645569327 44906272 802994940 852253339 822819575 792780429 561577396 408369718 432233433 288394757 11808145 89423277 171846986 605283554 88127985 822084556 728481857 847261406 257456951 442044301 971921453 893376956 901661382 84469609 67384663 599060747 295176719 641002649 670170308 189757617 436583439 535635131 646029625 538057795 247369498 509873904 653076915 27879993 247681393 397553683 36220539 598111744 467024461 124548821 940463573 949386900 988688988 714105097 301204357 795995473 397990330 144256072 625147749 495049922 288959168 713944016 602138362 561372187 550078250 196279986 391439096 534029600 590375483 203901241 160622623 289914786 121131623 913050886 686009745 802495352 663680846 195465465 522462935 875764729 64148812 985075616 676347435 412995911 17766446 631293327 322214795 351722566 28499183 103547941 933533556 908483774 994726804 940396613 725410909 952483193 791332352 94804378 22331264 441023695 258283510 932547997 388492488 940483923 252622371 71346753 961187016 104220786 721165265 636696845 856636919 578640690 91042039 170860837 404775790 825285932 68841991 938035156 792947983 777084725 456670958 826566223 668984036 322991693 45779593 724469182 789852667 815875983 830393928 263351244 320455752 397611058 20217373 194862565 257264654 61965726 612421247 806173750 527338723 269547159 718259647 360824474 531343522 5247735 519938973 566845028 262592242 702167965 580831070 101903913 936715071 801199468 389508845 412580975 438722563 620402069 727508940 488649476 953570830 392290330 498961172 89197067 357991467 720042423 64444339 317100810 101708682 236831540 390233188 213570855 670785681 977811952 627013574 433240553 112611056 945832970 546615860 608490498 120891664 624559824 614874255 466120419 974781070 26007571 268927604 474195359 691251830 763962979 964011250 228250100 970323783 795344533 943685686 524737231 122221093 553388060 951369744 673018160 450842484 465825406 414236217 72043048 367778876 422226130 93873802 871717365 724178827 950476603 558138440 375188377 33049070 401162086 232398600 95722288 384816993 737997208 299184034 802763469 717489264 204010957 545757609 792838374 446339032 556295082 234755956 952945626 541348543 364166207 517732226 304476020 189840055 853755907 697283306 926681314 122982705 458450431 830824384 955586345 993594613 589840458 895662403 115961216 692939897 748370664 782989236 71174235 523816846 421591592 486421658 588430595 975315502 264500514 358907744 297376205 29739864 69835456 941059029 57390575 22882039 189012426 442021046 890599283 157280863 952532395 182756866 250681343 705816749 793921624 36000902 644908858 899743860 959108622 720381555 815987084 620214764 464456293 686229665 28463575 73200323 720456403 435827914 872568518 777577915 511892148 701184422 712078122 711416455 490353757 453976274 779202012 66871588 344841248 370677427 721988367 73781602 243156090 359125608 445614661 486794045 231518937 913735743 384180372 405220487 388464421 765544312 770213240 608707950 854329752 346864978 467604149 155238871 55993082 969944609 219707617 190100985 179301115 509195350 207927429 129240426 218956961 851550061 117403955 450543355 231694218 562004590 465400837 17330954 373369098 576234896 46470342 531947613 729143720 352872973 74435057 952915758 790485912 335748462 992561453 646150755 658167000 923898185 946036336 19119175 485031709 580994812 73758812 545950857 560791458 148526413 528629804 204844263 246175967 88119948 553697545 152592606 672565299 360957900 355283076 538424931 553758539 26325745 612729424 637535274 770412104 418130973 684649246 65908343 289715929 974448029 976077423 176817376 302396484 713016429 134050496 944085180 690178808 632667497 116105178 412524429 326870263 919659597 607517529 47713449 26670079 978812438 272371067 913805318 324507612 960081939 177251679 45104838 466478400 889825933 9262 831766466 879659675 157712918 846672884 560553694 67732716 184532528 993717863 455363141 449512423 220128966 643975579 737291751 565886042 260065876 317745798 120879477 604555959 29942166 682157551 767569302 943654923 388266366 499760142 361838995 810896258 846577056 391913754 371232827 588455240 713902792 646917314 416128248 763500657 680672652 821062074 914265938 373155450 177345402 533614791 329857906 794381799 794241989 506987038 182438935 630850386 532681251 523214643 373268577 4538983 52067237 284133568 677080693 943008358 120744412 643948745 310022262 93787716 404249187 877174341 272511572 740955455 235345381 159250554 816851843 796694746 20591418 354321041 398344425 103251260 677603921 340313870 77121095 31072941 295327644 531239561 433309788 225119133 740574427 771523386 350588291 303992434 18065911 207486214 580024403 54357959 755756752 1099209 775489490 604073582 652141885 514712010 12588526 49368166 78373503 276995595 781425200 584043200 390208126 980855980 768456770 59039293 94769948 553849341 820316024 408598488 59770994 113110333 15126680 789589372 50534550 658667606 707287488 886381109 99457810 830251454 97803016 781334518 399129276 948370579 712046765 819070931 516694789 706495407 517689300 299424535 118753756 378591885 466859028 11218900 794871851 707999765 490748544 532628238 941152399 422903338 214284726 530886670 245613592 138038099 791627374 595457413 427080692 960684512 676579903 493822641 365619040 159562283 918017382 485617260 739946595 542608772 932532214 379704176 703972712 138438142 261059191 744536051 175543244 214839213 514595384 564173552 881404368 886823689 716892030 678380632 888335947 16792978 545728295 330056145 987971527 140999445 699469421 297577505 676084742 502115234 138039234 277364766 996788500 508510699 938384950 187841503 667413733 476936674 35133314 284485323 786085883 53324994 586483347 580897204 90668280 575918186 407575503 71300450 205578471 214496505 305693724 75831819 882877839 900955997 382789265 666299899 131876363 646289780 534543856 609144870 502117703 171806316 999244588 445198444 318731014 858677974 158935134 290300816 136012626 484963683 862044427 100370128 571800492 474486407 243823895 458594359 663626949 864150240 596480815 911285068 836691522 946418399 564362162 374214442 893874042 607953957 319075338 450173228 128724316 602455694 723856381 438085492 251289236 174623344 881668588 979029139 274504420 882110315 989947395 114608288 47399195 877447736 650785591 874839468 72754765 583659377 12436886 200206942 1615498 592853762 177333329 438318291 395962915 573673282 837341989 543055659 394173916 892102920 112624252 668268080 826197855 948420133 137773535 202108889 796297966 344434641 434755171 412649196 443986492 739285557 462094952 588833923 296640497 448185476 165047218 429964421 342327950 324904015 865387304 731739098 978104164 932767228 288873528 188576258 577790621 4649028 900607173 119030144 132249258 456758898 820587488 661404505 824372090 171268714 278242030 726896326 149021150 449363423 802972266 593711267 874124469 283301998 288588985 913651806 65080744 756961259 899644111 330836200 393491028 664528121 431738039 808802170 387784543 768683523 178046805 596006938 211400867 30836839 540095092 14779211 424684064 929354831 864416974 804296419 214502544 202539236 267365416 353246418 937532331 227837428 98850056 879938924 399760532 148411591 978328235 374926950 630834837 110661351 300366994 211494407 560245382 854977430 477841536 853233473 335276973 889021090 854059178 403136068 715601377 585953693 581956550 71918214 511640088 931824081 356952766 257027929 260311149 564280958 199895902 781025136 169062536 372133080 328438498 280124923 947464245 768682170 108978536 143071770 581211639 883746224 384542568 893058754 644343968 557808652 591582767 862104960 396206740 231736569 786933931 519033314 387266637 564073293 448551953 182833983 583604386 722048532 325791247 148171389 591337085 222584485 538868443 958993940 290954189 195369394 395549079 375406578 557822186 796035277 93714085 328097416 849992678 975815602 116743550 61421226 216296106 932206698 75832792 782664841 696455537 895323849 724325294 632880588 488304183 385547821 504107777 659339385 473898817 66841546 207057970 437821092 55817234 495932461 531829149 202094889 603590987 684980502 733931031 282110732 94483429 376186065 382474542 723833813 984894194 515959955 131828402 390811503 894377657 353009531 700536832 696878331 478817459 127193250 825622694 194609861 187431960 647261887 176511505 68934491 66838939 216561464 148436928 459367654 17383193 537324689 398734875 721583707 456380153 323020661 318710611 485406160 113480344 151526869 3332229 2218904 783783679 788525537 614930224 348163578 77370321 286262467 356060742 137657238 840873539 232174749 96570752 710077332 699363163 140555240 328434451 533972877 498656483 142082839 312672609 833910824 101149659 751761180 639001319 950483720 367099358 301478464 905751570 222141953 273994342 601898525 475565004 942722635 259160283 251644432 509856598 550868458 517875373 199593623 304792340 822126943 464481852 594460930 113733492 285546118 399579523 861074857 574116722 457288366 699468951 669428946 431537108 283438250 52313283 255286725 225722633 365716611 847215084 471468078 306818448 88782469 951102786 343335452 860261963 50434673 500376459 70085701 911363095 948373172 868298895 295570487 431809103 54512191 951567025 153487045 102004634 453254697 6635674 493332633 901630932 58819664 601879865 935055687 949993032 845581323 510915504 499267309 412619955 118441690 912760546 408343764 812392257 67485914 365498641 779424098 601527088 785884697 962987583 719798810 677877767 978363064 331837790 365789556 854539317 490826976 598913536 236794092 347379950 75197141 193280112 635768854 852368596 930419034 23466504 964547195 383181856 66262486 48882999 696573577 613093933 750731067 82949308 327461624 921546749 933059615 378563572 650877043 101786414 446222801 501405503 826713739 820062355 364353157 675245786 534488481 129076329 148587495 660329168 313642159 809476269 837362094 162419532 1034652 306878660 876339731 362209111 642584290 147435403 310662138 284851672 391161381 7264372 578069888 971565538 133012045 810226077 905077235 4410684 919847089 20878833 293445425 664974158 745410410 82617303 921998826 128124247 274645232 391146173 634150199 405107158 75296480 649131333 118622905 231712 442372021 174462656 32150497 236684195 624449913 222797362 366068079 703191818 191102497 707846763 679045842 826611314 547762336 766474147 315134943 336587662 887731978 193021837 643025090 285091863 542381403 76053243 594865294 898919548 292462870 339174583 347192906 608881066 641357507 846177437 574820781 291306587 213443433 844035768 485786456 404998331 594334884 380518323 672703334 689497756 482566731 722442339 324218990 509303464 336704097 507427194 3289560 149838565 86607695 736413784 719664781 90947718 819764068 824085574 212263076 651886554 894142455 898953189 955492456 173088646 484056173 800806837 224883666 880928960 78842533 792925247 922178711 177924640 625418386 539936465 546722118 406033415 143579446 826037262 629682302 762651935 229220186 683774327 767546248 686894062 568723872 198426373 604967616 704624200 290526962 726462045 274209199 905888233 163357952 199595274 693348806 26905634 86074752 351855498 55603703 85696144 67417856 926076848 760226198 441059205 995051757 386538955 956504319 888107629 129503902 126852312 391422305 844719145 632431651 326821763 570200305 815323405 622069186 554384114 847654639 986529938 972743103 422879156 854439226 54950290 672550318 194577677 441428958 403419832 985206579 178727159 2801676 367815902 331374124 677438025 921243408 868860481 198737288 773616715 164174917 224152313 368178844 908765961 790181259 648677276 608999422 231847332 3939868 855238065 815252696 750434728 444197330 230759191 105329791 651673848 698570189 588547974 906573003 116569457 506017044 606600807 396125921 384246832 409761647 513794498 272598621 928941888 861153897 731172437 589004557 2916011 796152197 87998088 804232778 631817710 777171360 319684335 222831474 377146701 836042816 645694299 626225863 677193488 436601374 100057077 655396815 971473472 997396928 296008532 982848773 462772878 512791554 412159164 978074734 682182643 755745974 698832927 683599869 675529659 781288627 245341839 582455049 182644170 465042649 87675396 730372979 652533917 912597315 520621687 945282130 185045784 695462841 276756425 389416999 177405364 267852781 161984399 320597457 985892764 727282141 589070217 566314485 349916669 972143230 698623898 559586215 647653015 184317418 664187457 709453520 306056515 518571296 648950826 628597908 334592713 608214016 886311541 835393525 820109080 931504118 76672787 542390105 813904550 166760689 283597665 801001019 164475784 243764918 640401214 899543593 824729292 922268821 849264512 231776759 328703943 317320525 715478625 827728830 893066867 149182083 576369411 49965995 313654035 350043235 655732903 944311096 105507103 91442689 864829648 703297350 907409832 471719740 256889836 632832233 687767726 338005999 237366534 146928285 147872288 540506913 815216290 351740912 286681048 861090417 211604293 5348370 439616262 551765761 996739175 453735608 50351796 748193664 56660401 310553883 488875774 911068267 935889140 254776232 684940369 478990522 717312963 596794586 11893291 503937365 424642533 364148916 569769212 33479155 421041213 740885898 996129278 570766728 835089096 220014345 787588584 402680617 927974126 152977563 748755474 374240271 50306367 207797755 228863224 542702635 749237627 338364181 731379906 284099381 347554433 856776928 95113001 356278240 516658932 509512275 964677527 326962458 356057767 68356287 732800718 428894137 3500960 937373642 481163301 963188070 957378104 524880579 563710179 131320569 629823185 643755431 595166247 240919054 752263535 391157743 319895629 140027684 968264753 245664078 664313658 721370872 964042949 313184878 798996207 669267119 370103235 153845257 268848214 788461255 174184845 912186975 999031996 864320434 112046874 350602009 123053074 559386883 130982899 570254176 959586260 654793978 967194353 521393065 254423732 761317894 167194107 177457489 505770633 826938514 832569722 893974997 897888608 443442085 407918283 459410852 146155835 853836119 808220904 753877369 461142911 29203680 81565559 521194551 25440969 363741317 938710328 43226681 294461814 152599902 155030533 647739365 2026055 91320865 233134125 692902874 309110372 872752423 804748880 949902344 265643570 726728761 820449452 255096455 976483549 829845190 333826944 875067175 424147823 89100896 103612586 846957364 583943387 497524872 978050533 579257254 288669217 28085818 940179886 115345686 503589117 306316543 590358762 757560397 105780608 686948988 107000791 334004458 181994157 227611166 564367903 71505928 783834080 643483680 281698712 13332343 796971146 538325187 263926056 852825570 937482706 812661141 933568705 902454730 238330602 691480345 964094321 934662308 410398190 122583370 217711602 833859694 354924922 673451830 583054050 14763490 421465293 830874881 132480667 15879410 419187273 555190440 225906987 91720332 860299758 368051650 986604519 542613865 627188856 17095389 554237676 972639504 666438040 838733819 88514048 35212419 109316844 129101365 287930486 511572263 818661321 982148827 255941785 490405305 459918003 598079271 974441927 95060883 376504230 244319601 34210121 891616330 689068333 526005009 169815679 294194406 809312034 52661481 505978174 881767132 372308926 119363829 25702967 246001172 826907497 888248633 265398484 294672640 164851302 975146277 622000871 277378470 806664720 559846676 945799528 238125286 9344386 148418360 956554712 263272706 710736238 600016783 239363732 723754264 539756628 6883937 187908482 266482001 733579897 17504722 92536744 689644480 277607995 529011092 875688144 906867137 440242542 778414058 663957635 464372224 580518111 317497021 593907604 946215866 999628265 427169734 929528190 967481651 941499447 853296843 203489792 268287800 389018098 566731172 925657880 259377714 168663131 586803941 946999966 855042557 401930689 346104945 506628958 116993128 497412507 526469124 307803996 14853405 944176609 100801211 375655177 63166110 184232458 271802372 812476143 758174073 279344685 593254933 262203239 966189939 838054631 385507614 647617042 283010819 780023180 187482713 794204395 87899569 497489554 139302685 260906018 585574635 431348414 262965719 558510 660655908 18453088 931700602 633374433 581372855 62849945 701753579 291553363 795598702 677965601 599876681 632765807 320165999 412180722 978931849 158380996 752202543 131000090 501789128 431915946 918353123 695603849 934558314 577682133 122734986 315264160 677756740 789831085 95824457 879650522 554782240 118208126 17999523 25487665 465949912 12873927 386748943 240440572 323269186 889381577 193426389 467459323 438776760 699088680 284258662 549563679 543461045 114293731 929221392 799674540 569728859 466240662 857948402 241975068 679213662 903681880 930795908 450394671 460366083 81163393 872049940 717630920 776478501 654540628 383474146 715837817 130451058 506569470 35838570 159149029 827169336 195270919 220943563 618333359 195088709 853039091 102246616 244717742 20450417 108045598 450150738 712476433 95123141 67431955 978907931 735084316 754374138 469436520 893493701 924717432 357246494 121566348 164508343 854234239 60741955 766386335 995797661 569345350 426397517 836399687 237320236 424593472 113055976 896332559 699071284 609860032 63530414 50416103 727909728 550758004 294370608 199184437 802563961 23286980 388628732 524001800 238555656 715728512 749524615 764637104 806362007 12740088 818758463 919928303 399437995 171792917 875499110 74240535 859082221 240659316 596753750 745110250 6847532 429426118 701451935 25664687 567436607 823078962 365071373 243013846 298507061 234130383 900042984 594121393 52563311 170456176 155745934 271931025 466007396 976471928 584901076 786447012 777574831 715005901 809017015 905703731 430126783 368597562 525852751 295504076 670951757 841379339 126598304 760969333 517798297 667035407 923261011 766718350 305250368 154468581 99565354 859983204 694974208 458311979 564752367 447224905 391156867 225995657 672890058 147575980 941444961 126692198 559643360 564048401 945933945 579975123 738571210 67627054 544256084 655535746 441702249 167810826 532424060 517481685 625925635 840189519 700142772 413231820 849796798 946063543 659088212 306157729 122583536 996713091 642262689 124033938 942788290 236322274 13005733 420514233 86596368 581997017 21415274 84178233 963433690 679755007 281432690 592279086 88512477 815749274 462183687 909184411 368050165 703045128 29881560 778693457 999668357 943310961 767587853 295731082 278040462 874141646 824703506 501328675 939560053 807657050 707131245 103536917 344051831 361782791 221325561 227332698 177617308 788859943 755591457 542701503 609569192 661132408 846758151 852068818 525632125 711249575 793518845 174247391 812652470 665616094 778332008 280308282 59951239 116131921 918925105 983543082 97144885 593702919 723804566 850048206 284352351 520090100 824570630 461492519 868237938 427754731 938156598 740770117 380558400 576205103 600467857 951986618 368736375 355834665 350251236 382922830 120684666 604434953 319735578 498260401 165639150 925500898 694878441 601420031 529990268 882882705 141673847 915936233 50415325 742235292 904761509 965464625 215966764 546152532 463277498 296672666 422492603 95707812 858784025 867072454 684407842 94295989 990314924 660237054 407956652 447851890 937179282 767053616 556947697 994250978 470076672 376163813 755731476 265499686 7906127 136123012 635692538 442891626 799768322 968387912 29865770 392298752 539776099 908536821 922582752 168334161 625407518 111089928 52990761 842380702 188311175 676679207 241899335 707727953 652665372 51973601 832584565 341365616 905959134 739764677 800356043 207945500 257714120 148140569 467670991 558228094 767335436 537172995 859968599 420539951 503497549 752457460 92101599 862532996 509156610 845034399 774186168 192158304 668680650 618752475 943681387 277984664 867143327 117800172 149873356 840386707 250401154 607812314 143482541 632224730 791832814 476628638 912252390 706851059 373153324 802214454 716674270 510297852 909952127 525255485 327181201 355630261 287126120 821081383 903727750 130612888 196629306 209539077 265392830 773082065 96082174 674299535 968781875 83284346 798153123 893749563 296337599 499613249 698561359 176859561 184328218 64657958 606949282 786853532 319027823 51658657 915190000 294687701 136437926 383041623 819202862 792350346 519306753 108395644 261676362 508613843 551728222 973566045 866327215 906847516 107980481 734114574 950446875 241088984 569697045 741105231 126625659 910731840 58897381 322385265 646233863 124374092 136701808 254878119 417388366 959345707 930973474 828518012 126753319 377490427 741150852 632084626 648225524 21079271 891395275 68516485 294533849 248008957 383555763 30369709 120724944 243676530 669931769 839142505 492812522 413775427 397319731 780902107 912767388 958995937 386473455 68815595 828952157 386396434 801969689 724677211 175548740 206770841 445746702 719080277 770154660 529871026 592857942 917002772 413955381 945078237 664086961 508482765 781435399 949884360 625372659 325374591 768608455 918741943 890372642 973807892 128510918 334394578 49376356 182262521 112478206 323066330 720749195 692312470 916330699 858661120 377119696 820067782 898756967 448869850 195481174 791541997 659057128 408527185 821780292 824433819 860685060 569630877 435929828 356365207 831815455 611516696 392650990 950980628 393042 387634888 699747184 115742238 85172399 267689224 632331985 5559268 158005800 141876995 447712499 669963579 958533047 470781761 259590841 52482672 477502771 5921465 344180798 28687882 315752229 88515582 65943980 775148617 462567671 144067758 537880576 549705331 647651047 909883292 264410519 724727268 749013279 306580171 582022796 538788970 526232699 199090651 658105189 587642985 901471081 339543812 981170689 288927749 785162310 308182260 948535283 834222328 526769784 47159991 680626408 695768896 387859199 683953701 875002575 426631161 351689055 24329221 22633256 130722393 211947758 791250258 943592384 595676905 417633310 724184673 109713376 345728467 672558756 783826277 663630119 318207254 847992783 516008666 809988465 356261525 952741998 743838633 20417193 375769807 868186865 425891115 677428066 127976728 223747553 620154421 372192149 265750777 100497762 108675380 938414474 678104892 142065559 699141101 91566828 206308509 135263318 510402631 888321854 857489613 246268485 467714506 420698985 169036724 732352034 609206879 612129327 316522035 363129012 291543107 35818636 161717267 929685028 651903851 233906885 944728865 2653765 630251701 390112616 877249006 127250628 496486697 515134912 591382610 160698833 425700420 511842343 309273966 201449050 825547512 53960802 471292289 695031535 545538725 285281219 514103937 560881886 139282789 270614721 448122722 344572299 952231233 329398497 738426753 807816252 244581025 274017284 802620558 973635428 310016252 735565394 953786287 689160018 408105188 145214469 970850919 847345101 678040723 458479310 574899039 290684185 555551855 425060699 718830881 751210319 136615867 552203992 612683055 838467534 989075938 302005239 312760115 881341989 707218905 973878620 615593175 68514569 316591174 329023589 935361681 847819768 681783438 210943686 409307725 5842865 104371066 849811422 978712783 709502219 82993624 935659039 247357718 957967050 150283640 202840454 376810298 731716109 431082377 992825361 42147570 995626989 672265368 268936627 412877379 794247383 849301533 2030824 661318465 816156043 827342088 776019031 526862567 138761560 650947706 749380105 238204060 335490639 788602912 40399177 965781733 67612558 817380038 339005082 517928801 220387061 643557009 172795771 244105869 901074752 235991391 876833893 501004629 800976817 633907242 283717064 288923468 456062253 70851844 946081000 228819370 688827904 896765149 730814469 664814287 180206069 412222724 692328145 362912184 992822223 604651120 450456024 298059204 481186691 577783248 835511802 497910140 160511942 943262628 163548588 659899808 780917036 458917492 132175043 562738829 791589496 178815572 694041701 517803860 421905483 998904773 994422381 475759735 222912999 666587608 393239683 386843091 944692736 968378494 752680286 710227012 429201078 869171860 100827095 219031539 963091849 146170987 683115378 826579079 714297675 492419747 815122117 554278180 618540063 490852201 311283671 362805115 7809307 542457778 492697371 274274561 610714569 928137344 537686879 752929106 135579082 490359753 124772992 589465214 374558070 23600962 722714375 986365206 966309469 748718981 637377205 555974710 296654097 144682490 92200144 198670795 836823467 719810157 802278755 243204188 918185632 692473540 914033888 220770592 542203438 907894824 315643456 69834528 218308915 964103431 762329749 2451083 192272225 388232266 116361912 476110078 303475582 133193656 816717399 94799560 513335042 459982775 231006547 92654508 825205839 845287811 252351194 360486593 876205602 12794853 269043056 652184949 374365884 826865282 809521926 144768505 466598896 982550548 824194437 10519536 992713539 315076435 246740303 719369199 485645142 699192313 868273382 836697519 973780249 356713103 562881649 264688419 871244364 467978557 741521675 788838850 772421271 39351102 118400163 947205078 173582128 117254828 678162637 285832726 593125288 608912852 857386765 29644421 927463925 566115799 144887336 396293874 43996341 914316127 648168647 596477114 157810772 245824546 668788638 557328983 918244266 101466979 813549225 342752237 942291853 97194653 507690171 81720645 821669165 925633814 488107411 828393216 456901119 767353552 389096597 550764768 187434373 762214731 309591123 769771422 193733249 909640560 744939022 859527859 268347947 286343520 680683364 181989510 140747952 808657335 933442306 733100672 909613806 720177993 172238345 476229110 355638115 196074757 845221253 231936942 587268737 479966820 932709533 151689862 248828299 702161790 652020565 172855336 960842824 333798051 908971552 547344582 355987022 357554686 919634832 17442986 699225329 589258525 154865892 574291745 887346297 166239539 131609658 754916622 376867318 831922565 705799611 769860864 993766789 715831144 58206679 422103121 656324301 228866697 179486864 14610057 901193345 544491760 183331467 520115404 98837333 715184869 414233977 389895703 542673316 361563273 596096610 496184983 207466428 947633568 220875375 722577572 91771476 629959895 28119297 822281510 228777911 197606886 907006953 344371159 651848581 91036362 438200283 819466876 966819416 73265664 521188603 608683326 264380266 340190182 695607548 973927127 957857167 311612770 28501357 75219401 189810180 614015868 868401225 45076022 43267990 201639811 590484951 503432274 625837807 506819295 469496115 693525419 552677868 41987414 86355058 442050454 731074330 809305518 570080197 136620287 473858679 460261443 899076702 752282297 440209241 704258800 864796708 236725831 183465540 484817960 825814547 933070658 734751943 201919315 708287746 286228833 860214193 791729842 728992515 505039966 500287736 278234330 511803459 653505103 884190320 601836072 864271865 618773705 968367695 369963972 751946192 932581117 948512979 174039357 37071044 797024302 974090148 234276316 919744125 143608699 836529858 714496711 896568240 513668022 883656265 406141255 714985774 628833151 457525739 470200269 727576598 534410382 563263703 835993550 732748014 615398519 66849326 170035931 971991890 991293547 656622436 888348504 305179644 915805319 720082124 88720161 708709319 63185860 859558506 346030994 338705432 151550313 644104133 91311128 704851276 500339355 869650679 722197015 835835177 895964658 207695828 672195656 458736447 274718540 900845336 589603440 909627973 663751576 282909634 453475024 162173648 132147748 281092667 596756573 672821337 663956252 971672316 357550319 54988974 274515946 998441305 914886069 190755884 40274376 32230634 82312671 341873281 568332263 84888845 225668325 68536574 298153887 26180630 420233657 560416674 634472021 439252799 252867611 8790420 447967715 300597445 797523054 167989870 812802971 309077521 923918021 871335274 795973069 629830262 385002583 494308660 670031888 808536917 319832256 106850499 833308317 892010622 184718399 894630371 631192964 510730358 334653959 195772803 672688588 809750668 337457351 301021024 273816706 655806028 623797759 558394875 693746032 458850941 228394952 984645071 192850221 165127080 894676794 130628197 96948349 487832551 522453512 973102750 599224814 983516095 901764103 262873320 252937911 768326391 889546596 243917518 519524368 653584475 994581329 540024645 58400483 9393099 3102977 656687061 591924473 311684576 470688689 698276874 846000262 718822975 556920527 331837583 946579646 889943924 998027461 191232155 28310875 310913683 1014125 432849001 878716529 989489007 620835195 35201146 180936325 760374007 16622931 338835707 3102746 326777491 887435995 40023190 621840839 765981234 936585616 437866022 653147443 534345061 742505010 71081935 232211476 941862737 222433588 350987147 148969200 70197950 386094971 833330133 613034012 327813144 740337604 600552715 163303439 658557126 703647950 651225272 874846995 574761870 273115836 778722835 102160299 164165272 324535662 327445233 358377793 8535472 863211251 619321637 729353567 321053216 43167315 385177024 617417386 749437648 725983295 366059224 735380892 141534743 250316958 57216798 500390108 468871348 912575462 261798407 875934410 639974641 155006996 98420897 819532288 131623376 30752397 134549444 496559936 89980151 504614925 448949823 365013547 157750232 595386824 314504970 119380027 740433895 651019987 342373219 484738076 870775810 693820683 884171422 141275285 302724408 733260707 277946570 313543867 274483746 529173645 752719649 3605857 835765967 147504361 505928224 209995565 907800777 901906315 771958535 478890590 367120028 13933580 792320048 535342066 182623047 917107523 778741204 275796534 15966921 436712229 403470097 729804648 720957307 780211259 135647743 334231823 603838199 391881783 38627681 254409691 386657063 82946562 665599609 77533127 576736482 353579837 569176994 262163031 720381361 467909037 769846924 429147760 94375043 411621863 825085658 339493838 152328545 688520865 263917685 658949407 875300637 991888567 424983404 29774769 916460403 1397738 686913897 681024940 184534889 122482878 290616125 368400849 950213421 995362734 416433133 896704260 568118442 593382847 769660351 671956155 548554852 551541921 169693319 470072240 43670479 289000649 470080341 555059791 127261795 537956171 169296995 478335790 564420792 367906388 748778520 510796534 959437709 900133146 599143832 873719718 168317886 382744112 923418562 280744886 681680364 794975622 934842354 286099150 682991238 196378858 782789016 794566260 563234641 551360630 379693584 898133620 747815786 939889734 702976829 542535988 224653577 515241373 901717918 533182563 149892749 768572624 841661961 334164370 535232789 812187673 501424983 742762540 710708534 976077795 304429628 48098824 768030678 126726013 845419971 974125643 209860999 985079670 867566494 411342145 871013161 871140525 987771150 625564144 684257750 27555580 508379001 129898108 72011280 548158030 434348097 139776318 873050667 760498233 624887246 928235500 383029009 684726446 533827719 645232665 198711383 769194373 792296708 111278088 343921080 300284956 389873903 386681726 259826477 493583083 868335850 195784655 263874567 42579981 530812603 643191313 212171627 535638905 194277789 224299266 658253634 541142835 497615215 163216208 515738226 512890683 136307718 749091587 422376899 335911608 93605932 917625136 523027936 235097198 826745062 274372590 181056736 4529949 703932033 936879881 175429972 239926290 273713693 551691764 504467140 523084566 622897401 764358392 43018490 318315790 453833800 856730979 703407185 471237904 282011410 534465296 656255276 726577150 462253726 36411991 132457611 476818671 485682699 344225547 181050392 310973816 813142998 64579158 21701356 250847027 170644171 717093730 273304083 72442410 172569401 268595693 591786768 688335382 868788901 656039459 764117553 527729760 83902316 204304051 394182758 381738363 750146955 918289459 851404641 28989344 603362001 772020886 573655770 957361245 120867282 23471805 511598322 349884996 780545745 622667899 959782870 369557420 708739843 575715340 373302893 412900836 4652384 108584471 888141341 792336378 820695770 389227902 389141258 343036581 116886679 705145645 241071400 996955165 172348569 920308021 379062595 894111759 135480874 618845821 106282151 195548155 466015521 861306321 389530523 533644402 436691043 688963983 89169847 577701113 759996231 862185107 831864948 473959743 450913344 119919768 544654313 833448037 395801819 304680094 670743260 704056920 800220172 119090162 918375848 589454013 589916468 105623532 200781094 71683059 412290654 674715481 307674221 417021851 198944502 455585529 772529441 775303182 495126801 468014288 203738679 156804243 195069814 46807080 894811924 479115283 474718852 208124769 386289467 343795361 60921376 492655166 261580352 778096304 829482522 288609231 58407920 740637806 457384994 370544663 839730247 133195541 812590 554607707 930274439 597820648 856592007 481209287 682993116 70545258 913249415 694806485 578465104 310418534 37360023 974671760 251298431 63326426 105723321 299728364 348269866 361572435 815195985 460235326 720899912 439137494 673355543 852793633 853736215 611171118 642251176 619768058 745333491 60142041 912660914 346899696 408553847 451930333 835806602 919010267 401553465 817110083 207952087 855291047 892859968 738773218 260397029 574033170 815665961 565687699 659835943 14670941 960213666 530767227 739712186 460927492 833505250 22615609 893840656 112768546 214912591 618571993 603182685 221385086 14560049 853738072 507507028 382728632 480247047 707003849 424419819 23783834 972072770 260670689 833538517 568802814 654044457 487874548 165595837 608951544 155461607 863055135 311753568 110566115 347627739 275955439 70114159 653945508 774099308 456993682 860582683 827344653 428865470 6412956 501515263 896493179 909135449 408420205 588984216 844940273 971300288 824988728 696361162 523980864 89706687 916494688 1152912 319995863 984596523 887923186 586892416 427743861 494288113 610495674 96016830 591260644 366097738 793876364 429677119 190227630 733182115 747627663 82327527 473078909 762271633 341377969 269364042 332656400 170947586 324370024 200280915 140070375 547932488 395268263 612801800 437087349 837177390 921444654 865380962 906318398 977925259 387162188 395385712 776470098 453144596 332613859 360098034 176782023 58190323 802538750 307109865 935932531 957965387 459146106 998339701 253054368 418515678 435350390 65097027 630738415 193310976 843392314 42428163 85181910 199099881 463326214 74114504 722850606 580408109 601827726 357676263 659887093 483700692 242634724 918974662 143398123 645797587 11165122 339009101 833705384 339015459 732221949 59319502 814943511 551707137 35941412 709582039 547680813 735867300 901227976 646883928 147415331 561823611 559431881 668861198 741957640 457849480 248757402 894271458 247773319 939141565 340388868 900608500 442529521 929487098 261731667 796883028 288926786 122321271 198609850 490346159 110654874 64061810 520383599 710906766 609676238 773007414 721472520 101841594 544993973 872466730 276308199 441556634 773745008 138431754 797621936 908654396 670606914 980118871 408921756 284994706 864697256 228532360 32870474 21216284 410608107 302216836 871206176 186981946 168096252 455177526 244140717 311747904 861610397 75419825 26610311 183648092 16182903 259413788 760688844 940845115 919911430 315729868 558121232 696134670 591502789 434692163 428598729 886522458 24059783 556199690 258506476 779798799 478394732 710912498 901896879 112809011 264423188 690630809 76141434 868003484 107350385 460671541 626016742 729376956 630472995 977004461 481738647 339650158 210391091 913120191 95658026 511164474 329113074 58838906 862327427 627618614 221042512 489757232 307753272 208692626 721500344 72981343 901583887 365233729 910056326 763624326 4372945 668069225 837353781 217887347 711665071 733146494 542281227 197408265 631591437 988665061 829491084 2679862 150580524 273212681 25943517 439370896 453120727 401042092 717635629 174971482 236700795 620106374 239774970 506545666 588987654 150901489 510702816 467469063 978853205 459703208 167201274 821330813 221170558 240217608 189495840 585236059 175728496 294658961 943049111 884119928 83542265 355640680 268164597 600326621 451006829 199818317 882671868 986171364 893704291 960401252 519017640 643758680 986093261 166072811 329225089 863186956 596362033 202594539 118773717 439999279 208397578 698390435 614446719 890012269 279447619 191214073 243449861 538200965 932881872 115998694 634287219 253319126 130917513 771554650 225287737 150255283 765400908 171936561 902520009 552308004 378804456 204198133 569936460 323481064 986345207 295880371 921757104 881181001 374856508 382207279 14637456 290886627 814225931 886693588 532114624 655357461 659046470 204920339 491133636 116541433 935176385 16065068 294651099 694479410 373646354 226116995 93922903 246734761 804175902 164633768 196728534 370724353 446613331 321823151 224104938 461748862 232883488 371710131 388728866 38534164 650659293 237280110 551231565 589022593 698135968 675010927 175238580 204004751 71370156 925086253 349981830 674152747 257810996 114975264 937729648 95985447 515586262 340720969 670899713 258885743 71158926 952090844 847840006 800462841 574703804 989735822 336990341 8901059 435262901 474005206 917947253 591519680 449929962 624974743 598357112 52042745 914913245 148022212 393155004 992417416 717153269 355211226 185997683 961906991 385148842 593029184 267307636 553771750 965620371 938554944 542134766 234402538 557146782 261532383 216434474 987480436 195635014 831648115 532945697 583838318 736744843 288211337 829593659 524599865 859080179 705295898 493745528 972010027 946607596 861793546 147269932 828259665 282955755 952725429 78360880 156423169 262000119 75543728 93160219 277381414 973178815 811392736 824601748 512478372 842102223 183846799 879672277 271675293 983573712 5789601 54303293 91975163 170778229 424920493 841799036 179357916 708785013 451287103 940819316 125550592 447301406 918696682 302550000 274648101 263695650 843561400 778879948 174097624 855033357 580751089 286882014 422269873 360521359 819941292 325257820 4317771 14232963 936230410 335661672 236728399 203383824 462107779 735174380 777230979 160316604 492402220 943331551 842261423 534476238 104617817 291142636 709088107 867062832 708246884 926881641 494453131 190140925 79154690 488330286 139478880 541698893 309307207 508018819 339663325 659177685 438003371 512495492 197530721 428999593 138882382 11309855 488846499 147753987 793448313 466937479 932960806 166559776 285658048 383944024 624214690 894569856 127466008 944850998 646871058 649553015 312901283 523704852 501997318 654883393 827965782 999881498 324324358 144467848 403529372 900604686 635382371 534816924 628668352 933254657 971299454 182364705 337130354 66229905 322696462 51191541 763606218 301692135 865989395 863902867 584985813 546399283 838951205 712836520 66238729 643130348 178031919 74012621 452315727 975357258 219405224 468518764 678081051 297723498 131330999 840854944 914354062 279954183 286103123 937019286 156035984 905702752 323046006 585273802 225488838 804494111 440647471 335160240 939087098 67762053 579068554 177647770 143977354 786369546 173241905 441833975 214539664 928495612 267905293 755103390 994329891 766895772 567428904 454638390 769106584 587270668 486620014 146246815 995522965 453470637 304728990 136422148 816983479 268817417 526479004 170142856 449747672 169636150 237392102 238624922 546085881 1110797 432540816 892724174 584658161 160905465 411320759 306262713 135294190 938337799 425217213 793078685 417871228 412362898 315016748 393015722 340535146 835981514 421017191 28234262 791585115 116943174 139914221 809726389 380728077 769702424 584590465 300986256 74647854 519601747 978708892 223642802 109805932 794217344 951409333 957977182 150746656 188717562 767796324 412215277 913965694 335965442 896772870 188624430 474567168 256455592 586514694 458139554 949049125 330973817 604734435 528001261 617346934 226464685 208587414 801510806 280034349 231544232 780738465 335258099 620708257 141080916 96067925 881379131 568735371 53725270 133985810 111329201 553624905 295623909 663435465 112452064 447378627 380704318 885244805 747145629 997890209 964806299 208837747 68836883 668551212 972430200 705181232 132625780 787107136 375911440 431288064 175835741 834363503 812551253 866128521 181411639 83399889 380248280 641980346 136217013 573529235 690788575 5919019 487915646 665822169 12378284 499592682 637507793 302172359 971890929 611174517 7154282 272992792 250253986 898363153 282914598 990273868 621692566 21924867 695973105 589433198 911432693 626395537 569234834 755932248 333726904 283921088 212980710 209975627 742825191 30813994 29406356 559690134 838485948 375044596 607930686 509691835 328911167 64381827 694333163 41477651 93972548 983417470 690449893 517807129 386559042 959028052 298172533 782804626 453509805 744687400 804158495 12474571 860149297 985462552 957494210 693823767 367376547 907061255 578198832 936837473 414880191 562841823 461730504 228348669 934867035 422826001 650643534 682077407 674144461 237275110 226632629 671457359 408023193 581510149 28063546 649964831 892157849 932568308 22017751 83550149 500277956 825979940 181652017 713905073 621536983 92033754 259759661 810265915 748678349 800192684 412623981 201910700 799169439 560612909 730721402 49873394 75776105 852843652 972875145 722952387 855265422 428922131 766486460 126322869 938046911 74644435 426924094 821500635 207814629 795373581 252167727 831139529 818591009 713868507 432246427 838217909 639033209 759330126 491709433 235966068 389452978 911444773 292771562 882554939 327128848 436463564 467323133 408359905 549199471 809885083 738964 533164665 963777569 830516629 716605795 146815953 244968020 237688269 454807090 854793123 863810725 965293420 767655110 478391662 98486358 566250663 318797477 413098699 791765047 804848034 18796293 418421359 412221198 431565365 677752358 653689420 33655472 366758066 239706252 348451500 260923028 188024392 875367798 20538436 31939627 103340031 375657434 358371501 53604921 562496204 71381410 148933733 257959540 710769123 5845371 307802597 998632786 599160806 73232384 547800573 367807784 736255443 695392596 37063936 444735238 556510937 271686688 446835565 600132039 226456269 51043964 603854404 84101572 985915548 134153783 371476050 756824226 36759335 896188715 559599860 43347460 958203424 111346770 981755031 432409761 387302305 286257608 716206738 807870252 984746482 609665847 555564875 126024143 4880672 86303433 725749761 253559976 229842111 575805400 481395329 152200504 821800127 124815498 756865327 467614165 908140311 655159386 313115979 615062697 480380531 979407673 538148745 921153427 981666046 881333325 24930775 792914080 725913388 832419066 218161198 320777413 118427786 536161600 547751144 320546860 642223004 667088557 80295923 400191213 557843211 537267312 650625766 587922958 219332920 770338872 887933848 324376161 735965439 525270466 205775706 355525952 723202074 280917933 254379404 527362136 242812461 423408543 798139351 578575741 583921125 846931987 505593818 535812386 203979748 968619419 769576173 480162313 567186416 715839192 952855226 699601878 120954908 777078225 99418584 495207223 348940498 279067012 359723151 149059679 352569779 300198164 604632950 374957132 85890815 794270590 27787929 923765801 349294452 295350367 964597504 551976136 601936252 357562849 841458792 889745594 198633572 779219490 53169095 385196426 806423122 172128001 640776340 756447681 73450622 74413952 910455076 877841622 224342 126784690 448095283 198396508 31858466 202533222 470978937 898182813 678179570 887572564 427545420 147636066 427910876 774763407 168559588 24578319 848569291 892275571 454350105 445357526 902319814 736683389 270127496 448905878 268342911 600462871 738661447 217143306 157144512 97747379 15344765 54095412 776082171 883268992 196723112 187046288 757431611 793052737 397597203 983168575 194083182 392716256 69580561 62239837 980986817 930582181 351096721 407002556 52902079 896616835 848385823 503369995 381633600 434105618 390745474 588509884 529879148 31703111 291649120 842369517 495762809 477726038 725591437 224118824 112413721 135726562 212930369 433940048 835534904 736590407 774585432 272810373 634224293 398573477 668610487 672716959 724922723 607021317 728779469 342668571 780621193 870118292 816175217 674542386 148123459 70867819 862178005 897884504 878696072 846609516 399249329 983146696 520238796 605214473 8409899 788147273 676490723 995044155 874929025 316740330 286484395 528035024 736274174 734491753 559950988 471778086 970391017 242059422 674346014 36463885 515277828 561226455 783634969 608745812 702520093 972261613 881354991 905044055 166080216 240540957 862997703 916234673 952311 857253507 978363991 939399164 271021577 182586860 327560786 875986836 139400728 510857936 328083064 324080827 38490811 177375832 12130887 64362753 875771714 905125401 149841818 370722975 395051010 936255219 400251089 255976657 647584250 741157315 574475966 521399174 648822449 346998355 697833676 904467741 573557775 794020734 897737400 504207746 891159780 986621091 724967218 101648444 326237965 378430450 682262372 59235241 91018821 61273489 540305906 605055082 72479210 395388314 296315740 992981509 681898548 655290599 172524697 906357010 523746086 75104094 351599726 652328420 516916307 10870019 38857200 88353560 350007632 460439138 780851925 584405740 264159136 492109323 26125420 306543462 997273230 319677625 815121373 340704765 456991608 231517637 155181696 271804438 974064474 303724340 907467287 749868357 263580821 741697276 505760815 826690787 305252228 534764108 534163909 929547158 549542343 328688391 390016127 417694141 796633807 46120877 34023779 881768707 842605485 739069777 375269115 882977342 656087046 752226063 795840 220799270 23112182 761437642 780206654 368825762 114730098 29410323 333860278 802532180 926515877 374808890 178961721 110362440 270220160 930419552 242331886 239151011 212239477 625812050 318832769 339691071 350525923 669388390 604157394 568792932 494310671 361720907 196473145 651766538 618991735 997958880 560655927 998143768 26945928 233892267 894026580 162372301 175489300 118037184 973100922 237395335 412537279 256781813 12009697 380616855 427148934 866053243 29827617 318839500 185233525 143793027 859937038 599821058 389958262 817324841 894831646 943418440 622085051 834480226 514648091 607793109 142358352 851031716 438049759 756447512 207864189 627806307 37142705 92821202 92680241 798831667 691359983 734878521 32378433 462738348 750113852 518733908 228939523 43975966 214065299 8928598 68175100 367896563 969432376 635447805 464063477 892567256 4396997 772796339 87257449 496612409 943642949 853656078 73080864 249712865 313767037 603012509 395207850 992354518 173647068 146113804 559638214 760820903 508426271 409115932 93703026 968878113 445315078 5399916 42182770 869184600 244105978 67678968 785847180 679476361 154402535 794060743 448329647 759920844 820439080 877198872 214744458 868877216 664618536 812011487 468751862 330747704 957606373 59339560 891234960 959074764 451785127 346328958 122265574 823786853 529729822 730258467 332105132 532428001 702304719 7779174 973040843 619585761 888552413 199078164 186156468 775105359 140814416 777532073 509663250 633523355 605802830 83577603 489179245 528498974 153675119 521003219 953840347 48592014 525591155 471786930 650958856 659210755 313438207 371886703 840853549 238621889 974896539 55235634 684304507 94517818 473222245 278544006 719032966 928265548 910058408 80184969 165205855 673742641 531944209 77666352 951505906 934033607 648564469 368537209 110131669 730321828 557190768 752798870 654481756 460607560 68619121 70604946 547239557 350356781 120103762 994545772 416949078 955162798 971730003 932259134 884081005 949437075 1422691 327187423 887246790 510043753 340342948 959330393 372009184 850465132 592613524 732371772 502225316 660437955 25055487 410480012 171996716 683161945 156839715 873497171 583633385 408783900 944956000 689178362 475637224 681739451 934093552 723322743 200541647 503907855 462995068 293470590 91001176 815232919 728564026 530512866 408467378 615765997 665326326 132362359 320744432 732068294 152748605 605067378 936701490 604579959 264934212 285662896 68986890 976049505 70247711 372687131 547959375 784492540 750259185 592977497 800111480 448971269 154425285 285544468 574462311 243185345 864674096 407003766 252939252 812148890 556251896 677211730 790099065 438037862 213393123 488134575 652530135 387849727 613615913 559107025 376962879 566070460 821736971 371071149 7820957 305139294 178206191 812007154 713432492 828799879 179647784 996184136 361355411 633432213 996053928 678001503 461384103 162384501 998297544 898535960 226888758 16903423 105601847 644308959 824781283 769371048 603604418 692499210 999717935 970231042 405131120 703007354 220132343 908584261 332891464 123358798 161776910 286349150 906135543 246475646 359981028 589241676 53789753 658761881 501732168 189589456 448634043 232258230 142709887 518114262 204692495 896689403 436517112 559606745 347158846 884791032 211289563 81965275 88432301 861113125 324493323 444241565 578038029 271930043 180612109 554770241 792818277 705276404 646577718 959604583 171620488 969916289 904155134 555541294 852255345 453994273 844843995 620432380 227568711 916743628 70103898 914355725 656876464 986017403 444685368 367828138 205295495 661943153 962486788 686888875 274833395 72815617 594061609 311530319 47592777 439447628 90599903 748451677 510824003 527583260 314005503 379444168 835634245 306600639 935561132 162516211 795731613 743568117 826528686 370387198 651954714 733578355 148735628 864760828 43243997 183799291 894400795 316117604 402542496 11934506 68295771 420984922 607652461 608895206 299583105 935264786 981949470 633372304 446626241 429102521 563583205 88011179 215958965 655352626 475165703 363359347 317338081 935410739 174286719 35403752 329352112 921610084 780257135 822731752 81314732 50913350 251983928 438050681 974376832 752801532 233368369 282475830 853161082 791085044 283191681 845789229 187461849 769382811 279942224 646005283 891780032 964587776 55334362 343581829 427830992 963086937 757148458 81375197 420161463 265256251 430836157 774871886 377891247 793826603 404845259 14541605 911831556 715531228 58968497 604417031 89273315 838580577 933902423 207988361 149064756 42227276 680290012 99469162 768881863 825552519 730562853 364578682 19648297 21047864 667706314 281704761 288795002 265907605 77971091 197791035 406801785 5498798 868164950 503893957 557700417 853938797 857690371 792134461 767015229 772503060 901529188 912447747 272452164 936143094 65187550 647012378 751740962 143058765 788381977 198803291 325676724 496861539 841663840 279181477 863430162 416133728 36779613 145567823 881347908 470828694 740109626 843603778 774717976 328968038 708286628 139116559 853037876 107183788 73864029 809634064 450326572 894464822 840585073 426337763 512037329 890283743 150161693 632105001 236941051 765431787 448537990 909639752 934474040 262629572 261239696 890768806 561963478 583119544 851794538 814288004 631239454 402349503 34585272 773174367 147501077 967537455 662501010 706234339 417503891 724492738 935321856 938815069 11422286 880403279 73768263 338657192 961238134 691658857 864025457 290936914 455659929 981555151 489075640 136540266 349705485 631886652 363704161 65851158 829288115 274283452 315608787 454909530 744593604 743390024 603744239 683839352 616965509 971385935 81111404 895837254 428054981 190416952 577564424 496281527 757632083 419102802 212852216 509655803 332953151 729698268 804787970 746578881 362512680 169250988 679173221 675983468 141368813 264340596 297209131 677897974 549505629 976322575 712890736 857165242 648303170 846441313 922739707 909504881 661100671 246955547 244828845 435210880 740134345 162669263 990279631 718859560 19063482 616949752 266664409 962373264 231761484 803810967 656996949 793447875 786389390 901414951 948127864 966778814 634562637 658382117 461786873 884802066 962739930 635629811 638363639 672361795 770118943 232007659 889177554 583532687 967149412 933575583 271543085 336584039 364492819 814535269 455792041 754380053 480320741 821654254 473254150 915992354 209389679 195599267 598834591 966415992 169394476 77645974 849821426 86289467 875001128 876723246 437000904 891443278 264058778 122665609 392997793 722757530 86540988 63318632 56455767 769695913 701727609 634603271 735010538 112169855 148287212 283385605 670649690 52652556 71804076 104604654 73407694 16853874 441591326 519081160 473407324 610715413 450887510 515106183 954482842 285246292 869012905 547098535 695486122 107944462 670154238 852490177 417608644 100067477 519993546 273363643 274580380 542891752 883780729 549621534 225912801 336693121 795176851 943012207 460604222 281711239 144322992 188677226 816809155 953096939 85782613 755222171 741625560 942643156 800191124 126773818 931542792 758340658 461033093 780576761 145286246 938475165 961050977 169542890 352532897 820772336 147466875 211078060 496476468 219068652 417107671 26704617 334248623 536777468 408461770 967401735 342579155 550069370 700256928 73956013 288837774 149705833 143896110 610768076 926805997 951254857 622541088 961496966 121116327 207124255 435883236 17821821 826308657 164352305 664255690 670768005 736961319 889884897 865616893 481273775 966137620 987232166 686406273 334248169 257725026 975643101 572209263 322637083 643666781 450086332 321651504 507026654 508727153 864408065 329312477 107603468 429301495 571489334 57827713 43218981 348240748 269946196 488040985 417290895 594250962 853549952 557340277 487541664 732560111 773285275 248567692 554436115 948214711 326502232 322000428 42380596 986579997 615238555 920799061 871494801 316177673 249698205 974443556 386247675 895384277 717134194 223084425 999051459 914197222 31718355 616952567 352699117 205306634 845767217 332274972 965924538 595468550 537593973 350192434 421088430 13732731 937682297 20468063 915452327 328429967 193576731 114133412 243162157 93549017 914975836 957157932 65395058 844703669 174196642 377005572 241428750 596171159 289091889 998211826 637616055 827452060 720697624 374995599 436049185 120722097 583905852 754804922 308502617 416490189 208177739 17570951 588054220 990178762 445588329 93564158 68622187 683381412 512467218 652310219 583409570 150272521 352293540 923903578 152637236 584126534 886351865 353812697 399040126 785721950 201675634 759420687 866710412 324928618 612970646 401644378 643543937 805421356 974602190 467673084 94994374 699012292 865027085 316060450 239549080 726523578 496741843 157344593 886971566 591804698 112104460 56640463 413315664 269881145 299859957 803551684 794990869 528555824 1560335 873171831 204911536 769252169 178054494 142890808 925377456 316814271 209915183 53535033 852190017 558234446 661407938 351412844 834659244 159573881 320157333 913375817 622775923 114538378 786486477 444073821 11474999 547904832 192285208 415058991 692976317 199010904 689477221 225796791 752440305 587920719 239974707 576477207 418276270 308993014 473881540 962059083 788524600 572363992 533336784 483420973 836433266 609149540 876170983 469552126 183605481 64444961 848290409 309796861 375551216 959005633 59244810 89651271 770674523 637937134 515931628 475484313 66923099 661886715 800035152 941067367 932853660 190858154 549357272 70852106 531218833 281014634 976701155 688794985 46518043 143307375 637708840 69038663 935558115 314882414 809988194 775101097 559508179 20349679 294309298 879192389 390449977 316677545 111620116 664834825 900015955 465165584 800880120 950986208 6644173 42389735 928663030 463329408 827978167 238272548 763945904 216356956 969566905 257098939 231146743 69203231 500285813 202070808 763036402 681529636 563862224 847405344 629374531 790893440 959630297 633792061 279086486 144274421 672090194 466001273 711090569 371208299 642701768 665237631 301834600 602522710 504862031 39559147 778440567 982462565 991321704 314942818 490467121 765096669 403696652 953390530 882764873 223867672 672147770 789719273 286893807 213454680 733800499 74946783 66446799 165421624 125587759 864289495 838947483 680040695 578249361 109909012 792322294 870737250 69228564 933027788 244675480 863242591 432814410 59483376 571551002 612752350 357434433 188771670 270436782 779000904 706668055 773508416 712284728 749310515 135968213 834805669 313668564 613841787 70996695 797209119 478258675 90781674 492963626 93964140 578271511 990920029 467340796 526512910 310175636 376122701 64748872 131545220 744135214 385652886 773728725 780227096 587266921 421064684 717978025 487326748 455507668 536191909 294445429 890633492 293860538 647532663 533801464 434102404 783354494 222664696 902067853 871176928 117908000 20851287 248315097 966011287 28223783 234706569 386466967 974334680 191907763 512637157 159604096 258850302 327998288 79211344 673329337 35378240 358731773 155933417 489336512 90584754 980933793 966956125 974424890 536293055 699260516 673247236 583288174 535023257 117757697 674340985 855356055 918910792 974368100 8619891 101286512 424112645 66865653 545125081 490512694 339989590 874913818 458136479 238449216 935281734 335277807 999041494 170330632 885787895 38821808 707627850 319096812 59646349 609032327 668025962 998801557 617864128 789965846 260187777 183037611 996454171 717127070 901814942 787324121 974063636 532195658 725764056 104547451 109432921 862565816 527864824 132633163 312887896 620992383 145826913 264304766 520469044 245500895 910662750 575623696 152961442 754096673 701475497 911892624 840147046 109270568 75105066 398245869 42819357 250269354 131397138 361503140 403968612 897909135 946812768 480838600 495787340 479104385 444843963 87222329 90329063 596135062 558203320 969167074 700337619 457896005 526416915 198130560 658904422 262936058 68641713 917807173 253136998 820556481 804297788 387763180 7267742 654276384 119496331 506188123 331921916 317156782 545319990 422192693 402080422 272967515 613635658 933484500 432441958 655707186 671308836 133355631 818483400 113236633 175768396 682096986 337077040 115372790 640581975 839135693 545712499 378852370 298033027 144711302 494524368 838080 390312132 489059292 678415321 535036447 337071530 744186421 745407981 583970532 684389255 802695125 265926451 474444080 79947497 510645884 937553131 415381585 855271309 405565106 342394732 689795366 184412686 338598725 159877368 964212275 299021488 389482741 271432445 64023756 265916819 106699920 166649092 93671404 364529554 146314446 533188919 514737692 968801663 925137094 581189636 485222076 117153157 567437961 290764408 450614133 907955141 659984256 89466199 573424148 420339956 609903049 359524203 904773404 982824672 955055575 317108439 582662750 137882405 923531219 654609002 550359805 833857606 381317415 208011203 360103627 522735392 914549641 960827988 883412169 259512452 658555302 633550610 877228912 274250395 805999251 331635267 550315704 461390518 382946849 656071977 9265303 849814154 778522142 710880304 389733125 174058307 860626329 9418433 429138953 451201354 117067125 478536202 64427906 47990331 281440612 309736150 75606520 344128153 267785472 975159043 516085186 806424538 786160386 197933345 921133610 674936926 645154195 39626244 361388992 114497431 920852750 173035954 272104168 723239321 815174085 402046547 802093757 255780184 490169043 253021666 212920214 219699265 684169516 733635479 957751451 909496822 972244571 161377225 17215751 660137368 72447454 276355759 841613405 219186436 439658244 888341725 387529344 232588504 26975289 527113177 234752478 646017110 460124108 816436926 242418347 654233594 416718593 673462738 800884830 4304491 468157237 453788974 697816591 137029545 584688539 100070646 288151681 80602744 324486731 518609575 156499295 995413895 612108844 967428971 966607865 702524303 817083878 119547295 49222571 375298359 524728351 124215990 287450698 301782823 450066440 155696252 499129975 142316843 622165686 359638820 727274903 86469952 364035193 331497115 729266956 802954673 583976359 234398885 894107467 444708239 537483249 812368988 464179405 244849964 114020948 163531121 931811780 689855470 234072761 60885469 597567873 304465021 762482359 146215892 262837505 282308811 84160710 332360704 518831406 499394623 223965929 274450245 18861580 745822550 459174314 861218033 520293459 905549343 901595803 941033483 137519699 870558278 939182262 472817717 646388837 272999988 598274786 14834107 664508366 929588084 368145545 847362367 755895142 865307578 916715096 814351726 853093351 803478226 712576641 733367688 258927665 201366769 852996511 506140542 35525302 472531312 446897605 615194759 298624520 373825741 226307154 893405676 161448346 58448047 838679989 353087722 160118984 825374560 205666169 142346287 307534563 404847904 545929478 920910701 792413441 711867576 866656962 982323635 713480361 325476207 241824363 450447559 323542521 180018414 161392780 618154979 188494744 102035446 952999201 323920375 836288401 596567482 639385867 868857071 316903055 944119570 471303370 317909700 282781453 944320236 243370202 667970087 981203009 280934674 859586309 164855547 631605966 909515962 101714176 255986257 990497579 709412915 9082964 873478417 161091948 951706514 824554272 210106143 166715490 364385571 936227206 120717818 626535172 384342231 129538346 168453072 30525202 77339369 896342236 423664055 694397836 738249149 789671686 483620875 526867819 17410656 215548440 264521789 393732545 350122392 853130593 112023964 60314618 267240518 64001663 665104873 576734943 143327863 22171893 85691830 123655187 967430251 440660693 107093488 950921972 539942706 566877088 486534431 417794123 477789144 611424887 611780479 750046569 88311810 491488347 575367025 65915979 312104496 402712969 746202976 470840342 134233560 455995705 407246544 979472103 610706329 184655308 918119748 374228181 981319847 540544052 832956821 335630465 47621786 512623733 473551767 565204150 205483133 80962582 74771829 548294336 256508222 115010827 163515365 954756935 224881679 411299179 934565506 569098414 12559489 915207036 23439941 165186857 14093298 856549007 741472686 118724199 233564020 255824312 229467619 909106831 371945743 354086991 822479864 899598840 153340663 228101646 877487678 419436415 193833948 488859930 469534607 532196057 850394683 745213569 419193046 277517324 987009359 490498992 211238485 802033885 303149102 476829958 265879495 352174417 305234805 680274362 445184401 745552665 743624037 47151968 49720996 797559532 850411964 112172928 400307808 180060630 79998108 403811134 965343110 654515945 775690492 180928599 485026737 874670646 450774294 845026812 212104535 649622292 192770466 965742893 17042357 254237278 925716044 618549285 897060727 61102993 292476684 474570361 593787503 511414431 224653959 908396406 308642264 778278517 625273680 48386721 292584839 845073903 209197431 401496211 159103217 487933379 624409752 609552497 25883921 975666192 623890491 380794888 835682437 962618101 847641985 648573318 652414300 199678902 500488131 33481224 81304747 949393280 44225660 66833166 509017271 553230005 558271565 965971167 486151897 36470581 733665719 747173372 900963455 724308717 18008089 234232967 448055759 390995385 308119118 138354774 217197741 402132809 486665327 803630845 628214488 827455645 668191573 200460838 772460433 729990744 451730288 894961611 704267192 420955676 353435106 677000597 794137580 769940092 720556521 930816973 760813267 260767515 894026977 245599454 279039617 484612750 53475834 961035299 56290907 433700342 305616370 529835939 808202859 240807939 320002820 631768409 931864814 563827519 298915222 74745800 977447691 891680752 451381768 664164492 821317604 624412557 243148167 338755543 331445843 356930046 837719342 884990195 573874564 505154342 299951210 436679866 506858767 922996565 271324776 139792124 803432737 793984899 12445784 375575170 682737176 446549547 315099829 219047516 132625406 332350854 211230422 174208434 634446839 673904212 184237302 206973641 684940693 959250789 581619114 322397860 324066995 676473719 286529299 45065001 974072579 997538526 502093724 667994248 443096328 583692190 987864957 761972415 745396563 392328664 392708887 583255316 895457584 595365851 197465150 162605292 968640069 596378523 158320553 391748915 964935020 362980475 901060121 6503441 463631290 25517849 492818541 329308851 673653972 513135243 746989742 949030851 480999094 515754336 412880068 728209875 309845338 652570960 654808627 574185443 145629510 217270434 361989869 222154381 659519545 69252072 701475311 793965881 401674987 577201771 289409362 657517374 352061784 697491287 110790890 494583844 357662316 58873279 109559096 701029912 363433582 561763331 349226772 305487429 390333120 835984401 751856750 902351105 488847035 558151246 417151116 368829834 938875867 665112469 188076456 19197576 555778811 737737243 290625276 495722861 531356946 302893441 308870777 193024534 152638048 787388772 388255136 525265353 740845056 788154310 130163467 61068267 44162081 356745344 641019304 893695695 313630462 944270667 632477670 521662206 246572543 192692701 237221777 113714051 248053253 105460211 561477588 916814661 860527195 72724117 501530811 348339388 151212817 102919154 250927784 716107464 762951935 915191733 451230973 426185109 82205905 114021086 893278106 760277156 930628769 705211121 248274979 443000448 537678881 933159653 130042628 294016574 466438127 365582678 363492922 725641284 940538115 246475346 636038790 336218871 413241063 878375551 912620915 738664827 970405575 77131238 293387791 433032047 266090784 44606314 751501342 775642230 684068100 16557459 117507357 285827798 330642816 345837610 498356552 527432038 650372970 162719329 430883395 600009130 801160924 530902978 110841606 300345327 211534457 411231662 884335997 23303939 965407198 49507761 373544049 593031043 361325326 500327197 376643643 608809585 854224610 146921547 11647511 367692380 713686255 694324300 714766209 314639918 275004773 471545427 478078329 482045329 422039558 922192917 972015252 567706195 199414038 856396158 173897855 82213425 254155954 963971685 197449459 249122894 933242884 896640005 132725940 408025289 700917130 81856813 436922712 376891799 96966774 454380853 653508983 497978354 321297315 4652714 214339077 215291159 358856711 75595972 770590388 617282128 302491435 135074486 269359221 484019733 148781741 776240 126171458 79713241 780839737 565878458 952141362 448709826 827355664 616172581 272345403 30558491 230175867 873717917 957080881 654759821 492235629 724527275 929733698 14186547 527203567 815826197 811259750 353289781 362427086 375838996 610971886 929839955 459134496 743971395 182350095 103173265 476696875 986849754 963639306 390665784 991609809 871993916 316143162 912018146 293068120 632236616 107975493 657313433 579866588 564557024 277207102 2826645 814497648 741225976 277245022 343730155 67975672 41429428 166703818 523460067 779282231 498588567 698238710 924491480 884423744 662806636 414785342 747181808 736118234 148944892 242176495 391150995 920527093 449711682 215697800 121947415 392620599 566046013 732064830 94049373 474057239 300290465 899026294 53347783 890308732 498357162 479597206 153245080 613207107 464074084 183445048 553818723 476195450 258996779 631501363 368664233 400615428 534593697 57653873 424401789 424687664 660435118 988061318 243812955 904316601 131282839 835023828 70707998 976597926 259263449 142780289 625286185 132514991 969902097 511029864 287545196 997107197 7783572 686934147 657769948 612188665 850195852 656782017 223863004 405414538 59937189 245331955 377396705 23373708 771486804 493157660 292424913 314305705 355737941 910894186 403844681 141524956 98310586 267066302 469208765 693375040 15048161 759118500 9372069 226668590 581062783 819463806 501279541 43012647 813903092 339251056 582442917 536068732 784658239 357978097 459783349 973592561 872104860 980673802 313066684 612536325 733800173 49994646 938466548 789290304 438882508 771761039 928373795 616838855 639681101 287497363 831404349 536379286 634423599 826357794 130321010 939426187 685959793 418545009 914848340 123232332 782127068 507025577 452196893 921875276 562542647 249610798 431878899 702613495 516530494 759784775 516422329 898768058 323923700 574746747 966432474 931980527 152462859 670359136 101499254 241918059 610489727 83562521 437387136 967809710 255159810 160872522 223905587 431837000 885084140 4456841 493990434 513384842 265452723 412854857 566669342 632330178 10539962 658444620 712691777 997124738 890412089 715404190 765441894 853613841 103647291 272992838 677918871 712723441 843133881 560981046 288667885 727575914 354270211 641992778 223813668 949738808 21081936 914658178 980285579 898591547 881789168 301898787 702823771 40440605 758014461 350482154 948875344 92063899 913299256 253843790 153355078 773691937 872323910 762400654 862769830 887408456 349975733 424246513 667394278 891351109 916449398 614824472 584222789 72640565 514147039 128229608 666944557 954650016 864438456 266038683 654719839 115457941 848965735 577525794 35772536 570438295 127496934 454233319 961781624 407659024 411766383 411344420 849981680 820654036 132760395 131651401 449136776 78324371 662786279 371413376 23206239 171379288 577884736 577958318 758948965 964816950 281495058 785909884 711834522 498478674 785200936 578917645 687113570 171830453 662402777 25777852 403708782 840635866 778389067 681041479 40127104 581384734 705981574 406631665 68717968 101803732 485852873 411782235 857278893 608340826 952426111 735597878 724044618 850599025 426720190 862783508 519451651 297895325 929655282 702767958 862288351 135013516 564893652 202829429 637969545 623700410 643371314 409172872 100952222 289845787 555746471 253269202 242298733 553505835 43368494 9226139 71434998 691049508 289100706 112207725 414296332 131420652 300376771 762055342 251599580 160813040 882126946 451048047 899170710 709979624 472886857 477418995 793559390 279595777 799951809 582321851 846501046 742293405 575148902 223177681 51391583 454866391 555104340 564092605 382181040 33420265 799884002 144274135 223874319 928739106 719747125 712606876 564298870 427738915 962145437 23201878 783519196 422883198 715954550 401576782 456166241 217988518 126952162 510242734 491768700 858434726 648517350 15965177 716619383 794993539 436809879 681018308 776028841 996868037 206271231 850532347 346189622 208799974 582318328 966957404 133851418 478878034 398039084 871002640 897172059 403578636 338373079 583231990 902511644 458613365 301453899 980774509 534331909 180032299 405754358 151858843 778866348 490430660 170516939 924488338 571579071 838658840 694929707 31201948 335742975 268089917 218546307 577879050 478533934 825249111 382078005 855785342 593154444 196222221 470127127 168186479 519208627 392989291 832630453 810374093 634603010 865695908 257334851 894580988 828512627 461730600 585078044 50583058 429804562 753024133 636596954 345407285 355183396 621019082 793009386 432831862 449214055 151723349 149416033 489717373 676973780 602291488 168560612 224373391 618654277 405007514 13117116 931732829 381177401 375025666 715563029 638083689 749265802 75387650 743682406 715956690 32751570 430558347 912024543 565572263 633727932 109057604 647647184 222672089 210090794 819007403 539965755 566875656 104002580 83963763 512359854 158752224 97326178 116476755 478330192 943428377 996837981 34409141 675788142 458693296 622360658 136569610 230695197 996046775 776417131 760255000 645800635 421384284 5874775 237535506 279981440 643188663 357829158 269824227 554288618 512334791 484277538 327154438 271175485 668671499 921931318 704118060 140876815 590525118 863685032 157362737 708937760 952144052 267659484 429540004 408286637 863577540 680061328 149261236 935583328 651205860 979783098 53329538 877981631 657962729 428039246 603953036 333686796 772851190 856982436 858850443 233496536 371561256 795894132 62370764 731979632 121151632 409794415 509544177 296270027 653872657 955336103 389817391 336928369 606505912 446160392 95963781 905741728 23501088 860175047 151127043 129235946 837315135 488048638 727824299 598782401 793937201 941447376 926538105 347901984 873642573 270514941 626002914 317819826 864740539 56106365 803547286 970012374 903839315 829595020 934705199 129129102 422380130 948653006 51359048 17005651 660888832 738674920 868131874 180255130 176698670 253008941 447087128 361474886 850982669 38583792 573092123 533522151 66238246 467639699 508444663 84458937 219960994 21149106 641419598 102667714 867845555 659700975 656760077 911717307 438023009 741162571 536907852 400706202 626168811 348923438 19762121 765979804 398419237 824511972 942262511 113214541 414382501 79958659 560881216 148211631 804773194 695065760 420858778 974699651 111139190 221448194 908275650 164906738 67715487 147694009 465358089 491551856 577963104 133406477 557047258 30016069 880649322 180458434 627422204 349083371 283057365 173093101 164212439 689950188 752141949 586051765 72517433 727988897 805443174 375912676 570317536 426502777 971158976 596883974 133663998 312610122 811262641 173266877 360281946 583329570 643931364 432367607 589646017 411829856 772102914 715180086 788829473 853312271 51578583 489790638 464466871 641231508 966317229 657570467 195792289 718620899 630836712 854922822 213315820 504197982 724266057 41156308 322647123 501559074 532916349 918119287 130226322 623978541 317090849 978406924 611642590 568674370 651128157 630844215 144111336 767448579 357927352 114605758 369476623 293183731 731113613 476723529 955432537 415494582 764456332 695909481 393864806 254217965 48983344 56250557 5955085 994797135 333424985 733334604 780374433 282501824 657980086 494021656 178391758 313919048 308750435 156733462 660765188 698506549 981605243 292823483 904052092 891060022 414175543 29736809 815411265 519953881 24926424 625981092 823453816 982395395 705801731 532343421 63455605 550085092 77443305 773636459 489002456 118269651 295681775 513154131 447686715 994390496 604316755 13096132 400199806 584739095 539915810 812951029 354269028 3944598 647889074 46441334 455581575 591870108 378689232 443869928 145525067 905495073 300431163 115019638 440617436 60201487 756097409 244243903 933150017 679019618 507790515 733791128 93564332 613409670 224605059 433270539 983366273 606127583 262461272 898856008 525313793 411291254 884597698 598346135 347814531 118740775 943771726 698059111 658599366 594899285 521172138 793081047 386628150 382449837 986078243 683678516 489905557 614932176 295239011 441482381 873335611 438892867 767159355 261929966 944626176 154240014 924455662 63291678 148140553 759303013 593254394 532783236 197531571 809679074 425505274 392220525 462146283 611288817 496049740 575982016 100994318 557506753 544351004 822106950 639932994 568215165 339454817 526900558 979036351 404378598 635769188 273699929 423850645 538671782 580034010 895318160 216775515 438614590 136752740 334205558 159280158 416271062 339057259 525405683 635591447 973290858 58261650 259348281 219234319 11377727 69650007 729529018 91990879 976262017 353779264 532440580 739248486 143796895 973252312 214265930 729610583 913272273 153361514 291133524 993430428 92144831 622930375 899933908 762229369 634010745 726594735 88648224 568874805 756940866 7635029 746400513 474871156 482944768 501188803 151582637 932245681 696930425 446372617 25454223 707121684 199259476 149548404 954856886 627552928 971529462 698126882 82407898 848628459 98058503 640935258 537776183 147060535 732781376 172085199 725007292 86839379 237961062 172014625 990676851 365134520 978096984 543858972 491718147 620114401 612088661 52808154 319643573 644451520 469475956 764778242 301090931 665298698 938585544 833373566 163013259 222147610 583726854 978219002 991502082 746007425 76049763 338782458 935609238 20373942 592773934 934997462 992654806 580931736 415386831 597061046 993442925 558494134 69994156 72867911 209013370 825294297 902061300 697560900 306178321 432162382 542588441 722430123 390681608 205453349 393359712 173037099 861558712 638428805 132743334 817189978 458994651 235299695 381194566 467173757 296404133 838239616 989333365 786675356 324631714 634991995 539732667 916013590 538834013 453960698 998255077 883067804 197830654 820803974 30782878 450797336 247649252 113977126 41996292 643110759 65818285 83325771 802160118 205042915 66198645 155677756 86787843 429669049 817639452 455369376 19122078 916256461 110531911 995907755 321295166 874989272 742681946 396829046 488013657 622080230 663224843 86989602 416102422 286352964 954488018 463475724 691334348 699497654 497512627 207466596 73779551 417312782 303103272 224860215 671052113 619098807 792580166 535316227 155942158 523551949 599549364 945806500 55968982 134621500 306008228 994073312 210717548 157483355 979692010 294885706 218062178 401516071 565262483 122985453 988015941 816349625 766144531 169459068 190388375 266644857 770869436 583710857 151280736 538388364 198201775 198545228 813808231 876924601 950967428 364242486 581554153 503472490 638597909 462231380 999258974 171327589 320841188 299182776 848000937 785482754 548397110 268159035 77947360 808155795 863477864 258470584 732613653 251713195 672194803 346689960 785257328 521360849 725288088 93456527 570853936 833248331 312088911 862739154 292886226 526397781 282769917 984680921 963672059 575713284 898026599 819314703 416322220 530049835 493479915 920832260 143741346 720114407 998377788 120464842 196146110 642866880 240586228 690552355 136208515 343827873 733808937 915507189 808983351 624390140 173300299 744119629 871262028 320730580 284840925 804894385 293583629 850915522 826066974 813899943 547436074 850644094 534982048 361925039 602940084 731152154 874118782 868920031 273645938 617912852 947832514 721548583 44114960 197616981 125459664 985454749 165366116 687963207 870633084 991091432 713918767 843845706 867834926 402189028 368972317 801006670 5544924 28962095 567078406 376366905 290677079 879846769 774561674 802842557 685028918 768060635 297618128 401630849 521658719 317687677 838843144 675374817 629283450 669022309 633390000 619893633 613034311 121769552 987619080 802433339 744059447 685028729 366439399 625861811 677825321 90543842 591780741 530905999 195227445 76307052 338502036 53052986 469528257 311863728 633553926 172348857 164956017 10194676 306856512 356632719 781082343 511079439 339313069 371126318 475900644 811105003 386559755 895364126 175742941 374458110 72703760 174159478 382494838 540829072 377164408 297938110 52588236 163393746 965703928 753989711 25171610 464940550 751261648 145926019 393788456 685411779 634239983 592257474 655079466 925517737 172789753 348391338 482086737 247478377 116644124 458328863 305400511 435873352 83211937 688974620 827639762 944028778 443951129 26870897 719500503 255558897 712954556 684216363 74287906 751430949 324785013 165831079 48279666 114136810 234504447 438514511 582717070 377128119 475582712 291485750 227375419 917579846 941039402 429920915 122193114 71143276 323016575 430249684 873545479 614657341 487573447 503473933 452847264 998544094 282384058 693502480 799490677 981051328 617829752 30637007 273144170 574918432 526419178 656252305 462483409 115131488 828329796 151888088 375939908 812304378 257056377 901765509 554411884 472130875 259450375 434516955 800402783 753275669 106536682 14531371 514179650 879390262 724370359 839420581 886933249 409407461 429892430 128012994 938832693 919257764 546738774 984083127 883798454 535471481 813989134 791712476 525781190 828169220 861471435 334957488 452378567 691553361 481883348 173263055 503291912 341267841 671204529 716776214 403740793 503617130 898567889 3803148 518996871 908682955 946330369 433997776 698805106 381216981 832088315 720863583 567326960 569885498 376248782 975234500 315884753 771977706 655017993 530021712 549076962 950730628 319132742 739231879 545611238 547545105 901257640 266128755 540377383 517996344 750961798 396775992 529428175 205351217 806893579 699598754 286786157 276833096 998414754 869496706 649514287 731076801 459852634 237201763 855589344 579472738 25618087 785800154 79749060 977972124 476739891 60609322 567508218 281633142 121716725 230327439 849739090 121199968 145991736 621710003 265366562 647165398 704526959 770156514 958440480 908652987 298791773 238199736 10327963 401811613 693549870 291451831 555515803 328499084 90418866 641445129 653349501 493098239 619288247 368334441 188439851 804993466 996167960 875045783 824869776 840782031 958958819 333523341 345252047 593272456 534976543 70301180 983295600 706585747 61129537 179452035 422039947 414227508 205079937 584602617 88040446 856079621 313774480 113186496 973877094 622535339 45173993 183194612 93187557 168528673 972640369 113881186 654861190 842741151 79399945 508791964 983452748 672660991 641490209 930262302 404257247 322028675 385045147 744990421 22786593 948559501 450412591 77649904 117944327 261427714 639093231 356184443 135006622 671386284 479155244 959299338 645304943 864672477 720994476 740212173 467162704 919151209 94893691 252038373 511587604 643790984 77422757 282832018 535968585 228704043 59125966 82707108 512947585 181600214 922248886 378976978 129164073 249739382 177570374 606774906 311477945 512867902 834282253 405983810 485420931 885785260 590757792 472695674 510188503 431326064 522918126 743869405 417779738 943933991 842607109 74168650 249844546 850325415 13459675 808622455 469615906 814820920 989131090 929159059 337119910 547772040 694897343 638743459 378662360 170046252 787726712 535921643 435767310 433754821 439343047 413670598 763226102 23006847 842305467 915153425 801527652 286200900 334818890 334084192 376378509 10680883 932155776 136152195 51432081 998771611 347089608 724327782 491970329 532441438 12344801 804602506 705772396 160976245 797594480 762159779 235736600 157113095 651010729 378320579 751466011 635165705 620670394 730524856 959377323 337652296 381832212 557962528 964752721 178119720 459305375 686758620 914867827 577176215 525299651 884326954 25607521 852287073 498468974 266779644 384934525 151353192 180929175 451486812 521233611 988881404 663525531 672287695 458839729 440928578 168152216 355387111 809023447 510624727 186428292 721213008 352829128 400385320 172360517 411714326 184437445 567178641 768708434 456506656 185939968 197388577 828924131 613467815 186677865 300362734 722237535 959607710 109393249 740396596 998810447 604849545 371664982 678468459 215191412 583099853 229202105 842579172 151402801 752233015 78735346 583746811 361933532 783925899 275133559 639739215 808704055 189644745 261806101 880067255 306810453 470643386 546362507 419422121 481772356 291456936 309122018 294964216 205024329 463928240 663257017 602024695 845968358 879671744 241793453 849451533 590541818 225042734 597171065 100690032 225400829 442730823 149857608 209776019 411846561 788283424 801661515 414574134 377147237 576874318 492908009 29513423 809941971 357680060 342049296 53595370 195444436 389984327 980368606 797089589 425658815 657916303 614807626 207216944 175788411 251936954 388416437 806016594 344802890 721333695 110833856 441007453 761941831 84913578 752704920 427916886 720056323 917522224 572208016 674066975 600911179 319129798 911573227 857105028 544519171 480281965 492304839 622101175 101126183 851267523 117367842 39112759 201393689 354669978 183052564 138640173 266954801 788873158 289677211 972544734 597490941 868605172 415995125 48798080 321928019 197787726 689887324 261737854 177595126 912520440 670758553 314260381 533506912 914173849 689876880 648165853 47106224 537444305 255790749 739684767 112511482 223292785 112833809 171645227 393168825 223335031 127744774 532644117 955578263 252753399 632485239 830445642 247835674 42127190 236507418 425083858 488101985 238564699 369542527 911666784 50538741 359488820 238402762 422863789 841660979 959638149 255996264 754111423 337684373 207120935 923348024 543568176 141448577 208787299 94423133 242336474 264583137 356841600 488069059 896146979 489027820 806178548 918376137 270797912 841708048 991628597 873086144 59506439 964735137 456645059 759065193 657482961 811200238 797734287 389413072 551354933 332656251 822192896 946443795 140436285 562343390 943951425 859337625 134126775 842333715 243648222 931949216 540188928 565782283 221290866 213441566 343938102 116031387 302703812 30124821 888096211 538598728 215645953 537851004 566515780 688740492 407968614 766680232 275810011 200197777 34351565 427739143 85457006 972386905 82368466 476287549 59801847 461442467 571603677 682832053 902459137 991439599 212919039 1568609 189742747 303288768 110811536 499061092 65934379 243858399 922611733 268545020 383840035 660188554 839959729 345105982 23494162 542253556 616886299 988541757 544070411 415710092 682883888 541926710 755733173 745050059 935258836 164242439 746853077 28516311 611470613 60197252 717439734 772627754 851668826 720252182 46233248 175937110 184286248 916491550 351771600 863956820 780677383 685729781 515561008 172443490 272494046 964061091 118718834 112484161 621255796 761136728 871363742 559395248 145868267 860849345 691446434 681143277 534046894 754987761 608965272 627497071 660050515 946692730 556342803 24278923 102261489 764377717 39451019 336062034 755594157 889966315 276150092 451616827 767657386 945093551 92089156 292948991 48771833 469439224 197655924 843555289 278941462 503084179 722043966 71840563 552639319 695718578 631074278 49081373 73378898 527335980 934983802 975907439 682615687 911062174 285262094 95336174 992189373 300824143 610949978 868383760 952014033 503437554 433254417 68782642 216083624 765784491 862122697 995747226 819052670 517836029 647143063 208315443 269287547 943898752 345628847 30930686 402296800 939015697 271001732 63479825 957989980 428088190 460371488 965399598 919558994 133012462 630112081 326019071 641327458 418423198 439609167 722191806 83969882 470927743 109082986 991127893 781553836 117408574 457677631 816599597 568532015 176343959 70608124 662023107 441264108 566054713 901751241 826745442 198479931 745044200 37025099 534993856 732472253 582333891 543813869 572849792 272540753 580804855 6250586 725201936 274757611 301213789 81928651 677506326 26362585 559173931 62556377 742096852 376223261 112441023 606989398 37442765 937989865 829554476 187109703 273501566 467681498 666224300 789544409 134927951 593620906 152460235 737975677 561754461 421607086 135716837 394971465 469949402 91935673 971979218 357619602 629519518 919983820 395598399 957043395 796091996 758832758 807397569 693021591 397413745 724975064 81316602 134888986 47523946 173323397 314202332 727206047 582350714 34390061 75291988 593393604 683830751 342990091 585361614 496230576 481048416 173447172 4043115 939256477 665182469 561329661 989250096 179520845 745459148 104461865 895292588 558020597 900558649 730832798 599198424 236887115 119477778 332748328 846591344 791623948 710302636 980585233 718614274 744445657 445036351 63722717 659651948 104250452 704499672 468553324 330755458 611276819 647938041 693792652 355141006 857564712 210504068 780657844 399898907 186273223 298554253 588269686 967514937 452086415 641949463 196517313 566871131 956179758 891650159 373111196 881798782 891327381 381854055 328250609 365996363 578579339 78621171 133840347 356893521 117838262 158323265 703950172 262162575 806078121 622283226 460263289 827936259 476694581 340759398 718861227 472564505 348362465 624880273 388993031 218533327 849353758 698803114 288206007 244264135 548236228 251366300 19528599 269090203 411820967 601096134 890676124 42393204 16310627 627488855 887320074 921464626 827608883 602435735 9731432 826664744 323014140 890008017 543114685 469669431 747165866 478241537 483712414 205360366 812539882 253514419 982936992 627090305 915796500 690449153 486345677 428905201 191704447 398095932 510359877 207821738 982455073 646286815 690409213 471539128 43857861 799961695 906334138 724287725 655066719 959557784 454972642 29993121 729929362 272421333 353685713 661343671 379507197 939906488 118288832 217003197 2864800 988533626 113675262 699116028 753827624 399704085 51833481 78684953 323869399 259761168 682064271 596484835 284292905 992362484 457573774 958177152 641829124 702438979 591072886 77533895 210213290 65915807 577979686 209480312 926877626 116214014 231741111 809296810 736361911 877012163 700404701 969819705 793091923 829794959 428681947 306185733 669761018 737669791 757842107 11233327 486336597 668786005 914060263 669352753 67553500 418850471 226319128 761438672 243443432 346025505 52013926 743724504 707012104 992087220 845373622 588255825 482471070 197111835 579815969 284439701 625213658 699105614 182867401 577554923 982211593 572387125 882566080 15871563 783116363 451072619 944471158 937140852 464840829 27665561 76721511 355699564 420165895 209469744 280704229 889895411 24907429 32651572 974976374 20293055 340957648 564978776 855135804 104265204 162112288 16965965 503011454 208817301 705835695 774554990 887368922 249568988 736763064 771414513 299371331 564408479 920540148 40298167 667150172 666600406 197233130 287931556 606887982 993764011 80601597 582736071 104770207 603115603 986614605 257382630 148493343 98015096 803724922 189039355 842025692 801862282 683434383 184722829 47404929 865046993 925000908 746093489 833756283 983806484 668903379 521329577 815718556 619515982 225833890 522063372 357894308 109688728 439894039 801754656 862190689 263763895 171290455 137906981 256347902 568020302 113718286 266179420 920237246 314883323 230182350 510918390 865880100 271126798 278645069 846340094 549445227 691807329 688955936 91665846 874509217 619789430 439906519 758839556 919968378 267896245 115478367 712086738 764806204 648692143 121551620 643275255 497352402 642886785 648866767 816704853 273563263 26399781 965161106 437153810 107311030 774752389 323148558 177338099 776926383 69756984 127439776 506248067 524321792 236957892 88449778 767863209 594383544 535405467 460141250 510644142 743747852 233052023 398594547 1788887 262164769 911187115 950403048 84714696 420460992 501719722 521727586 346323632 661000483 649238077 117992782 231324456 317559368 115896796 422963886 769976233 54010249 24542584 27688658 106573924 804876957 859206094 380844054 867536516 796588639 701224198 594578585 299791109 288559980 822435761 170872037 279297979 583723878 455933415 314414730 529591806 419660864 255294232 872774928 371202062 752605640 851983803 669994229 85207017 679794536 663423125 291678294 203157237 510465754 105065425 31288654 372767025 908103200 809953036 776205606 437118901 79435215 381176107 639969663 796074913 553899446 939281873 75146166 543753177 924611527 126634725 290127288 51622245 106031327 39646362 171897496 378421897 288679066 760660326 337257086 608018800 212568887 390909452 876549270 852861522 14768333 866403789 861394110 680056620 781031009 464537806 122030423 207695609 224508761 107346480 462753172 800687777 175743736 44877378 736950210 37752927 474640480 806589760 606215138 170572292 82685537 110789844 486563812 902952834 967636206 108794697 687047120 691801982 608821083 33656977 5775636 194666984 911050098 367159497 464463052 611395749 272895622 330356793 528958548 449308705 320991261 757154652 87065652 603820344 387582823 653025761 731587082 18228608 505751187 300649215 580915090 979676555 918040061 845838822 111916311 430189750 357360685 160114297 10331887 689539053 406452060 420828454 26933209 561373939 840577390 132738714 974347324 744022154 36918804 485708812 397770425 203059380 966257464 809435434 649424568 436664894 623465242 913621918 212694721 467047907 892031420 309806371 735131767 972934161 29428399 178672535 920057072 268368296 287781242 563483933 372316900 702417989 500494032 129600130 250649893 487454856 141948205 758426492 434559728 753426174 987792426 773222922 259838492 556708519 792234828 790488921 540868021 171683845 510406656 181689773 709652092 17220699 749812258 990788739 452151285 942186548 250160981 852745267 889128128 600178142 929549202 905321172 911139079 185706055 276651294 651932462 171201878 88583484 264224269 399863408 945930973 397696737 843871532 91498158 736054580 174900578 356243040 505898295 677611526 480275172 244901374 999251611 536288673 22069749 314512041 545241158 422605517 124511276 372268995 925091104 515649915 134709194 666237389 676248438 561996146 260754842 931731504 596583246 407783785 224444602 368811664 7723843 433542136 48946807 428658356 333815369 57735737 5947574 322275588 825382789 267130289 569439828 279596574 898009892 404268887 352348223 547471325 447550499 384766497 79370117 292447348 49313693 336026557 816371972 356346336 85871166 891676404 423419074 947619502 580635205 573698343 269894408 457670204 589500390 628277954 979550024 312855431 131437223 92724594 925007364 738128636 202701778 192733401 438743327 652769664 394352940 54154073 789792016 394347033 599561502 650758066 452895192 443955150 568579447 248565847 20757036 459508504 61842134 469479423 626795187 716373699 532803956 490206151 877826126 392442955 768474429 408494766 980424836 733077509 141582640 868357228 17771787 190429074 573199580 428259113 690929561 914696165 815426970 812237833 325490303 523661357 647910744 807079763 657561813 428594863 335199032 867998183 659127838 718901678 790019618 110737458 808740929 253383102 338974247 602844551 672020848 233221313 942469062 742992465 96003796 65858652 639617325 394201127 829991090 540673875 658500204 570337591 617752396 199559785 118592440 284215946 10954140 279413215 924950583 486318458 578140893 194342950 293939336 190404975 378933798 144712466 667159078 380667044 27788394 355700299 336033323 440833262 907831398 535722180 94055955 464498791 936076741 726140356 875142738 759509833 469932972 78138582 907429220 435839700 184846699 955363128 590907395 365253569 322841623 341710817 623173897 130944078 854187547 738048807 963184957 228597183 883760421 923341503 144989575 216122853 751157452 343596551 540620850 80609711 867389414 214829229 38226353 175616832 705028484 820587537 357037272 473842364 340812568 744034982 242176451 934184656 489664457 380827128 828374010 14545639 392379452 489449511 941351651 957601964 70339434 840540041 955335567 680962419 899447254 714529119 417583302 229974244 912881488 707438375 7735984 258539660 405548047 387776740 862115029 233301006 563292090 743806491 413836133 747563518 273146487 472818890 624311863 176674760 463432990 482375752 763046877 951710366 782126002 240527252 499464998 212509507 579539275 942500596 567940560 136685706 669430121 215125657 20031404 726714618 561451036 419238907 676489373 734998099 419147374 444028821 905393348 975165068 943495613 623035251 601817200 122428467 804717229 456444000 363129548 411454268 823791025 560748375 245706548 530095122 645367255 457059913 807384865 740791096 640063221 516423963 637652286 347628200 607005819 343364690 315780774 652632119 843563138 810176912 599992951 994553405 796163359 543076475 818061893 430688577 385899901 949447512 793940769 310947644 925506166 298360257 450084836 683641447 117341483 648507181 333334362 174479974 267987049 21291118 516985466 510211133 492747885 485563781 646132391 296904643 954576068 508695309 927659237 928748578 349520190 821991877 735258074 396795931 981159682 446883165 457275722 925389323 89755785 729486683 697493484 112708428 706496039 248092531 406706656 257550398 780375281 24893853 458961759 3308068 182331493 734449672 534162862 955185029 199909019 98227279 908934363 77036784 713463163 316829401 369168907 710608951 224349037 972962379 460827285 615414780 883154520 110670326 914248649 926971040 585151048 248811542 246735383 40680447 808679621 291098563 480399948 92658960 210640405 175599928 981474213 642413469 54840257 430980044 280669496 151525291 921381937 181032600 799551775 233214991 562323870 516248241 13826178 370057199 399700051 24351219 234459006 943550990 538323174 706386725 431711411 952194723 157564582 409822192 110042455 563962329 798841193 422309059 182261731 228307341 977941730 318160316 891708110 375279203 461753743 483866196 269152699 41426395 855550582 156592212 536019157 414654999 770140043 527268162 953358631 95825973 787511686 178040481 505914997 405378755 495130908 866569672 911827298 96377078 260369763 700442870 738543076 8231970 111682822 135323937 310231282 797230776 48298538 741194445 70363677 345596160 370296840 269465259 515983838 856571962 770830561 355060337 896897791 908154129 341004782 149905178 624948029 176548581 918722869 862447308 131322265 400938967 254183021 56029955 619970207 715591436 500249051 910056293 660539905 543158382 520297910 245414854 232177921 736111627 677121704 373227723 853339582 385613553 342514130 335846551 394204092 787057047 685586166 818893753 719008123 793941379 382956687 214741826 826891794 165444971 690784881 932756040 187202215 435911833 781178915 162384207 602556937 406138992 941922973 705709237 660487479 300004406 703233644 327677818 181560161 654662184 720212135 13942148 177886297 130403085 553753756 120666353 22235037 986175641 295185590 160817175 301480972 933376648 242098534 303405975 730498339 438895698 578928205 1355383 184435929 709820961 861221438 104414976 525062174 923967662 7581383 340004003 456550928 897706372 845300723 310855194 149777093 524029950 730123207 35772764 994207039 237780651 55283157 465117879 763363492 709937048 177357837 138566286 356588450 580302296 970902171 69473028 97801582 612826145 716540289 660376047 598463485 883303458 479381690 964581576 816286874 103304043 667627843 335776117 876312242 5437628 812691586 239770006 483703378 498037964 345527116 40595798 502004964 552550096 550781479 885283164 373428076 175602687 799485792 191812006 238913244 823213875 639308923 693672047 642332608 235396114 406787808 597025720 854666006 93311066 762012949 912127831 318994024 464452147 77725079 976984562 606903410 891331363 404815780 62858970 144429849 504486699 920064279 137106737 528093477 115412715 821103029 951170251 479473185 938950021 10580014 708761528 251216724 818004100 206776461 77100641 114107257 772429376 45875357 159237033 487974970 646850530 515654636 204610243 355062867 469102915 986819171 919036499 36190129 772106822 312597477 913923083 590837195 345583484 974490664 768132275 141096628 531637848 369711468 116242134 770592421 149649805 833690470 583219455 443198872 454757572 646543863 895223905 258982892 926836290 614126949 391572474 756625290 18680190 974373837 1555735 719470454 405145568 544189949 776479884 977590853 26323039 347643450 683655679 109059599 837088637 537194184 158408967 93900095 434799860 285493480 120952657 805190018 264112715 430561868 199540021 620355715 223330023 677364142 769409416 734683222 54068952 799228333 734606527 600612535 590441818 278223707 365718033 69156257 949106789 752993402 67932442 811251461 160668058 541267616 722146822 344974183 712442517 285756980 569409307 707610332 592387798 755555779 293800692 699284342 422503489 718542427 103563825 380456758 365660225 613016259 137138894 247748614 947549558 49231317 507597625 208691347 41024676 385892029 898409110 641518517 386276943 805243108 789294492 412393791 504144404 277187244 942590262 853380150 491700657 960873417 126491844 365567179 18397483 22154063 132184711 476715114 306960610 627136015 9317027 11834663 811283556 2607999 399831226 713353858 261592907 517651569 548402780 539694954 924898170 688901797 70621408 231159368 742252019 456018607 653847442 447720529 961525262 269324354 619408172 100217954 532417659 623840158 925295482 423750717 985334476 401957133 690126598 662764994 291632997 983032672 396424599 709018473 730544297 290095778 26430222 604355226 198603376 580413906 270890171 800364115 920785502 638451114 235022964 145772565 778358368 229095232 254671648 78929589 223391973 865138481 677582950 344383422 951680079 833449409 818478900 542659881 319608551 273417971 555617437 384750685 76763568 449024455 789300702 66414020 469032750 531900018 193414795 46147899 50987714 389376597 928020905 193743814 804224416 858260090 872241365 205513252 895852634 649167067 758754211 373632281 330982724 129818812 307327059 422490226 511289231 441710631 704512824 987727715 990421850 53503311 898348710 629421790 506435371 965311389 586620383 807977712 447545490 193462911 947106699 132808539 978741101 490512556 515378932 295536397 183831828 234304729 596627586 121563914 522628940 440595634 631435036 322057043 594668019 88075023 134798084 554903512 306163892 614501380 259373141 34653241 275763980 134135216 647245450 859964027 523862894 779963706 126913417 69777991 631917726 573550328 572566877 694304883 830913968 672478482 930496404 465375132 104969768 165493266 827844260 123068918 434822831 626898054 669640913 164507678 80945726 178722647 554794933 443110046 120577732 829709486 266312334 605035057 213893112 502623063 784984673 337402712 678276802 362201797 655193970 852762086 991166699 320812009 956408225 226519344 391921832 761059084 106086725 388380668 492812401 952786227 710427012 725756903 795311228 68003267 802243926 330364369 936508383 538029811 374654356 542797590 353878278 874759275 760788983 196274726 128296177 956689019 426642528 529770460 691876286 298560779 650477131 202539914 760949886 668006956 567306747 685780882 52971775 577259591 986017219 175174883 276608200 280083989 990584687 692259217 162161569 342947545 662586043 20060665 270130288 631287703 113467114 987991492 277724344 189502541 792120229 571852192 743455622 485927094 579917389 269717500 29387917 473887915 325698474 772126336 641376710 965623174 898434657 881548994 536574722 660398601 592348193 70738958 707860674 688670414 950451289 702708551 361800245 568329268 257353339 28578763 507926625 916750193 155639332 681272409 840014545 494142843 70912785 407723727 826438310 111354160 817284522 144896741 162031351 276352701 288407861 121608044 946650287 147835615 517993122 18390783 28976818 255263885 136963404 365004920 150744885 787019530 740281690 437029736 904521728 183001945 867857987 263056008 179785650 749027235 607964609 734746377 237479384 891814021 383902321 153733645 233572123 312870170 206735218 807935716 710549760 219940518 977760473 670791676 893804192 901039965 991237687 336781296 157997070 482834547 599254835 842897731 126338879 157357820 119365689 116358762 711917489 596544902 42227618 403526967 830290728 888547943 457649580 910212259 849135153 372481829 722246015 845771678 478833081 930717928 140464511 867237674 447430477 522151932 210216016 676241300 354539418 647371531 97955472 768458218 751028434 144067735 605694820 636526709 870571100 376610808 947240324 805293209 776039837 635338354 98809727 777110634 117072745 246597388 611519305 264604267 863924302 811307214 658565031 467383524 731200405 793939245 379021465 57500852 494322872 174206448 595207723 472222128 540366308 14343497 172667881 366321612 389395794 469862712 381279590 646068012 824582751 310934068 156211397 467815222 468576985 850025382 953196371 614591583 369954415 884323488 153357162 588429095 40028833 797733820 471750435 338714832 407050534 709468296 104093899 891413479 509678486 129385375 122141378 381598565 570704470 811118653 73864099 139924715 680372570 126390913 816894139 211955655 259564477 597663595 997013934 530294252 250581759 269256106 147784168 895420052 356611522 470012622 635284988 767944858 36443557 225604320 66313676 404689380 841051869 12388166 519323505 190487939 373364215 987070629 521045241 255057658 39578872 202175546 829146324 551249006 886268626 237471026 116107639 846038118 611641967 392674747 660480911 400173452 136372499 644865607 339349371 816851842 787639845 971139231 657595582 274427052 428085048 710050318 473225198 147689385 144963538 52566203 50732095 516701310 505500758 584726687 730978198 68995023 139335840 2694253 223633531 467353719 522781673 235953331 71782289 771706939 638918421 191302033 42706363 80299032 896713186 514223638 599745074 146578076 461480407 655584129 693979463 938840693 241890135 480500121 534238489 203781769 112478340 503287396 272367744 673632603 734881801 522665486 610959432 52271662 443440572 407003838 791385691 35328775 712485499 86022349 981523802 960183391 510520286 480453411 861365919 521988553 470122354 106921714 909388260 482238450 499640138 941190017 462679352 718047360 668189824 112702939 418092717 174176528 560833819 946056678 853057589 566037350 805453920 366226037 321405564 773627779 864341427 886390461 438025723 812096785 951046577 10019934 456781784 497435528 46266531 138052720 744450108 716492691 479051721 131786552 374788323 735390462 881605076 809544743 892769608 516459675 662234194 905145757 712671757 213329999 869151170 786669191 223629869 955845791 437885280 394374059 929085278 463895630 633833814 692066746 19551141 172567082 207939046 447658654 966557483 980487115 445892590 366360118 555299389 875165231 187028601 579755207 379266779 702957717 781939780 982085115 296184860 430125142 936613866 970498086 157245446 510642766 876204557 946008651 665432267 367022506 416484255 113648074 851521673 549151709 24581763 197021686 251732382 772221519 759951999 840021393 606720465 999331200 120356223 320184877 497266088 888375493 189784354 810596789 138943282 19493578 719115207 683609092 872193527 444777361 276904580 355859041 938250861 512245420 37125210 451853198 78143689 364349132 138107765 853192924 892720876 169015258 235025378 244424094 746743692 246068267 503041714 165571452 370650028 664201620 877902375 221522893 497077670 312052299 204233611 341903835 449848543 802692821 215866494 98422857 766153745 257108100 945338718 979473485 275713264 267376269 569972426 211783041 783077475 522772252 979688296 921711249 275733882 517346938 64084836 685479608 864570571 333742835 381548553 139920619 446726893 40551110 178101904 575147062 600110806 790468042 912753504 250750675 829191400 381201414 878869893 664218275 837729729 748946154 569882611 563044150 84707893 197594827 205009795 575358759 789090138 978220336 539552973 310968157 39886899 30552262 405703492 393097860 471028859 362798179 967092433 986999882 67516688 387967481 173024074 862786910 820157721 384085860 478457405 266482116 731810034 919938487 374839633 429072088 502636033 407110761 33488147 160711323 427077933 976804171 938374400 820798358 915275849 984324057 498358115 492257154 861815894 886652750 604729317 586706891 102328987 963464413 818279096 704508518 275015921 726313931 632388542 551105418 348260854 641511428 555739060 359546224 711653664 430906665 991323773 504086324 367188024 522212202 845971415 812086887 501272771 717514994 430802493 297964845 733769040 331609995 469197091 432974995 194011567 696975666 593507561 437861248 490631912 287740992 701866647 542802031 619222531 42075782 462608940 510691793 217353901 88552717 199646702 869276004 616172661 789456126 814856818 444337211 896720590 47028330 826609815 209929943 393583526 101192970 396643138 117839721 622656886 813030302 665038063 386717596 969499361 144489893 74918623 589473969 521360142 563621479 95994622 235309919 906841986 230440136 557366320 895464158 103531916 657775924 45102150 939462983 766811089 209054690 388215480 530781178 105948162 796688812 623060130 599566435 363778145 886884421 381264779 704683551 539934757 388423131 500224882 791761753 390721852 791702911 592348201 627011438 952211324 372875547 159836397 570219953 968273306 11490915 48049259 816857706 755938402 741103699 945649231 730340762 318841339 178261016 710104965 991820271 146175652 348079302 35158560 61023812 24569937 108765537 797760963 590073256 265122638 330765779 909486053 610845463 113305752 8092603 644272813 92040396 313110647 468092722 945800095 862919731 698797187 495131210 871021134 710293170 99784325 285673272 497666137 403294040 103263163 88782694 487533795 67861969 975781001 703836241 398277582 319542088 195605080 594454473 939361084 505072207 860616561 975068007 684673830 404895860 859872385 20938690 206935545 814073903 958136851 660055744 461303400 873432104 514655876 80114912 740892361 136606118 138240327 934670088 729161673 883263494 626582240 100504042 158569780 573408876 276732128 46030623 921581746 987083331 773976427 531106624 770148613 779686470 76394718 814985273 182858844 884658512 288200261 69574088 656195792 240549394 677200299 553646611 792070317 755838970 193397964 189181720 171579623 564824792 654293598 82083624 861508672 677019510 769585091 680180404 771177324 545095115 325671715 965096638 134699582 140206047 163429109 803890154 368077964 563524680 2416556 472467957 314235296 520447230 676408280 676054561 236788744 903161240 956593358 711352985 596208325 986882570 441477437 131953541 212909692 711418399 171078537 949089104 125563360 620510220 976335228 702597655 283560381 992066739 561278699 619861492 74693339 47374311 768993176 321346512 150535067 238709605 300595255 353076152 494600083 731878432 621550384 224876575 503354190 537921215 710150232 529256046 973151575 802953672 135443725 796485215 400048865 396668105 133085884 426905617 955296116 100844684 823722614 284718950 147383677 415732032 523510133 619525055 340326388 892403687 605743640 295980590 47416485 833931424 231340848 396417426 666551043 802606095 894690732 263803247 631946846 19881877 674883890 376615181 377055237 397193913 179151071 536724036 544175054 141084037 242301287 321761073 45819957 601079662 144648936 567703901 862238638 898938070 253769673 900848968 970802883 179173761 726640989 672103467 914400469 388879132 592453158 210220846 743149357 480126457 309600343 437586372 874726476 892389798 85337332 563006941 715257300 290840473 923081968 493275983 394937860 956708092 299226825 770292802 217933929 816077591 82596452 388985997 995689283 855111462 832279591 534199469 13361461 34595577 825328819 548094972 383061482 595821808 896470896 972333159 992251261 345778887 124272835 612646516 699744268 49083995 307359794 472332295 397256563 396420136 80190436 766131200 345769163 898192773 402759919 155804630 2794082 564991507 782363088 294707983 648308507 133994541 275985345 364491929 374438743 680309731 591963292 839899642 891429037 537802357 26845804 57574213 533453677 716986497 318644401 379464616 357155162 641628062 699732833 72381185 719279225 462931223 718913492 576451259 579772627 742485195 154646475 455091865 424027676 163571587 92228608 52577970 940517485 604334720 501071934 3812427 859658367 418841424 693945108 978150770 947208893 813080149 64718366 477775073 567831038 543065336 710265906 23637253 566945924 327353780 281409196 216870283 801706168 634540451 252224695 338700798 461066789 366561556 703852304 404261526 333444415 457883636 152481010 869645898 124112519 274237764 278725833 537690794 804410956 502138976 750560166 564728588 88746180 696774848 363583449 262941217 543141452 489869378 718748689 100560906 389639880 784602835 947868514 476240754 113740046 27145965 193545527 121663805 193327834 379196619 54782550 707859820 725352052 435427344 44857904 687830383 599160661 690960148 263890691 788659616 197732112 514201942 288048955 241208695 569721184 639411161 483080406 25325108 559521954 289653352 55080174 852881928 690896008 367647866 798375305 270177408 74580541 499054027 753876578 966313031 725558409 532431948 40768333 828117826 556041681 892060273 982631764 423184541 400820958 829007776 828882294 370218746 199956484 388407381 822719417 104145837 788770732 72603155 390740211 676207360 772927385 922887913 595250514 485769255 203906041 962089502 660858279 913883560 578996974 846468104 265223358 441061232 225829643 895147694 800874433 594651440 105161738 43231569 737101762 736855659 43782669 112903691 866204548 566108523 987811273 124561104 896065134 805954366 41034663 874358226 989811845 752850091 21538253 655235346 708800257 186137200 846378008 538729959 567137688 859794530 437308979 986038788 230853983 822553929 602064548 149669834 133098906 103879502 941689938 497359637 377219396 893589995 591720902 661883689 816309727 338878716 55561267 488735893 839224315 564804501 32206554 389377125 951506146 625240048 167558859 73018611 576775487 588540235 205631178 59467552 241729718 468996635 536050563 903599812 291861968 248347148 434732472 110598884 468073172 772844463 556501073 367752682 899608311 306999312 690355228 678625151 483347530 106891557 845741545 518588311 823768953 534226597 349777502 225072951 762132833 662871703 167615185 915459912 628373538 820864215 473148126 496583140 947183630 115340445 851146214 690212536 990460036 247349303 199235379 767117693 765642709 140560407 643943605 824058406 635584767 930378052 156597873 25640169 624545877 318078847 391909300 111274495 623407060 758707035 948364784 692098021 386771367 828886578 372980917 772669146 106911053 34640930 685169210 74059709 376051281 814056248 874274195 619236478 531442792 347350058 979537563 517272785 666568346 736462815 543649335 253890656 332635530 607599443 54590351 220217339 41582215 244563388 731637690 964694334 21910375 668835300 887783627 105196721 363863387 410607215 572131361 867613564 783254103 852230277 820921636 858164050 317962842 702570510 414072886 189789020 463237911 109460319 718072819 911434584 200465454 414513098 952253227 837597145 71867822 528869726 755968994 650578380 841258986 978078747 610532352 832280527 157512635 470881044 695204553 972609792 714804655 923988570 171870669 698699511 636855608 233142496 818734381 697285634 686917821 792605743 710045120 197152581 794522256 63550324 66914530 953015225 466182823 768162268 49556315 42474299 454372147 119054406 163037836 974426543 118090914 452212925 45460071 639775212 932636450 835248846 641142372 307145903 455313498 562540753 928600500 816151903 85837821 646599126 849896687 596134173 378443459 128397887 594145002 462694951 168298915 712683956 354977121 97034021 549146639 506458591 606403121 23202485 528377629 765850993 694564685 520555722 979963644 285346324 419483374 429907516 442172299 44937179 914866372 224906471 927031123 602448474 952560139 231971439 179820308 834249658 642026647 816503521 454690567 43242549 236471642 148369300 813170115 683238024 922596346 585193667 297647119 884312544 154976650 259063332 799186336 150963687 378023319 698316223 822631877 718301938 602893346 700450255 759935652 417549207 425966653 32996324 162922466 961407717 481674669 870870518 370914025 780946318 853715427 348565656 592421497 418667689 162304716 702915827 260354188 42406168 702597017 564055194 338993973 458672664 622305284 350188129 844394795 34766185 200401053 102080052 340442436 851579108 604409277 260548074 34376360 910593803 431969725 446678395 66672238 179784822 117865065 758568700 28313014 620758972 687299037 768044003 589165015 359201194 134374991 448735986 272366561 379262038 951432908 983890908 988866335 965526653 183944326 263615131 618470831 957761859 438564172 509977407 431613154 741621546 611761352 573421963 852745430 989547801 355015159 284309627 67430425 428922192 889697515 571224565 600520795 639287258 156426195 632996282 484778320 148372836 2203128 761348054 164027507 206860006 580169816 484614050 612798356 435325933 376832377 31836304 226528767 509226931 688787176 74643097 624712968 948979257 976688415 413035019 476042657 610229386 710593545 881906868 498161619 415629804 14099924 621719669 586089646 814454636 750365213 911357775 566777749 596009624 265058519 874849571 920615172 921032249 910221865 154455146 775516729 202169757 660471209 849560951 825375583 832414266 736601081 343860370 508101606 911786533 692159715 883804683 567808269 726722925 618419878 40648120 167207388 537698123 784106467 255404910 63892122 179139996 510471962 859309062 441959349 302193417 355478471 351587827 457103139 729073419 786435937 554696496 107091357 796424816 989592442 650711133 277718274 83376167 971208297 633708845 171662354 242772152 657210348 992318285 374205525 838501530 734897514 62961497 934280178 209906467 634653955 677159816 866277038 468722285 376153803 36810086 637235634 951335450 45269280 276081824 466561308 747638443 750411563 189746155 944431596 126230237 245003741 590419977 476892902 321762298 735467821 254534141 879869824 44992951 781426444 623450477 1765736 914587287 707189785 93004324 84596733 665842880 772034026 685883105 444425524 155421309 775402162 498670247 597826911 588704152 484905425 842797268 309372228 89878919 90619582 80280483 556841827 604242130 747776774 648518992 968107884 809864414 442524231 581863998 26511859 588819897 596881096 232842123 654944030 522545971 427101053 773397229 328627060 441119156 79475591 534034615 361387003 721013981 177208872 90975294 671752562 789278969 740729008 595419983 111793639 422227346 426985030 88444928 171965752 21344084 980952643 799908051 652891983 997172909 201656000 264902282 256535876 370403889 687633823 997050599 251326178 194144631 81354507 868056859 370665863 735761480 872010556 388257536 123164318 993301184 825649690 391517457 520958216 256401111 334914086 676807198 208230318 62300072 782780969 310770750 189911465 86840709 526383374 596519295 632873581 798393346 957479268 598346374 767563248 670700205 388345176 861931146 373985557 905113228 186656414 912674237 673400937 675141140 961061976 323279545 104448631 754582564 432552343 118142931 84961571 318500177 19536180 833513652 720959726 332431764 999725002 435771001 22460139 936995377 752341948 922991417 870048093 373824247 780132533 645727278 419511443 325447838 636927269 544658083 522209250 261943028 392221951 644079560 323282329 381915906 896394972 23588838 148056154 925260835 868838953 704793397 958548089 837107139 338125893 233406646 302116285 310066393 157051369 605355653 291391223 250810325 236955094 909619573 959427572 705032330 117767242 902820768 48331405 869960426 361946022 915581118 568421805 130598838 167205395 366742521 527238479 284467123 285178841 13884477 520732364 579226026 464053385 263554791 763893037 646749100 795336738 851752177 212632363 706803655 703104224 595414930 852239887 250545953 833064235 413045884 228897045 448864817 453993869 116750940 400293399 565525278 866103450 996710365 301013653 750050153 502527521 640342226 822959835 617135189 423589277 956056794 868055096 2297219 819215315 818126518 98149184 72903126 672351755 826234392 82531461 270522003 512553144 481356418 195539950 805537239 231943351 795195919 705418888 756610392 673676564 457874364 342385065 162747291 478621212 720919319 860689245 123505758 713568477 902552519 83410220 364153179 736794298 267483527 121528439 424418752 168075093 281249278 68083237 776034914 537726688 832947288 886159273 949030234 822236032 748953347 100317899 154380301 39102712 959493938 740388679 370535973 910789881 361685150 516642584 967393731 825765679 457009806 276940921 914469038 77811850 804465909 544498204 491942915 103530576 983996352 835369938 716386197 579608536 664252948 842382990 400158984 186815385 243548623 220846251 597071522 660905931 130826347 60899754 288316274 421286584 374118870 722228405 471691750 801421518 147810425 26671793 591682875 948657998 630437417 283987544 132791474 30372562 98002217 550600741 170545414 117464526 295586799 219014260 219635562 530753918 403235494 400035351 789813716 567521510 488957384 789212564 127598751 996318477 351983743 132133842 123287123 211208546 9056366 171941416 781517005 649955967 681625739 326719097 47741038 178048618 135433807 971167742 179828413 186833413 643483070 624334431 423698958 970874666 376328554 257064751 846671180 211211226 60418522 872307546 459608112 775905436 540188711 97183829 307696025 322112701 321056301 274441497 761838568 826267202 438993090 718993613 453524291 355900874 453605221 5950725 342873113 914162505 725178832 22441401 992953549 170874554 236951144 788449841 647508838 145998064 888602370 378920081 106290968 757114599 210575692 865901661 545485614 602120024 878828492 96511180 873096064 436649815 974759431 739762320 61560044 499510541 639327411 302569541 282812818 497855726 222440132 889373821 249147267 135340336 201442819 337837344 40119830 232519571 889173662 17593371 525673655 447057920 604163894 128066180 171685854 469583859 244365284 940467706 655640039 312284158 512118412 411650146 262549331 741638012 966306204 469840222 525898490 983699976 987203190 628423984 81397222 249906719 676001468 299578424 636745873 47142552 441366094 303891737 841208676 272713275 774363514 194140636 655236787 208651081 252068000 424317784 131218327 760042191 635410576 308954747 842571793 624772156 990882052 485103253 420144609 729278891 224671533 754724690 746039494 135767027 311445865 429936477 960399775 482703825 240795429 361746961 90595971 389217662 688218759 696772943 650570080 887504615 865630056 578464907 123935882 322794573 336190 497981505 282775166 934627987 657090663 852723167 555685412 274832737 653945136 849747932 615090446 844095387 787724016 586668575 453994574 224905444 914149464 918897203 821390657 53526113 23899290 418748851 855278470 475318894 293807250 509134061 507167597 644241255 907278586 435676268 289647148 970618085 462788771 97032009 976469391 635586952 465345433 43564382 443386610 670640683 694004308 821524692 564136671 6356872 527173784 729226561 936624984 762513403 628000465 94120559 693843769 955084657 723978568 858364691 497605814 261632031 290497533 923720087 677426490 966296892 736736628 552205182 930210616 927011411 298846452 8596762 451521853 3290740 127567531 181363209 419900184 735712372 342693581 170233581 396345506 322958786 399418791 149233191 414761721 79719742 358938303 831799063 619267219 769696624 848750020 738650622 915994645 977898425 963774582 7647682 377862535 924991338 765277264 556107911 820694885 568828124 2947923 699385889 57958907 453415594 17308511 491831590 822319943 659307877 523856966 967665892 994911741 735915669 973514191 960795547 55754489 995754537 460045602 135551450 67089145 860318000 555038452 715674024 749886627 413301443 115956515 194624008 977225053 379174994 418005849 804586981 867842160 935881774 112106693 405297789 249258993 187312313 150362494 232157941 646090169 475778992 577969323 116860735 21727267 45048287 935117783 311837414 82529939 712914892 582409697 872391771 597373666 227308216 246286351 735656186 199936111 476829986 252347234 223007374 532012196 823408223 622469679 497340930 762289348 877930557 559268763 446744978 79300731 585861086 873273036 516197219 881957795 153078693 84001844 688225689 194741811 997102979 329948008 148930351 689493811 375018098 775571895 551336867 192979455 378399014 678129809 303255832 579032790 334377052 837427069 605945657 969540953 879664104 870281199 69781103 757517287 725932834 944392697 220328799 949066240 451412233 653197239 783403036 195662152 61723052 233516598 474338599 923927344 765388325 361336974 891677456 104828080 301290141 996591424 323995054 631717031 644646474 604997215 448019491 385713626 555670214 198274520 183948699 190917001 478831032 290483480 52040300 348001090 447429226 37396016 542065347 693640103 880669350 475859357 427300161 973463787 322248253 34225617 192940506 138176687 703713471 944288771 803306270 482243440 924724436 788434257 761896201 289838608 422356723 787355652 416991861 961585711 725428659 493212068 92961089 158231994 139744871 249391877 706034264 720610623 410244330 367175156 952621895 34214481 812824102 697859423 825972630 610335107 518740206 10600473 178263115 737784021 218051182 713324329 774204785 478566427 691663650 700069843 88647528 654863359 600449758 265359005 580873966 547727851 900008586 278641333 672954533 407621912 824101008 553466995 401470274 21965812 851587018 758529956 406159597 473392989 348615992 399565330 991255474 60373087 547169183 581384273 818092780 92207873 581694272 166829735 135965938 438768488 271502529 864075956 648465404 356308640 369932616 831605907 618285024 465441452 581719607 682086943 40491774 61566405 771943688 53399278 495743136 56093181 408408338 406312978 658590693 516919554 702527719 570017717 4952493 681285645 167528735 346701774 938441412 786618099 76074950 412606784 475903486 349362658 723957699 802822238 715698243 229778141 631017986 435289675 61702753 931401591 706672590 230851064 977573520 659019626 272878630 656139900 134120095 689415973 149093172 649251551 643128981 147861070 56581060 939339336 643837364 511881962 83674449 700569963 269165951 828494047 410013897 849688453 885836358 12315340 67120943 184527129 142777831 165034199 954368166 599495607 771799059 415150972 769804385 472098241 568986573 461100714 851358653 314283456 915401774 937024283 608742085 16376304 404515786 1760656 811827455 502249507 770925431 965042225 671688293 360240076 772032436 612691485 160382147 767696990 616823525 841324128 468876553 961057978 416121270 800517412 610787227 859047988 654455890 395780303 526946062 126638604 494998640 867245434 590162178 399474286 892376803 214194090 284168458 782470900 453613932 857537603 904342119 563800553 619480646 966353244 493140003 540244878 121084181 103192678 512139845 780741260 12735026 731186965 491158433 450826796 105683624 713286725 160564263 122704236 902970596 947675653 605271170 344047043 446606110 856310563 348841716 884775249 895448127 964181137 92810590 661728431 682694167 765265546 64708309 508102130 364423754 430564178 164202968 576502239 541718853 988790766 470316700 119591722 440447758 815105662 72619631 614188674 111863673 619555281 886079530 930291721 599407018 287384921 269311493 509955750 950575852 690210271 851266889 333480740 619300689 457881330 141816699 833540558 291379171 486800408 631664738 656032126 82335552 673313396 336257586 283532366 579523728 771377029 53175712 669576249 771832675 493922600 557448246 963374991 796461813 717916651 607176459 506229964 599828686 766180458 650979848 583899728 570353434 380923159 497648359 137069598 618421761 65333349 583857837 531819616 652510793 983093317 643417780 68136489 154487078 984439260 893414946 557231925 833956165 163211205 636424615 653849456 944993734 579520855 281930007 179894912 898265825 604332000 376345312 444081916 463506872 904303886 450054333 570618343 616638721 314826489 948709462 969762468 303432701 216828770 303484699 256753344 34931280 459669893 327366785 627329988 823305000 33550881 181807633 677067846 898737952 588959705 619624688 402683046 965967795 9509137 425832449 731968754 261878667 550902400 189987516 693931850 734947968 798722037 959856024 860318246 12805929 690369196 226249100 392790222 178644266 942391253 819856322 857895280 781746212 531751995 817506190 534078533 122453216 653523076 800263997 482662429 970577021 388695297 335339638 819632754 535587401 721864036 401613905 589811538 48963760 111683937 858498423 308024743 425701304 371655655 226118522 355331944 920814707 371385533 418960044 112061231 236365849 509629173 68662085 631817378 924086812 376906682 341390309 755577036 353614686 673378755 744037333 4426762 442192909 897907211 898590040 373879399 21147610 292723476 848977575 315100013 260750712 17687117 361046624 937797751 626349465 728451139 107197558 697424907 490447226 580089801 481405897 850035945 708208631 978452533 88860995 678039518 841787823 90522359 316096930 780619194 912143350 165226661 772839385 783030268 384318895 239885160 815170172 392883504 47093869 734787728 862281594 173783910 341916878 653272543 805903658 877207452 637886413 486540552 509405959 475448025 464788893 461049178 670188202 424170430 660748130 348749907 802269386 841726176 59421976 717236077 293712952 665095117 158375900 114455939 41543922 764247721 876254213 988736630 175638657 810788861 21691376 998949575 651578928 652492616 6604915 826965301 18388242 167280257 797597312 824855108 124227322 808256595 746240036 740911718 743663105 689204413 630924224 145282625 514535321 111349145 863907476 459036596 254032061 781050647 206344966 225441714 766656196 844276499 898726421 957146349 307077401 422879864 690817540 938104833 419054345 334140794 314196262 581488405 487001419 521496738 124956568 121987644 919640005 849394484 208922268 882802992 917867867 664776621 533563816 347947463 508013467 789152576 459232668 340662789 596300456 52906706 882521120 602531960 468977351 63302721 538825139 261861591 527931778 687888188 778181181 805275659 110302838 190804174 222051612 995561403 834699709 155504293 667214311 993910021 76211956 790953157 851509997 500250799 760307302 617548244 890132170 93274157 544523560 509650479 778071001 408326289 410583013 482051753 371592528 180323478 51971408 946740037 372026767 386673885 24908793 755974168 394076669 297001641 669185999 192729713 164394067 61606324 693686355 633444976 765157617 139015708 392257267 692873316 132081786 750988017 893220141 244227902 669851356 762890457 113194868 24423715 692197334 396790287 884187733 549324783 233983823 340877879 317878858 274590768 195691372 443161328 502710229 194466274 83732375 326678811 498530228 158380565 387252254 646606183 647091272 302894037 82960485 56643562 227219173 793512720 600942058 568608434 597615870 414773136 143078764 789598082 796937482 176978735 697812125 928014486 125933719 303223966 958726003 57575821 487508223 125708056 32067337 336912949 811908240 328036442 437933174 496806349 709649284 947501327 282488287 773879118 418972028 7234704 968671993 591256570 655194070 525551588 352596909 503700828 103532956 529617559 217268489 958818864 846467451 198965258 602313505 178550356 558092460 957539434 137073480 589750387 529951160 283929535 606370156 2471006 193211077 86784992 842892009 594326890 933223623 72334807 499953697 785517994 408731659 751641027 618289604 152790765 953446380 70195860 21494152 58304725 395434800 210329536 204060273 316665121 410344765 605063966 991567376 407323884 463624466 693976560 962741016 285265066 190243648 909424887 569545469 605490833 947862661 581237962 122029805 161008590 108482068 459377344 741786576 499365878 487050958 93337500 422607113 675472223 590422398 960227489 847577443 97301176 255979431 55985540 466015271 386555740 473877540 20373490 945652116 520857099 509645154 669077296 841566056 467793106 131929242 416205319 139677345 584566090 102178078 641123029 189662784 536273425 749953888 573286348 168837074 333691574 94573178 722620727 500581384 892093459 720578654 66243946 82193724 354234023 447677270 758829602 239981380 601111000 33691572 108609451 231601032 335903391 38936724 274755504 861293860 793348853 947786550 859111303 644918602 230612106 526532975 459918364 138629869 135175489 465843541 700396703 863647658 756084392 480731402 261007820 725082319 101455521 230165092 991745502 519267562 273308998 641802046 801381049 866701454 248488414 351765132 279404079 509214332 129567906 670472133 259329695 295338291 373845414 729252889 905651646 618132637 429768354 87743649 25712435 129610418 85999969 376159174 970390324 812877568 31072197 472803679 267627337 678663161 873799881 681053310 920290017 255349691 279674701 453719332 370343811 423602917 56644257 500663280 345325196 957267644 992542866 843306778 53179119 580235314 415610066 12270149 495411177 709050751 16134588 356626990 893574177 963575668 986859116 655829852 185640339 810873174 795462666 126906010 736669013 299876512 516579357 629280932 19473527 519377123 158794069 891480137 533561198 567455833 754809388 373918254 885348993 548124608 879919353 502346010 270335344 687845381 228739328 618853451 440789269 8897090 618345203 141858608 682845228 660993685 18574906 25056923 681135169 692643883 764200314 739079801 451176474 384883986 870581478 98801661 838175850 759488646 929461614 641783618 934496510 906451623 686569980 283301610 845280966 435612987 317679541 315842632 697868581 506569626 565168137 694004629 922210493 39347091 97442190 427944004 370856839 987475631 312267970 590183504 483354511 964896809 350493102 141420573 72388005 8164500 73532413 784666576 991761796 173391406 255239093 333223065 429463435 282999238 122681897 925699937 858629062 914375696 428846662 969413466 359309327 884060001 748780266 797842813 723268019 630589852 465940514 498540126 747910396 502828444 798756710 355784800 909894883 134164188 859307244 946265831 675203531 306704674 557602167 657649613 832864642 775984408 558740065 771638504 377268924 545002940 331740641 818302189 950558304 809182279 400178522 196788338 60899814 784086488 535140026 414117065 953526050 80605035 860471532 258326592 985198966 646924384 186589490 93012688 188090130 181399734 442974775 937123017 341837209 667470283 823221535 361053988 125866363 732249457 944518789 212968778 592696133 677405055 708097154 437142252 448580608 298944777 324868725 127613026 740615782 113019838 328980176 111821658 730308718 254177265 107987504 925598638 785957859 25403790 720501664 491354191 440861048 431704170 446458302 41989884 552033639 396481290 147619557 48215243 848366216 876346387 197164828 431288200 388192635 997390103 667193850 615400612 214790250 973886295 735870845 481310016 458558607 682862734 260305021 671647175 78585004 472638260 129357255 548370711 762652282 132225977 156085108 979282633 698038563 274364150 325302003 941708224 724211735 340968277 309512528 696927049 628848028 25819968 790144929 951866347 549870572 778603150 866510873 798052679 429046745 473760889 936775900 616514889 175400792 719477942 21606488 988865769 185230265 722888164 501320385 866531989 79054943 595290872 117409868 698057768 39528070 939808517 249988231 269845898 889030331 458168935 854075608 949885716 430583981 739056351 566336862 439207234 411716891 806980411 648689699 386478784 322267510 584141647 545860349 680294066 706470565 535325311 616412242 637850137 31545438 346579909 194555156 476834801 523751810 222173287 286143956 544555116 356301970 117285657 287945317 685080140 151118584 70464990 399637104 979939865 814711559 405168721 290858944 378692401 875552793 833278402 528596431 913154847 292559162 517405914 408751865 473615490 326931772 599631888 257722370 352897853 597170914 476112309 163148767 713353669 681824404 242412512 114793361 454153609 853178973 589606821 812912475 714440781 789716959 958858080 417134716 130958551 2494778 141680457 361640235 848411075 82568241 346445214 395893919 25906272 719700403 219853814 61730570 856475618 20662316 578989399 769280832 769671905 602900574 116401139 79464697 280357850 559012035 142645108 57736827 495092227 111143290 110750003 430529455 870168359 985143202 794704045 889279793 171637017 179927782 656620810 935524879 842896187 870915373 426492383 672262732 166451977 101397364 750261051 753401810 706264872 785989866 292472755 249973879 73830225 731395824 585944808 768961352 889490175 537620729 647303486 624883764 876601738 172951443 233204325 365845296 742254615 569407501 960789460 383737304 525385511 838550897 429597235 33321667 948609088 768351270 603884660 592561437 522611525 184485136 249408294 962080749 528859967 500916743 988343376 991819961 90188658 133805612 850327920 307613949 549518204 857290481 651611547 452254677 419732996 778103289 888050459 695062334 167623741 625149566 625621834 596005797 581118858 48239635 612325398 316512777 63519883 850211405 716241144 4520734 501919262 841588757 415522628 17763169 796955304 25951598 973283370 178954104 17203277 752466064 139332999 642746146 71526005 957416642 864985940 810211551 316476161 451872407 830192633 265854 989863223 32961700 153925450 915512508 869459503 688539547 229348682 729454918 510550908 820461600 449725734 102159000 949372009 72592476 663895343 651989103 784072298 723006118 596114869 187044411 513074753 995819789 282690934 170111413 853110833 437521734 425592572 300192134 99051135 951102392 331544043 313856095 147243522 510972631 291935184 659680698 497717737 50054435 156908456 781485311 304171726 909663949 817296448 607486309 924869979 698596679 340686882 676740202 739507554 347449294 244872194 780513991 867325614 593841155 176938156 734393130 693328271 156798770 637374918 342129966 261088121 460979774 423799679 226982917 584303517 70886630 760458282 200282305 749118946 792338818 467933709 839177847 685599190 480075032 810156604 972859581 725685956 767316331 169890159 525532715 84927548 47847436 692976968 315100032 780463512 900780252 595841931 456553933 968871115 216034664 586043858 108801717 152625124 555467203 324592227 622822266 742635336 57234958 960103302 803871359 854918394 418417518 299821829 824280665 429863510 884078727 388839537 244204928 758947586 966102531 476805256 744515898 654707006 656249119 632967103 450346485 320413705 448661390 139269648 450511637 254572835 896122416 124132058 726436123 715471246 761174546 139410275 80741573 641233326 319464364 572009834 259401536 658559832 279062198 815728892 190037853 531724869 70780712 821254382 201165572 497726169 226158259 288336790 285240504 157049733 141183298 153171142 126925177 286655652 662585518 458601044 372707401 183520256 973125229 946531089 243848188 491876663 104059511 746147035 819697507 109864786 911048032 68672722 393571557 810063913 189923287 879527074 458473276 288874079 846254855 683767788 435033096 364111682 937596695 655602455 394340782 385908807 735400213 624285542 331799926 748493874 858060907 731133394 618055024 727295783 872048482 964079312 805789019 688227656 919782214 656975768 550071906 618293820 911263555 946694238 44078382 345748811 182261505 525899723 463942248 316818210 839518103 177903152 76970456 748336664 817276886 864619156 58464337 309847260 929137820 548605359 803564320 419258123 366780229 848082666 861016887 521676764 329263819 173289082 368424658 855255455 900258817 204124094 46176759 853771104 221886510 283189481 445085183 425939100 239707855 351048239 313864285 783815281 623050808 900963728 600776000 850748955 915214896 503232535 871225176 653401407 493736720 652406035 317044916 469595538 88065594 499445925 98943520 866116252 876721600 842392581 101212211 856416509 683171951 197349290 161028560 691591052 682046175 961225352 876566619 408758100 131529281 675788025 513263032 788913119 262271811 600166898 199790439 359967350 916963369 310061204 238200561 247669435 268406140 453357332 156719936 281748586 114675691 948876578 111018281 875189684 65718201 971244075 657586359 872785273 203931631 494944921 32557083 639692032 255200932 995798616 244632926 242411702 780534854 241296403 113048120 672594618 417470412 890050402 759735408 105466735 577664479 137131162 56056051 683709816 742138154 701283194 595002324 759028954 776555468 32601458 314507875 280973222 847344926 274937894 39215939 1235935 584583870 117282443 3147252 533165418 111935679 585493273 174530415 272468368 772165345 273198380 388800358 429752446 49097433 99619486 654744184 552144902 842140460 458139380 296941706 173574975 965493640 457272329 378663469 785045789 585828611 876464043 765580699 884126670 134104350 243130474 549883721 423446551 203109225 596973782 519318589 424142619 487497094 777485925 725362528 336701771 741497099 606302174 258721846 434667806 141976572 625966048 939747370 642724376 882331521 145559164 613952256 260574781 772879645 992034001 888387898 74298212 276511108 985604480 133823325 278608421 23727541 331200072 41284128 197117500 893961243 467460797 301111345 288519209 62448315 892871380 615508412 850355327 252516529 202029068 160323315 793036616 271906983 388744867 321631000 636830308 386644960 786549295 797987213 932788773 699100230 132284011 531153684 374020813 356357732 462706514 355108190 753242211 276196236 465843631 693406288 968746649 679416022 892227266 273482388 624710901 19699805 734157755 654968711 38481586 545826181 415193352 358585147 914557212 255565718 939051491 85152773 597596066 385285979 300670850 996547730 64456566 115888599 778476829 211704290 903751507 999543079 806513547 241445942 502588307 448468297 430042729 680233293 604364334 3511869 767232334 988028830 192537996 799665399 956081809 710726852 431352296 563074833 100499409 947762993 761881640 16559609 656382125 162262229 615469850 934066969 992215481 711074615 190510405 264153959 238061055 99658096 545128022 872266002 357218181 666597680 207942101 899596773 203778065 691752109 148917465 166913833 474395594 903642858 133140803 596113153 632489943 515841919 108283332 632382038 215295405 136242997 663327843 999810388 88468241 151684253 526477245 77949488 645669812 206245334 348482076 423669573 490733851 994555772 857997203 975266647 860228669 874588859 139742788 762766909 236667389 716821513 536537951 695513713 292267491 151326681 576083255 510818261 950869219 17210387 642872312 483543477 63254930 125881672 273743323 407075346 731375003 574400135 805092103 462836592 880879656 874498457 479208702 298426662 544978215 638395057 205549125 169661846 590616792 633994456 735233321 358919385 237054772 183752230 84930097 342289789 399348327 44892538 175235826 593698159 956797453 166867781 186865894 505491857 312983645 103562255 89065453 619092694 640781778 764703386 908789671 221010766 826572760 893979776 422372400 384664487 714504324 307156605 533540322 758559623 169951336 983609748 510242361 466603973 366846694 269984937 395563882 520755411 13422861 604611086 933815117 842270343 891245541 62011465 674197099 315090177 677058435 786143240 930070351 802251536 16790751 48600467 286310215 620561584 774130112 639001187 428748674 437937791 773316128 859583504 187955352 611709263 696495896 761889793 375510182 175503174 54583741 749179079 648352665 310678839 523493819 144383053 870244287 862365393 903261808 869137656 11347725 176735967 93868663 760754246 824093593 790630316 210883074 474615781 761733698 38481311 82853326 893462890 448165663 928225635 504568399 732571110 998915306 642125817 919841953 283161256 403838212 730725281 951940986 244442316 358486183 858091675 285645256 148681742 660614354 138748738 173350967 792532518 969263839 579715766 174392584 788819974 751283289 362773059 972889403 133603764 502311050 785514584 707191710 133606454 801192337 779009053 997603587 736558517 435165210 8200498 236867270 196777289 349930498 321464567 427869804 649367149 234514174 691650252 171384363 198573328 331656220 454537138 628349572 84127635 169785620 816203045 460014912 364652813 970845956 43534713 386807922 76299812 729260439 772573786 302165838 291227858 327375217 893311218 483989419 766473996 366362315 969762571 967163783 818512351 110129105 360678765 627931921 422676110 25064663 169592170 856050801 534247304 367080368 297508540 951948331 254787854 820602068 230468216 970887676 423501872 883122375 852726787 556144359 423110542 450393515 318093036 694732071 765582780 637134142 544090489 940497174 367624660 822725599 625309183 433050117 977433004 420873618 498133989 789417782 458078512 755359386 52898688 140507659 463192019 109541969 298858983 794758198 883680039 221703736 85923114 231647698 578944966 955294211 587738309 149554515 705146163 450878838 547965140 520583558 347885631 967747710 966840457 323243386 65451525 461362768 950615426 768441861 225262667 248696759 265456345 613862977 786249686 145688623 364784540 290184505 785004548 448499864 624363831 741766826 329728981 807988190 89395871 560379984 584919087 215762337 460053966 824947788 879313303 779493967 167120619 760817432 41581014 987900420 769504117 250033456 978163061 592321155 844241359 697992263 513826408 642004523 880940746 464418933 150811341 171849681 141331297 153812782 323719734 539015794 590085236 146371161 123461178 401154145 21952439 304997289 161752522 79750381 88255300 435766008 197048608 216977166 501876711 727933809 725157011 963786795 543618538 594397504 483089844 170406873 365370296 620923123 679784009 562585594 265986478 5512812 702510554 203099492 940669297 721287148 376446527 447849501 211633109 455055913 782594872 717158719 780083391 143174700 314499098 458651625 97155919 12893368 259242845 925200738 223505620 637962716 523130244 840261869 138086468 262795060 389682579 346189088 52235636 587822230 134469695 38824380 897939834 867617648 310345739 532416329 62247447 532169392 62256907 901092574 456609125 547505699 570762688 484235394 248428461 585834398 589313916 667578534 921555319 612569531 665086715 401281374 442039101 779486259 320546690 396734542 715723418 452316038 945144391 898271380 474567887 204378577 129810012 301398961 469919386 96609522 799145402 950185938 426324948 326338233 377579486 747927231 641508565 68069726 896673226 882193968 287369678 524019946 785342368 395305050 135624716 156449076 21325452 42380312 898369154 750731635 975638231 502465252 773898821 486628345 504303316 68216703 681105093 668609832 910427605 996938335 606312204 286394136 847559747 492993423 195667400 300235712 457836822 502101470 36041555 49539299 171311394 66376319 34865823 237983357 218516355 467865011 389127915 846372855 356495909 970940218 986785086 569466466 520200980 286009692 740259134 965429468 784392233 403210117 295293066 133287703 427011271 956415507 61786339 806195349 286043118 934725501 314698809 388816340 874380579 282623259 826679532 886393686 677461813 974813187 369171461 801815151 862552237 783956472 498392142 402195007 487323624 86483900 382548523 390866902 23351701 308000730 273453865 402913020 615860985 578990256 383456216 499344672 625129123 340492746 674637589 373329950 265814452 705296115 183043671 199535021 125546142 294102845 861756384 38264426 456892155 222090977 13750392 834746454 874990736 965035494 788027902 316681836 184912229 119659242 997095630 455043674 251557840 413284836 253228148 24755529 273308405 292189612 112441682 961537217 878606155 767006529 54722180 365559163 489110820 457365568 254069660 246161782 24323502 635500783 123272436 372182932 905495909 652470317 687589178 921284038 152318903 323147697 765461477 20524508 777130932 732841938 341443976 757680394 93389320 75028782 616771359 228891254 865472584 708424995 68917921 348839079 353207979 480999044 523745288 412232547 173606460 353494814 312555909 953205176 623621968 237170619 629280434 517759888 734904613 76440746 609879348 511195248 391951860 335061121 601298838 521301285 693011248 186964496 137335832 999482484 210892275 837036056 783626048 768341531 935958792 965655647 712070194 949114953 349010250 231332215 252968401 135075437 264316548 684504052 635247870 933823475 111282508 938254183 644885410 286118818 519080231 673264824 622233581 941024930 577451389 951904404 936821382 853381687 111120101 396973593 678393616 917408364 460980123 482750486 612866695 449860396 938245713 90018227 74692334 262717598 609644902 260634413 22260428 566939089 550469826 771356351 730627986 880768083 663099479 373368885 618277668 114910648 867502147 626983214 521058213 929132625 317608533 639297519 200646135 657132985 214661097 497524343 857015991 759302670 222578487 227711912 405671181 580548286 448226282 821389555 865540366 155500351 426836549 765074110 683426596 106785808 471153361 502365350 231001526 773443309 631160356 982567668 201740706 204633988 754353120 903161549 324485214 507182649 804190008 545524708 591978856 32039420 301199667 530106493 752988776 220262240 800068730 835147997 664694202 590287726 454360875 992259235 39365901 678279401 446581153 702694437 254622693 874779639 158116655 365908293 595928272 926309154 861088255 733885874 182331511 905800719 963928906 546695225 352701719 780969244 389623798 593440292 278206715 906670580 582773448 256579150 412231420 843573972 654594444 188995337 168571067 48379713 94923104 953624764 107058288 728556028 131070306 346572428 150074240 794318987 259375467 70017622 714515384 829062331 450159135 803367323 306681113 446010313 408965483 837100178 671253100 45004981 81889826 235879480 201928283 15900937 489378343 254580644 194686049 208456344 946064560 694142053 823857026 328181845 973350949 850491906 758196610 439279679 223148890 401203558 487994484 22379368 869651064 717236265 620095809 959802160 151597963 884148016 166534160 530849769 629032897 37476017 486221355 762421697 86830481 489479658 794465430 835674527 272882703 175030030 86578409 715561360 417506865 978091152 920775092 876669659 314455121 967574492 256313230 103648285 192717130 624321381 642798589 849433992 898379531 941217930 494524973 56296385 774905137 101897317 778167699 357761588 194699842 781464795 625478845 966371080 294137443 988467450 196532522 692995329 633135345 469523864 198319826 598676679 323927323 339662401 759532895 201050178 620261389 984319639 884460219 744512079 138711243 161599815 951404678 498015942 593887842 87942098 884221402 915441784 340895014 326193326 476888019 656591261 780240946 338940775 635187289 571887286 16666385 58266635 936066671 546293350 527251552 645306965 543940003 614726603 117529304 312098678 794470774 850419432 556561017 369473423 403737413 846515366 93233517 668074919 677503035 268508786 998355623 691353640 450649044 92634796 701835990 811101395 977005060 318701487 854491350 625999287 832155763 976265778 275361875 381696217 150132696 517879999 647026293 48388258 615746783 488196891 322917651 583880167 664820555 282288456 158472587 497148241 454714365 777789280 379267796 970138623 126817576 817463519 323905421 338534276 120555690 189178554 696854584 569552367 136270077 898702965 500120388 469297612 609858658 937994276 751128588 619692507 185139153 830101622 372968318 224467811 417331844 198885703 715071756 410979673 977389923 756993078 2135214 133613038 401766311 318296629 138355731 216658941 685151108 910510794 677546464 576429335 578369014 920669407 526425474 581891037 53462056 245228787 930124450 733153144 78423598 113210959 79038177 763246049 659749646 816546129 5211626 474453449 58138616 687945238 446525861 182664828 984746580 526654755 981110670 439377106 62135689 735606765 447865874 879313071 215390856 189219236 126248549 107744963 726768947 170052553 886225737 581692184 726248406 907218151 127951271 576025211 49565724 56266048 523663612 208517738 250785613 556570164 524492349 896126304 266633198 449829658 359488965 681434475 702261091 396349391 921789260 119033845 834408125 695755383 963147832 775186640 589766592 441768457 666902401 367610940 858309015 322226320 431368143 895777653 752905482 848650372 404080782 495830089 50271470 413109055 849078322 898886855 263197569 786179443 667536514 103697437 861740418 14498142 791498433 522722425 561798307 237453894 352824192 429399491 184823588 894104232 263395234 849956546 137159458 583652500 910863800 199510166 683950272 547918419 381844028 239471572 295705441 536766942 896867699 539939437 414745869 676580890 898384953 199359055 567544242 518425938 651491726 665629053 225012034 886396742 75641225 18324533 546517262 80996933 239560055 466264205 906425401 768961301 462245 369194979 52905645 440172531 227490557 121720999 787379350 296176092 570527299 305316110 181155879 678127909 842439876 109415564 49861175 762922426 545421439 9560728 438103505 55161465 185995864 73870826 390225560 967320006 912729404 512817190 909474322 345317666 160346083 458422000 254668861 669509599 905216139 380999761 164309250 411783745 841858586 837680258 305669401 483256365 556768995 991949633 894184967 194088667 798270809 317942916 980461679 444601924 148360652 847647059 354177281 97772559 450784055 846187393 109747679 174303857 63812842 755155547 103054885 194185372 46749923 105312893 579961036 897464861 62063048 614898547 438667789 689113664 728389045 352045301 72740518 83602884 560872411 872010570 359593718 237623371 504502786 819816482 832114728 548495212 521949498 761684137 968472381 368454009 650927059 726448683 220311229 942242417 653493380 87129091 960123674 195273751 327046040 302685968 227498731 723023278 245098191 259748463 498683380 632754338 629676129 971995948 155050559 182865333 610325035 767099042 691645703 949867200 136547236 717722161 279507331 495351594 395923066 86250525 633339640 647142733 833979435 312244730 593616369 701124629 37164154 558214708 845705383 101607716 704638417 749113 749425160 874866639 362437522 766577786 370526326 290405340 559968248 802631479 10990127 425419661 693414350 2415505 804013759 896302852 423460561 558789554 180587657 85487374 723888799 67902047 626659620 365832246 402939318 383191473 714819552 649585853 271254849 111368359 466338662 226395330 448905512 900110758 701067835 800446707 765851556 249199007 587288418 28865660 10840036 356800550 708687087 365325486 722439103 891740461 719960781 510321439 410951219 922336379 266690557 65238395 597059927 878503074 364087234 52090497 23451403 285280028 560417674 118862336 58966410 370292269 600674431 539061820 254480281 723483135 26993500 818964548 838003428 81812670 279955269 101334200 986390445 837513874 527802891 36000260 922746447 725950673 593448000 8750739 580492694 829119044 767517557 374160891 547231566 598163766 234176485 915552243 963107979 42573984 951359210 293166585 823130427 674142784 522538157 149213732 230324116 578054374 975847847 513824682 567557438 937408770 616647086 407009418 48143584 621803875 258434454 63407345 823763432 235932967 631453543 945173913 677355553 609597157 633223068 724757159 52449161 405997147 290315075 171271481 825442830 222727357 196785810 476095025 235379559 859945302 249658297 203483927 84391789 621967808 495347240 744847060 864798749 551349182 522770554 880686746 391783588 527915557 242433768 913079549 545046143 463982171 548288062 833645265 202022230 219663184 705407777 298362881 849776640 735804879 846422888 432066316 557578870 968724753 563194369 116624623 38619772 566197579 109077559 364686009 412306839 542179594 93591050 632144494 77151660 309673527 679401006 173384504 267952337 87328983 835611168 548867323 675864427 232717439 175542508 980769983 164262268 733568435 886981342 108619971 618740153 930235953 298505168 834403156 649365469 803234249 376175052 164263135 370023822 263170467 874506204 482963762 159482378 50507301 809761977 509189883 637486842 345388740 122848213 699669896 93019913 7443792 653838236 761428104 86759247 785286745 155874870 847197109 541887561 187612100 311637107 240640070 800646917 988814219 260161739 889972952 25118436 953815423 935556215 2998597 645615608 962090279 713647785 321354850 335892283 208717444 216685688 887429849 828342865 323474347 197815278 966605308 124510581 440659787 419923432 277111173 231013836 228882114 609724377 256857581 615201319 745051675 36251115 211979326 413758431 331325105 875104170 478247937 820217555 809784333 475203284 315648650 319204845 315387428 371386180 198335571 70597657 252418351 959277283 108754448 941802482 488184697 447505192 526749702 633016011 774499605 254132430 645250952 886934608 973878966 285021893 930439370 526795314 692477239 376424559 537163159 331428031 264946224 508861421 447984366 566098839 674323713 116224178 616594771 651835685 918061942 614146327 925757361 467067944 746466142 726820593 378633038 701828638 903181856 288923694 819439970 992949682 906528160 850544322 796983373 888687040 716289570 696821257 34467555 376617355 852199116 428836038 605573674 338156453 200916819 753709731 379272265 290933373 332421242 553308169 293639757 357650333 209925507 83358733 214144059 652757633 952850536 928132764 228302961 85202495 963275493 114229051 456813498 929931778 237217280 55344750 145736811 28196570 303721793 421519063 550984918 154003471 416999940 52770359 104342041 489734334 135410425 16362938 97882391 73412344 842480112 648357763 651385259 166102978 874519982 594642628 583351925 723095518 352285749 272092181 59193677 249381364 652013891 375435056 929238787 60346676 695348624 610625972 45922595 843857050 173556550 768688352 509533392 971877350 303866590 957754554 529409207 310252809 669338841 328714178 284957133 366985109 367293077 972681497 259516730 918474871 763315216 822675744 454812818 770591344 878244047 777002611 886186919 764072972 870974367 220441485 767734234 551152302 668951564 16230784 377104878 74836362 862989415 421920880 508326548 21943028 35035736 30611298 293432142 255110154 954693382 165973092 637221277 874633154 720200438 49185731 307899777 522834005 678897322 645589377 542649041 815865340 841383863 917693600 8345570 90053678 239923969 944246094 221370531 369607923 127467715 679124807 420970297 283421113 757293161 81364383 277970973 564920116 817053374 642111833 345458168 44332 821558761 522783156 103580867 628727857 427447590 235465430 732078874 552765953 334850169 663863906 48841333 346406334 18468448 114001763 157403246 602164842 463864946 486326768 602194655 98035649 303052634 163739559 400594007 291429059 197178147 994896636 138959018 916736490 625447103 322745133 812728327 614613945 865155872 580625557 492463395 485712283 267343769 390487162 388671980 777089290 681352479 279864628 744989094 814774355 842055399 87701705 959693726 366007794 50882413 444353581 968013385 866870120 518951536 136849264 418308027 115059783 764298981 553188054 580890924 633231006 393392939 525138314 320101500 530872370 288315634 402500095 376072747 838671874 30443583 88081974 252586093 735572424 908960569 897297137 237393947 117704012 895238273 336028614 787129084 822766774 885505720 641695519 498683614 397309559 113842048 74095749 250768851 543930186 911172246 714766460 268898669 389289210 936780587 155524784 1887335 116055324 60038551 915990784 103198372 652006198 749745526 443097240 9854011 59925218 634847213 678217218 937836414 708312829 225423437 140174110 863272085 12823757 63619633 238562375 798993733 414766648 368519009 48735506 991636226 333628858 26618402 652701021 107503361 888465534 70734205 623490147 171745749 649761747 715854969 765131455 996127138 311285787 443317988 659722813 529527633 757950957 36231222 521370893 187911841 936593627 790938285 384642819 436884907 153180422 287218673 936236314 349313767 136610991 426179411 917349921 585751985 881435624 973740071 478282942 536766919 77912882 830510307 695813825 757881565 953905982 980618357 957502304 394618870 344913556 4162290 539789104 727905846 609607608 943546522 237452211 499502698 448501336 799465568 149701809 563906892 462247619 683331411 643107916 928775732 847120518 104680427 316402052 727336629 121296497 604352066 714870099 333957607 754189122 346657847 391803976 472834495 521562863 845935294 65464256 436282527 104827484 353419358 660350553 195510477 621392661 999338395 248250731 609623275 782823469 273302023 966654966 413051757 669806059 361208695 12698475 57645440 266141089 229404366 357871276 817960616 242028875 812888715 919709554 589915379 193472716 753039539 38368440 325149839 841736435 832749094 537336899 425054951 871150547 621379826 831422162 945868753 948312225 902357070 810193273 521153579 804966926 395641156 713297818 857087203 783048155 797977277 110922381 219744070 576102732 723910001 824974189 118439408 959144218 585828074 388807466 849007701 908507935 900632258 975712599 629286583 716718832 203513577 936957605 624058143 967992336 873031562 123485718 919510031 665507893 158850493 902384512 444494573 217573597 46638351 202364542 733024923 487500747 169775890 848649774 250365360 461680671 844288898 217029357 81358916 947863054 797682789 904257061 271327681 501977207 200470252 203552085 321613563 660531684 667839750 81070844 684522194 881813200 111222973 417439185 653082494 709877817 625329811 879263994 333668666 368629373 323896244 851010264 967147600 127286941 328253524 401518935 573246503 834612307 28246799 928636021 271093634 120637218 237253062 321912664 38483388 414583339 561461885 138242003 969169851 773514029 947194802 978369869 63303692 24017028 886155004 813014521 829729329 969550264 962010400 585999492 854165390 412285808 520344974 264057492 975812134 577989234 261366125 482008228 993610562 693737329 795393817 981937650 997221540 203361774 914011050 38500200 991908037 932702703 742908771 767233361 90256370 136510165 212340794 776146962 478059077 208548299 108404188 193129375 119357755 589469079 478820286 641042771 240347413 174254341 565637206 765970987 863016959 853181259 629385658 229974772 784546889 918558569 744120056 520043387 929278077 655811287 755372257 214374719 522414077 931653520 809010443 363383185 795299293 601732050 728500209 137691892 735080397 803283299 549582870 913393845 497184642 533761825 970479281 48634188 532424635 664742916 981601881 600679460 585893045 543703258 632606576 368646513 716074437 216936616 545952005 493819088 576571178 8979699 410069243 447975549 705943867 363793768 929802780 82189479 289722087 940077912 788622930 36978675 851505883 474464869 531901453 562308584 988368000 13029517 335425823 60545622 600065554 275672227 465201511 925954047 741127943 276618279 903016331 727591946 608304302 324438331 595893243 372722871 438199341 915455677 299731584 898293356 651959568 400788206 581398535 439602538 593801638 380316658 163142724 299058379 72978790 209092845 143393108 612938025 254437290 341271610 749142201 533933877 29479316 384074878 885448889 349462056 825714366 327698493 748680683 1536430 765628658 333656468 847343000 951484815 711156218 894000698 64438060 745734544 816174255 890209962 948535234 635200609 192308305 102543449 920915648 538278502 949708597 626034864 550281497 236521040 404775011 400733856 583275286 232936896 633271921 79067951 29099829 311432102 436746600 560704024 62406570 890169615 613296554 944007730 886030482 663275205 617827976 500036281 162866511 334682413 987796067 416177484 654882845 36124142 453725713 50602560 544667826 610702847 659287299 978055474 970121755 220884925 549540391 325925915 691792236 485996378 825781916 146019773 618777754 254127561 827432010 520831421 223540731 625310885 970322083 695059786 460912179 313418803 818662549 909399257 293852112 618478862 121405488 848407223 990017940 903066704 424658498 879217668 734578179 474724059 212468957 673805569 456736132 491214957 923100760 34599031 579182509 380508311 435564417 346545266 295073093 603099926 769413250 237207033 484068630 559264881 602282738 660617829 217969775 755580169 674618275 688149963 215809738 365569085 911403232 773213326 621939700 595201915 438335101 940526 911847110 92728324 774714225 829320816 950190068 495913983 377444869 841276637 844724437 973216146 986185571 134416966 973258241 755295062 143070747 683685188 713595108 119063886 424427590 370018698 349036633 273625916 957492272 577632895 789715514 270452433 325296426 594046715 419672567 450653067 743345662 912791520 132555745 580484198 318782916 986996424 502116191 497363763 373654074 753003700 626552191 898819101 612807891 391268054 915262820 100805812 778724192 84434906 191193213 11619160 217598049 191081702 949642149 525956050 281625978 170014325 494412965 275846741 219233519 893119275 367947882 886731020 295099085 49602830 190867581 776349995 69362556 360517949 52433833 325545165 559882411 523448515 801347698 65524353 20042379 457156383 965375871 171855267 326594194 904238667 113479948 805345298 460187606 597499746 544892205 860478207 210135292 228478593 175783100 952092459 976440675 658510855 363518403 696205383 493228707 859927952 553781569 801110699 67245250 751316453 130389167 156139086 578163694 485907356 473157878 109822632 126046900 228273588 917203910 545208709 614815345 64582593 673426489 757209825 734816537 549537670 887808248 580176071 198124880 617131500 439552089 220829037 49861544 493637803 442759549 2276208 653879474 410995383 675748136 22052175 246083098 496668048 295441380 563083980 463876848 662148629 72323167 763645956 699948053 970037778 779952326 344360912 808168368 730961865 513548864 905717592 503420370 702465509 724770514 776843230 876700018 228020605 100466406 397660338 660740527 158207488 402631814 101563065 13450665 669341916 686219303 842980630 640582381 730522371 665293045 149907613 410264434 75788128 933377598 845779048 952133992 378774282 763083595 654545781 744843699 71363202 457163132 421702336 332779171 286627420 654928706 496776347 378419288 579051835 606630819 912492851 757478024 40300003 803784210 700976180 818215690 402040603 276837845 580584330 566601166 930470634 712958074 833137524 784231386 573068583 585515388 372337865 582226577 934334800 239437836 692846785 745751352 45662484 660914211 987670438 570980016 831835403 457957435 166947341 911112191 15412739 862041992 529236914 428405782 599702565 959876973 742983511 749956317 299320055 892019175 76238775 731582124 643333865 333811292 62510946 551690029 435263864 999262495 507992475 161841764 294720594 768789865 784725547 953840085 189782546 767537061 460759574 495654566 630405934 904169862 173660157 891678272 182679744 625956972 936094644 537310337 631673079 43726798 27599530 360383198 759560827 399367626 205011873 934658738 366340534 978195810 124076621 606445087 205678715 746688937 959343558 250346723 854430327 341752402 784709833 748359951 356030106 421089573 483860288 651173669 733429059 287841440 889881049 113801555 161994874 547637395 293288374 851797840 122206291 447755727 476870640 536507849 641696207 814695114 63648351 342893455 584180404 464310368 763187807 95678654 715612253 955279668 752067610 224227045 456783903 149805336 593020570 838282690 848801177 589161916 692342182 718439112 863023649 854682190 563886775 111564322 148303828 56504379 353683409 111011229 893881843 48243391 807855620 391970088 886389945 104982865 492264785 81134019 668017479 450037220 691806746 939462035 559482330 826675787 478897264 402592242 752558099 761978394 422833353 80960373 733879501 674732835 41768874 736048512 964743767 100496509 939231591 11856727 841774667 824099628 683157305 453353184 691946366 203413353 545225706 818252935 555833622 542773869 662962921 578771355 983658945 826967176 179016151 416033692 453227396 205219746 562592788 233737540 894169063 9289309 900690764 573333560 749267567 550124562 983127021 750396588 208534720 884111596 446531180 558057424 187498508 15934037 832586010 869339000 328249467 338074806 711165683 609030768 703605623 808083929 617618200 942811078 828467844 701986261 575425818 447918615 158225045 853373429 623436783 316405806 555259767 801779858 742219010 407966693 365580600 388000524 749334321 601730087 882862222 787763955 216076442 547555344 95431466 581273426 80839002 755524184 335357198 196909977 462022666 279034389 52686766 756028559 312217168 344948463 115058465 167326032 451514823 505317699 787421418 445186185 974698167 564089125 583218732 426142811 572963298 913530338 434896514 807104090 445949044 651058495 105728385 6233269 987804346 616361144 74817438 173176943 740620622 624871388 439589511 571163235 774660544 24359887 851467745 541840060 625950244 466506425 681692412 832858366 182180303 603673675 416498493 798023156 227165658 432653397 533651066 479793157 784695384 174330464 873313214 56258815 475517006 695934620 456951825 14126408 443455722 599371562 325940564 6542968 564070419 209867406 349954564 666910226 88492395 104720876 208290001 9964122 759662941 109411896 910336983 635526834 935793000 110629190 803905638 230737137 509160782 364487536 157376699 752470556 399210073 121121436 886808031 185280307 858184019 203850025 707125308 275428190 551849102 835799732 516760163 721046673 785698640 326035518 75049979 592518693 957769704 257273995 116778244 697787224 382869345 953160880 701363721 152189266 408242777 956414102 212705018 814755729 497940147 263910132 285684092 394948359 331079495 56440267 106929480 556229356 720019808 326310641 610481401 597926689 236492698 817390984 117368977 234365501 722943339 223644651 111740627 480006333 199406062 987327219 63027456 371869580 768425569 176931305 462029477 9301268 939989751 218957131 715937525 269461644 268332313 881196609 880642840 38445154 933420333 451710646 650685663 336472020 717810784 90191116 413796788 606149157 413123088 610536151 937073225 700720138 944865421 402416489 16477156 601075784 605239770 21592790 262867936 526311977 924137686 353388274 73686163 821981755 598620635 380224434 244865595 598957907 160876385 64593172 963262258 896257327 921937724 298949299 458443838 486803727 47944614 883367299 768788 148468214 286930337 114181852 249207473 782772342 12012030 511857779 939896499 247541021 375738634 831450379 207869864 897050295 446605689 747325397 958463777 309382827 770572604 852906057 827877075 742128386 604191315 645780535 792257575 219530735 961080581 572557592 532567171 121726499 776113013 209963539 608334540 378416930 964438027 909129512 804321556 534080874 344990053 320029283 701936045 193334088 494676743 590950002 898777407 744514957 574042830 488214163 581136288 173831028 604274486 361615681 345527777 100295235 751438037 797138067 307584342 939123435 961834774 440221739 654236306 408159905 279470013 875762924 554008176 820176794 527861590 142774646 230930292 876147777 613311303 72035472 345270593 556614177 503574690 59540632 764286203 624174171 272647910 581481375 597793119 323074267 931995287 660627748 858349850 894959562 973928599 395839314 382616351 398443940 482043247 463401997 308694189 607021178 214344880 313704174 450079132 473935228 360786215 916694882 687187177 425285392 899497870 795179396 820778682 439742839 641937406 390058005 766267843 742032066 945872175 774825263 511957840 601655701 554520585 526579577 534449978 978720706 280580949 403387348 870098370 954810326 478864120 773761060 422209518 508105494 662690831 485148926 520613270 434591617 497908490 123169333 819736029 236530462 242563830 971911043 884585989 770777852 391966809 735855329 326977798 847348029 44406926 944185751 400300359 825334526 993737428 254527831 334700312 966853534 321591006 994043583 623042519 825801195 996327605 771176203 329767613 958024817 468075368 28634805 98693221 605250504 229700835 517333875 995994971 107034549 652743823 627045707 893111431 102831150 21287315 934122662 300309213 43610491 248077825 151247405 875951641 496654417 625624799 133106094 101938039 457440415 494953302 859886151 630378410 606519413 255231640 17785578 982492589 319380787 629882613 463516599 895504374 710325771 135307509 247297331 78801767 385175495 637916658 314996929 982409192 585447580 890605696 660688313 327778419 949486889 598948405 865591562 635009527 246823652 477705774 407905280 683367583 73543604 571178486 470872476 470985732 68377229 165299628 956594118 9648580 117400005 849799105 474469242 501869673 40107389 240653722 2790007 45174949 58063482 448897426 151565309 85610777 876103617 378690100 411137111 968815266 131505095 390097794 294665698 88864831 980432713 592252470 66685789 873384706 800281289 254672336 293306666 950984587 96992412 886287749 34519469 619725812 789885992 511754982 219468728 983470375 815630598 490555810 52305909 514281403 2612782 179798144 737314968 72375849 766686667 401154635 57107140 810633928 868138266 306813717 57909354 457815165 565079923 417100888 386222542 639750443 763970373 340908172 768390146 984397624 394442104 555072291 161425827 944153920 834593611 163920985 776707261 91680706 256374634 9647196 621787875 354464206 797363830 212422297 889288043 868033663 238775698 917732027 816310824 528136230 630718255 399244262 747795230 449183350 629659746 549818116 585020504 872180003 984712050 575736962 908136825 322493737 932208671 640604565 283022455 690032424 462242083 539814730 927368966 809080323 332334357 413833567 62301142 207780562 270047058 983801472 939636812 773742863 106873626 719707746 979587796 106512235 313124983 379970256 243451588 883302011 179064832 672549557 579879428 694177191 897112082 821855914 462873005 290553333 144832652 712765424 320112352 862760957 955413206 514090551 172022814 599000552 337995664 955851616 517725886 473823141 533836533 292966056 860059575 221748486 406098123 824685547 850567378 394578574 157744063 71900050 517233777 42175098 824095342 936071511 247729844 377165801 910482282 155263016 376261636 354990631 440374842 226887346 130551680 777361802 908972664 943985236 830514225 570405298 876478329 937552812 524047197 932197563 948185644 659671361 726608901 654618817 705749613 343461280 402732756 414803909 275501552 919522263 678059205 647993314 714093172 332436591 555560327 20865603 439560360 593830359 869882654 950046449 893860210 600119421 135205257 948694718 881323921 649824339 378407718 590202617 936693986 202403567 471469343 65897271 15192075 162340106 183040527 434232410 15433314 604597305 840829029 259869832 463901784 833414295 234928348 17423174 113940264 506929238 907583564 46434309 262016342 688400447 243163853 252009851 356272905 821682653 980846903 687465674 311799890 323292583 47853373 118962258 613230330 774014774 561750100 545206330 380323124 13089140 454168470 79500021 188996036 395392731 569239300 621902595 67110128 707710713 299898776 812318038 217514520 306370083 745676316 765039608 381965065 619862273 863934342 878971213 34827671 754952928 58603288 151896770 425043167 992806210 433539905 880973595 770284181 103730461 853993155 336510813 617294808 239660379 366600968 199516797 323538642 497375271 942468436 758983067 711664454 458978654 241023997 425263522 28324871 239703005 724716691 986273005 652748456 206597908 224482005 818468414 851827909 814228138 66017808 138087663 699443034 688607860 756441782 104094458 548020722 9208139 953970334 775299834 371131651 578944797 478538621 89630455 778710374 784021348 761536320 668330863 19090874 130565174 244552682 759537944 938416928 263638975 261138052 704308773 201627905 263398395 303395005 169825361 215191835 476042040 603895059 696986453 496955291 510731944 399711214 673193535 730620347 341507783 481097585 436045836 453613272 346055408 817773300 837656257 788831619 513327969 395989089 424569972 628179369 926022803 437786618 55478176 42611207 225902081 519671287 987527700 779394089 307108284 640481011 112937463 395001875 17132664 458821357 278738337 951518574 416762928 2352818 816192633 517818194 883929912 829508488 77682457 324655479 196774241 457192631 661299848 191858763 909986344 779333346 301453256 533143645 829607858 287725723 780069727 521898802 214081683 923630239 62394520 311365736 184544604 188701933 675713827 765499526 575662197 667011696 406233480 271394558 580265969 634403114 50241178 592407983 673816755 447700511 73388207 654738311 688486497 330643388 720200230 235725598 42099956 104881398 101133818 899946911 941613182 177215833 859538517 298532828 978779876 821643716 546789875 272423638 431413438 345533783 464809281 363069866 764360263 502588133 817062519 661393854 966951224 273505959 812192772 607028386 504314033 816286538 578658875 449964977 29614720 688851904 883667650 947504758 63658730 150753880 253341544 983962692 682699038 552144187 531808774 470075419 898159747 148415126 237469426 686898225 143147928 790351300 485836156 210516065 534947460 682617725 555357867 429259401 369747244 199744893 299526805 612137605 783277489 785477642 324844213 26499401 786350627 309427594 609702139 337435399 959916870 553991595 342621804 431257790 264758478 729454386 444049744 372051291 504514859 769920921 306313308 77887582 648328471 759191154 958024115 537347324 256323535 19740861 423401834 438048942 884689091 41462290 872095855 313609225 533428169 168703270 327242689 818037450 669123846 245259444 746091798 999078580 799485490 349677164 441205694 316202598 953754043 152649369 293128193 264537452 545058998 751806288 316252358 566769895 372674053 473562396 956229448 181783195 662265627 515723540 565221725 549788236 667843799 790163823 124398889 227888409 393732556 353124334 95076918 102744330 581258963 703497055 432947470 160961049 307676009 435005069 813297985 138456953 852953413 700222801 625408369 263104179 900081209 321539372 212599655 770241218 431509673 710851384 217282609 781273643 263330101 995497168 752759359 312698184 809274370 250264231 410586687 966903162 764543639 115709444 533642583 407614679 233339010 525202586 269974766 180866900 583315051 540107954 470714219 578493004 8070718 865190138 371186282 41271679 385577518 812887184 252899045 62183214 913280081 104783603 513875937 73245742 412052421 579567770 385152287 926303537 450852897 757341186 372034884 672583338 102828644 50839067 923024917 781775579 45411098 354677349 443262683 845445378 230871793 617576739 717695847 632139951 339185338 697838503 697078599 621143898 710661821 534194359 713597667 156840742 478947952 971853285 735804061 959286165 648752069 149459209 467801397 9521754 699216169 104744099 267199006 947622973 776339193 24815456 476037909 378473239 952804085 871812732 459253126 641084966 603663901 480726971 487071963 262066087 532727861 229024716 757369893 697610326 472468393 466605596 830811412 547041167 951882055 92291484 534609182 230132495 460326656 231815244 915714926 868710910 37963412 581194884 730624487 183899064 384444507 439718373 648845361 131192033 112470167 9210638 224253090 218360801 146792837 430681288 280997110 646707121 450249703 50071733 767534595 517185401 502681641 19780381 616095084 962307202 161914590 558215942 55485619 789095655 229335179 390646657 303678650 567608593 196630811 523462904 626717916 413529337 456908253 831784196 141174354 654737768 420337332 755707970 193141190 425898587 35308348 576517281 759908878 660427074 542743353 451589091 572570557 835679886 67125343 183924832 785914062 830049899 154429618 905230889 476466323 946778358 910792583 723535926 998800657 724508967 830531584 911041895 530545056 201471950 598577324 889041191 710290580 154255702 409215570 396546145 721343120 693372102 185697225 883152007 743049721 520450990 60988158 347776731 948631283 708970228 460917991 609155053 330411871 395029024 665029757 418093780 714295834 862610213 968563466 477821913 981114975 472434644 442642178 951791425 862803668 370258008 854004475 634137044 825608843 664925305 144667897 895140903 277534645 55670261 688328444 455148237 894529959 710760760 155724268 481689019 569800662 244342044 826281889 988225512 72116402 746414452 320240372 440387972 973217154 486576472 783906944 649546266 979833657 291963223 438089012 708887274 607889328 982781839 687273466 688326016 658839625 813559224 427883609 496544240 506748533 22320328 184004546 495129449 583738718 886957494 501337712 843839539 833555403 477019864 993559913 710138328 235947515 597653790 672799857 573784262 129462433 739855676 115264902 579352325 250632621 747109673 373480949 296237352 232755771 731380744 897076337 534073211 453218170 278403880 441367209 117574777 722972314 342579347 629577074 193039518 306452528 871226619 636639770 334842324 292302252 613113827 554390026 683666652 298566529 242821915 569047696 788259591 992849335 122423855 174350714 352926478 425254234 233540179 250921491 514820577 305336722 630292034 628390268 714490697 304797051 522978481 473983293 806397302 736595161 997037851 631987643 963116314 561580242 203863030 643232200 969129056 365313169 266510651 891446528 712907154 742441670 727785764 394266213 767339466 633426541 785278652 971098517 457749028 69247876 33994411 48225283 545064649 880860119 395235094 223841544 897797100 291028648 847454257 788187427 387334342 305851491 792065837 47497305 712042244 646891566 951681940 128929052 957334286 848065081 343479718 219162694 959850790 243491918 781882571 333945897 569604815 408786431 314309820 634027446 985784503 808976060 700534128 396409921 391520645 247938420 303568341 765403528 557907576 173343256 151994206 307328674 295781240 799001944 894285162 864932485 362679587 932433627 290307816 13577995 905762149 462480358 251633446 634885870 862936268 149641269 310330104 504240398 358689275 281046570 708525272 709906423 150834048 740524699 901505633 161153555 788062701 302361556 837274352 81604137 653330417 23953631 709652844 160713814 108189412 278010547 905853796 186957686 375207989 555325768 190240532 633359942 505791343 346043471 535085320 185328720 16707638 576288256 210234731 120419730 479231581 639203636 57092636 762812204 394731020 718952972 621401384 514939626 113855023 442406838 698485765 413408857 654377285 418662415 91607550 802634772 851150960 281864302 465997476 463716232 208066574 670373920 975404880 644549797 55267639 239371570 441071512 540717060 147867565 130326151 820249322 862818807 521235088 612830916 40399818 556303060 891518521 203689722 354603634 697954417 682060686 494522283 184734482 544909946 645095708 47234127 337399474 555646090 437712449 204181383 56795769 316887736 635386509 257710261 732213394 549127689 153829787 219662984 856833149 938579535 448386775 179271975 8276751 597472498 63119266 200192096 875217898 432464615 577838848 984780451 907685436 103368343 886306652 343948377 944794564 154990844 588002913 887386011 801433721 448884215 741806797 363138504 200006783 273563492 700293795 66564023 217278330 85590378 169212463 94304686 382313153 525818946 110109718 113812812 132759582 32598046 455147597 717805271 173138461 625551136 900271811 656970297 467410440 524593998 173135544 325277420 980730292 975661574 393634115 995895094 665980627 14162287 518167886 584895026 329783706 792214539 270547471 391483488 377981284 366869577 945156808 969241867 687349691 716804654 927402475 809784780 767880404 298805827 315560426 71477292 326057201 478095283 30484693 225456870 278808614 674893667 349879850 349466560 958063660 743773304 605361250 495916400 987685512 68789245 382035621 620918048 243275084 680645694 713518336 245465744 18226133 33677429 626271993 95160108 771499011 130988754 591447495 281707089 551442049 702305662 218204663 50195864 565312285 388479391 45170354 631646898 179354243 871815452 868137677 938267954 29203966 22929231 977850272 674742477 876294435 379389629 242972880 722671425 753946985 315060985 836199099 447290342 677616755 17586501 579594521 239260995 888299422 751165368 782016883 604471653 353985606 470574408 130725929 410162100 917511859 551947369 406820548 85902488 764911181 560440460 467168297 277443146 652501069 167447871 631939940 575658827 289628966 63720716 372560865 356858853 185785541 149187902 207227229 703845106 975951216 274493736 564042427 248003405 315139872 373767549 168762093 631680299 75162962 587138113 759901097 516784709 37457358 705069167 116886506 261891269 384836914 559012001 786827418 315042742 417857358 52872188 106806467 999416294 582300380 360151913 555309872 506697269 95890094 60216620 128042210 794002332 434334278 294689225 205608141 769522271 57048113 214274874 516133228 269548115 174985762 389997627 608216698 449066015 267647726 967373493 555951243 678840619 414560563 683593284 583379374 182187810 931682699 892278788 353203724 752060657 627891159 31131760 313742160 321421036 194302595 572700366 72671341 372778906 341040816 99100658 762534092 836888687 320367016 818070833 232665725 352561042 543155956 541000489 290305860 192049233 688016346 558738727 474513951 496380710 793804198 417550758 854350874 894945647 46603555 752848589 97367312 568610204 101754797 357275637 25506534 432488815 962820025 68022479 179354414 74494958 898572414 130941123 144345446 94628372 669628191 117195527 283098478 742965936 384556918 596628314 14163653 913425210 576033657 213357019 716378384 645951919 604057237 875890274 243325606 733665796 651468537 487789847 54526051 345709642 864192099 802518187 109692011 82632044 871158272 403183846 707996400 61791302 634851378 781621574 416842889 427394701 398125705 712836377 49672706 441810200 573570299 933298911 840056640 838094898 737199651 50578278 705695918 713487815 415743880 350754142 84708866 472611483 196681439 835250362 121537750 146122833 994546046 425945907 59761830 291116684 135852854 940808033 935550158 830698126 206543863 487332353 891320717 655722397 867149166 886269566 828612853 443737460 274249094 190910005 911173137 264798109 627918024 94021990 915102398 710384998 944662715 97494782 925179040 951817664 458043342 136353451 861540027 559443037 864106015 439343236 923461762 358554593 794305988 241322235 802691406 507774037 235873786 133852526 87412949 76292774 157651668 59273841 327110073 526264056 627229812 190331250 192922876 184858137 146366654 303098775 707702132 373413058 692540455 565100563 773709735 85178473 124342133 296868940 367540213 961388646 512766694 543565066 510495523 233292858 549502777 811805360 499649327 385634797 675193490 515927090 61010898 636146693 876392686 743335983 776327650 494473095 324386627 510150123 936237697 947737197 664273917 804719495 998853812 364455965 882732949 393408642 63593062 674379995 473711585 219494061 274393247 328713772 214393574 607341488 150872021 383514841 498527261 878879757 34210760 535013038 105034296 854369951 577164211 464777053 37265518 974018430 866007720 188575253 735623330 798195258 583389805 453934716 87979517 972364014 511561237 170737042 568244272 856431499 840167804 657281112 867996350 360349427 142974346 954211932 445034609 507758612 250852728 242359363 791968582 114443469 236444970 706611138 269375620 488828220 368293930 94871833 852249374 410506682 730076632 740178098 58816240 973236778 94146989 692546655 354728788 567371108 783526780 191389840 64580334 226570365 331143033 519589849 601358180 169541324 618110787 210078704 564588040 915179052 909636612 442727504 108540442 930692939 59414808 707495655 830799352 225143217 355453874 486418793 791608013 459492023 361731052 738810331 662236494 109011463 960014810 49342254 952194818 200586699 707329049 652491175 783493000 161286768 958872895 147778704 415930736 59481303 815396261 759513480 964949827 178201310 714073602 60984081 854647840 852102325 740610191 319824581 285520546 710075207 226286773 892588475 938672167 466909502 939132846 936725345 807330651 224893510 226122472 277542895 789217644 601388390 178838827 78831537 590086004 280530617 950667140 6229071 325803841 545670645 410673981 35814017 723145027 561324804 563180479 970385913 452741552 651934342 828684210 35680107 430930694 317342750 16246553 942943666 566855171 456539626 994637460 685242634 899854797 401161857 754853732 175245828 553681115 209493938 451246834 171384861 982022199 865419102 291075522 306179767 468556539 886310112 532682596 282766926 455646079 697904412 852264562 457109141 370742200 488553679 730805305 985265843 604010380 82575332 192958138 652915865 870216591 363303453 741829210 410896160 704515672 122675867 454907662 653969652 702292218 446102902 916149923 836008392 375963948 102955165 246287238 942800409 767607017 682879565 791525648 856420838 686517045 682506600 46046019 450357495 523252835 318844601 24201941 52430147 882655918 893205406 155459935 989746655 95736408 137616463 590110150 78464533 781878643 187480285 18929796 556445231 765072980 279377651 55669473 882863520 237991956 243737284 706217999 100142993 975421054 977185497 842476357 248102368 977478667 418469791 261622911 159342969 333358804 512969498 351736079 778577725 60691404 319041114 896691670 363732895 72060112 735215268 642329770 911162458 630360684 468682717 445913186 30163387 384806624 849007415 735526060 295557529 453394434 641644639 962499332 660471020 681447804 669959129 291608619 151143119 440446455 194043527 116799762 266360545 391124731 650951611 512808089 156129500 567755707 846159902 844653248 784021951 512314587 636938994 148071015 416275529 551683323 887584442 210544679 320799968 561611066 544705337 431389121 344235605 556822906 402614282 670872266 776641352 524114479 815883416 226461479 796320733 707902444 91373627 716855030 490043256 695532636 137786438 686868015 357018960 583645190 649911249 227099873 660808519 23674192 5000263 576389338 251538050 971452839 11209944 490765125 522091118 237744426 852575049 662367816 671737893 906259227 285075257 302549145 66488325 720560804 645846407 281347932 223531748 210219500 715043833 713086128 252931487 522292615 239046159 375325379 817565464 62253921 728331675 441246167 254633939 388271216 579339131 351138306 468910538 880148441 894939587 276538104 246275023 47740568 19420133 370237941 951843138 1019192 292510441 50336024 444244367 969957380 29652345 736819249 220493533 670955293 608368039 52563668 483248475 545269008 832029023 808346575 46307462 608343866 827514092 196761255 688877110 464026782 657847830 574898317 952997782 631193505 11706494 743176219 689107847 196361628 831256096 519918236 525760021 758993101 469484901 522744553 360358498 306186001 621996320 337112340 265097293 439948139 388727400 655167990 812468219 526310843 329882823 211106491 828307037 559081682 301267505 701760336 822789540 284445343 687999506 644841215 592626819 911726294 183826521 70442842 937094207 609520053 487617658 925741479 395339081 269973473 538523548 741629162 566656413 362337231 531189034 903691242 445128546 688278721 765998313 473212083 802017034 543170221 710787334 283445596 95527371 826832749 641928999 127020183 501527291 903211572 443948029 484538903 253531958 479168373 439854826 943757516 181928910 49582036 843823158 826792883 92071360 795316353 16496147 322825748 275390197 588862586 758145024 139006540 766829063 125738505 260481109 614579010 831793979 233981888 200684494 903821979 138449504 202241902 425942914 961059747 641521696 300561628 617607924 85575768 925827630 269697831 562272569 175657468 659660705 446704345 325184834 946104356 471783025 195226863 759491251 662677291 633522009 234704643 417471925 729026522 668660667 941845545 750482833 973994353 785115682 61244833 99432228 519056319 172730533 156229844 325526761 429510986 339065014 103671825 748999078 266717482 616987513 926636396 451821397 778937619 29901763 371899032 220387273 650263734 280511896 970037427 269631107 381175540 470538770 771089529 695392662 679496181 341401572 210074200 600887042 597581938 602864440 99410695 177378883 801343275 121730927 705181307 991985807 407219002 10564198 43914978 50047624 720530710 144854360 745791005 607279678 541753643 86729050 826247715 518230049 275528130 183708236 888735473 916248514 743714944 861061515 343217227 786579231 506212678 701286275 464898681 116463583 611644558 687664200 950404679 767552229 246294076 360631308 316897900 52061396 149216255 184833891 462262865 885197186 631456869 196491072 824969264 481876923 763621936 680264553 695480715 605928170 323520399 335933165 369041271 883566869 516805032 193186811 242801681 264428656 225736859 364137522 286513895 439031500 12664092 85468539 398664165 610856722 681037576 597403213 382610240 745825174 356239812 365229786 601143520 476264361 316976527 397026382 569700396 225945147 583022788 563253427 581437242 201770429 384724189 347848641 588868793 617314692 554456603 518490379 613779024 298854763 356881456 823063810 907016563 145442733 575865142 955520198 268121821 134384207 944931291 230358691 842343716 887211672 212250996 354691858 623067221 878931688 726905176 417006634 438490511 571455244 588519651 493908727 43449561 14190852 427904436 691866170 210508434 433937122 262788112 294093530 481485057 57864569 48321210 798637324 854154756 543694550 425619227 611819536 149928071 420075098 649298742 697543683 427471934 437148130 367276988 272513020 84788516 458470978 846805765 187706552 74436571 892363734 738407163 438465236 153580967 829257698 924012010 690599834 84008966 662468562 597732504 410472863 734703191 113371230 828797475 328527793 994625344 740434527 30200157 9167338 490015555 351005433 130048824 81462245 473850249 694023878 713660063 120876778 88426358 745910378 341886222 26060182 50979029 476169298 404915976 199346801 67303312 78271644 601270156 616235519 600445197 37811860 860223391 277676019 821709912 369255872 921975066 686205041 431399307 259806642 370300598 970177106 232882215 910828613 634573124 40120427 716302319 206506696 556336684 261812782 775765305 418728418 872356705 536047356 645821704 73538881 560356552 354437141 496522180 456916300 567444806 634502910 588495495 372909496 922945247 357125920 202428791 136260110 341246228 672227051 784743256 140404080 45778050 99963447 905004283 969420260 712574966 203134090 774816698 746057986 839800852 118917068 128623032 140605217 40052239 497627485 503898496 623924422 673313332 210486662 240868631 780909223 902675253 453525819 329640086 147048536 282671564 135816516 328248565 120434305 517686340 157981679 373710787 949083945 341644156 583151143 501315296 545422248 832904565 207946071 114294331 923895462 444078711 703920279 266558525 945774817 322373448 344235822 822864124 452358784 592240607 912252160 182829623 863279556 371408666 621548731 869102015 969599396 371493323 15835146 300992661 626807806 46294389 415883611 398859952 828287224 68617173 917214870 370791927 119461124 990117552 140053287 343562092 201147131 691966471 961786423 183567502 883398468 680497434 981391097 5570460 198950698 381731652 173563978 114200181 2190361 711302829 816493341 306380567 386330046 296745781 482250033 617052108 652055279 338729328 99314918 869521823 63207786 119650019 87904102 824146460 678564546 28000842 383299498 259169105 649375597 562574238 844818188 372711967 640466526 514726511 389270754 137652500 33060758 226498786 948395536 868138569 535018653 21662254 535448436 943908951 594710096 686608234 612300843 365739139 282314278 726518633 922189911 706800498 497654276 959576557 285140920 934612198 597783666 458922802 137479296 617052062 234307286 863140921 530860775 662362054 302943335 835781868 102470351 903810318 941183260 302696887 806825622 303030244 351095706 245533792 35172205 917809910 995697371 860752316 722059621 735021386 153917544 703014402 822349645 898592077 336703191 618849737 698429047 738474285 973132207 798841350 239147306 969870153 240320643 814365073 527756220 806521569 825717299 383495294 449121362 731425007 621689532 994221029 860177112 909647007 940724246 539415780 49002909 714119777 224021706 949321411 357328024 693657583 250200669 930412300 603008363 103194764 191906085 329435877 220876345 200374159 828182438 404680548 848196226 915584 482161035 398899965 527473098 190576057 322592299 806709981 698905606 288701751 910232500 396577835 785769511 146198001 988361884 841041035 524098758 166931297 884589229 295875607 368267035 308419147 160882261 872880031 890768322 835208086 660717968 479675748 291228214 369169422 206660116 330975792 805576215 351160651 572363127 298857809 562693168 783457879 272118408 153177235 798995660 387957820 14567052 729307533 295965603 975034871 142639683 414364256 748122602 764206785 275596144 452192152 168973592 238835628 755973521 517983150 845840799 464085324 468575158 848291279 337027648 5642076 425436816 828649798 747797518 444407333 959900454 123672289 785233906 112809136 300610134 999210909 227396301 271039489 152684208 184847932 806898789 461465155 54187487 241376545 389443517 158564941 326512737 793435874 376474226 869232849 646332579 308576380 610314767 136765155 272000213 588774161 975589346 775311346 587582021 22950163 888990423 930032728 295527146 56672853 554847830 231996798 690200770 403811582 925868836 811850585 6621934 919881726 792949467 512944182 706301994 561665579 909627471 984594974 867583295 141820808 356344072 725315447 922489668 676130229 271464616 762014160 19568673 381863462 298195581 762827576 313344814 637328915 792017450 441612366 816459739 24854567 329358257 873776787 625350795 660201252 309345653 26822239 297225100 537857974 559407861 817161985 461214239 662281065 906162912 446581299 466075216 346370477 157696300 803063659 195734180 785170249 768017539 196250471 859905391 839718489 858778678 768825098 523708248 111367261 286942790 21807891 559850051 771700855 442161725 502821742 627312818 355042978 740810051 11991485 787897598 866653502 766657072 507766499 823440924 639329643 180699100 464760928 884058249 631108965 235758548 679935566 49771263 912578735 903912283 235550456 390963596 454625555 518608220 11339618 270021443 727837289 637908279 277976489 336094603 123265674 77008544 180590560 456280219 875412235 292580669 137412547 421774281 354702483 914327371 619589417 486402511 335958019 104014471 180615015 89614753 564209673 958367502 376213349 158897201 328056652 88132986 671167858 935228153 536048112 972795751 432043395 497714258 427154181 857132378 985851438 635372973 408228847 431880990 631259982 767504190 260679109 385627115 970710168 51320141 362955937 697491832 751384631 619746330 332433506 975057584 353207405 460205342 890980920 425428470 268635108 175312964 844583451 923696571 606439687 636884798 575544312 182560998 115908358 483503069 943205844 208815999 636994884 59296791 934701381 295706256 746998137 540979499 175060647 682122996 434686411 263976096 2258449 855257662 576646316 921424689 474650940 403605720 308658629 846112838 185220838 6101004 391909746 121067948 217883675 246763578 803777288 758646227 249053404 726355888 30885354 938130312 445554156 547537795 329401995 428053694 489877750 14852375 980627211 435178378 536228978 93351019 968861092 699004223 345868581 11728885 780986179 707833569 256610389 609230933 131655478 42931612 510561456 676601788 91512804 245734485 267519170 494934509 319099444 838600079 45155194 663953572 557383688 222089331 922327588 235771649 432786744 776583715 92767784 913162065 567188702 47498924 70113766 216637086 486399987 296587272 295601533 482169512 44706755 554387324 92155513 219655302 803139021 353547802 201888909 481108117 561729034 146099865 949063618 670045700 453270594 176989234 847554397 697968668 191520650 313256824 317654397 753583481 527497277 378158169 625537961 275385450 691634083 263090087 454564141 396519830 700739674 706393526 152041940 495439744 883355423 927805674 909125776 497016740 248954908 255930238 292072852 646733818 446434135 654550862 269640606 579611425 22117426 246081849 756413315 873187950 764040910 177414656 372538224 798989976 158783909 584419294 242605562 78515076 971053032 590119175 911974443 844619153 263951116 758593896 291830448 762256516 912287177 966125556 161941732 613243162 193195505 148660857 44957584 514015931 782044828 385209792 363120911 464688206 774583873 123439859 692571155 624408203 596565386 488632416 491754447 769563846 352497613 477198776 326712029 249266671 703437918 541661848 914546737 727805201 30611193 12686498 893886301 77131305 205868199 241563554 656077204 423332419 757847075 896025933 632702166 769838474 526575110 711897673 217344224 719630332 470745264 798163664 73152939 978642444 26714329 779088716 142125196 64184406 787520735 673153247 13807125 338729637 200887337 556359599 475510516 386185426 45663107 336299227 947610549 119343467 916729515 509613092 262188212 326566371 778501853 388691572 171400423 516467070 780794870 230104952 869807262 739549871 627491107 770059193 21771766 744144757 321009720 125366909 52549941 137156987 51035842 392013763 321644523 609598460 308078785 262597625 9258209 65358800 225046431 503002246 677298346 469242873 267993622 606780168 169073138 852266712 468430778 47256561 972605563 2114121 881130410 875633751 81371347 852769155 319619366 349254046 526442540 51939350 240313638 553199273 702743715 884919156 981092761 111086361 963109275 27716210 126421663 736476686 984288830 652244975 25836975 883294474 419340553 193210558 526480491 391023551 879374908 731224102 436907594 217614742 69452379 788309006 584800752 816283257 310199474 531799832 177765624 930926055 629744732 778742520 598507660 753853238 788513509 863307899 430567453 878663373 361234789 46616641 68491713 722092085 500539403 167749160 573742902 533598129 523728517 418915823 414118077 204295591 795817947 377941046 514312536 98830419 877074678 79370081 621278254 82203456 636475373 664847930 78607124 772883108 663602224 598044272 973244523 108531941 571332321 111500069 906561770 747154031 766981776 671433414 369772621 182140358 511515414 228597581 450642785 417545243 829492677 561219158 400399679 346155067 661215400 766411352 887350050 371862114 358763807 925704625 482813274 146990545 130913497 700101133 852756317 523392806 59824515 704043210 743176541 866589728 989363756 999409128 870395482 1259518 347272245 282153282 698048751 907302711 652695404 116125478 571979341 873455055 490739752 426027773 289569013 331347317 642740748 594965707 355411674 860412522 521695216 70802882 109264172 27816148 242659844 757367228 779423498 773888442 701647772 651294197 865912896 750096928 399556455 677369526 558253688 54370808 453825481 839017344 251518370 379988468 376605796 570301411 581122944 969825743 591439006 889979468 889677454 654060601 853134651 541553958 867148099 392574107 545728157 341530042 566480007 243642770 687115687 153725429 937063119 581475469 72269804 964589826 161851221 479931509 784026119 670114994 270316110 531845778 81482113 734081096 280470126 892304383 698093657 413216560 341862391 125204422 2308099 665364997 310054510 355043802 920334041 261471714 177091969 314314290 674475568 8435933 372324529 367484180 778839272 103811813 953629036 353464004 880086423 511648515 859772261 36551750 681513700 875387 223328241 81777568 548685344 225900820 764209485 629700187 831882579 12028247 10032629 963851741 763186255 678626067 130013577 989425257 294303238 467945724 840924835 785778354 284251294 25288875 323526619 815829180 956437950 886129353 993422594 158642671 439434532 474210175 416267244 910022036 108660572 751145805 206080032 601296659 460188851 898478927 426890553 48013280 991369595 772739786 418531038 951571298 780170000 827988630 196124901 202489727 252838710 58283411 960896339 509660293 535040223 113156414 775140655 275829343 88244065 775149904 738301021 944333306 351171655 980015669 742815487 105852042 439508108 694214192 281514688 251598548 251681515 932422165 248002217 536044551 198199518 867855121 582095881 491204535 707677663 436879741 638821555 846693220 638682976 833260009 208090531 976352527 975768142 801689433 243539229 328141480 790410155 724699569 268121788 325515529 739548475 494727380 232117908 19709721 852736239 718498224 165303901 99276545 887367662 500460454 141876053 684051604 435466819 20072760 924696043 592924268 468760024 928935082 794004176 883434876 890723509 962908786 952788334 680227565 599685543 352705047 594883560 126460730 443370062 654637304 912320661 163832968 20056933 973318758 324944335 887212424 209395336 681101256 685828348 311749387 980215179 287207703 950713262 382231239 943548516 1218031 459019142 318358414 636643679 340329356 923368348 545365199 960567486 560942327 803526974 488456606 215426449 334461217 203427226 95070532 609055309 919587976 858966910 793235056 794589556 911417335 469352979 778128162 301591593 466246339 73706381 473774929 501677429 347320579 380472393 851507804 999600560 130960494 426880195 736753548 16322132 920230158 175250053 296048798 66153185 338806695 663620373 677545908 869271214 95870979 200485658 394810756 830986257 302308387 360126090 280241449 194721435 50410306 78783976 530060115 161358326 848684994 922283264 117407529 929341761 240492605 238985836 661497155 895165196 447360614 200349645 497342913 228841494 575735512 331030204 745098771 754556039 709143619 113235776 41690900 487739737 965726809 587946280 678409239 537427549 360423430 887506942 928129231 110730555 172787052 975185613 397135118 187896210 259147626 126480146 156998622 823251717 538593171 156253912 431511595 985020966 956193051 295084944 85898674 886277120 449140377 379016630 585793680 539071006 428929128 980601285 481229749 819684154 500008972 702146566 381180884 862260524 743461425 998110486 610556575 734848732 221938395 769754742 633552970 790022103 487709253 982908800 635698629 691351012 29829726 687574981 522395888 893039373 484715619 76364024 505271631 248889666 450254117 355059359 35365833 152764689 179396022 460952280 345593750 906847310 213571275 669932305 26734812 177804410 577899023 287544608 878037394 971442201 563192896 766291508 297148610 56952582 563687828 345626183 882933726 177549917 761540458 347750847 325381549 447937893 336640261 645976235 191717449 907864923 56427463 823229238 766261506 774033360 354624181 734466801 290605241 423917372 285747579 584026044 575346140 941466993 905881955 286529853 888881955 267343044 831458457 908973959 174532925 192302857 705589233 443330726 919988837 260745933 675567571 612234006 154448958 194933043 76444680 726390491 712832668 540936456 450225387 508772002 298619450 266079365 18431283 211216141 90383197 979039857 891387966 800891410 273515941 722644944 781440871 444174051 561187250 518987924 238263287 695267925 413751571 220670971 305585152 367273316 752654959 320546302 892228400 633541597 279791035 965346664 228122435 679268417 275093214 478684536 13826950 61622213 23619734 276150555 336869552 769293883 35531143 874920517 393422406 940409150 711281747 627104709 127799405 684056178 644545215 333392647 723911097 627448730 875858567 882413476 315730650 363243822 876247725 279227406 94385249 655993363 57917533 306973490 980705932 526993033 166126637 156908809 960709788 316865227 791442011 634153142 388234833 796637199 129534224 773312411 636715243 447798825 606979344 345711945 912007289 134238162 207748364 155807719 348093439 708896298 343013853 246191244 201075123 68198128 227324061 303401345 780124103 146028517 631168038 418455643 588222334 810803427 417431939 247028718 243840946 987235893 423489634 691744731 400586985 21612197 441859788 259900145 527674781 546300050 442844600 505484809 315090623 917905507 455902148 943077348 795500103 191808282 772763547 585733158 182078797 959330212 646749594 612867482 992498187 620103023 466864589 725241606 133853962 549070476 553152578 342458613 627359402 11049208 2512906 184581583 747565690 361244050 658282056 556182059 20953634 100792012 410682355 187176662 131720882 958870318 529298416 602644911 116157356 87035527 136766047 251945668 249017808 783269992 155150487 522660145 294681937 899349092 24448736 38329149 246867451 975709149 506032196 255387600 875245885 891536878 910456072 257870407 940652464 231220160 815213919 976071178 777893550 562970791 491884996 714797630 755106420 640772815 332296577 910265396 958786696 954199374 475735695 669354542 105633659 33572667 404828159 540214110 623679910 437143023 626940313 908664549 514562540 274168577 727833995 982619297 873951447 326614982 670206926 21965938 187966544 565140584 826228610 149222391 363085639 210680853 24640124 296936042 887797187 129493578 609980839 966269546 289486779 397554937 903477844 704490671 675752200 393459715 61588272 908479758 238470309 136575741 83843325 76219990 747045391 380112818 513607642 23059370 700747632 613925314 205505182 716133671 112918422 681982514 765195299 811747518 370757900 121778807 777513411 509048553 305713797 215193253 627520374 944858085 994403435 899414708 591071415 481205094 898251398 592320181 770530485 432574959 501313803 162137132 841686340 884074658 110941174 104321254 318969832 272612606 651009947 696198621 172434233 94879999 939343956 944921270 870708238 821922637 613910834 27790652 910766855 112266278 776690128 365558228 598471097 36600347 667392548 182062110 595697390 14662278 228552374 344474952 664184694 512526334 738236940 779630225 807855422 688377889 561572241 532977686 396832342 688752311 39397012 919135182 179669197 250385170 248818765 243896543 648687787 815381219 250058897 183154064 774865242 201906446 959057608 434427595 882243731 273341272 66479424 464719740 376165253 351802795 486018302 893723207 585826470 159235157 477121030 707043620 244113513 544374948 711767077 535888712 551794297 903509014 146841416 57778082 299623466 592590133 988499425 257654209 178603552 350752323 734564861 705528003 287160713 489434281 443174339 13704039 158459639 948851099 455954566 799658771 818025494 31263748 702644268 929688202 649738802 915316628 644849289 669659480 934146273 428184186 277685670 560584574 368301920 742907445 864050146 949287193 444120544 295277751 874227575 133382760 100619601 810988065 72223600 406182104 655813253 425968601 90180045 461926215 278889327 896012675 123901876 928656572 378580197 407707236 356185869 803290269 268114395 110180972 641628711 774361136 586628228 311202703 675827903 5583088 507908776 423545581 446513496 519186447 971456193 333621765 741594024 863673375 438410054 616642843 173893410 348135773 785689593 844997687 177662101 3383844 136932153 84949428 5450393 912523855 951792106 821435246 438468814 385765356 416400938 438891104 731415020 406065962 97974878 696821449 601028812 563640775 945913897 199729133 265693846 578957299 548184641 745310911 201902310 144748252 675611832 57838751 496800624 357482772 746488313 582091477 724732967 942028546 270661953 323850907 462288426 511221664 924267159 545117 722952705 936094230 855718136 642276854 901906299 19886690 122426293 529461164 309282880 937956947 696785109 813960535 44638569 548084686 665895304 455996025 801780153 23460100 988294947 964325427 538159338 955646729 500652781 787435827 537416320 84928033 369794732 64998761 307017439 767129164 342412858 306625630 944280560 925145879 905782629 593258469 445762619 855189405 62653744 625358945 386548789 586673321 782641886 811569042 786941463 454785122 527335231 158090803 588081360 136144940 271225927 51037201 640592321 470576019 838729077 856381368 377456788 748385874 990311958 78046172 144141154 976297155 831076091 893866569 699275589 302085212 829097154 361180049 779617837 246909056 345221189 748038399 222531937 328695058 720232322 495036910 580033072 419222831 7546322 618104844 655433209 224763000 175801075 136879180 75028827 189154738 95134069 997573213 660681000 352640473 468015699 374588882 808828148 188856896 677375130 460789318 822388141 332847265 269868545 992857655 705398151 480771598 575501566 453813238 412287846 860692124 437104892 336942401 875514980 956231959 733877626 686865581 583676234 834838167 317509091 390556757 104832742 533568157 388346902 151569969 503864925 677276505 376602306 183532135 401117019 871357383 704079838 619055498 378829800 578624583 365682806 660786755 503119031 610931399 650723686 746628566 861974885 140710634 600640525 82931256 242312611 311125460 581519058 500706700 438029423 547850449 126354000 61611200 621894292 980168026 972857315 373561063 926648281 598796148 423117336 268833846 457612360 228385269 605747717 33061660 782371113 376685030 76621011 585397768 548523025 290979060 729721375 762088651 454352688 207433524 696158498 212340865 593935924 372106719 732189171 908230405 531204033 459261055 349520456 848792322 235657525 15294263 584321895 686570974 970946943 436440955 188988023 173968802 99279588 769550544 458272792 691580527 91256999 709670338 395423582 498831314 103009173 524550682 743981353 485802045 681466302 144676978 220024811 980039849 133651276 820222530 931648030 902360351 198098892 309411579 315258829 896449509 959463913 510336254 188189936 500648214 483319449 431416156 457845498 765514486 405470926 476473523 378078812 925910401 495660138 644671065 881503982 832518243 499474553 351723046 850668716 223373390 418901374 287212356 950898926 898462091 256386378 825577417 941147266 252404467 228173863 639625024 175319576 26290371 206370948 606576536 588298201 743609298 408633647 299017567 79350745 344244885 513606266 631822558 335931829 554780079 4408726 346891036 290037881 440541426 752757346 947870456 721830487 698917998 975452124 38580972 812638973 937180628 628653260 708158287 376164304 248641233 827289363 517299989 324872305 141682659 305559238 428250184 617291507 422105295 430150529 464858265 40267099 23208810 23346361 20558813 55450783 620832877 388636923 168109103 291618268 131937205 374803606 463379960 592779352 764120391 686644272 940079719 246633888 72994101 93690695 267477799 985697810 809949906 131257747 284294347 627443531 990241547 421571725 258798212 87315625 789049516 244454862 719140407 638159969 470171211 981647745 296659307 19732371 893201452 576161577 803504478 619839091 42906440 794496884 554102282 958599117 200845567 407423688 762665462 642815151 349226219 123520904 786897812 40962012 51768768 460485760 234458491 615073920 73759834 882000894 594175634 200153043 212703127 17865190 136764469 47742180 79142781 227920342 673905799 6008503 687195057 323088314 615362962 278773963 76955998 916469889 971256934 553664721 790314882 909564952 45470319 666294107 205785449 45060585 845983884 695033412 163804944 634553800 503614121 430456504 322803005 43581841 951722270 303598209 32628038 843615003 431537705 662448740 809941440 548894929 340741302 401191437 981052925 196491034 256875256 876404790 417172510 147345505 131158428 965216067 707675022 108147228 654295575 881454336 387547527 184010994 288892318 583232589 414910356 612192444 997493179 941979642 732360813 300709899 940433264 565867750 916258947 271893770 721754188 530601627 931628539 882396534 525823004 697326035 351587645 93940678 663327403 888878091 757809322 66466015 537746911 744976509 234635458 735009847 832805770 640025947 167097577 890909706 864668515 325292334 764884088 273418366 277212064 694646682 632696789 719918357 148364563 146555941 243285154 583996156 463565265 141726033 459383973 857576810 858368329 699177380 17853901 736955257 278895801 693726393 994678152 26596710 750308509 718702513 72011567 755164904 41145772 350686004 3251540 553649034 909663832 383817630 644813378 523841229 90743497 688469846 300644212 257590236 598772801 458543304 895977285 435302471 605935040 114380393 834672988 237170326 824424802 829006906 176653497 544193312 658082507 808173049 631358023 640361248 979930782 491902149 871349556 355487784 93340970 879596232 207103442 32151571 760124371 795051467 172446528 45996238 919339288 693877830 526264586 542128564 608450922 479271427 769852122 141919017 356935744 990492516 142396161 792357653 985841343 924039499 335498913 494956952 201129314 580486326 967777820 220470081 651714449 881645124 370347870 51166904 614896554 991192393 666971519 116136899 97780737 912412752 241959551 130938777 899390530 632250661 924592667 455648429 501781370 924220893 106152664 575388820 721885649 949656673 721927332 53934730 472486510 613541224 880154464 125835666 718384705 544833747 360995576 64405903 498339490 185285662 710311627 175830495 290922892 823191634 450481134 594623894 714671125 736219864 246013018 766792012 919865236 309707911 876289065 237934157 873298373 795859681 450548265 717942756 665597780 826745726 863056983 102428029 993845291 848503742 815728909 671538960 791996168 385108183 90338036 261120930 624186045 961856629 953945621 906157000 845921744 273006404 373421747 608727552 490754909 96953920 335965117 908264891 813453281 202321398 371874860 80967619 776923092 467702386 215693161 505576841 646956157 129241976 322707837 194551813 268645955 955333458 352408194 279332699 581148280 350206024 117350812 138232350 850070644 669976521 721589304 51093011 868887838 715034516 536881656 938792599 808736715 194316811 244244550 371717834 663871188 332352219 950648318 508440924 248454764 491576725 22075809 375265178 467776324 973714189 166524393 156811457 621842013 717200795 652582601 944612140 318327132 844037118 116726620 427622276 938521389 573494225 132900225 721296583 834513572 489123093 798918506 680391342 252690985 185553406 111671608 921985616 508628313 270563675 456641986 726567518 629876943 500200166 580107112 831906702 248996428 448060601 305474211 615809778 446413696 344090214 942782690 441172854 400775520 268416524 55126779 857963343 820696159 94950706 583435038 171640364 918448468 879578718 434841222 610264518 168995953 571876286 246763992 554175983 182493339 957830758 442318426 680951710 45436720 337876933 231869226 994269031 276242562 580145441 694776337 998750410 335784445 173637917 218994103 613953433 736580764 897378980 842790515 205503536 999116362 581879108 62817304 924565679 191457920 265643831 364263902 178792890 141945193 993217773 543742096 232969935 627817517 332684722 624480685 390430599 178490030 384334415 558930166 958770517 558311196 999122023 790898934 267629526 790743055 820323100 260390307 976732909 114851494 641907474 163961937 163128641 228440604 128764742 683586364 6933136 171722841 485111211 644887340 609066869 328510375 492108742 977615329 752414336 282525403 786185859 817482163 13985692 915329084 464342976 181907184 852445359 1131493 621671369 298440406 738461758 684640920 596064497 141701242 675058636 915160854 826949344 188267633 79455890 5674318 745188193 90535254 103928027 25500255 801496770 191103441 830869235 148382121 383149331 782502069 349880591 410631141 410053455 955603669 98098880 126069027 274792242 459539215 307224674 94472185 834197477 392184091 745644241 285301987 743868940 521639843 899038538 749497487 319667499 957576423 665723311 301482141 493221271 557003283 872894480 59528109 632000646 974336727 269476552 375921884 181175601 487553974 553990169 244349616 578413757 662772017 312136082 740830016 406884552 218314686 151652103 516336277 909644152 679395238 236054516 91518765 879632092 917209015 794826012 285692948 280182129 48523374 440922466 499924252 941666680 767443990 331444555 948858219 217793879 693229225 62329586 993883585 664154582 460008713 310049371 916882027 217605094 70481770 124788748 49817998 329322724 391929803 956615048 299528500 386138828 672885270 656697499 164325314 721192488 427057779 10638182 254939242 907993817 872054839 370637235 245362726 723951354 948537638 970977493 367915419 139208735 370662269 465149523 856303512 649332147 769387493 861551026 514636531 959425538 413230013 154529310 272332165 321218530 984163256 45142353 928487091 176434469 508930591 576491743 356237211 379153917 366848390 152916345 654789665 803095742 781346617 709014426 28672981 862539564 392182285 252940057 593230531 329979108 93422400 689943691 997879232 197371236 835277388 232285433 444829597 661456558 908679001 860020767 867235879 961722381 855562322 851331135 371976330 817059139 788135134 999159441 956024710 658355164 388892479 78042275 909296263 278032814 294833702 90504675 95289166 622463738 380524176 269189439 899972247 904410277 798535179 694521473 81672606 70806130 254284649 46028704 881200997 114019652 40107085 126917156 254339885 909890753 46244637 763892276 200599755 760969912 557161970 896395804 909301339 653876782 379265903 260842471 68055769 682020763 17642855 632136762 456107642 722381060 875421472 351565453 538313294 604299944 556748784 834273122 519541893 202318329 272836599 401181970 347999262 831301937 727459716 37717231 179929886 186506348 983680149 581781558 635003628 705032705 309031289 753467702 110318409 673124766 952748518 204054750 246583288 296300232 369393063 207707430 353160103 247670278 338626342 133805523 875036266 534480710 164883888 986101282 169193651 290586743 921196709 505154603 790285546 359376281 238839261 300926183 429810895 118360264 221488939 436084129 150012510 61245982 246838455 826538292 910118480 711719010 887683675 401918956 793854086 495238167 341924591 383682102 542708628 512127699 53819165 840837625 406368760 576038393 266476797 376158067 139599382 69185438 964299720 407106131 885823960 414507657 335475984 281007358 969052759 968325789 447758684 945215729 4011616 847758992 166822260 264199678 894687355 44611748 867345395 76749532 155607497 833251022 353049497 959973829 87421361 23066575 600838257 344320207 228830774 107865445 84874535 551628301 564723762 482526115 10632424 881782791 590427417 884206591 763727155 756005214 639731793 814543031 410525421 243662561 237271729 221788209 583149761 581244090 979872253 240655047 850846224 319023307 216317775 29874839 654260111 528321772 465587290 450446989 264261670 702358521 185804165 712399244 843749222 746263638 536123324 107333770 101647074 494347328 281460688 955730048 274537511 621522859 543220098 159862796 447004975 611502421 428011075 776792797 716245229 266607113 737815378 688473631 535376761 309573870 802217827 726641094 898061476 10951631 489340248 893934060 683621211 916164240 344637528 525786048 645690870 869533242 749294366 661093362 275830109 156806707 646197304 309514103 59203075 460933132 668659173 998419796 839719209 795120559 211103802 418414070 358221533 582678680 210243669 543867549 27459720 845003039 775008030 74602271 540343053 825634580 158916933 930124904 829724637 978483908 554312697 258210418 343280305 781870681 290001828 592371325 956829380 781896275 219978377 734412570 703049410 357399867 333978390 729799401 891690631 20795666 558692781 191693239 462552952 932613545 18004976 829610650 111568822 928675074 92476344 643089216 213162615 23481009 477929385 399211156 357415402 409265403 490916699 447714949 337747363 762825986 449381888 420479439 132040988 83126436 977781091 168000398 685269463 557494476 284984841 860056888 728005692 914251240 549647711 115146173 843319982 701958274 930209679 637820952 314762099 396488758 33734851 549202511 278255000 989276693 105556737 55202082 107711886 806086573 648616449 264969317 813956662 739601953 648361494 35405495 830568433 779399850 450586701 151952678 542855074 760955723 93008646 724414810 735458459 979227713 839477596 22604414 447477333 373880924 417334262 56228568 342152639 262164427 115884484 163928310 752110472 954058359 964964805 203738812 959205966 71012299 5595120 511794731 914704040 718207937 259852183 563667745 250750176 109594355 876249653 692641936 837796077 486076582 945846024 986954069 249403107 761885351 859388372 703297942 30926574 948914737 13364298 412462297 295093672 873369240 491325857 233371339 959440505 519141842 183049177 542605254 744524699 982453402 73637884 700792998 217706685 542980464 841048084 808397338 877887534 202363808 249567725 162128126 920140066 521142489 773840668 694498937 639602646 672964617 464162066 992801169 70638692 539587763 727191898 642973754 109849863 810071914 305795338 686655378 992694970 266188856 516709951 2061438 454577503 342118039 848240946 828082245 331019722 369914041 647651358 848496200 402790598 735379940 902708958 260564091 953271001 981821607 666900487 878159854 884575061 169541077 805217336 491995594 797201392 979685128 820993034 726088881 431769291 156725180 188371500 198171905 390753091 37265076 973549943 226333464 671020016 138002730 276903502 376734495 894454682 768575503 786709725 883495434 507757829 165505604 252434508 378082764 818502635 220326260 165759299 197502758 743726573 758402186 57686140 337019429 658232006 218469992 403569961 947101452 293733356 749238033 839484556 384444631 748527089 349278646 535630397 954024798 656157866 317192731 837143682 493496247 444270544 308451005 429874111 92633991 439586306 289172391 165884808 37363379 271459756 799287744 33645090 711278898 557100324 949084134 677594368 820762953 430316738 625059327 592994468 690059018 730929927 695491846 128192390 56028318 701732475 760066105 979477265 523978567 667384258 26058821 340257100 329956637 33523097 307857965 434570259 340650108 994267486 664291871 263170685 883132239 172038656 994753622 48334824 663637527 977798402 197923304 908150068 311674153 294500684 477772697 288659576 972383302 218577467 347639183 572418769 381850103 341911995 283990339 969301371 638348019 991014125 540150604 831245911 253271800 766558548 634396642 323332506 762824216 372341217 921959774 571460198 998919133 88239432 265781123 48878125 511428863 504910524 945137491 113820716 390757553 861827967 769909028 436545621 882173556 184965765 29701957 893744997 758658097 268332045 427291793 132346612 107113314 392283784 441633820 265546582 518852838 860895462 453539239 384086750 575258276 260192964 615718654 229125851 513168255 616700008 114061232 234159884 66038379 708551112 337081449 153868986 45239065 872566141 93966534 181641814 798260601 677539314 97939481 424935863 486318022 239296082 759063797 341856606 375202869 421181173 340702717 813595831 249859887 319222448 778565139 525767896 812063572 525947440 563871898 151489245 728613498 167551891 855485582 752210240 364534999 1171932 776352770 773972421 329081502 165382746 457116204 383891204 74509584 181581349 765798920 240186123 281800183 548970687 473766824 717361360 600109462 720560851 797121207 27483531 320212126 857384503 86448105 543781698 765706292 524569130 296453921 113722428 498670444 129378266 933266984 694218056 499147474 530438847 505730732 236407134 929397562 174736327 955358972 576676139 936849543 215257829 656895702 716273893 598870605 450185535 675306804 527980211 255527617 529759569 800406462 140812822 324993399 122488485 885073780 615577755 714478346 431556908 749610994 188836271 135681195 747766379 289399690 661645612 315845293 976607645 395294830 348496382 611497562 103320325 96781379 790257116 813382622 595924241 895426413 36758612 928928815 350330658 720913801 237530578 703020617 75560952 760202643 503974623 52490052 525237430 315610317 734570092 879940579 285219027 783020927 6162472 697481350 300120109 469124893 830929811 295088516 148386078 183347992 483094219 92578091 283661590 105071766 859969759 784937653 724941834 212067284 344544936 326002807 552682167 116015316 667436084 593508829 429165861 639604481 801174827 932648320 850844065 400145431 257043736 663122176 155479977 149641247 226809686 170150218 490002136 597681317 536813196 373235787 122074610 653696910 596263754 6533153 109924060 636099303 961350469 742145738 910106547 969638309 700345371 941267130 229739679 579561699 59641094 302437467 248675215 555317625 598944392 823717748 261132994 697727649 247709147 523196326 874990596 981475350 506574510 932974003 198338978 320919675 664425976 813786699 826280019 220117665 861089679 235159334 645942324 827508448 249580957 31937294 271568393 286807211 77865893 365693114 477266684 650210526 51977310 766259830 658129908 407746488 998835557 448923408 396662059 730313152 104465816 976305096 537181625 814100053 277033657 237151300 717463449 644583933 511832435 309261328 235907359 845394111 866716522 605955270 16368238 203132107 47325626 675420436 30014747 997300990 688330801 240025631 207688345 533278851 717629306 893208241 397768176 953485121 935403600 534745871 64861625 42048651 218614956 305271537 974625402 925791953 376485347 638160042 31774628 936765556 65562962 752589111 27381910 42509648 740652993 332381542 246185932 70081012 987622517 329768044 100644752 695077045 448158738 89420234 795544496 818651530 293797070 344342013 389943774 299941009 970181044 45197016 386273190 495784792 277135258 305912889 529832598 432419336 316470243 464980877 671587748 682219323 432113451 947153951 146042116 15449271 862477433 833687104 590613009 21946413 163672306 997086462 293644474 567644333 415247242 210009790 19319311 810642895 500554278 779420366 672489666 157047950 788285985 159115142 623013915 530803745 554743361 551130817 417914785 720149087 788582452 72538642 792647120 940564723 283667228 435742528 364927665 713904830 593296767 428416421 395475599 915704706 568895978 331915589 305799009 87567369 603944465 938580906 302790535 310133613 757751214 75735893 101011788 342254625 332818050 363988061 258974499 806674122 739178467 904677023 43954374 912145873 252583204 410834418 137576403 733108642 34648517 429099605 602842246 305652907 235961065 71700991 340962101 933589196 808693913 517150813 557773476 304155755 447055912 69352205 62700621 235799376 706140066 585805370 223187426 826183643 67319784 765965530 875906727 308242323 749755151 170328004 787488413 241678834 316977894 604869576 634174857 361530796 838117461 662777328 36715969 236901469 680399920 469694049 164891089 993355203 701289663 427935072 180226019 712466879 978160717 347570569 413164224 780093807 212446088 131268143 32760094 530088615 628463218 54349707 659504193 560445285 58526242 824577006 944745956 775563420 273175064 111406595 770410610 311255561 515792561 184632400 653612796 867972913 550775304 101566484 83999945 109852032 109304812 738169677 147704801 113661991 266162972 420926052 852588030 100972303 39084168 142246575 847602737 275001229 981042286 810381504 235574293 997278578 710706959 969648173 883032785 197368301 643216681 297779480 490105610 605870010 97156403 760702916 879034648 214966422 393463692 935678992 801441918 955634887 171699642 704288702 71723961 579366044 888082173 542524003 762336122 175058389 482564834 838838430 908492765 899718678 931344709 613869413 864604686 785608981 451172427 829208332 725460195 782175001 805491087 359731795 124656894 916562214 215956519 233678371 473078326 351531765 339409 306254775 348681147 977306534 88017818 552405632 154413870 441463909 943603751 326436068 360213125 500227737 839267241 289445673 173937158 316443761 333926362 265863636 292290379 301951901 198704804 367138841 81211986 690203977 936123296 420009027 767665118 154516980 157811766 710625062 16376090 558552757 374922414 197092618 577009720 948903257 456124728 207682046 901217337 540024458 45907683 408426157 583361772 225784530 994260597 531982292 348132313 693721390 262928902 150110257 118700049 340205881 816877253 915700272 517016204 160988639 597566291 147828078 577297311 66531348 827550525 643707513 452825483 207124815 654559242 510020744 52569723 909761804 338368325 803041327 425216110 33524489 174672362 776116860 7577033 318982493 655117242 178602152 647584449 899571099 649092696 929681611 431075311 686222877 48238336 213143987 919443113 916919951 68435516 298486888 211847647 496186790 12708444 227817181 410662531 495519471 641823015 226542078 347884284 349251599 828572004 714906553 166579815 875442987 815848149 703870595 632827930 905078481 627040360 752993886 657272732 919332141 683936749 473643569 272503372 309467795 862695549 623340983 415703064 847052587 398987664 701382402 361362772 595275930 236597265 79278489 159945041 268658812 837393899 263035030 557478576 377043084 152428087 113182337 94827068 800789034 783912147 85373859 266262953 102789364 62542931 637789783 214643813 693620165 67759945 28240114 163305099 515959646 109396397 409831124 404313016 627216566 574724379 410058005 995580552 342380105 258417813 106864774 455977063 244482055 100356923 782418501 591399228 455654777 419923745 4936992 566967325 380287819 182226019 560689940 612595981 808587577 278733372 880333397 96497117 364799329 524507079 732441632 333745092 313579652 78786775 472073455 734889485 559994433 260344763 594581099 708281390 64277816 181955760 970349659 325391860 84154861 782824556 659005452 778349511 247646882 161145165 492797360 95948581 907707585 792555723 616159048 154370046 350359886 761391690 364619773 558429555 302087328 322834146 626893051 16792502 411144152 791466411 266571233 214219111 756269115 625595284 537259293 377369568 101538510 870923670 846881299 460758023 996720640 82740666 330649996 361521837 278592234 608681426 440555962 139474077 537327671 967299569 52438251 239179120 662078217 709872853 671007180 95429916 90316939 248466612 525647635 756099161 223257238 390766570 642691116 716344840 178906725 379261549 637240720 175636201 992593 10959272 406595793 109257454 488496521 926517042 870740976 463978248 744261149 722467597 189267722 630413525 26384667 693830345 343153938 872755504 896341021 335208635 660455283 442897585 223593506 684297622 5523399 708428052 295172761 717834060 307919305 154540868 74470128 904089411 54376726 196823839 320117796 996738319 212162188 579571323 409868080 893974830 363597338 699564607 731087547 201276735 893905049 726033232 138718045 97810407 372566282 76903092 142794687 927651800 429330339 869736485 135086738 974916576 895204568 923084451 505648852 239264063 21889139 598580256 53443737 845631511 673142706 586930575 811378008 618186131 301058483 885038863 266762814 818101737 285305645 511225558 158847959 807537640 198992373 43315148 909183160 293143161 914497776 856939686 977036808 119735156 682599108 296828866 182992477 917052492 474524230 640738970 821076465 907293174 365997208 526428031 256376279 64116057 763308953 350824008 543418489 205723446 233334856 472949333 477109509 395269935 416039961 225657434 836852686 58395416 697305120 837642581 924775512 162741627 991608611 711576384 169988031 315199297 996686991 531549548 334557596 398088697 396360243 96014240 289102035 195960708 95719517 164536389 478453700 358702156 144479091 153775089 240798679 159390980 266876138 166526986 1423199 340506428 526193943 952319237 452044923 680854926 191316066 592045408 344521457 114269832 291865447 687683783 617769223 132148288 703666654 429971625 893771905 628198815 384690094 592622964 469734883 492295079 163763768 833946234 107917412 689490414 872647503 186899865 711937314 146574073 423288135 682625855 899752639 269399734 599745487 784349460 255658523 981834599 929179882 345188228 148315689 471519578 293603457 593245612 780804937 195626139 156476879 824731055 25103934 321424164 792807651 89406861 726171677 633041750 298276099 394995249 299538010 969024211 135682912 702508667 939988321 909736868 897184814 244647718 293871115 142295580 897434126 4307129 669295325 101033919 986271071 873490063 893755064 371928137 803235913 519057246 839542176 986138148 530389767 774287518 681391886 538903794 870389241 641735341 739100313 646909322 824441629 167221495 686847060 304290576 790941101 298850914 399184819 159940469 962526686 570344081 709079180 182589209 880064782 265893572 174555357 602452026 2155143 434075079 40852406 787542983 713830389 793606934 482545233 684353494 15013616 395945900 920725450 932081945 638733899 323655722 559269865 895674607 823499011 982872698 55367856 877612089 230257586 161887413 337486251 713142971 432716265 136597315 22864767 119665050 64970507 958962717 379563046 483014517 799465342 410947742 203346774 218767550 502900211 833079698 928258858 563615072 16687413 190351305 812800073 448966003 68994541 944897701 240763499 210416194 287921403 792384187 920883033 20291972 688396767 413111240 303760892 16536910 101536306 853962020 694076574 1152170 576869259 674758217 555978953 117833084 401114966 398373145 412885322 489920254 678030312 62207847 267064042 803227431 331674377 848953393 390535346 712598077 506475278 811888264 246152697 538244864 19911586 439374144 314367624 713233150 49713519 850575632 985162544 737894928 941775966 145153453 947239459 405984766 282231403 868623287 574884700 180464341 190534760 751186793 99131394 984314457 244781179 608835187 282394101 388884061 557782939 620473962 495852648 192564814 444996626 732020243 664575784 465988987 165520559 499107991 33243957 881798032 933550773 914558277 969899981 219247245 436011227 194347690 773930592 622305125 210864285 386080675 510736453 945230390 641457665 647878910 204484307 44476512 613841176 704357346 130544923 906856607 86370189 775873891 524740041 204764877 850038941 548902062 706828185 555231909 293821770 392623621 451253358 889481459 167516000 350713229 893725079 171126197 169547048 927208371 654045734 894581524 467622519 651208755 668728778 72581456 440259861 46150420 41520387 242748235 426142498 590991869 105194890 858670560 829513060 633472996 547585711 884277618 420407907 29074596 349822432 695129902 362054077 599725738 414383361 307799518 395437414 972418199 92754088 297014778 688404383 475194666 436582743 429419291 34770781 797652339 615583536 791354472 953046842 723251417 174232621 886529806 529464535 572443340 102789536 207167258 373266139 284395179 739404099 803549410 765531596 461571595 570511422 412985230 538771425 833548376 80167955 144265688 27181976 602482535 441911663 630785374 788895293 720636136 88835520 511483286 673976078 238912308 767090901 476630146 948482806 783020881 941962789 837478536 670015321 773237602 616489990 246978513 38524110 87629221 231045245 962966449 858493524 722465542 135468898 809738495 911084180 434081020 971926242 52122010 327410932 909590967 554882438 861187268 469798869 949555683 187556494 924582360 676895718 590264503 78536561 148558354 647120151 409463642 140767131 36419870 543425623 711543580 315545349 661727746 871744657 909423300 825307126 335612690 48467856 223601182 754695223 271027522 954288187 491762101 361488859 501488820 417342475 516272638 57722311 789395401 83711328 845079604 543504223 822392743 605545644 201829075 609262724 681825532 438823982 466110815 260537741 65270247 519747426 153534740 376770218 976523873 638742099 640833851 309608624 101846 805511375 260432934 603176880 57603032 814144143 316142646 381073673 445285280 712863508 82786964 963858958 285209082 382079997 614114024 351757958 924750491 503557913 738299853 229326230 405517203 93059562 935947651 284542328 960980162 648296061 459758944 874716800 227807291 617167883 711414376 314528486 544703547 802220272 767421140 178872564 517391584 828516255 209688491 716938453 565095452 327292195 725762664 237397696 747479057 372582801 976618375 582957009 713666517 700383333 753282604 65734443 133265141 826737437 433647709 951702139 532412694 885759543 707877403 901680585 922473658 956097380 537823396 524888163 862445628 486552664 707767125 549747341 814219537 989054972 851268701 302238167 616973209 186695810 836189907 38382179 85599564 800491022 553649766 230316824 786348905 81745276 143416139 347315951 528349802 858357022 67715508 15811666 873916445 955352152 669929334 930356851 707988171 253052638 174762957 229632630 156169809 44539724 853442108 568266694 786840402 309328006 797021517 12242880 111387887 298915154 704053543 301509413 581610250 724327364 409506457 709121797 508611863 119066868 172472321 234243147 392510169 992749647 863733481 817827554 162246481 960625407 821516959 5873178 694223498 531659792 661793057 105599758 993383399 961597962 406984122 905139984 232782523 94864360 563745449 331125357 211191566 19191353 465642963 30638657 971468126 537908100 88811729 689081655 123228975 204368077 369807709 139380319 158350271 821560211 407084143 795568443 312892248 697422666 413453472 229378125 249529792 281992403 569071848 647588475 670344367 160418622 36022218 682477220 105744754 226491370 378824206 817277676 768447297 524998664 794169912 622953186 316545246 249968859 341054276 352269163 135768550 956147444 733396202 281227413 663813709 182289728 3196775 925139346 245546038 452791565 387886104 35741456 358626009 104173218 152789731 408620695 839950943 210966701 717353266 311937791 622816520 785627924 583696885 665755632 156087312 936821470 698756937 368949945 457989024 782074113 994688359 750893274 343606970 168858117 164715776 26267852 904285670 243690987 862886018 594455465 710098730 397041223 52012802 231257461 465354339 542969260 631258774 300224639 452221021 329857928 633520375 420147292 436672687 688171855 89200086 614097837 439609578 950440354 722614267 721188516 121559606 449282250 775579649 254524401 952492224 235244204 107901856 780618932 657763771 95938287 739084464 346778353 389594268 525153259 373621441 359387683 917314380 897961086 460176195 737726845 219087736 615941300 601946966 716236689 334839571 961253823 67914324 130578228 326602736 3522036 653045197 229565838 463348500 483590658 947543223 339475372 584762203 265890044 537050945 823353464 899996672 866160375 416626092 703634877 843937695 613544518 205951093 598485428 352270155 182117835 561123203 619536193 455831650 38608046 499478874 234898742 320043744 986826221 132122601 874249034 647675943 278177528 150008145 625737567 475588245 625315988 40696466 842396356 88255167 73065564 70273210 776051425 90452592 795891392 602902062 382056602 76800463 651670692 539079859 345243925 905517338 647788970 708148982 259412209 839238403 491518131 32189569 338720526 682671638 608625109 553393957 874649065 557618386 936266468 100278684 24137246 471833697 495477268 872489231 415156199 18249408 696503072 978863264 302534620 749842964 479775068 209041481 812639421 72798111 239484634 840670221 404412988 704957408 895498341 228918859 520434179 213876423 797694893 966471905 515799270 737190044 710801702 486164698 304710118 144527923 785780525 727742789 134161856 425579614 192577666 606645779 412811334 71313449 193397108 251830867 789317677 199503919 275768855 806356731 594961714 899088278 895937616 81397844 95394135 598499571 917770177 442345188 735975383 982873921 409246519 283008613 128128161 885140833 58719124 784369377 756285148 721351431 301772066 194648576 31430432 778398763 659774467 406474755 234088026 396521683 272032804 814954498 859826040 21999796 183734910 397809148 151593987 456429628 187954744 281053612 881157714 255640618 258173139 606325310 822310013 433723591 811669374 883412082 781122271 102710762 930145734 385838520 462769179 575946905 499804022 788613792 915889845 186787644 319870007 814863655 192485121 999600219 30901706 97100461 114017092 200168072 911415373 442776778 405308219 809054400 425135703 747328840 560683219 265115983 530619841 268610222 684837714 916355739 238548985 892617043 493835281 260873848 603057324 90924411 14471341 794390042 372008587 991819378 811100616 530151964 920392336 642579671 968757108 495882821 703140381 779613940 618883807 147110938 471427958 163509459 762224233 402960015 190629853 608338788 12906995 651568258 232712959 526540564 93593523 433173926 147715878 474235144 482187038 453621884 774505869 218196418 85181793 653955178 256523470 351400115 913141630 653405218 302815867 519436597 405983945 935380221 908763341 355326948 328682788 429339962 55594086 718141065 48758905 380345398 706686850 622956746 558266936 655258949 471133843 772357091 449789261 89408153 281174042 663910181 81815914 999983183 747203258 229835495 194696320 824548108 419013386 126913291 560561352 941175220 633370937 971136138 412757323 117266645 882413811 431922343 879022028 441891006 577458148 723628843 42560857 811417026 690541646 461883408 692647688 344826164 743497572 328529945 970543606 359346661 601673572 674742846 591801223 412742737 540404401 252985237 256604062 560795301 472196879 919003842 592490095 924500653 525819388 53427300 778440311 947481881 754151110 35990062 271227746 872110701 607115568 951142255 947960929 126069036 742357373 926601429 149998581 915794514 547633537 98196081 567120220 308860850 645124870 192785785 584821698 473223679 767426079 570123697 770165758 764494284 890451240 661261849 508988704 912228585 599508316 691753627 842347825 214439631 53972925 139022080 807402809 493872154 247535386 243556353 418072888 587945879 596750865 697517423 477428019 657302748 864899692 703982540 275478194 744952130 758330226 470232522 30540768 383446537 891002283 654533476 940832725 201440839 377660728 258400110 247525701 533026808 370904156 825077093 997067980 954418493 574560195 377769934 460967829 160958276 655006134 856121400 199468191 373303358 458494321 923019385 226143748 962914469 506301058 992308082 333986539 258285141 355129382 618858325 631466289 904291436 61137663 394503251 963947537 447544750 990955373 86769880 440960912 831209850 284624116 392697225 295202989 794772586 190824996 245820140 919500785 829195317 755164619 842183996 616762097 420398143 506951708 4680697 117822961 273171851 90143909 920606272 355362535 80278382 648941512 74226523 739378726 860311527 734999186 296269264 380045840 638208668 800887142 665850582 594313717 232979909 182152945 155043337 330831875 431297964 345767361 252430225 355293798 976661502 44961691 514102413 454719046 168413024 233794226 874866290 266190627 413077814 575290232 705066523 826350778 411037537 18471173 101724292 8748438 634166998 122647447 73479658 68533064 865950120 954271273 874197521 823619224 619570002 679278774 801036224 415048339 212710360 653084432 214881584 728379584 51781464 71323523 287401028 341786760 53978073 277958003 50598812 875437015 194602043 893964513 109180129 640458208 130428241 960042976 176379083 721277656 16173326 923167342 827977475 941796957 399416779 568438360 462779554 629892963 181648479 343290717 659267739 738132925 181234614 211725117 584705395 533557242 547283804 766207388 318871761 271174693 144401687 586855952 199068457 814827926 380880801 874535351 865675164 702442634 237883002 388598730 305254588 383729341 54375006 87702131 244509613 640552602 906474881 232142048 753453583 184645757 785682616 498193063 206044654 802665706 785923659 932300052 306718391 286072333 221956695 904661626 660439197 235022861 712229076 792994444 158627965 320825434 373381083 25015244 145042596 258241427 860949182 888674671 101516899 186079655 947521876 301891558 720584463 27071062 959183748 790916848 652454511 933616986 306200404 227853642 787693090 359119346 250410925 735802692 141642047 362250924 27505144 570669015 329004466 653946565 323678308 213764807 662266741 619872858 91648774 381387401 938708128 558212354 535599958 260000335 724491370 806365725 158747521 700127132 491758163 504740434 98438653 835653711 752503126 836982962 27551122 792132623 290893144 783849153 237669506 178512117 207401603 400445257 736209339 616386487 445835999 797868950 799495197 32031693 816136304 915336753 566922612 374623519 805374163 441823792 625500034 544585949 714931223 174692433 384553618 317583247 367675491 180421550 875347247 447166537 712477904 189527454 217878051 322362817 925301424 648703213 582151334 678175189 321761999 618944660 910052367 952984657 295828382 963442235 69285363 451412234 829203863 871182679 323177347 929682554 902720470 546158884 134134363 245345079 74430239 829908873 269174096 672945515 141163038 27020055 103692466 345220533 956272887 741065891 76721312 876989363 906959872 859222071 74081742 762290511 759919477 697692457 852793751 950380087 805951933 665469928 83953090 146620769 629868214 896333706 454937438 659948797 852420705 414948392 3601358 511153350 310846052 827854255 270919461 59589327 758872867 861911900 765140612 159559236 401082542 678684688 655729242 832090745 108023444 680521041 271039592 952798057 129364730 565970094 922416543 217879021 173202450 944239709 963343639 981315989 366942279 287759728 875343656 788935398 131491780 858592667 172767327 835264314 77495662 88703269 439289036 319946578 529741441 565508594 140920700 627217757 579645391 760223683 581042177 592412605 504020185 368112674 358201772 843318343 45737590 438036996 782515968 917118525 412412400 254200232 505611599 9588208 957898415 168344516 571441786 979103105 76696662 855245616 697994734 516130037 812152578 416986335 79884050 654163914 135190570 273660925 969703745 5428222 475784684 20958233 509382990 221397633 443578157 885319113 425125875 856059458 107139927 826122231 120740003 644378020 957218637 294481999 786221516 84269351 119831604 822753626 743134513 810289189 903243160 247797376 788423615 215365042 385642602 241344170 919673065 100128138 762451128 185005836 847019296 497860300 452917014 276074032 549780021 722531040 855585529 484635338 264228764 466899798 803858141 832814074 252891266 461390329 573574814 984698716 789438036 340744572 592283366 196426498 623743483 346387340 436423101 171317030 781543493 216895523 188921911 98768943 78419608 29666906 334016728 271407070 686019862 121832225 795033026 919328109 753132967 67128341 242867017 845335698 871460479 795539210 863149984 772653594 74440231 460315433 457062885 844001005 246755530 172870318 34288094 635515566 177307793 107177579 5354949 976216930 387353209 818346193 195680030 688913073 153491810 194213727 487112784 574220725 519971079 337035437 791001592 860813913 876155330 854269744 436824728 997274794 793491526 192050225 183882244 446541406 38002303 320424880 109764215 313902956 870119184 981331773 897817518 775999170 930078725 552174382 553496039 748388796 121100639 978246491 495110167 856385845 353518853 644853948 392841578 269795124 812723483 424741677 241137231 193990020 294858764 496355964 832410965 40013898 941037197 707611243 819973194 492040918 161337338 30122924 568395104 577390464 840629899 438887179 153522432 772135471 21470321 619423157 226379437 785735033 337256703 45491296 601224367 736431710 704836222 279605724 679109057 289693927 249335130 679262046 761959242 885305581 195291862 406729112 540560980 833936415 55954675 28835725 668861112 393377353 467346561 3234051 753484590 261714977 330948796 878351354 653289399 226429564 376620675 440386319 77597012 124937549 766318354 141652724 33756978 350377518 302474542 859644278 412550094 380437934 123761070 505593497 501379362 161118465 143918134 626613315 574491991 29077762 541697435 564386703 555586153 347325503 677104924 19276948 682436077 920830302 389740137 899310433 455353155 119304982 454866339 188660645 236673568 919578512 101152830 604025813 883930542 124037846 680841071 396067650 403223236 602131134 822729140 757462122 306683530 937079602 275492162 285421057 864784428 567304878 173040890 709272842 517276730 262107160 720463675 267161193 445966029 224417794 444435743 654025753 779880095 761002105 629343214 196095160 185499441 401723298 372733889 518631794 616569129 697052583 96336079 563291583 422308713 93691080 456654528 53325586 700124368 718866900 512207257 439600557 788008839 880436698 936438122 682703127 168566604 206898005 557989185 728766712 87592098 421152541 468386170 660177252 711347288 885834400 242708065 895595909 515682185 772456900 755951397 594842371 998574839 448289853 66619369 263639959 755352369 833651484 40255415 342990388 393953067 179644115 91438455 780847945 567959026 27442003 280645067 615888081 452379782 875240742 243548205 657137834 707333157 113814716 182655616 799034103 50600441 492144622 457143757 258414421 822028312 470702576 754304583 904106401 103111908 777605145 151160917 9071987 826336639 353548386 510976815 105791273 328336562 829786193 787586391 906929253 439653247 540230697 273035652 664443900 584757428 262696697 879928348 560493345 403718434 832272206 138024350 887438356 248184694 959781640 710838392 658404151 455851888 93637047 511970361 184769257 181869619 974291923 119276876 705183931 762243030 479984600 97669480 276147795 177146580 259183818 300500988 266128068 31850564 162147372 434322264 212154990 40625944 853953789 781210650 871078627 517080552 614689140 138476450 863416830 274243568 725017486 9702669 416081952 361885912 603304455 280202516 434547590 783812597 869856823 239899908 76026976 105015201 12252053 72134045 658798922 636084074 363780937 789171770 547129248 122143813 527545055 121638533 873542492 722016098 642795785 110792688 365884360 304957405 828374242 415959884 94992293 830697574 580939774 959492726 794824764 572830078 990971337 536595862 503358556 129954590 229245196 132650436 228854930 703089799 217782962 778347437 485356021 554938691 363887121 330099464 498885411 784476969 291214901 911257640 139026895 237660202 157211044 422538333 518916541 32918288 740290288 842817023 141392678 370168650 368451368 344019618 510677262 543497421 198012461 762455878 786200792 133115217 537116800 894976962 490700641 434337540 545902218 595741897 634790174 163205984 558722547 66246423 40315366 988830381 26518058 116558677 777424971 105986488 158185298 725090101 959775889 743740055 680031742 707639482 489140455 829277032 947387919 515950 324375092 968590421 616944716 708580232 253363920 192973394 143644842 414434232 632754936 854234294 861418050 612025575 585477238 503427878 204721589 777200472 764019418 801695565 569765648 972094560 565685315 540186890 876845383 141500208 28791278 204761669 740796191 700638293 221811070 161225677 632144010 32421136 160503904 424495432 675045579 772293037 454264447 688728047 817321787 216420863 494631063 226299704 902053496 494591417 389566085 911564726 691802329 98156892 909611958 390673913 222362091 547368385 196820458 360142820 52893065 82557385 600312154 3422665 724585758 615614365 196822705 525585662 823675333 971152036 742246913 161496127 172845777 321998381 567743633 63874058 323673843 989155274 49960793 28436057 778079158 733770113 76022635 100566095 286777308 299067670 427632085 285387436 12927888 556712089 799584063 463771142 742609933 794832543 487900001 332085484 689467548 91281377 674734213 268531131 784161498 449308634 423927627 328772350 793050891 116209595 21631680 987841123 43220599 724502732 365614763 743909565 399052079 292227875 332071016 848297945 814992410 902248901 173506156 402595171 137430835 342484047 869179180 145380070 587078528 50580370 782295551 518629966 965048464 595928918 335818341 728424295 352748497 190819153 785731541 735764625 914245589 326503258 807265984 798490737 980096817 399792753 537369920 157770136 428438235 604585829 695381263 461704713 172461691 254929082 894937607 13453017 329765035 716522047 26200829 833420314 219386301 194011831 707373898 349083444 247287780 228759347 323702113 908297335 253615687 318295316 832871479 462979519 784371974 995088194 990636593 790900758 83646615 900042494 792232821 840281639 433179000 405331398 541517275 969514713 343718458 923052927 255160729 32623724 32676033 429251585 744827232 699284589 229777935 695253304 477472502 297893633 741390924 622475328 814539432 672540209 676033177 546754089 370139032 189937891 370439851 694935793 601097556 49339040 444697957 334036873 712688759 916361569 799844149 241486973 460949271 752971275 47868315 372429118 685858538 106892461 343857653 382268093 599874595 271134110 720190335 966503173 93820662 350343843 613773293 795572234 361534139 337381523 507938775 208729826 913708038 356796850 244423280 659039146 548054486 189160873 564463213 599460990 709759490 983335040 791083733 143659265 450025685 552561159 876024534 907217142 703338753 281832709 594196139 578552977 318634492 445448312 85397653 28810144 322330486 135685685 47063979 961335675 676207443 345931419 524031803 944804892 163986044 25895586 146915513 117425747 574305116 744391459 800031590 637234067 425795802 487447542 291981509 165284950 46223664 663879919 411264737 926825324 295818558 328325070 742422300 20776859 644828401 102179469 601136649 190243369 492234474 747284326 624854176 610778782 10052254 754871127 536026483 239282820 97087958 861929109 577565968 191642847 101920238 334228906 371657501 173924832 930399062 522396845 949874098 530918074 172966465 976682419 148100049 314854479 937235 82314059 865739559 388332626 463299748 754867014 516699634 191614782 390299268 219586056 339135800 21615811 56445175 527296444 678000614 561727528 719277979 225503763 17645932 740924938 868798672 135479601 300426173 543832813 926284540 56533500 873838353 79384715 549499039 316323653 771176622 867823554 716160729 267635968 61071554 98396300 931755392 531503665 876469084 825067532 152951472 411788023 428210464 101792368 677724998 291715532 679151729 324234042 255970744 120843320 451449342 55804831 404922568 549807549 67131801 755136586 866480194 530917123 296207870 625318050 718288407 109601524 432404086 53453914 911899976 847576799 702787643 638429849 988762165 268090079 379339641 879429332 927053851 407404573 505030580 267380038 43448520 715576098 634615978 431224367 10203910 574885539 114056183 928518456 129094384 284419031 50448025 544816986 329507940 781871310 73729918 523572012 860552280 996638152 712838036 370415785 561099435 394270481 637651654 80901152 185906196 744870188 833764277 17539510 242240417 288943195 887738246 1675649 286526358 573897982 62735472 615409980 388448001 289149295 697590899 97051526 162407210 830838664 507389642 895024769 732072390 96184709 955048934 350050891 27595125 941021750 88737580 988839506 805523570 40649053 653059582 10759604 268485285 50592177 912797290 195861298 910931611 130058528 408168240 460841315 657918103 236646567 515044198 956902306 729140797 390692585 806548854 812136369 724291410 766465334 524666241 204215701 83872146 161883256 707368865 21854217 249849452 554668007 934149603 510557010 663851335 965291292 49089369 932788483 531920417 363244982 773672017 707333109 188058701 150371862 835947313 316078507 762533104 933307156 631689021 358890328 498309144 247343117 399313315 920439577 36521319 483606082 511826600 104978383 891448898 831008727 138550701 684338921 266771125 339277094 823583554 15022733 246656270 87707820 342148587 451038527 439424136 702784803 237432036 662461292 141978215 404979660 743219279 496183553 210165924 296706884 167749659 197025151 244843569 259599991 311383111 296118846 769427100 498253266 247040672 430041992 305271733 9672421 342808126 330436404 720224803 841778169 660642299 347505470 386636088 941929679 808771213 135953231 922966580 40277027 390404473 718506817 122604944 786557682 467508439 641388206 118397250 208456594 314653038 409542409 955879955 228811265 901765572 802787788 531904422 434168134 276627596 958467848 369113886 577465820 356542402 266385155 847445679 846139059 868525029 854528248 140871331 27262552 646476337 991379875 807213452 677042272 998771952 407545437 452923088 743303498 157809247 422570082 684707823 571523984 919123284 412771908 481103572 786562973 645923152 93659526 842788028 424100584 159945609 438592935 91249465 806829160 60564414 86885393 20109151 497870961 567259732 668435256 483592725 581460094 768856329 198835530 279607324 336563368 558367231 654212544 861817877 97662629 883384225 430274842 420373694 72904539 488956215 160948439 18438553 388568440 468251571 984921568 213389280 379161388 690904385 997715029 233849506 652513928 472339027 467859765 111073227 169322329 159481259 923952217 471438906 466066855 346923119 294133349 166047637 228376657 824266429 473686560 478553757 983424139 883554890 863361266 479867302 31044105 849462090 897064712 624959398 23054491 265239457 631664597 491933550 585062560 898233532 607292455 824757626 650263255 672566896 594603492 621187828 819504625 152905979 160965907 609492338 187616966 705411997 89162095 485216636 206585128 150835177 195955448 390998792 495468910 776706022 125786558 789767055 737852138 38739363 177233388 514579275 842775040 627281885 196520648 403933592 552992655 689722460 135044497 79970136 854879290 185353781 360127506 834562840 480064655 972649869 578550573 201091021 796699692 799012673 582715225 306312047 825800277 496415813 198536636 6469085 923646440 693528421 912856239 713147435 753153540 734219442 753034540 305801859 898865586 71260085 86506198 956000833 161411474 444612248 902611286 658356003 298467298 514243810 166920241 454843213 869656892 299450200 379356369 128190125 412630492 900860150 976568016 777082467 144916372 519697196 952007975 808297577 796644686 958222117 391445594 586068803 279668936 133831328 676378563 798942773 534330896 635995674 598675555 648086048 983875440 314355360 396858171 563449984 586714756 697307256 150681742 927507063 662079353 176601922 360094669 137721046 828116217 119539623 421027187 800188284 531704083 592735731 538120646 995850361 830805720 816708632 825379426 322725791 473266398 25385345 362762314 235947983 410969562 455504213 282938643 400021144 211125723 629599185 120568492 241792394 759959023 617561478 280359471 311820257 406938962 506679607 412960196 452569815 878517906 531601804 389709044 103643471 865433818 733742291 47494823 891204992 342442684 256635356 405212250 500597974 484585962 436444177 530640950 916391540 831900409 678151209 721109298 623668191 662411686 927505068 524403815 957216057 112370117 641290942 130705054 233858037 67528098 52831411 163921679 500346606 189705974 134611729 90107225 691303799 417455650 832569998 510385492 382234720 375075321 91393048 776434336 780070447 590345482 265427262 778083651 934012016 183627049 439921917 339335593 532380147 245412317 142747560 611601669 146250034 47025815 436573164 779884526 844559920 350199165 590614586 601872211 111605237 859924740 619411998 762841563 583251098 283234798 348350737 555618698 334874174 582750231 624380097 737628019 684105004 983169353 984762360 280095214 335293078 707100233 299300916 891179080 282860393 834024622 291086914 686762790 761062082 978102119 597253135 483491032 455401108 553287356 784684161 686363419 728882077 600334164 451830153 912705235 584332757 156924458 496832459 510619573 205334066 489432653 187861615 66271750 634184582 169344819 438209668 555863494 563826750 189695035 257420451 839538301 86534901 414237290 471806491 20785431 644492649 129674400 196730510 51854080 558912199 81257548 236529623 640756507 977203343 847992722 764261006 25687697 84997791 86697922 130354336 758353993 839848142 786675089 610506996 227058418 341069851 423927326 466916705 206854769 457552960 434561221 926837485 693566649 677779103 624628586 399214356 738254828 972265042 772897480 97248380 414103437 248072537 721877551 215516266 335013457 138875357 84741070 716446537 377748942 354348434 993270780 809107514 249155263 218598478 502094440 651793044 639971668 810322461 495961932 61079160 10188177 508155667 756393223 186612049 369069319 992211737 530449959 213771936 903755657 85273971 221504498 471266437 962017434 928924927 451479077 283356074 532182111 855459752 891492920 163119180 402709695 856992907 780947709 511018855 582523922 611700014 241229299 435891742 132100311 802716376 800065203 964992926 78284486 813456274 194062162 512642540 499483394 987664673 353435145 72848284 543684306 530656521 573784948 725059459 226711846 169126636 497248814 388005088 459206714 653201942 816267418 610865696 1014772 970988372 923100607 862771583 241314173 884719832 934924437 323587616 392168583 616933705 659492740 493734042 420297038 326372626 414131296 79899633 396952413 525615969 486709663 29311179 554954171 604413656 897843908 408322265 308358387 846382984 174207518 425888956 624518491 19081047 333166074 687625293 619974113 666237714 113817797 595561125 88999516 802030241 676808128 276440207 43510267 130754010 691139225 601803563 906251171 777573109 632436135 951421781 881353900 679918819 78761966 661394464 632548970 835388257 924549321 747769326 864716540 111118902 792100331 946696722 176823360 446395662 601221220 113570395 69621911 106626979 453304317 359126369 331705419 910914496 346565970 242621068 722159899 996997142 727723546 220534952 664354030 313824999 183456797 622442777 108898003 228867643 447349503 183606963 505105848 311243800 727214243 611447417 294629657 759391598 826669324 680324127 354328013 587120878 820382370 605708122 701760854 895115625 812657309 773890002 860639702 136684436 756206945 882526692 335252699 429803573 527269143 828490387 720174472 574742210 9395743 889878427 352841915 235945132 80964709 944113396 504199211 231831636 554100693 499768002 932865016 4211302 858856061 631014217 779667180 538573625 158825234 617497038 466103545 552889929 617417147 821815920 241973425 749260948 300421330 135895267 308293985 132150258 36090188 592677339 760426715 53650276 101028421 310932660 266926074 133462677 673192651 643368953 238946888 548364181 274651783 991753705 680249751 723118989 249687203 78221029 184433485 59848884 944746608 47188230 994500956 688554539 839847891 401954354 542441423 294525057 921039444 737375900 291695467 91050724 799930732 159715040 346792548 430549431 422244048 78697017 798089643 394931172 478885268 359546226 521026449 34880654 450833762 644640513 627142433 215564793 164306840 536321524 234632300 776303758 107861915 689503817 217971499 26973646 487208662 740142246 455834294 424160096 717253282 361765474 246011152 221984173 838539765 262293366 57759303 289987397 812739122 57351755 941198801 97587691 876398083 959763095 115492847 822270737 376742629 182118922 162023346 444569147 547381391 319372530 420992150 710972200 129048150 838250673 423235453 228892183 45364540 277631270 550893272 286294966 223730327 819039427 103124454 28310889 185524785 236957022 957589472 774361664 353628614 579219579 666992537 326796358 936759406 22659711 723637647 575158878 560640723 843332375 178318155 168198673 888495993 552877559 959934340 191035748 481459913 523049142 890103333 130504292 66386186 511828564 495361021 633829386 597868008 945425410 32697930 646804901 931801649 750520285 684692729 52749924 190918865 286216442 454085076 620159011 817550252 534376358 558081510 983956104 800581950 248176348 457025545 425140747 236919492 982433716 381569680 75972686 877538330 319509321 292532177 763028149 118794126 431120530 934607454 792398546 346136813 719593797 734821947 635735816 486028530 989075492 70197693 774730502 688087711 876974314 388919838 841907899 419660089 871533499 319530126 957313572 961509587 349202740 292478553 747655151 811400602 400282615 762892544 316351657 405048510 574737920 908222213 388456830 249333526 298848285 785793366 397556103 82986049 607073660 721605122 837652422 828646250 172238232 587138090 876000155 778443402 764097143 212013951 657916916 846553347 280715345 295151873 490783115 494446382 442405172 398178066 195464619 215170549 369728337 339187927 526551139 595429472 172584985 16986500 337586514 714556664 595069190 430768233 81994606 923570732 131678970 131090727 178117914 405203849 198983964 879560081 24995935 773208154 910167770 659438306 195932037 852295406 727657023 340817245 862657733 909262904 270005251 278083769 856483704 556255252 497651471 936577055 38918268 462203270 927979356 616783588 899416833 616408357 90463391 138044599 241608948 203251882 752191163 863923343 969706863 832887642 922691768 832855723 429936155 909842926 197796546 775886708 893566752 192379412 734572330 880878481 805939164 861007591 286174408 177860208 848222082 853222791 895025260 569799117 640306602 57444441 667050956 371606360 938924527 159383737 963958898 469316949 578801384 29177545 684822143 114877451 352205810 654937840 960431620 7446867 278730296 905062943 421483390 283746489 856009898 900717132 997617595 143372408 82704393 865823924 881082155 111116257 166207808 33658411 716471376 104496616 909167300 122224691 145952011 66503604 276677554 179163880 301552518 30716186 425780947 885284227 914111058 399257034 19444088 755099015 588298647 945653386 654013946 74116343 952852845 447171392 697209437 917958845 521359141 267116109 257650144 389382353 68540943 227322624 445479552 162254692 39608124 871095155 381494818 537765688 628475732 364700987 834403293 897971588 748461637 874358459 340366995 753564172 248508335 835887292 68349080 102459392 71557988 931584333 382154697 977639485 160482994 911709737 150350338 651055392 718097081 638310771 973167414 119448689 890741751 973890633 450138140 697364496 747079736 484687537 898529936 249095556 670231074 736509120 72726980 474812915 701931339 727333930 368566100 810107484 867870200 957523660 869977091 251849413 706892401 759863958 28661485 763244457 606016089 310646313 654433594 874588787 425020124 722439697 530712999 8845376 258777944 876348171 241286443 9871165 884696611 623966842 255143759 532010230 270918758 415024817 513916961 69591601 621529715 924088507 286403634 491363589 347103591 983580207 208659696 720522782 182120311 627512262 926728700 543197359 250275910 720485464 155698226 271896581 308252854 230373756 119026436 458199679 884379803 311213721 469323078 81131123 627497488 963059659 861895818 968449809 417695535 986982348 920145845 30963794 491207499 456126915 90219899 418605304 466337810 759009902 411502902 900844593 626701776 779369559 572825394 633910998 183720677 181625846 816196207 344377753 627104389 11955768 846771568 364097066 829330001 358195245 847849426 136394201 944625963 995165116 122818090 452006096 145716293 584382710 570208578 733331557 287251885 835142854 492411266 377209016 461632616 31019266 112853901 932239915 164402440 194222412 971384920 874759110 973856161 82300231 287391978 204615589 929747853 548872772 713560644 273219269 953602857 624864108 115066431 44778997 26958570 564725132 739618909 82256413 607218739 662553277 219428094 832026162 768043289 150265009 578654698 123706962 577994383 971495288 206601622 447607423 384049455 996629625 233847607 779996818 16311596 768086773 711250241 556786269 140590305 706009035 706687169 204049441 497669625 577116027 265329595 479427751 233430740 853117698 2431093 844885166 243527397 213642386 656265825 261944919 280652811 587836824 335288609 661348212 307808307 321948144 268186393 569031747 198843428 177661536 543370777 851232422 625304090 38935122 790791255 672780315 818345690 415403155 621882962 330634959 851101481 373315330 758094767 201630106 333473794 982356481 606376634 407822121 211670729 75156343 274149399 757762050 261748222 249210118 593068435 485773265 785007521 545688117 642822175 578463563 515875412 674340242 839943337 546414635 118696201 950814086 983986460 709993660 68296406 701252281 19578881 500563242 415033857 379115024 530400631 71814609 306745277 950928 988732697 517113972 923777847 998107815 400362313 226766932 85287349 436019401 542702532 719631189 21296294 207537141 866810789 754607152 864094101 161443223 272023571 219457445 370264363 403687057 942912607 694175068 630574544 820091520 12560597 665449290 97414244 560870928 814621293 270785924 653305340 843823191 196408860 993189393 546346040 568535378 709342990 474564594 738399578 298016785 519974173 974329148 487997055 667214783 274627090 475391737 207035824 259982593 821170905 22045707 710846425 662629269 781825734 87464249 875017536 984108899 841448246 440595482 399984525 963392428 507941443 576491954 560113164 330228708 628221528 225552845 198811010 935957579 335323231 603624365 995744229 251863546 869861236 42668702 86832418 172694088 891807640 475417587 402330870 604858664 485088751 780720697 213624604 40839994 613442722 684564410 772889569 854897007 756045884 792325224 870700874 486779391 632963876 598894073 722428919 855701866 984144769 137630987 4601955 293913646 413971221 302001083 226735689 628303450 820636874 534571331 902803442 913819577 435123736 724536417 339907592 199808288 569394999 823427076 219987457 120104468 417916825 977230713 948017431 220052884 78041050 817270137 772388388 167465289 738241931 45305361 657386023 582713760 903355657 672725802 298289965 544919328 388055179 229352873 875291125 669454614 176797404 666138418 964457834 865920306 305542587 810636612 641974749 63281838 704734121 631265539 386391366 866412084 510302715 911939277 112507677 776394001 958795972 799600247 656940312 241414470 315962716 594240394 170891938 820393746 749132909 193296302 932061542 207804521 131171410 591466549 449605914 92384828 795770314 373311122 457072186 267187271 279381694 81210500 762453741 33098684 148848695 298759450 425655031 590830524 360559558 235136774 176844922 386341421 283941978 59885100 494798354 446544389 686081915 521587920 278341044 598721679 441104095 910479181 888983879 312291000 893696066 326147816 176410839 795572707 872946782 3035447 825991845 829826541 867667032 582312043 492003009 67945143 974070610 424480576 988571866 277794981 257990399 535800192 618543945 985322274 227510679 558710224 29064033 977977066 190431142 511127055 32021948 377293981 986226430 905071540 69880738 622589810 437471084 586007165 260097886 461148072 839551536 189177344 858516267 117493966 220295990 207424806 782700576 741367743 654998434 941348570 90901647 990092945 752185445 716087875 117514726 353812061 566996887 238522554 98631274 509910636 601275742 978063978 47492226 219489 459271483 486115881 671305631 633153514 487858443 480159891 984767056 737522599 517546309 982124994 700991592 887973025 946636562 711077518 9025870 64973269 491320245 34684556 179673327 483344555 105312089 481675357 91404375 13214291 113297432 714024865 430781809 936227023 812689323 829092920 46754805 622095171 728842534 394246036 943460159 105810585 164767761 692349396 694121263 107589227 995117456 573520515 518631601 903803941 613995936 17230712 620891925 508133838 361809995 687647742 354287685 592994659 748841340 986300537 548882155 194765130 397659218 28041990 946821455 341484716 421939817 81600749 726455343 584019440 436130176 943222880 536661741 465337277 663021050 258121405 524235932 48673317 985453381 382563214 782870817 67899070 824308279 380518854 372362781 12790952 582148433 746812820 969175284 800587492 698047106 307585481 655358370 278666191 114049264 467841518 230507969 981145453 986862838 808223898 283365008 67868242 626596116 401566612 183309898 100618951 472323783 335533804 494401612 549417952 47605666 506636527 926106678 373438561 871093732 910404243 63877285 729074176 87769088 165904681 218673673 153404240 642781052 292011389 937931831 984682849 112294044 111709765 84576917 192696480 507498015 139902260 51246982 500845972 232703856 227070652 372627417 108384996 199339179 735378594 874985049 136778054 479819623 387442097 289095557 936523966 350335122 607112539 762010085 170974916 34302846 366616922 242764310 13122277 805718703 589773558 389938260 535875295 645508248 542719359 381146790 225991203 466039869 661476445 490356347 625421336 708251374 706249408 156972404 262535390 840407114 194848821 888985122 879027189 58801082 491887542 687556965 981583205 498960287 50538010 475969962 905364416 296973670 831129637 908422743 978277265 714672431 936930525 132409480 445836436 186921995 742496545 876829799 821120229 191894544 143184197 747266636 619181548 551785902 570876166 562261563 430318612 962357090 144059851 320446979 187457138 416550591 347949349 357336224 334885024 362265420 502559693 841597830 919528766 194020414 349271968 75714130 660251952 806883771 726731326 106464228 613259384 448770370 990832894 5026247 191170771 897175695 149373317 395032042 107486370 996532945 170775182 971738741 646898948 425591176 106684400 17885166 236957721 331830868 678510172 663802122 436106947 517710577 72401002 112114550 770280790 110460958 646809205 1199000 100668056 39423848 382843615 73293443 159268945 187434990 389066982 383452865 738290229 609063388 766819123 290486686 237920890 461182149 899770025 310267679 379095613 389483097 165638332 850875787 557436136 923994396 805644173 643394649 467744384 171430656 699926609 595238803 902072710 902542060 909957334 683354049 16979737 176654487 929084689 865289549 827284646 298603231 534745387 926601073 56198374 146970065 891483027 930335619 71334128 952217555 299659299 736198896 437552042 145466185 124019265 720724997 152725573 834125302 868650299 238230926 291034291 722376516 330609280 683587070 285471679 658193488 192277325 380193033 834750748 162721546 159036155 85096395 138620209 438872299 495114284 169462233 571934795 560463196 675211033 464407816 259749391 766076763 318458239 456809681 74289708 284402128 437930617 671793086 137020742 368474937 956273928 640519687 791088151 830256902 166271461 144397795 316532475 345760164 251091106 816793418 446060150 922270929 979678191 931391367 323309789 821793650 804837364 56888668 505730098 292400944 962467134 677556035 670742692 619708902 587529042 740563397 692862845 825323854 760015341 638171417 951279232 459839252 547922798 150250204 632980683 216967580 849611613 82925988 482179977 891599462 412880538 696340126 942458066 596884232 459825461 521502397 794467011 837586596 376744092 875558300 29959389 772237155 314404004 245736117 96465885 919522822 794147331 274942532 959913232 618795338 649561329 66793775 229256416 302443594 778675447 378445305 242428642 56752714 704898797 523195785 507625804 868320796 453314755 670785406 17776533 447606022 76856733 28421528 957985167 119722413 693827501 832383389 344565281 833890588 692103812 6107800 199879002 90855816 763692666 897979525 853057578 560984917 199656859 586564746 870813243 92612378 679332525 281179309 783828732 449444811 143624354 55384570 807347042 631702208 766291383 958114741 999374939 366274722 46994173 226214921 174020255 718083007 831321698 179727215 783215270 469096704 279662748 256119171 797853899 588366053 722209402 683777879 281987246 633611898 587266353 447672228 612597269 390983708 396291213 263190435 640243792 666379433 138387043 630336902 586224270 408740086 319380241 496769106 930944311 557265986 622707072 986096988 957756951 101019004 454056158 88413788 285852963 117941335 873398757 396671964 517486227 134460287 640953059 986873836 263285067 178704854 780397165 287252490 836400404 81817334 136402368 725669518 674281998 819433880 838867678 743882528 681955051 248618706 664092597 387228145 540238402 505242995 682175448 901420311 186738804 618685310 132024434 944508997 986284932 369312825 682695711 472184570 885874229 415930543 488769007 140699631 719491865 822062616 793812316 589529219 884885070 5986907 210632797 839033325 253062986 199858781 954840164 904274959 493592833 500328221 47096459 965613383 905708881 897861411 932437679 922463693 68750527 20581533 505210142 898795165 38777312 179500767 352595181 398509756 140935012 224435696 700194353 589805313 390462762 843893112 724581406 64731501 189343178 480656129 931787783 815969323 969363925 682109657 21368839 759249887 387948974 569781806 430996000 153878748 936462536 321022269 259284075 264894114 504461345 678253685 617759425 355392666 930973721 555898495 225282970 225651174 629289537 887161271 764432416 578315611 882801143 92010428 218361657 812266802 830904976 201573662 850316631 122185738 140641460 210923522 136969223 646359793 167185545 945858589 774363373 171744162 435015858 927174064 32489939 964829841 803925584 164550666 997548311 455025594 746812 741623356 563165414 447173672 61296305 425264165 96222239 596260060 299358244 86070426 487722837 673085516 620269444 967225103 895877440 250521573 478555806 459482508 764179131 521464610 782096894 875151848 57582639 548707215 910004110 307824502 681819279 623710421 638443277 423485319 388011424 143096756 791376579 578319398 218629729 998299843 890717924 919695170 252148161 42038614 292757604 851613025 992026350 213680309 285588999 689988883 903207818 78758664 345342778 366790780 890135319 733972209 61723653 848646320 772033399 321162047 511260701 66214842 481159878 961608447 56895560 241741829 814274844 313661919 833446002 100288538 640415289 49955609 723109358 837103155 950563292 901618279 877940023 199852178 889898713 662768187 556019462 159364658 2536992 893143636 766612373 73019802 399323790 240012108 973671622 926458994 652300026 183906010 83038902 899976425 544073914 916380505 721611586 799153614 59043866 24494653 292251662 598473255 102470835 749665273 969229387 835861331 97708546 47581057 601646479 656864171 788833157 634802137 320447805 479578928 611652204 433501578 637241570 531655737 322584187 702828308 879238765 946210436 35020941 552011199 349917066 73096008 356612111 856177407 184731193 336259132 534415570 343211120 899709690 418163492 75233425 663189259 997134189 897625732 700828616 934631730 920510143 897079987 301940207 781197180 974848202 972416495 673172887 920425333 482884914 270507620 290285523 699707881 84406919 975845076 737060190 27572806 55489451 20071978 713374458 396206365 862753902 774210549 357970553 723111330 660511617 287306488 251804836 398945639 175709294 594271202 707349817 11003870 845475842 80377036 695367802 612487166 114204529 777028059 671256599 981419539 455720325 940445257 374153500 459013156 44673588 153328971 210130384 623704067 703935593 474646954 880722496 86373559 775597341 573148270 280341924 460218292 202232869 260090616 211243466 221231169 24298287 392511229 353833365 189208475 874834251 467411384 166097677 566090378 825985984 805182513 641575042 546044495 753017275 629065078 300573409 341955826 539735764 839843366 526776694 341311025 310085220 961435749 651369363 205378012 617715662 714453299 37149630 606956682 208582573 288998263 932832386 163927853 371181337 184494697 800965854 224187123 841003744 127666980 333371040 871585384 271790803 906975591 765976876 534919824 687425234 159924554 983992042 373591610 18346551 599312140 641693806 451048782 333883473 341870299 495116395 958753528 251337309 431146658 876179231 250061941 615406990 771398818 316045315 867075544 132016631 504614385 144249943 736760475 947899940 578897492 859590833 14054860 713073444 776757926 68382030 182620229 281540130 171116615 492070114 145537129 340493920 198426414 329991362 232880478 602335222 457291627 887179453 171349167 471074066 262041480 119174904 43993084 986790586 587510948 679530728 397489121 762326424 253908123 644669898 631428889 793063133 844006674 969892180 479776919 323792347 810099447 681945864 487269165 251029761 625762723 494329656 567533443 213082546 626349546 498142428 936338389 458233463 527604848 655564407 130158019 86669889 974613443 489943865 140216805 638606357 249448775 781097925 58470143 23748859 566869806 497428870 910922646 649518545 697825335 763559062 293271977 504465157 529641227 655591123 167236602 492821074 513535321 298571486 846044563 454113784 353057387 428934227 133725907 311658463 997727755 97183671 861346567 932706614 817459244 169217377 234927194 402326730 715061585 135775421 556824296 179892454 595641514 486898741 447912356 542227814 315795446 559424671 194762238 840356421 284713789 231550482 575681004 164505392 657917742 887270365 183619312 60755374 153322618 186273345 685902231 358746544 305189004 934176606 880164127 742779241 76125306 705944978 500437544 246843241 645298912 795753305 550866426 4490790 132079033 476090932 500447247 499555295 4934042 155680969 527348960 102764765 834820767 224409904 244470468 158003701 890362404 11986195 725025205 73105098 348667410 119542625 136934203 998808813 45152769 894909857 168221440 982966752 149779526 313022345 385513475 316316899 897240340 446596089 254439222 847678550 722415740 146143974 554825416 794921412 438986579 331238071 125312072 41273097 98141621 938553478 278186062 864426985 923220524 356975258 583411719 213936606 216868066 826547688 264519219 732445143 559329345 997930033 793166857 877490853 387664581 723278269 309659344 492830775 691924215 402658088 710938753 428810825 520392150 559663595 549206759 807375433 129312427 594583536 491867776 201164990 54310309 402521446 709255386 551555614 69264693 974118596 919843374 132966222 90403510 848930829 737001576 113554213 803666150 346997354 69330818 325557665 912266071 713258315 655326902 158321606 406027859 161172890 225727684 636835963 509327266 798446128 315777988 638722665 163077876 826430953 120736973 692309555 162022779 621680224 274450614 582973707 203825148 349914062 884935196 651932274 746317428 800857105 948815989 950447510 515402003 785006289 670795272 2864726 973066900 887164812 38787264 375353766 455038394 174133288 655191503 428842822 551930496 313396993 355327033 712918688 834832529 342143143 429936357 769561999 337550279 169466336 528273028 627763816 703400025 592232649 336228106 705287757 326245059 650195943 918698449 239465725 319604559 995945667 24889076 419649621 358825204 543472365 294866140 558028333 362163409 385140466 37975881 503059592 808315189 218657943 44809194 939535974 705354272 483489376 897508778 343012004 312926332 892000675 682424698 404983554 510049882 378214944 670321127 445863216 365040632 39341056 856940131 113880040 645210858 66846611 950424851 795285765 304561218 800925351 592915344 186563009 800219984 21971262 187284432 51131199 446053783 41482382 519567459 952701981 875473234 783101004 259548890 76200515 625693364 49844793 329890282 289270254 579652704 619419780 504237827 499994999 18260807 365332670 988274247 85987853 999966346 72761936 462434230 181459397 293641329 818180610 971470256 481265603 427649970 380439747 716146030 150947855 198259886 844715311 730520526 404113271 986475649 673130087 791739670 710236699 632501178 850719391 741295204 632564862 814577234 617694916 694088933 876316537 746177521 841412872 298547910 186595591 146844683 372162921 157538266 29483731 949772929 700247220 178221594 754095614 399080284 48357413 843882284 166351578 82357746 576797606 631355261 395534438 346805833 856191590 537332748 562049308 686055343 843345635 794724022 464397338 107444078 652948520 634861867 988349392 942816970 694232869 44858388 188712593 491670060 96556985 82350436 479111151 125886847 271964437 395726165 471424008 943938374 226950799 462187040 286460357 90719988 577303191 864953116 426879928 554532123 685129424 224035987 243483075 559923609 109525495 930703525 958005219 729134059 420949426 425048525 42165003 647355857 259070364 30578376 711215869 397746251 554088194 358795058 43505030 164410154 67615355 992423370 750484639 122009042 372286181 1624215 603890318 597509063 621882114 526912502 212849303 303421680 600377499 645911273 671814829 800437400 434266120 644312426 535496330 162154142 927967079 604268772 564492288 193984667 698888239 579195837 666444788 685560108 39648898 123647183 702390167 864585345 733636403 915318138 345004521 185710433 992438631 488185989 497865539 461138550 643487682 676986899 959947198 286627177 332702620 947069662 273252890 469855647 386740587 923420274 147908772 249206464 203161864 50748425 10887248 269680306 30298068 199095345 148838177 487036798 185697268 66426830 424672352 350763718 27475282 664337785 477887251 947682011 78484133 925201791 304806049 635364759 975501441 423290307 224267260 806598397 474258010 394546612 173897718 205880982 453956292 126826339 659827976 132595900 246815339 309173620 870635519 363754353 889400328 261952530 900585574 219416482 289099745 972822449 177191654 519629280 505819238 676816291 9604121 290198639 715751174 986386774 929699863 536542208 763826806 258173569 596442043 601622130 446817394 642717901 914146376 76381149 400575973 286136850 682918424 67588091 83180072 825526515 265870926 930624387 857202479 357783972 697220412 138197766 286033566 601993793 366957294 889101851 331706190 242095372 796835258 889542960 411485914 606407350 836180865 908541547 619787070 764232850 921881655 942372033 813550283 385232321 518217516 995016393 77060405 401966227 347508593 110191965 233251599 796359448 561580271 785179597 43646745 209434427 304038841 558931538 366225304 931377839 127510070 842089813 683405422 199053275 398411645 778626968 409917533 9301626 962553113 619465134 647571986 806055922 516555211 390896846 240363105 317997621 549797378 334528696 574969742 189399866 782780110 325822184 882494639 434182470 198626406 77887771 411761743 962914004 75659866 489277361 629636942 557677959 557922456 425276728 328223814 908934821 123409428 973973175 260523520 250897049 253845272 59045984 403491813 331711500 12796711 563391022 286972764 417293679 286605465 828433375 937386077 306708057 127187146 584989261 238186213 575098067 499537407 339864060 257938068 867827731 522356756 218284944 288911312 407272570 346871338 134099341 827463815 141096342 85745891 547486322 462347622 537959527 874051043 240542525 795481586 589294101 133996995 301998784 84287310 917623098 364525129 311559394 891302965 486543635 427031675 306672801 46435750 291399055 994217889 648498974 746102395 688926611 818826866 999392998 298625000 702657563 269478432 323281312 291488812 223328688 60810622 792013119 333251945 975306738 211411148 346728425 817193039 412093187 985428265 959275822 437761363 121430882 54804572 424938459 287003556 184838834 896080557 655637152 587281366 501052683 470940877 351630054 428303031 750129476 229289688 966498780 708697585 583473763 122188037 79798967 40884058 89725666 398168818 127786603 517417075 484141343 762219333 116522021 811741070 981498889 896598425 216710824 359471592 150595685 290854597 284657997 897103203 884886683 505393744 910214701 824655623 607558044 602841841 654298854 916715939 891620973 605406339 702622487 414348894 365020786 230039078 436332838 313570712 281028848 234966121 660720439 165845928 472266487 940728083 500334662 680641848 390862390 190673689 999031278 136810923 286799785 881100765 574393170 958869239 428749570 170463774 700456591 583981265 598432721 535885891 2250293 40609186 646893315 338136038 707226712 322066381 264598871 723918241 30272271 661114136 909462059 148973040 509993416 773983429 123774729 428116955 779807279 244897492 669571464 749476005 294420912 438581411 349372963 836932716 53406690 197585997 152675754 768341622 527548890 238496270 899854312 104356434 632904296 872941334 407349718 520620672 729629157 5014532 551494184 150018087 640365062 763423565 905944664 593229469 59125955 449818468 546335583 228611769 598996177 129720500 332568955 612188004 121384448 909546691 288270975 402501369 964043686 477760261 271313417 357100938 265635676 361127621 235263986 167893424 957600140 892536415 220186701 988113576 102127200 977388550 440157756 303697383 832652721 756789797 707675451 839789714 527469324 771708206 769900550 216137338 527212571 311854134 351950200 81111398 291945622 955355146 992946286 252981440 776805218 130961405 470866153 509783079 435578257 547790277 940900545 247931370 568070836 8086148 720069273 534504555 113087065 834067299 991293269 852872369 788210508 684131789 785129397 348503211 735059408 700141948 654849023 785823222 420661920 417033606 617056832 707618522 789458465 954417301 600803427 631619073 791694620 588261465 186033447 326976091 873218570 872292693 81245848 226790085 446386098 509795069 316648567 993867136 116529149 325715353 583275088 305994260 925480422 499529247 155908343 452349613 243701536 425083578 294182001 357054523 843309163 551008964 629301179 840358185 95264558 769307434 791651117 93654886 453422484 963435655 783202750 90207026 675079758 469458901 441429907 211132409 718650650 247058925 720953143 112639611 364316363 377592997 445347337 781774564 492110842 987029482 178735276 382488250 466483835 948224117 452884896 617783633 9224422 52399735 158984344 256596797 668008996 858250274 696241629 785768704 312963293 544674285 343088587 304868061 453056327 814283676 523865834 149019292 923461706 689516915 613463720 635632091 677606758 118158960 818286230 391817077 402010948 548009150 207616893 544223783 481863024 574761666 90979234 164429477 39986836 433244655 389881583 176589304 416773650 985934336 709206702 173656123 723150921 170854247 131094839 283212380 901336238 107962779 395128134 846798283 534866762 349840060 583185458 183631669 745841863 369827837 134686624 643333496 873239108 269439800 582840772 151618375 281357095 189448285 405618076 218049803 181383962 133259482 814223879 376443152 460065981 610866516 663645401 799508428 741592004 426986860 864874478 822937290 746036754 229808301 907257309 706642089 798361305 327431824 414296615 706614708 682853620 51548488 158889290 730615704 670656641 801179238 275201916 774769453 343956740 552360854 332509991 937397155 539363585 224479194 161511718 841590089 702633485 392139935 900025198 277201666 570015345 126203847 215083208 882349408 144842474 834795674 786135462 680947963 109629970 632072598 720851876 172686354 904705979 488463240 393919757 314354165 527266536 316796356 959590059 180735039 754576309 295713109 473284040 884247172 680906339 995745880 888422990 689453913 876640752 756021170 995771791 159628651 748790866 969363371 92891099 544259969 833267353 996496919 701964438 247887869 189822615 963021039 937973806 55014977 291675840 156163538 814692387 575098393 998541678 689501050 551465022 392244979 575863829 766354313 506913662 232631820 549529796 833916879 976984671 217233957 661963223 535907563 207920843 362127449 204897276 668827650 84027665 189190242 148231644 22898719 756206453 586594229 575245507 823704713 788523351 564459732 540040655 22795244 344596913 517968500 682753041 185823220 511200538 813556372 462617963 750223568 440091923 66782195 963723447 325131741 429615544 560625591 603713219 311423546 166580680 895469184 470820436 601357900 943636307 38748632 620334260 893552776 438570679 509901321 118345603 760975622 208580151 948109706 830838528 646388844 729172889 271799412 907735440 810901517 196917343 961002856 391437541 905209297 867493386 675938815 133564875 652710226 147101698 720029079 39730358 970014564 955895960 831294747 968302416 883378371 471726940 92313608 977352982 869337995 617272590 976326753 776205406 221856417 42044665 385820043 817425573 696294720 990787202 308227627 810926346 413865561 148137926 25135567 346102034 919292600 962945119 391255460 191471096 209937882 155934151 780330265 814221618 53264253 160338521 969655231 604867833 303953789 893811408 533784900 400804277 523177761 129516014 917564024 39992109 181602407 998079325 770689647 930433918 120479960 192254885 619720679 452614342 417746926 797043479 392850935 814208552 948264006 776047355 469825769 246349189 99368256 90267446 61911038 949826240 606019750 148750522 718095807 127415757 46336221 779734813 466133297 346903733 901612429 555459687 723505481 113958596 619175834 319380628 514601290 665697612 449939568 357360614 318794339 800324715 650875647 98439442 654502870 254166038 281182234 733336283 112019911 760232183 606973647 912042294 915065907 148009345 899748052 151640301 501706131 757818158 792048588 402666683 472450113 663132562 991206396 700745472 189631907 70262068 370689291 497799300 332685245 788028315 352535626 235318109 141531791 941152273 866067340 199408333 642085554 84405462 918414535 596622622 882650868 388556091 695836619 998152748 407972239 524811173 598860253 351379701 667436656 126666890 551664809 548138402 175208962 484446237 694335756 259067164 11141097 615566578 410143550 933832261 32499706 376288993 281261331 125553877 962540339 586687290 178725067 461462577 377948071 634829979 621588804 921999431 114077239 231657261 542915914 576668040 826857902 643200441 118548312 354677136 911038732 372819743 517381907 282916729 39853068 55987943 296621393 775033176 722307557 95709279 273668897 747712153 159728082 597187981 952086284 393716047 307792188 534088133 364890012 712846490 218500888 739255767 398384194 985268911 222853054 223783611 798991153 24389000 850056880 393716852 714915085 790834056 141142639 334009709 183794068 745480856 378510871 178857333 102960382 897700549 869176387 414491407 369145527 253722916 449422685 264090517 721012483 945967905 975609756 758826654 867022409 233745592 496027994 150991940 200863249 419277532 444272382 85273289 838703039 360103278 499986671 703880005 867549664 520273298 936272345 662135338 308358009 820581928 401422929 708105607 49041721 484551465 37440300 939591356 770516317 198029726 763449251 572399315 767398088 184430354 69392258 110088885 617439816 301465480 310511130 886683643 231676139 896005656 637617038 768715639 979561274 715335438 778651627 333756785 684549283 196563414 829673630 593126806 667376783 384865190 366994283 744401312 855085909 167859662 507790200 906023868 418288756 59616511 402533821 248610753 583468358 646383456 450660604 419438667 950181586 893524025 297931358 713053804 403324052 530357957 366441628 806254447 395277396 483692369 305606340 124582316 609779164 412932092 829622764 70237036 238732788 936762378 437207328 502017567 640600523 312269706 921486586 530199348 391794881 68401095 574656323 742088363 767500889 416024464 104563373 845847185 682832932 742342816 622327620 244641987 446638772 17017192 614813134 176864121 738776616 895266609 811042824 372596400 915638736 75029299 836991326 738615918 516847143 344220764 466695470 546734321 122035354 25487546 578263880 933155467 136321621 118307472 200535092 724975428 33290927 220850488 479324672 696379732 115802580 716602055 633969403 471505788 770561105 660580941 936023434 874825079 713521963 572982728 73108870 666298326 203875686 494052495 25912538 899150328 843877330 422588939 295470434 60594485 736746418 866599251 667684234 659748363 742980549 464683742 837945779 106909656 571049468 120019034 399120044 409424582 559941890 705679620 380097892 470660556 827964717 119355656 149667078 736792030 148644188 795665126 879756855 224648404 96706217 804084736 235379470 885688104 713513811 355493394 961825276 641609337 492971442 982268503 528972096 711285974 718635780 114811605 128120887 331237567 49694813 691681262 218818256 256305309 803044874 356187388 272770114 526755274 159369645 82819091 362938012 153473190 419414765 51712369 421367664 268340864 540755584 881261729 829000295 56496813 403609305 472608872 822534194 391571600 460630956 782783334 587772662 456539395 828608775 519209431 633199504 425149873 736751027 836705706 383306613 879300497 707366230 500421811 176794403 539903926 965651063 112187236 922688214 557437662 524431143 735133561 770688517 791548368 668849123 687833863 185065239 263394068 915598475 147093125 461879902 810154600 472503338 103175399 75627463 881088453 61214219 459737688 443241622 105884848 414309515 240900282 174806081 85679297 846625843 942112260 49629933 404129264 883021413 610412951 577097762 447686966 67642369 171285177 385565979 84459522 873223361 352435866 581188053 3039470 599691739 838560215 513624093 584046115 990111483 713802241 800189626 844016703 173048227 938324559 455157323 291166652 837469383 505474088 376409312 818540340 918866211 940108756 642131679 543999647 772769800 459161338 914879845 420003301 182187183 233310793 916870820 69840020 554886806 724379400 627734832 463920582 762156361 838815238 31787806 323794475 223626307 782634109 863319923 625639359 476311406 137320520 448347908 416814271 997271783 95115663 177822439 303509131 732426897 632625378 784235910 433935106 958653626 699675694 468410976 830122027 453649568 730222957 706848854 237668391 442145526 796912898 724118494 929589766 574635152 257090917 930047487 801821533 234822703 818563104 26102005 596594210 931871282 156921889 910131141 817894731 797775319 281038174 340585125 457752509 823630350 303344106 646336552 165088991 66329147 620026505 889834428 495442162 225960726 53144275 817411253 752132764 632352363 59219152 601703064 309543385 62682179 323741643 498054980 814826883 896209730 953052111 698429986 609699606 519347219 76456273 836710826 367146825 632350312 103186285 515943530 958445936 681834206 973905333 536388327 387192658 310197293 373904382 277906086 196762225 632485751 292850554 806481923 830811569 826907179 823196886 672170879 612458984 968657296 99980941 838872938 196716630 540045203 985224773 934223304 51932746 627917173 984433715 727720761 39906412 732769545 206220823 582457165 620207781 521722571 811088529 108831378 341015935 341268653 400461733 765974565 870054822 595845319 578249584 5023868 567228956 1935231 535402752 913203508 428071546 634965314 467192302 475850410 734702103 29191777 916943073 315045383 417635624 302117123 758150651 611993057 122782233 988464761 567028340 966020127 536469026 520163527 27521988 932912186 31790994 738141374 382502705 35055854 152931336 939731540 609630257 303789963 213021817 477178772 908460160 222117505 404069611 372132597 90443648 25423662 639876624 976064677 295657954 718368176 613564733 59117537 497246440 98248986 271766238 953270983 727377011 220887747 10972947 850817371 367587565 385855069 530650939 201718094 408419532 718038579 743064109 470829221 582916711 817016044 919700193 581559805 773246601 26823911 860693461 848011416 373221000 380496706 295134894 847322351 6323437 679540724 967449613 272966693 886216607 895905634 778033146 955714981 577699842 2885847 979284048 995165592 486808929 383611860 856082787 400678044 969906094 153695923 573595674 332884373 243077063 880140486 888554397 746098173 373759391 260594500 223144998 320084547 616460592 963962028 976385933 455980565 189005888 594334052 201615900 418997724 719003835 174640888 107496483 647576915 345373636 31964755 222747506 817395227 977977314 280058603 260948670 563273739 661730309 207752191 114919950 238558639 974397546 266945858 75222610 354279359 413870444 410454548 158028636 651430736 988438510 742302231 834771511 36085982 15654206 583664704 768209107 28408633 111585895 157954367 428344475 30156749 512461479 369422538 160918037 677268020 413328617 971636810 608000377 460754975 584203025 410241077 525212258 729099683 534413708 903898672 978695971 100698510 150392757 597448630 362280696 910565098 78631097 495606667 179889811 606115503 25614551 583525 925120362 817710690 955284828 564806672 712017707 394346428 32572710 924260088 874087960 785968155 410499756 279933765 700192231 11700919 295747071 567980251 439392650 626017372 24883314 742762322 30165210 299936758 479534953 172892061 190805110 750200542 547078911 778345086 193006639 546974747 668976063 237816056 929736283 562729791 907047313 517613654 96755517 684226279 711136828 403669657 821494417 1485654 784550747 598101850 166409068 888803006 382926005 665111200 723640095 7693058 982439672 265676668 984434086 37334174 755125264 746758044 115312985 544358497 508260012 27311554 15898573 223958095 469932475 296774976 550767070 431196321 60484319 844902309 615338750 167394826 676941679 457392858 128970579 980021848 669273672 554749640 855252528 964220332 720622185 302626397 309193098 903340399 123550039 805264711 885202564 594480880 714379396 235928087 290995796 352216674 478358355 955113213 272492659 743146048 139780807 383482966 261639523 549443558 257955053 439152375 465805088 561425336 44644605 901177424 22774916 509697277 936966357 115616355 822272797 20516080 212742869 501869075 48952279 60250650 971722315 274215526 639901930 222066466 449233307 19589128 735496766 832049732 432847057 882123947 470868864 309801876 284430784 831725410 921838605 756516700 560406201 82538560 87710842 749180320 857654740 241423503 540518660 35970916 346933902 15230170 94435659 83180315 532365441 825690156 397627125 710439405 4055454 318889194 847193966 184123510 475342027 914362121 831048916 680971120 399038633 495424298 27676073 815795114 552450434 590524081 559398913 187550020 86306903 768570013 455688448 618864781 983710766 373379828 658490628 267579390 488432278 246753630 730088692 318036517 431559307 97348981 357790356 390692717 342777397 515096004 164024310 667892170 480277593 626391357 809863472 319167396 27150740 646806949 827227750 60660192 475079284 32504182 794444134 359330197 406349436 361526988 530991697 941159167 417748923 723038293 525482516 610848115 472842057 713824099 301663109 912040013 450374265 653893947 576660243 623914607 958145852 688281485 524667791 148073276 469452292 273402579 902329535 829595373 785147405 421733036 550351824 421205346 855053842 143654608 198366440 810867720 140027396 222911040 212237013 17000368 975679784 764765949 15630192 837344318 442616268 643218600 739277750 969515014 366012163 546339243 58214295 254435768 745684295 118555401 158362132 675318924 201302821 826201604 27462147 16993232 865575187 918176794 446227924 884252288 500284188 861230833 557702085 206585821 277621348 951069675 895922572 510153871 416194298 701956435 795179223 752351875 509811392 725058092 473281411 363556805 853380934 175374267 109639275 887654574 776453079 651260083 708176752 253607676 409721001 686756331 248690672 705947527 916147667 710029887 30083956 125430475 62085429 255047549 228509078 516114107 806302792 447299949 424359530 769741717 454964372 405108550 354427080 777171056 635211628 613659395 459571057 720817389 339670533 383017091 627041421 602630126 9252584 574173113 710579299 492416681 279956339 407263715 181535975 424928225 996880162 19276362 221425907 620608557 615251935 29065039 179810400 566236343 523404330 955558078 43615718 319125472 154267875 428006238 719560821 375343165 713323545 219254401 842841394 71323559 134867753 13591560 154104672 801233688 392154320 991543698 21077481 381806302 822875785 28579922 45064071 865743783 546376660 941952176 344311632 740574429 327358757 820100457 418378909 634036813 812116772 389481303 836361919 693975057 479993157 696020936 305685066 513655728 682601274 60045049 875412919 644677627 549214808 941842929 248120259 740497789 977137067 492614884 221789647 324326722 63691865 366203490 907792334 364608639 730119815 530506309 853007480 655927616 216135727 482254959 656628463 557182675 706091533 901027294 832454703 471215474 691545009 388206249 585235873 876489004 522851495 722497317 395318157 389735869 806636860 696640853 936452290 421307362 598153589 495870962 473202825 847961116 507788076 108456792 1403009 493848425 690388974 953880202 19030391 676356207 904633465 221802782 671328690 44869898 572878586 701441804 330631750 140992588 620851800 769677572 300983543 510421398 298261682 761673192 569165670 966945311 829718221 371842431 923881189 224796993 615927765 143724964 47929121 55207908 442701346 538159440 934474113 928240091 549325053 843596756 68388273 20396512 668455312 275364413 732795316 665200366 393304097 571372248 341897592 606109366 181870925 613660127 960023113 250684829 926506025 504747767 554259899 781216854 813980913 405875050 393213340 715916026 109259004 906359772 741261831 780694478 839786832 409670408 481095893 266139000 732661268 880514523 141659158 49851005 919559013 89563268 134014083 853609116 374331005 460515903 411854356 109155653 973963591 380433587 216134174 230162515 394519858 241779464 273656172 493119407 18820972 765433583 16189680 952989047 757157361 760340146 584681308 33211958 587142849 45306665 225020910 30588567 375047708 10625232 808364985 72982795 22746389 859743156 300605232 856128593 963565942 166562998 785447198 749261851 967497829 20408994 741104615 124741482 637341541 634402380 281311399 537134652 627854637 729654955 419171430 550290684 769489773 33168755 982293118 528112108 728516451 198027232 103367787 469277617 833584411 572458137 184081768 280171745 659363456 23823482 649285098 554549299 295234610 268742794 224994377 416648924 496647135 721077673 240253296 580366598 267047896 249565186 728416899 707258679 50465469 333458432 991251360 36694899 678032613 819311359 378381782 375235244 537101031 430674147 575029256 697751864 828969073 498110514 854177249 409743152 263491188 830988057 610886638 864299196 819758192 344677942 854509615 712961368 259342002 68425218 490332625 807933080 154193366 579585842 661232784 827290630 744403596 557788873 473976618 567396751 191991117 660149292 201746756 656479407 129560203 158031968 984435100 910378614 654620392 23213571 576157172 996203674 349701890 140172648 475733993 536218256 592056345 735549922 389929499 424961828 784106210 583333327 256029356 299796801 136672676 649449954 904964906 80384632 6461109 994995320 917753029 17937750 888512609 69272916 613316343 930892416 76425581 171535968 792345562 530918854 885094130 661029312 679818027 601181387 465275859 720146786 454122698 950488441 261420110 707047323 384402104 98703745 103298025 619846745 843768408 387440262 587145152 528019277 291873276 734059637 375210931 836605362 389664987 21392891 626699812 274172671 335461252 157585797 933615038 38576126 38208179 423445016 414100400 363868434 988674683 526912999 284075980 93592265 748718845 266057909 187748369 186709156 403668958 46271532 897263048 224590858 502899140 498711221 325779290 45223976 192637549 659175423 384198260 132245983 393234530 57942199 731703024 471627574 377338180 372657044 769550644 620443196 490711433 774454758 495119224 918518307 303768100 556958679 138732816 602804549 701410879 157267945 703801462 366802484 201654753 324547183 593587265 848351822 478461889 230971951 820151038 665225478 776561040 140678040 444091064 274089242 592361072 367422146 37105965 578982704 85755129 448136026 268462656 448771009 420501667 510692006 617016289 291450085 401661256 959282301 539774670 869981527 436827625 600443060 551126167 167539271 105729799 538313540 16478115 456405738 382688954 601737853 40525912 292627257 539668095 886727873 510430538 370941047 75176908 488292896 629828919 271931921 636047891 472372967 105602501 604356734 227683435 537748412 377299690 973030991 897716440 901077780 779359641 182176380 188587993 675363665 267967027 650294825 325640805 354063402 910730167 309510642 818004096 560797047 243815077 10186910 905270662 871676377 281867840 672350689 576452826 939448084 763449556 575810170 959820604 258726939 113462675 726390006 393630048 429724966 814042103 164412104 189811727 795283761 848330278 823613358 124002903 961288983 62751981 773598595 242491586 539550148 206014626 851641120 753471807 900593549 638536715 444678543 291398896 224972310 891906140 344784172 297311877 40041224 864812044 96494470 462785915 579902930 280173265 258493445 568750470 669615567 867896496 350119477 904889575 921787744 317560890 607956065 866768685 126962311 528636552 284763969 760426809 257536610 89270025 372846713 172371223 490212371 699751133 805011698 795548248 764097926 286252312 699506316 623080574 586347945 709250516 568654248 796877218 857262283 238349288 225829306 967193437 319414697 486182410 780630576 926797709 407764980 400144779 804718626 271400621 10974889 857787607 298891169 805573529 168564452 104915715 582743963 846743610 797153835 512335325 630405746 371178287 863114909 654329560 742076702 491199628 15633853 781178150 175937706 633634951 57741545 974599083 558914729 324787834 994237228 60997159 974049700 889069390 977623082 739507366 555073527 264903548 988155258 188099690 934548452 495713865 44781854 941064766 210678123 921458315 765348917 747754383 709268311 833498822 591942716 855763812 413434576 499947718 935215308 775030245 620618098 943090009 796040382 783781342 478723366 333970427 625821476 244481403 571605141 838206701 852282608 105871506 296360689 479927315 196360852 672698674 866765444 252966244 431457368 4144401 54941292 700407537 993650578 588623166 144865181 608593051 146459161 838738272 574118512 16170622 146706910 234447037 525572446 667001312 865789506 409429713 839064625 526405036 533650353 113943643 895908540 960265452 343095297 312710801 287586999 575518482 804183569 964179014 849601790 853751524 987166357 602286911 758486657 999547977 250785609 697488462 703440363 280380951 38536450 234020651 620953690 516075551 1568173 647842827 625389485 694426307 700359396 863248917 373248946 393906200 989032927 634358677 100351922 759018497 188379618 422570070 986200138 773262926 99316901 290795917 205323670 2789129 447599617 799428002 980764272 607505155 313623810 259007231 847904956 140524900 87940588 724943522 240650798 267421340 33495349 205889778 746143859 964379395 803973184 333914737 536240839 461041582 513559826 143404025 243320888 500643444 787913004 620629820 743503039 230486345 801365411 170267815 167164765 625433196 556673845 181538852 576819252 90232307 901885355 319863195 899946176 48901898 983256361 802621338 950613834 939625082 265981616 928105982 510888226 393714620 65382120 23039943 786720377 654147170 837199625 900624384 887471781 182127733 709788219 474716009 361372548 35650307 402906920 551251928 799977829 960993890 621465016 926464575 716193322 426848462 79067784 84068359 354513885 466039840 451997860 337947892 289821354 514329521 901013437 78494305 311664143 311606489 55043747 312813244 32593038 9320959 313658872 4782313 428752314 562697759 280775349 192932651 187729131 163385066 710595681 214040979 755613990 611725641 490020779 220050616 767983183 295431582 95233876 382732823 151946289 548233200 781111578 330209669 837053247 998532717 413384395 6679593 377202870 902055634 881388881 485165555 541343974 253590894 344966476 410791505 781736935 963925765 651605653 34567426 67844339 881558397 622495321 767261027 852621364 380949659 694482546 317461411 907533163 789800535 427489122 428196884 350334541 619497571 932298725 351137609 993151318 445963136 466140310 625744362 618040169 952318292 888917677 906081678 735048027 747699997 584671898 686457472 862882960 515472373 199471370 328147802 105306767 18893649 994111440 278429400 705326951 995450392 883707091 10850585 636411357 486831814 270716591 630430864 442340097 847581938 182913424 777100099 888206124 925335345 467684064 283235442 421925859 16043489 370894716 211409452 332270353 925293971 488527712 634271181 138992010 100154878 801915649 748648180 462119299 75191462 565746999 659956885 426542622 8552631 741264311 412285789 431672723 98196358 788603586 961337635 55192044 777956156 409570877 428423649 590338056 172702436 521905346 481420150 900659262 345454423 278623639 26629822 804853985 954805636 287309534 738868362 222566830 893602259 356605001 623863840 95883316 820189739 268250481 448597088 336018340 380570297 613999809 603454594 121928983 671649013 36436682 380572790 590231480 70571365 253033978 296995621 679000394 224429715 12748935 263671588 748439808 392913700 234016084 953960793 436908360 392637236 842447904 583073941 707017104 19421353 772770044 376564556 937947653 319084101 35626129 334052583 481174206 360256825 730399244 970040405 172909219 55264354 715305950 9583302 428055035 377935172 583873372 464714689 119554086 864803055 828355090 159460065 723348259 143449996 662512081 768765977 890824741 71428365 230368697 502800633 140564034 848975252 595885364 300466192 496217768 253815144 513237328 804360850 988520202 620673000 147818246 41690342 397473101 587251950 109763808 499715185 737582710 434177157 685038773 289635460 162313875 346223907 333424659 598839201 408383088 611237023 912480737 688651570 28171651 941845155 595319759 268146348 33278903 973644162 879931866 144269830 607581901 563969557 180400063 165575853 110535249 681939963 26423061 292287526 636028521 243110354 883083725 699741496 56763692 876930037 996430430 344172028 804866769 794403856 635046666 12818024 826610266 134977572 997085138 107569345 372168700 282782709 528896189 384276637 753067886 490137835 662940191 817541016 577823265 522673892 155796381 230696894 564026168 542221836 731289968 719482673 611448419 856233868 439686668 559040281 215163886 491074152 950356217 400170734 264480010 347364429 441297206 153784205 236659677 793989672 667013784 819647631 834305653 690368845 415156950 475213986 382756153 617327827 340057357 596688124 47602922 990543949 280738310 498397715 947274909 711415082 256455828 140555528 329874194 330497553 259043547 745657466 300291069 510141285 284141678 781685684 908767541 765131431 527157591 896812913 618672026 89314361 295222087 576076424 364945987 887852324 383350682 898586008 874815418 496429133 427817006 590977970 245660403 743639185 718073428 545353664 103459165 761577173 924134337 840331578 847900408 337128146 205544120 918777534 302723407 497660503 482098775 258614506 42894412 847183991 638072935 721646101 170995186 534751594 158386317 837170050 919966053 907670675 75914770 960174507 509017364 291968903 824875434 771978804 411911559 472747280 942406395 789144057 182949378 98459470 361531560 1028095 660545893 415893661 779953643 975929471 450033595 733636355 46651352 967276360 429253070 587173944 659751360 311005538 351321750 55660022 392905472 840415721 480224728 389394036 974105235 962636754 611303546 680535164 826361519 454640142 124039619 170494654 857104368 828063992 866689204 698456123 7579590 576712756 794170833 275436500 201475966 844286049 198856130 315086229 917301869 112114234 549206525 747657196 49334109 208034876 983969501 787114902 294721643 699953627 581939920 538431815 673649372 334411322 842855651 804528441 875034951 720052132 857092890 293986100 423404894 38851559 74809787 498534956 35612407 442823143 141999736 519238743 923521140 292077261 882399541 209836076 113054141 632362132 137669468 57349829 825227823 52537839 539353762 965751749 770656182 837072921 177959841 649519311 465793025 983726749 104494702 695710600 902076793 85980735 344992903 477627675 611158733 457399461 676841894 613832180 680300535 372836751 863105812 471333103 503279705 972395494 600088722 409246749 416300691 243382145 29883164 112458240 262639489 979091516 326720155 692540873 514390277 225332645 160383202 779943110 338229947 456693315 19845405 13166353 24659418 429105766 384866236 785275390 407772654 312319193 501725601 424672789 300060206 953688605 11709379 603471355 621884322 665373929 78428574 228332991 900504241 860054109 741561399 685851395 730955147 888594353 192802244 298598971 68167000 102933930 444413385 484586484 653832031 586107722 151267496 346395064 142603735 543626736 804822552 179680181 806004569 838007487 10148073 338104907 441898738 91373261 835598493 597896389 890262941 587706431 291086217 249974611 191462471 59262546 759570507 529327835 688997842 765753241 886677918 857199417 53378310 55483756 345436642 113557413 738936863 602273972 45043608 670890709 441167868 678243959 275078462 318686269 587838646 605239763 845273923 429360805 234842751 289516527 698910567 5124945 152847383 948663275 114181628 801381190 692565650 371220344 533683871 320302833 250594311 391955019 834519562 515432520 702072908 886981453 765990890 61865742 211297549 849557856 742152170 652651418 203838261 117756465 61057343 374426755 330516993 466536956 363551931 68935768 797865550 904423954 902137974 764130291 33842283 655545408 370837147 401219750 32357239 128197466 668989086 250960646 369169298 492356800 509326228 971786306 170152983 241338818 831373848 928854891 714523582 779365465 321939 347828380 695997370 377039860 152911875 473712129 121854578 266026174 33925583 166225573 476781459 169809786 630122699 520469442 592783244 211998455 580640148 869326290 916888818 627843325 30666578 205456223 534353310 790397542 64731738 462126183 135093794 357912420 699052587 432505658 692585447 63572393 760774860 38452341 864310813 274906973 594447863 479641259 422344650 562434718 86062086 340419361 396953700 837499631 474410603 297837260 223010253 290755798 494672675 991695854 906015444 981288853 944004310 234686917 665373448 861068713 641273085 60781681 844179468 648762646 69807930 634037293 74483200 377348408 595587598 805157803 999950697 103773861 683039074 932193092 913224320 748842738 559927848 848815028 623381214 790783862 901121092 737548118 367910056 457196414 295996748 927163952 680822909 961496788 416747313 222197002 148396276 272808063 415933699 71509098 525768074 786315503 85399335 695876503 515823051 403940093 979252543 620103224 886321225 4445976 701242121 116195982 335486977 721701211 930249941 253905847 590259443 607554126 447666974 967762591 634095612 462006994 650587761 563973387 76165727 86611346 567096757 66562122 590952738 365259865 251963953 54420659 997932714 793923908 554044560 859996259 828050508 223008393 679853611 468975482 588703002 416545360 502077136 144631182 219504163 766714655 576387052 209202900 169400663 838375367 573530648 712073308 965324876 138540973 657977670 748502704 179880848 598368037 101972686 854759265 2617058 315205753 448507570 799208520 146004481 348295175 791662882 69748789 385711617 825442901 285944326 95236628 703576330 476899378 200947602 389153133 730195606 948975076 118467253 591985520 123183596 526574115 780307918 309879896 262891720 28150779 254527249 273153291 856780410 902263601 520413993 939199166 692790822 848278699 161337750 622602248 78637945 225137085 670906802 641151974 333351218 981292659 545541690 893913758 602766728 473606251 603055110 558945988 178140562 863705013 173011409 38385258 70531146 123572410 127510096 375551189 909002705 299769072 835751225 357475303 24679440 811337102 884235273 86871268 48940732 348630721 417178589 555923661 609576024 720924463 758257499 945165318 878586306 438564616 161529569 939895480 771621786 461483379 203422968 267777304 424080468 910388730 398886266 572032881 771098971 40527970 975575173 869363086 415476194 297652306 884962034 669165665 276263523 515207090 218792263 871823739 326860499 997683578 249999865 160257492 262776202 363253060 557190403 228373295 520714069 556642139 687160967 484377372 564041645 731430841 923751330 851969432 305512200 820240169 237106035 483534497 377470693 273470511 606733297 723858479 888115003 139746460 474833093 77467154 912204995 801496724 839923308 821829288 455985566 934814884 150110531 973645591 431568964 590935022 766929826 545546273 222395355 129444662 444011297 366514647 923655082 723877628 915343015 227261218 925877782 506726550 322546116 157031919 630450767 99602164 33639537 156783559 952590393 966781640 722202233 732025222 112559619 868239202 673084848 593649595 287196960 884992641 709591465 448040859 352018637 742155156 711106745 133627817 220493435 596919859 559480191 544797122 871339788 418499566 135483968 527902430 467631226 494509212 604468273 105347770 474822122 653779610 275912362 843301817 88976972 364481336 810003683 471102190 177204641 253741121 219470775 643246509 703267047 882820132 834059341 381127609 986861950 43395850 934710540 516874459 955067552 774499299 354453680 827684516 599881272 35874200 140885069 738068270 78309820 669135998 51117231 963291478 372805742 933299793 662344269 932596943 651442180 113826650 42816380 857578495 741887539 699492743 998071774 340001731 30254432 712667680 287414718 903491217 929911622 897154263 699972303 944506966 334479453 938966923 8531978 706818786 631579591 255127860 818822490 804085955 967479207 799464686 330478512 489257052 249659061 189256575 308603406 846019347 884686781 775448983 749103997 301134084 624771773 337600010 751710056 611209811 367875209 496134807 263502755 881195722 128310849 200524178 105703573 807236371 483013163 163439539 763795727 732814012 976021400 5348749 730377853 192368254 524251645 471450673 993512988 897698469 190397856 983537515 535962999 577559329 793959172 980231529 489702812 805384087 322246514 316764345 899785456 939042334 390869137 761997422 481740028 452087917 404189786 528530409 506926090 798248382 629656859 65141917 359230342 920261499 497281801 418987303 249104609 147524178 903974849 931689331 815293364 517628329 24769174 432965227 514657116 133664496 911610767 954259235 548817517 657732727 318433507 977474255 409445757 70226489 929779310 428649351 987373841 691262808 718104100 227437031 413016452 840424090 506338730 603043594 202024873 525843031 398498401 651764281 798343759 358805256 293512194 725002740 763075550 625582694 183963731 142456339 903191371 906662736 468820110 704764461 741438445 429915161 280575785 186417800 719870339 36393984 43191068 188684071 357121777 584814746 919603909 23984981 821548709 998871455 807238036 574137562 895704630 913072140 181440791 29583257 878374523 30096893 151680208 647444229 211191675 485850914 737382961 599388584 283779253 234595703 260971376 18010271 844361090 715016239 163589040 517541709 352977951 688504997 118835022 91743105 121610000 399524178 504591124 241586090 713326320 707486600 402095634 787073566 830128360 440698851 620300901 389265960 425684870 609994422 429314312 352169227 416464504 603588883 80625619 5614594 999968331 971480053 430738282 33500925 135536903 525175078 898492545 590370932 757428695 799687496 499080839 739810098 706916606 999580112 104756054 393493568 97723327 791915725 114750498 236886059 801429567 819003166 55044440 890238088 645735682 44883790 810465947 637133519 509377826 190220862 716010011 929672277 755199895 188336253 257151361 714547082 374085225 612324236 994656370 375524463 490852052 578112318 515759875 603173464 675611174 203536670 636736239 102160973 499955153 719822177 786687651 461342381 735866097 457177289 893330797 476154751 478694928 496420077 652369765 416742648 679343183 666590075 604751331 217076437 481008861 422805119 981570469 221429864 47848982 425171417 584781428 339846307 573642355 127038915 236728377 369684333 629781082 84477019 463399643 993639226 712723776 777155741 973939181 124749996 25675839 723982097 259142542 572375081 63773300 417434674 545901608 428206249 2673690 344208712 210131453 858121349 593127259 282107118 42514080 570545812 731166781 193799940 886450172 168821032 727868578 249352206 662733864 770852641 280961953 171933433 344917084 559102323 86827284 520546032 925685852 135530997 429760054 652890559 19306200 536208801 734978148 110132433 841129969 841979853 108221629 137375434 73415352 675349758 593940869 618171412 922092952 695862541 121612183 468525194 650412970 64766434 536936932 709930193 248049370 634023209 438383236 739379313 937281012 714022898 134918758 595366171 194323400 396037921 4369484 537398718 107785206 991640932 942043466 355605012 417542028 153943732 114657322 638574086 471047602 908444820 331466539 779002299 726453518 591496284 275011368 674081777 118146464 183916825 854993638 433744161 51861520 315469764 865545169 311058617 945824371 772621102 530981592 40905977 757748015 961088623 662561491 581330680 140880882 536127336 153940885 282632010 508096678 924942808 550036249 826271580 854183527 145368488 401169154 493816544 553230579 23630268 994464002 899562622 474508866 727630658 175321522 925606413 510723364 25922530 723770661 228367303 429753228 998127964 28781805 931210518 953879540 138354712 400398962 350795886 404906545 670179502 156270521 413185192 218276971 597337325 517988844 355406514 32816280 40930340 743836056 712683310 42239582 759885186 973391012 493536061 22228664 866167504 563677221 467138569 227762679 925642300 284052710 274343827 432687947 642343898 593852614 183547329 218166951 436055953 309494903 108057793 389251605 921922610 330055867 320760402 802002490 508238090 35948132 907700176 11813407 841277980 782089551 740105804 272851682 265488164 802666860 64302118 187167993 918091302 97754645 61299667 159022060 538392352 273765242 570893042 517487749 876310975 616006019 884181607 20353110 114557979 640514170 143465693 600303652 989225810 85152729 285395435 204573025 359352929 368602425 617067512 295242863 558321174 630552542 728519415 970108072 627613465 511145110 120847613 717454961 571240089 479370447 742607560 157859245 6385830 764278550 489041371 112998152 274917493 392325037 366274456 604318176 172195643 271526407 829704562 158361912 911379029 967312677 130175680 429780912 81066961 398731463 319782361 732743895 215368520 352183066 221589991 743172928 942605055 480643703 989895560 637955538 342005605 339156113 166283666 756568729 92137747 787727976 395525205 328555237 704197625 745877327 153450901 5035133 259456434 287922286 485973863 924853594 692363433 972043602 753078358 540813062 134784953 743754449 109640174 501591551 414868711 811867566 226183648 329316049 808371683 844281757 945021279 509033758 652415961 966934207 814818589 21292171 106774562 526396492 408152543 69902080 839307897 103433779 905559548 991240077 734976515 100483831 638972508 500212159 310021117 120555940 474532956 604641885 473701622 677024828 457323432 975731945 722760428 838051196 371155255 782363209 77586058 770608435 407615431 464269044 65912370 329109938 759068367 236460389 165602399 503905534 471545827 298953781 315112356 402610606 960549552 746029717 690588310 674478707 527970319 126546720 957873333 914909263 536505640 213137286 871408480 948219722 326405426 283406893 709075287 639842180 584633508 813756168 701941604 862833178 919512513 794683289 42976389 568136530 773164404 129427916 935297171 819131333 366813069 202560181 557961819 858056679 284502128 740859349 917133781 741718549 101484001 9176243 349242828 556197169 947474752 285271808 128744094 317013712 231026746 263352681 205577871 585763326 890007643 173060104 126414384 867514255 531106068 286406167 741514298 64060507 759880140 149518995 591887796 869132339 719099893 831007242 789934375 27699341 569063467 600685621 57592273 88119157 617747023 373190616 781542147 341605829 813999809 34462190 17859322 437603432 655688655 784985491 877174926 483305184 190228304 138306802 778958956 164235981 907978524 198690417 864754125 151036734 879738516 435036766 398536736 980995298 618704281 796943834 396916989 675158494 315361277 38404093 492811905 457967850 671967225 322902329 854952591 831646279 489731053 552188075 772231532 239160632 642119878 797653523 855277156 551081701 189858671 876718762 108713382 528815619 222836809 930759093 65945521 570998496 749593189 307086012 42379205 104491695 11206579 133688940 234295915 68808102 391116056 549054630 735826450 482738034 409520772 254230343 906106987 135973818 958591748 409219802 310760605 285496853 31538256 46417883 684851261 889602008 320956994 844498191 687320400 851322785 663515442 731453585 587789378 718836776 237866523 471386554 502909484 382668834 128681704 53146899 906614472 39755095 375577166 113826209 103672415 820661246 319882009 995789982 919569411 87703789 581501173 669857827 251597637 782575687 120278703 5023548 909892162 461722947 53484344 304995665 17545578 98937245 842545988 133330252 833565854 122315504 754451402 757592345 309170796 870473586 320918147 143781855 699856119 607559969 370389680 293129392 447920026 545312519 700349764 390543671 841400485 735609000 307601022 129036707 992435586 141559241 955389986 36100625 735563220 185891583 872928533 645342379 685516679 188220141 559630339 425670777 206387067 921255816 721607445 166671814 865405140 780097597 526309199 387539271 252589095 51980099 351501721 680614441 860323541 557902517 21951597 933953595 596692443 164388888 853730191 3923107 108131591 862474868 294000877 850339604 876930460 981263062 308171477 986501026 448483960 102957160 217765771 222499528 825299997 570068721 15775432 357888701 277666624 645790124 164584083 172719075 13557840 378004036 692710198 897257526 519948040 506576915 176702629 510277526 818600269 733847659 210306374 627773230 451876763 546409807 273464524 513662574 165269489 655363128 932566852 560242781 338941171 892738107 205103006 575352677 952096538 814504092 964644378 646862326 773689009 234979479 254041293 309631523 687948784 410715198 913854683 906358331 958805742 49848485 733402525 685537556 489105012 113669903 100523075 772634494 198264260 243460921 480209355 455309658 346222738 135118798 517987699 418335753 668356719 998944901 429952240 481852493 979499552 157395745 320200441 723987205 511771439 965732903 777723818 714851526 350329871 955030809 346258527 447175151 945176271 207641522 893885591 472912392 218262740 910411485 662677233 819374357 704227764 663232222 948778938 897429805 634793474 884515291 347206262 271412236 66218197 92897988 170583625 424695252 263593761 769986665 776350049 645093052 715566918 207605390 309856220 54755588 216549070 118681939 604878761 632300566 274873490 603691429 355918379 643191282 666980027 531472718 978368465 816135402 553451088 177853240 95143838 116193628 912173882 3639247 342462065 386622137 95918610 87493962 213551329 23239280 487390445 507981481 115501286 691028003 325176897 422839982 206702853 37012286 796979042 570660336 304873594 694079337 898316897 876451264 889917904 940591957 577997586 661370392 591143812 342548155 779131850 347755630 962321112 676110933 368644821 65241718 142800965 547775572 183953237 634011849 286861451 791097319 881622246 646430125 109138513 50315676 26517433 556000808 388666143 198935929 667721746 624522727 118610822 272993071 871071277 883774651 845099002 960255836 342118117 394974746 538282933 343464434 910160805 505348634 57633153 964307093 248621525 712997872 203054679 988736752 412646620 132063674 425651112 793464097 625363659 841485164 840730506 772257668 305044478 944884548 826519072 343036902 361699539 882411655 23431723 856882348 103883526 378296694 163016785 904822732 101490031 124508223 547920077 705664807 24155093 656407694 608605011 847031598 446723205 758334695 23607090 397470909 18794736 175455109 70985521 956450618 675604814 608013834 261829369 422744841 468858688 714751664 324726996 539279714 381229259 863280002 642250536 356626174 695969851 162296324 961429350 298324174 316947592 345172058 852076227 370886902 763335942 646401211 611437988 860396288 743232468 204927532 967542589 998067814 507115654 843576530 285359614 742791548 16605130 15664004 297914379 103249072 244427281 215172224 765549587 700144424 799729025 292024441 87959401 369083696 152770708 727878801 621842536 671419562 665881873 960520417 503222722 740668134 145165572 448521012 333739386 990984860 906057311 383127147 809019247 705782848 429315016 40081972 710414568 215680470 405637420 259193929 698052504 478697917 822401389 890461437 378675051 538589328 156438759 935003647 444333976 681044555 788969367 301193899 978415259 357587360 737250314 37062267 932611990 817901519 875694277 187742171 287082443 990888016 15812090 46991657 897278517 546225113 989570933 582150562 507047655 525557831 421936039 911641610 517140796 658960277 7560831 127354603 457636355 333408033 781984833 232546116 984902996 611300751 570693743 169091615 288281437 34116943 460197286 974440504 191053166 263251242 494373441 919993462 922171568 467539373 830063268 700951871 532334823 579169802 235120559 839218734 846774689 887547708 92527932 942727244 926484080 881062082 205446543 945077745 631329524 683004159 149933677 24989175 833697435 70165286 453565119 640756399 937162921 437154034 46567313 163784274 2303657 404353526 503408545 523005621 499056937 11506393 542399848 8464441 32750251 726687105 151947237 150933798 438391650 638492521 696576381 822623966 464453866 600731259 485282788 449871838 265521944 168192203 610071600 396311039 624013167 522027036 758171449 357526548 495492816 998797980 25820488 980333604 985715675 728418181 774674572 299393917 255702061 876871259 769808308 268807899 510985393 836030627 830975000 906855301 776101648 150211770 776515557 316193852 382601077 614692691 456617064 98477480 781053578 663683124 302669149 547655134 594022673 754753661 826705358 361376777 422233134 178737063 515970546 270637554 458807411 669377746 286114664 194831421 545826997 280361704 818604797 399740938 409084548 763447364 869136997 850857371 150015912 479876833 599208994 13677262 644962639 820902925 845950788 784271428 983380109 311030004 287860466 951065240 804014478 779260724 34794302 592540922 757074832 493950156 562578225 699570657 51895785 841097509 900359350 610995388 482404238 734874067 859787585 684674787 76438675 431890772 615562522 885487080 884074303 107961751 914155243 813105747 436084683 425556614 815777429 578361971 69114929 151382829 876760147 58858312 83179319 203779091 489964031 887098134 84923727 792071447 214528364 8216791 922075892 195015116 605407917 225102382 352624020 523708563 770934120 706489888 810499088 515320883 218473441 944792846 949370327 309539458 160440075 637797342 931919336 107502912 339695304 113434632 498138403 31262750 144609265 62231046 186181476 802615830 235824734 972621713 134276444 686945081 931165235 966789985 625653305 914508929 261525818 63457869 638350462 108990089 609855228 693689837 536730791 129021950 440293086 146245293 468697246 517439039 846980956 95082463 812874627 13433782 681258358 165380179 692094195 760025526 480308721 828232227 384074422 608818684 623152735 472883537 571775194 40068154 734870583 408808177 327787348 520633608 970519339 213422876 973178234 640779106 902705004 335612008 406895668 46643791 906009138 794800947 324142240 867931339 274445709 900199964 414024676 178275490 282224928 676740331 412549173 739054564 936888375 961849938 692807849 166626400 156946210 864037422 735115414 224420641 583900913 456207474 341046047 954959104 666030400 871121544 748092373 467653578 647190614 452109679 802239318 199392300 398525688 948514077 856796368 564587303 245275280 860584652 955367740 38106550 777781482 189065398 356477083 12993648 759135629 17462195 113070667 504147194 36371343 411352715 912672424 969851017 266407987 489534808 111170632 270819991 765412157 922035487 74016302 528601897 926594671 917912878 372473351 367897696 556872811 246133659 380943953 654555498 15248328 379684584 884458424 765540172 135091869 550494343 986275091 640090043 163142062 200796381 232033733 860141171 557352475 582018642 359056890 581860412 573052358 592581880 268129048 468064011 983498654 662298399 998501409 550365024 226201633 516377629 822252989 773969053 80865694 629682820 650409829 111036128 324388737 826236186 147292 141284073 378880547 290796466 918516779 594675140 188548802 614641862 956333879 529141370 326771833 179832546 380533702 876658951 555085488 387309758 366758241 141246879 507478315 339766162 910024336 152245029 207068996 238228750 777903242 242244305 954681358 461514261 421895814 231940840 684664624 47650187 931280739 291785901 299949051 326358116 391462411 16189688 149777384 916527043 171768444 401238495 199883557 489412735 19804221 695225395 889094355 1753499 282657154 796003417 331627759 545471909 307588157 769030195 282228667 325513198 243639900 632251609 457314633 792253294 499182543 120222997 707318988 607016411 271086593 608787571 722744154 692570512 286845856 851038256 808293269 179338404 235124668 610677882 939886918 225464675 98461230 906742172 370941908 261618951 119771060 80818699 96098620 367286522 344071477 77468531 826100805 913360088 190639709 98778103 648981566 622448508 565811405 964741472 687004113 207391620 478600820 943393660 682389912 859168186 983313419 223822099 176539083 107507059 11995868 816777982 293664576 272771125 984787659 466841686 426069285 90160481 533768917 750950456 251898028 103252109 282853179 812173596 51102716 95846006 811464625 669995405 850800567 292148818 857095719 273370465 538719352 548933081 761454836 238953259 578124717 74405797 112222029 208364414 864427018 427808570 255366535 184223421 118508286 218497573 387574326 903983049 215435641 94156966 530382760 906865933 358088792 853401314 219776334 65742899 763690283 566762235 297103932 154043385 126174863 678429130 845831096 625025987 409203584 193369839 443830764 658724732 434367638 84869279 626730018 890863787 642599688 201531641 696446846 289709159 198765008 243075383 312870048 690973259 36272012 951961420 297296025 943572281 158310924 783158709 806168247 585492244 920095875 204686048 393546929 627232655 791089563 488821880 213255970 355168926 136658721 223605140 82764726 644277349 665334344 203768524 846215822 744591006 583689348 53872051 484250096 398345465 282059163 85362629 733001810 457977530 706945202 160808257 121690072 949859562 844536016 210611250 123992682 850303767 506114949 375489920 5853098 306075625 582555223 153203663 926983277 109815284 998787028 975510307 878089052 492867924 506324124 746836039 468031711 790477278 127292746 603536344 644862092 146462068 660600280 289308344 611122069 685067288 244666028 643819828 963151922 562328029 189238233 391669196 894711103 346239823 500614594 26776409 913945199 613180507 822469998 22339055 626826061 498227651 574876084 768250573 715808025 905873493 725201509 908931101 101659526 192739572 896685323 828762912 904501200 471014135 827895088 509918567 296053866 116794946 80657165 309313020 85450084 71158355 778973152 410650190 577601615 381439649 971447031 433802402 68672292 450080958 641335307 524013277 932296754 940097084 761576851 602380936 386706798 767582234 599904478 435295004 952590531 4249007 488321098 153266311 463944773 366063313 903226890 453212565 587657681 225188995 929424720 332848137 163943185 352085655 248864461 71348581 725462363 861459283 803880788 176705188 532246705 567889664 927289491 946645506 747946073 985296026 720343148 920024 951372607 784527900 840634814 118439760 592364973 393768402 130549401 432927339 550640366 489387505 651459152 341974983 552045548 209548691 303269429 53740317 864619039 382098682 372370172 124255744 234136502 709387907 939601184 389569481 630796593 972600459 890385768 272879614 67088198 168979474 707740140 279302902 53472801 29291846 853602368 897026900 172759950 693767060 476545349 469508663 737383754 57203277 302995967 503809945 852340673 681497323 454256487 174573186 569054848 26679433 543330013 640353215 692047485 246602801 832039634 392005199 400286541 604740667 847352660 109237755 685217022 712928372 900721248 664335475 155655074 180391521 697101897 902271918 398364237 400061362 483842970 628098941 472630668 767311979 924866931 373606817 965828399 500676049 472564378 73261784 895239858 849219433 909884866 764019460 870426403 650175844 132788461 60147681 698793709 211773858 855789975 752787169 489742282 438735682 370413518 856557673 792212329 672313923 358294590 734627759 887083664 831170945 948176984 737808943 890030726 578336378 84702969 924454524 778196291 237932068 509225473 749326630 666304562 807325636 917006968 346353912 879168456 58265149 493939256 825283181 787020849 363537999 713178129 443605820 171347548 567323407 2366511 137812818 183700232 766163853 217558430 200216692 428808924 851739092 23810719 240891672 865713584 526108057 164795974 791897665 741853236 577465024 430312478 289678325 91155583 26796559 137498606 826677442 859166593 498370202 517106468 623141017 102099040 941650507 877103624 728029322 860482020 714237908 622818708 807431992 802154477 148085749 411054458 797302826 607276071 851609104 471571218 692770863 387928414 40067180 432708057 982124883 268754101 418581225 126685422 133122751 915201224 92262580 561933434 995611930 113334193 917032659 854231567 249868846 216399047 883471601 943453615 394839733 992738138 506244991 948587233 581842475 963580730 44687831 716572508 966991819 839634180 383618630 587260218 713946149 699004788 542781561 778767073 103433658 240481597 181309395 379688447 591974229 660580661 245168227 930550936 273831406 464561027 733079641 767436359 634134228 730888421 327201215 888199253 1190327 984468272 230968903 571933838 876530753 316890306 597526761 898420281 193227773 918114487 216410972 132606917 960045061 599349140 592249110 945636905 481252793 781825229 586674790 668869134 59270025 712017928 564263591 841010098 503657195 864814397 222637492 684082180 357796674 744266855 90476982 605399992 249392697 77414120 358473037 710580462 879949910 444250607 365002945 815268469 750243636 431223398 391678511 874707641 457175254 617231075 273974113 972670578 215509795 305598214 278820024 747455244 840818390 643227609 426443837 401599943 369222510 868564321 204402037 314427930 955934915 226732100 399057029 790069698 786294037 508849764 633082317 831741312 162159695 224155833 300643172 507608510 17606902 405687051 989678913 745202424 694249469 512297311 471658542 214795649 277142118 2683529 200056191 769893661 574770852 547380022 589257428 611107499 9178086 779168733 755009798 333869373 326448963 185222255 293086237 725068789 538762112 995973388 199405305 291975864 53515984 699824586 200378277 29264172 763850519 442144137 179377045 651839765 784749178 509763977 842328678 781661588 987180469 279619727 59697284 901350635 467398204 397843085 599691302 19660331 744661044 988954841 902886477 563040717 901067911 102327238 343584216 105193303 338030618 781157346 517145209 241810008 552014872 711714115 377341414 276392831 117823365 970017849 655606561 256013138 372981617 62701978 115551489 429908956 781481952 977477005 810161662 350042515 605677546 751351621 11399859 897127561 204427254 340611084 849660991 500926188 925999092 40891906 173849352 877050531 602094749 859231277 13705709 480114339 249704456 553466787 539531223 583057963 591436636 222070521 362161560 73650466 235576483 274900347 130238651 882699614 155923090 816561094 551104261 926757044 363456405 449781732 826042691 888052852 801654044 717837989 31189865 357585355 111366137 171535678 809093675 356288466 708943339 382593164 696541759 926336942 657464499 430675195 69605055 292062794 897024492 818480955 71756749 67995599 231039338 850007970 167520302 301542159 46031903 210543999 623545997 21546316 674196961 796817678 171908424 626469405 535129403 878519117 198412408 131953811 381532166 409026943 457935026 236262346 826550254 781822916 25353847 713505853 652817030 901454855 345029525 369999352 596604750 896620403 231117125 158934886 357931816 747640122 507882904 180261399 449058819 967901096 946028562 562889076 253545889 511428867 470329963 899400286 723226388 320519255 30236179 521821765 622012809 532084957 360244405 82814818 212393267 812023033 256997356 587680242 108906299 245850276 10107593 833243865 994629203 365717600 237664587 919015893 411589211 116266117 251442452 16013844 637756237 530023523 313095773 610505267 355445407 741337495 831938957 508018656 171859944 261428884 705163491 807748156 97354211 706754935 440708929 41180535 454254395 69202587 673130399 641768570 707731944 657116894 375204506 760948560 757795205 889728033 749741192 423006112 306838706 141690054 219953894 669281316 8574975 168933043 289454127 227379060 765452082 348447461 615933411 189928616 50198710 198093443 105642495 505361308 373460024 123693417 993608422 387500697 269355414 346439401 284899905 956749963 460379491 57503295 64229607 871147582 602250799 415022538 713354945 785638362 681947801 781057065 474678759 870690146 703740193 759193115 500083895 557099892 697784884 847601937 968400570 95750012 679393498 831601682 73184515 570239679 676666099 826126313 61984829 399453303 144094394 387568034 760503935 74439787 525801109 232685931 602059873 982541388 518021356 224878420 928748415 109166440 385952955 56130791 517372760 456742817 638605102 54219630 677338218 642392223 897338459 214259792 125208113 539331881 330128934 642737642 328070659 864241174 906702576 281017373 869061481 355409050 687549087 366059023 283393427 25149227 44931984 945458636 93996883 277710381 715344790 327738218 468363743 937085662 704200246 52121455 1605905 904495746 34557900 300614552 555436334 433987070 910273904 81206301 941936618 636490662 564194645 518647078 985222770 118255651 308462413 738668639 477820699 292580669 574040612 705641550 249884601 363412388 402744876 55609062 458331727 732602872 5004625 605347628 464379577 847840660 585328689 306040478 773392377 356993391 651392124 165784602 755278773 96922543 776070086 495779732 183044035 370615666 795539918 606738683 79416160 875817715 544565360 833696906 615991191 180072461 363746665 631881242 425967421 914378445 158861089 213818638 404992874 131370052 557806878 834737831 382913908 883137246 72087943 348726968 585809659 515930843 738756123 946286633 853795281 522966161 959935937 192315483 292325224 534299586 405737356 425228659 956174789 184034546 856619259 825959133 548631272 559976161 945717254 154315109 962479455 333465292 219716953 655814907 476426392 431312476 948890678 6580365 433285507 564322004 657796281 762151325 138051857 554019607 922284547 909928253 341602140 754981839 707725779 892826482 785874200 894991701 102837438 780628791 561240187 310096993 318234600 916828146 422926792 74426840 852894197 956587241 234069579 982163365 786953322 687624193 153760993 263805095 640099405 415994772 634180594 5356807 409055355 218101571 597101983 925289439 815680069 85265155 202845786 208192215 93548705 66428229 891919033 737154075 715126035 105077614 300329564 981986077 251779530 538640575 12904238 781003154 608207686 406652293 859351945 281191921 195415413 547424628 917149265 611939145 197984654 31499327 59171975 255618489 234755308 830806381 886606515 795932146 794984848 791869665 413299510 687532952 176479328 95732000 74670151 665947685 978288652 960190725 120978941 959204291 647770994 388493013 537968224 214705326 907815527 753244147 294109587 202039164 495950655 787334508 692022622 984782132 800727244 448936950 524744708 584992618 157850121 117513420 152683693 526667886 212358271 790624232 225795076 832388001 235180021 302755081 109622118 577149676 149828718 917499291 690601901 441685001 85258161 279702311 919418092 703286607 89466305 464815497 67638915 844571708 367740370 221096027 87978559 390103611 402285454 381171308 624696643 373582231 671423656 94092992 732381580 385781752 834899744 360489765 3996244 869795969 894693187 7558307 639061143 834120588 655550818 498727436 36062179 500450087 388347687 673114074 880118978 494285032 178618565 596139112 287106352 834324767 810295530 232762727 154270213 911194121 222005952 618620161 946808866 136345182 121814352 338127247 662800200 176685028 552704075 562162642 821040961 958449330 247201090 214736151 794659344 518641213 104390194 404757497 577059567 243957056 16326533 171406897 808470721 166347145 866159425 960570088 161234586 358340819 415198432 155931883 752876165 46398505 973753691 583454868 456596266 234814121 760255986 671058130 823532406 189403226 218105973 919366901 694327700 151800839 720681646 277562396 409112052 175892915 752039387 787827957 178051952 74747599 737615074 635599503 860057009 593025982 446655924 636504189 9770544 698682080 365541674 167260687 182369353 211564661 41270334 871473904 714310111 682051820 89636348 582283140 921378435 671949372 713105023 118557281 67508417 653854785 348751459 173767633 712922084 984748144 362185312 669894977 821297988 543379296 954562178 761186580 18507644 870084597 241040986 120607667 564799732 149191343 662691205 376837745 537763124 145971572 537620444 361653816 243902943 754601254 527894754 278187344 335799565 470971311 534717628 25447689 113773272 455374041 133980765 349177517 582593054 114988599 836284933 786032620 494603931 33347492 320613912 134174539 883950976 820288474 876075098 754085422 440657856 85452995 114601102 821311658 72501839 106475232 767526112 68641399 406121460 692245009 469000483 604451604 827298276 984194654 842945407 886587731 77280049 452238769 880014268 93247021 492126563 970723800 286023611 106677485 541408117 981605617 25611948 647434435 986848190 408479497 164216229 217505168 608645733 491255501 186451511 628239286 870581572 432533319 929116187 722151799 941612915 698264528 302405255 573045612 815020239 385743412 428789972 895561693 733778144 600953771 761740142 850615064 688893923 595770292 393016466 67383607 179155590 822843499 231504383 993334211 724836350 847338208 992069111 199790847 147699852 20882264 33232464 258965216 938740911 122264378 22908050 445751757 102354380 297785878 660432965 344717483 480296334 61590780 735178980 554950701 16984869 239643307 650487806 619590740 468216750 863626412 674859111 650433648 159373997 473163933 226464078 983303114 885841387 40148961 962771287 985916743 394302310 755371894 395617007 20430532 619450890 440661357 109313586 418548510 188246737 46272248 565041396 655859357 829821455 401388712 573745970 942362414 253592067 749504410 423142049 28881428 234902839 272054292 151288747 374901941 180263418 208766017 23239741 361330211 937368300 844798709 905679042 562575530 237753562 364089831 96210727 245785235 664416295 738613657 453311535 523663861 475764487 41677434 102929136 882230345 857755075 512153022 191369757 985837665 539045556 653370168 73637180 719985162 552955347 609270517 619821786 19364637 259346273 506352904 374390408 138083558 459945168 634417469 276077855 205442797 121892241 92086470 109914797 447328746 654965305 926042622 490391049 301412114 501116790 510452782 602458705 955124927 808158301 70223472 110419152 418320761 742926015 147921387 72452504 149526820 52993913 680766533 379195960 74645708 474521496 867288199 535059861 31396770 622337492 524130100 527245567 843804520 111758492 165676471 19964514 289894528 112955915 936845233 473679823 923936436 120830010 311976198 451717666 465075081 512964795 819302712 201693864 799855253 790945794 983012029 910305077 437969494 462480482 727461521 213455921 668595268 145938827 664545590 537071270 274447834 169756577 316928336 573164771 800897541 258498121 7086284 462654065 315251305 155907146 837410553 105965137 46385472 28255881 380925757 344273181 661790294 418613564 413706909 869503214 650449375 302659273 874499829 127584928 165416620 571464671 375835585 812844976 218172600 493530363 894969089 984037411 169357648 155932905 256583080 425383643 958812868 805283399 152957682 962533999 965180480 409441534 210943173 571090930 713708581 437706277 828843918 705505092 234918703 914311669 546554688 275113794 743891153 65085052 548813582 301535528 510550044 697653681 992166228 305397548 351532107 906893223 174372759 45767451 629097432 726848120 882832726 389403315 758288559 714192472 494907145 816308732 86361667 909779196 650389827 498424648 351707732 473423362 106592822 58594283 357898863 58721658 723598583 345448156 232948149 24907340 309693493 407881882 659558264 508768434 271071198 877039828 133509970 705887730 511212118 521081296 765479475 642473988 194318384 929389881 31722546 383642469 978292513 845973074 997276297 947992627 690845526 561362158 908781432 853232494 963909242 819801760 971204177 863043853 251884661 641958552 242420921 162492310 800797505 241646623 269843212 989987290 888045190 716959066 146517777 812602564 867545106 954639050 615074452 811718401 551690117 918298091 516797486 918612700 953849251 986083524 747448377 28189429 816838223 313924403 23654988 930059503 950735806 769463542 942073556 634186112 690462789 923671032 37235680 831686859 269324977 952409142 451933154 710516436 253917965 419120731 243075707 166755731 138374301 309530573 847954729 841295549 398656567 747195867 646502361 695193843 219496171 984406583 424536569 62320546 71845309 221519374 745904453 644481103 457976356 472364235 623390992 166988415 770156203 777778778 478699767 744232696 852854115 409938836 755705274 656830793 929356759 179092107 89884203 970374279 326340106 908205670 156436930 377810412 66959599 290751509 512575671 365917404 666444836 640890208 536462974 786380997 277420009 317829188 367884481 80336606 474473771 635773044 382320259 576022467 382082501 436894458 603657528 746345498 333364151 329458235 784231895 292945680 787197330 216043916 272479089 735239546 237016837 837810968 346660519 457530699 376940480 325805565 983527957 613663161 242461586 435130979 563489459 277633198 520676753 263870751 264976962 233591702 281070805 6054538 718425907 279116641 356602937 811908903 25636964 560140923 673295424 174058613 142108514 447253192 777218435 705497897 736299348 111885742 533459285 212302484 330467344 618448016 695668040 659026844 816015892 884028305 887393421 974167685 141834581 951370006 397348212 825755043 880985717 254517485 916483626 513386769 618322495 185270375 551685946 331833729 74867608 308756075 734321850 984805433 364318641 951166051 356527609 740959299 238148361 491784634 577979911 714863965 449838196 29962761 68579397 962066385 441550263 748186460 304406740 67409091 6775014 747432121 752842631 139713360 858456128 193449439 471163966 413434773 250633099 385814888 662736666 405521045 320363125 483393592 756048243 872033380 2526823 680805946 181595718 338454332 283180240 514617495 752177891 448042077 475109063 899420608 206857501 645047982 654016599 311925728 857727606 897487885 812327851 295086821 529389232 894465648 670578341 629214156 645491841 293456029 657383805 842474883 109693985 38342631 467923657 208167513 283341028 881004884 106066007 509312282 121566632 977676207 988114366 253134206 680594547 147656392 950674844 326563158 221894815 86438782 803335068 846253312 966498498 391436843 423756987 595377255 360360918 734121058 5646308 566890171 695067039 598071458 329783357 296312614 582178620 505045051 694103216 467723860 388478717 626468300 451662225 854284065 395838170 152183254 537169651 730457432 282260190 6087081 257857666 419454047 227984829 65167142 952505881 184617693 987156099 738126076 893448896 868921626 815722061 451952655 841266635 727296294 397679061 267931735 676121126 452463544 723528219 755404239 753258973 261803492 315364239 118375512 956502013 795777482 529942638 813357081 340928412 839598348 560108411 501107315 818786848 244224778 952574077 728838513 356941621 956531831 882013562 704521098 556506912 93720987 116365705 380521405 589385815 722380481 153804058 125537129 102880679 844836663 565736265 941932806 460424186 244600031 871680723 49746607 23041814 485770700 263807424 875164900 713736423 404467338 238193266 990062987 457681617 236742059 149126083 814715504 384735290 75960996 512727667 467067492 250972500 128917360 271610665 283641159 489119233 74314218 73715207 245053422 450299339 701499376 87880751 799970123 592013324 810287834 336140246 783798044 93438007 162099318 961805673 202393271 950934705 166158207 151953325 444555810 434920491 701340028 159585614 686610667 321886106 867962299 826983330 252159248 373631183 378478115 1534057 36306906 699616734 435929385 732479869 528682111 149741073 435856929 933715881 9859031 24015396 230467227 87944477 267672571 907418884 75664170 632558815 717388102 911422622 18928186 898273371 194652687 947115924 65357 973096717 617882319 386297637 360444226 167488758 160916202 218264490 631743590 392061097 676853752 11079805 79662697 286598417 728695317 195719901 50080884 562104488 22641780 421411073 119710863 455366875 206953120 279058505 771844536 815823685 958042183 603492642 17140134 655024666 816308188 228190226 199910244 411438148 405850319 570912921 928145006 293836502 999626256 277367103 766674122 149513972 198442082 559318692 298319767 722307308 273993897 769193369 372465044 40290372 300224500 45208923 453320808 232419800 874189694 856651045 421643473 799808552 491717101 14727438 558472172 604642539 937919794 299136866 685531017 402546293 852485614 153814909 806590004 119427625 216841617 616852183 161185759 115013448 485229065 794906109 698677955 368367862 163249080 649301466 84122854 25499600 7554795 834655788 578064189 252075453 428263963 294504827 461490722 503179909 844861511 634389987 874083079 647600362 758005213 488621382 825156254 968507002 223582484 251340698 899798403 718681788 938179073 671850264 515463057 348361278 413466787 387150445 426223577 780672967 517555744 378904586 477860143 993727302 314592296 572124154 219147278 772405854 951985693 474139107 345790994 972213891 854106209 41462311 342284174 226730709 969454962 753806616 7821846 151119861 636946986 921473899 934290167 22320466 97418620 233620750 133578811 953476479 966743396 739248417 750150955 747089451 722192766 809965648 229013975 50805085 396749237 170976500 392256140 22847793 723097941 681212567 742666470 733822785 725250522 150387949 202246655 311245450 501488862 839626717 294691804 42360287 325068923 68049652 744103414 101074518 25190201 757446899 660761544 753176681 534390317 81462796 291064008 295253358 194199267 732098387 572357420 462782148 519190678 88898990 96516097 707900373 898618056 212447275 170043254 203147383 82083323 211895581 468070549 125782821 698142267 660731894 99354441 55505941 216124331 993058869 239728139 909092390 389138191 26390421 540624382 295443231 198450441 472266216 273948398 40528382 46106762 832343921 480438616 101335164 458351633 333354969 482718138 770738135 795115020 768049884 92259074 298712001 787085205 241790387 542505656 260850968 461295607 928898361 982995818 781732791 646605286 817152234 551069157 174767229 238093105 28563983 139350101 537327110 369804042 211767387 438893575 682083421 28576420 867593016 928521910 421247125 819282224 261979315 316455819 826452044 192545066 377877771 410217015 177932486 422987882 790326801 805104503 17219592 79023868 896296868 759249694 747810345 98338555 690996883 23614534 834253886 104530866 582010624 471975864 667370035 439388761 215161428 160736398 44381354 907382646 982877687 407177393 14529188 668183159 719804811 645433794 853583300 428914078 368034802 981219299 740718220 30931669 194250154 286545725 7987993 85057070 888616798 361409500 764014902 518398685 519038148 730390043 791539010 880957418 108085760 764491442 694795914 848181034 552590359 583620244 253279129 492412990 63128163 511102977 510230090 478065404 636322714 356192805 567653490 597002543 92749089 547310760 369803859 367886329 961072162 905386980 219980856 968189871 452016036 943179097 533324663 419873092 1111801 776641920 689095425 324063234 932371712 388542320 967754353 497495573 777992797 603284242 151517627 281966932 621227163 175674624 766893620 653553444 856283816 482806169 793190518 54889401 259344983 777792039 551780792 825065227 572376330 945741115 104102088 868806066 563294770 409286623 404107923 225719687 877093203 395481138 483437170 689184247 869543850 994747789 916076201 270573949 493686863 571723934 358293414 727495164 140182432 317554134 788029899 807104448 539880853 197995519 295677491 806036891 956900121 850429751 45760511 755050297 508525053 717639022 943253726 544466355 217130349 382298849 500650152 192742363 772073850 649792182 693454924 116691880 68318728 973803864 886933987 379378342 16634718 687194384 52069359 347489607 44026574 305636944 55173936 850930814 173422982 390908824 329303029 403843353 164634455 759146547 291064046 489549423 532660064 896294797 249174012 231042137 337514750 380125038 426232651 979025505 893193934 773502657 317341999 328794140 845777873 654641708 628793000 959546218 803317652 575952932 412617660 538393723 951088077 708179654 467855383 998627 630453975 108375777 703854047 533287988 170887328 611680788 239207126 332604590 101959635 25186417 453355823 897477815 515478770 357197267 71762858 370565013 253638818 408956071 285249904 358605007 912052458 774041760 995280475 701603185 228316544 517300680 352410321 14861450 226187091 672878302 669140750 41926590 261247787 739333389 641805665 14889950 637290614 247681788 926366628 517432154 785715325 569362408 677787883 127010438 765277934 373511897 935663324 841417221 231227264 932700608 897122661 651816641 82230262 725552731 247818987 763985061 871266226 832661613 85879371 885986706 736774265 544123014 349790943 26179957 768508794 81637868 677101013 572321135 698174177 602061110 269769339 25612088 544126715 278130102 989564037 216334616 396430931 356576377 161935579 600651546 590779258 657951992 516931996 627131628 126506132 151300922 279500685 277715156 66820335 246158918 263038326 412452203 479167593 832658998 985493 622836002 608847204 88469248 503163224 516270859 910835433 160359239 358451752 836900776 608012727 786578911 319081673 636822087 788881467 976823220 998388719 381051870 575296743 726629838 213410296 279297214 617440691 908946853 551155699 408962370 545374815 332661916 863480061 704931329 505814952 200463588 465220488 420258061 184357370 159253554 621195770 373793846 847816358 925914921 446698428 833940646 697703777 699591749 511800403 415212033 163424774 72237765 967730335 712884171 660323280 452904949 742878631 51040143 684455034 793943185 841302994 697730106 446345369 619087182 576487633 782222982 922740892 246615897 307797085 123325216 243904625 483392830 103873502 395207735 800516000 154844617 800643215 404805690 508739688 623622729 140753336 906031037 745367120 528501190 263954742 584294048 799802648 841399894 587374086 671406870 61100822 741352332 614412054 704186778 676333518 454070999 492024515 727741350 723281526 905645619 888355774 704695960 464480928 542052513 389012403 748898181 866490742 430884938 588694970 634109780 66406162 873728720 176012464 189311763 960290124 152123988 24390435 523430562 269242109 779735610 224119230 85479208 743480579 460883534 96764875 490380905 600731601 313538261 725073164 871980058 151060027 819354913 367334746 169955406 71732750 146029761 179372511 620926466 674119928 973234996 577726076 673649563 81783918 77010941 444070350 474867933 701471038 431628468 98999215 913243280 697255124 123872796 75766254 305605522 338274546 124541325 717367652 552636122 901948520 226084210 668716010 531505770 84774186 358457465 204275469 348010921 817667026 388436186 468060270 588101417 518675786 632992683 343641574 322977816 899017495 392355017 173637364 638684680 503105035 105593369 616049892 406675943 540825536 688238389 781436092 911417871 576335841 268114258 695756878 392373926 788473992 667170500 976592512 284941214 864064231 131841742 990192034 763749270 7516772 257009381 720138006 954145476 285612697 733744733 477781519 213621744 74454270 517650221 961049765 155489095 661558345 996103742 869088080 147716846 759875035 511869440 848881451 744102884 871736554 94616075 244475187 527351552 194153922 108413873 32480018 22756655 454565522 891238606 156842393 961439983 746593816 366110165 303471865 213728611 650354372 29611739 96892484 192580966 357043287 420347660 290022960 636573869 724838520 568391043 752736397 935298405 821542812 694997814 24261341 905660183 962427772 545616348 808166208 647414190 338693596 639319743 985299310 357386684 955699991 430261755 29685901 129689418 778436367 135676118 653011537 486326140 13824452 38239299 32579019 682160727 501321381 992332766 397481619 4892388 181165548 13988973 407424524 688210905 342051432 550689949 966428759 724907602 670715859 230254079 756965979 59576417 969891129 767180224 616065001 829866660 359746747 454924837 566721038 884061963 713129764 699301316 649839416 922848370 655923618 138877561 421515578 671856180 122409052 22030594 85100926 737943478 576369831 127963493 958206456 880474249 887520210 935088284 682670224 112633749 989692213 153237122 87660338 890820637 928352214 661289338 554413738 879046553 51237045 631959622 682951894 600125025 489478319 99843538 80031842 947984970 47628363 97340840 983326820 231543918 279914291 868148130 284219237 474824256 504541370 330243261 229601641 214694507 316761049 591591088 293413114 425002294 390142231 769317067 75539672 934944782 27342249 491271367 391528252 830634524 723606097 154279298 154942223 56324823 491179076 356999260 768809326 455412901 819814031 460532553 738357047 202484985 596446559 643583641 782327209 333471319 290913041 145230452 194677749 883397800 539651436 594718666 729901319 253181530 329527357 701139835 994550145 234142253 767545121 454760992 550144524 373073042 355189311 306442504 781698543 516484286 455226691 843418181 363417848 232984676 15466701 556921389 4987841 430151539 199942308 131271651 820117675 581639838 322731738 297752327 186702292 107927171 221698370 71887298 28835170 934072394 348299801 278805307 966058499 826100269 207335292 758940360 428623920 976112209 213502419 968594969 887515591 301578710 986714757 857914796 133446879 233961549 186250803 597225681 891984449 132028576 67481227 125588362 664527544 885879091 42202848 265646494 790657223 906001328 186311715 382888993 920030721 396553668 529977993 565058051 637394289 91683623 987036085 194434625 818433551 198140866 399487305 190283126 231216758 154864793 943625498 832268150 507109538 45470977 572653461 726688602 610570793 492141617 886223052 468688744 172518590 226899543 714456179 700402029 738798063 14158215 711252410 946558484 746294893 856378694 139354000 532309479 70668066 776532883 606228801 301232039 893549950 52641241 132722836 791873730 33795875 927596784 150425214 790349324 308811098 826742165 784432060 224172612 576131662 16164788 394606397 905947552 763070396 963829583 899845755 508423798 760920874 194577990 749276241 120821143 213194810 423605429 351531111 402856765 652271376 794278782 613520388 729033352 730743009 982983488 405202985 182780542 554121541 100670695 716115326 409337620 299856992 977871400 168536454 25416586 993826111 966457617 508352534 508988001 62521366 683668481 629386762 629337942 305880091 501409706 190960570 281975828 606883484 560326964 781080967 515652458 276007770 988647049 885575203 325820348 270331087 787223063 232017423 275152458 128937810 921767332 551507498 574851698 200094196 757973489 387569085 725943289 500880947 701129995 603578489 422284863 889636820 968182804 681798746 871853860 873254560 698330901 543690364 193038010 185612299 814200839 268187110 68333383 847775994 13216766 677899428 311996205 117387739 589752579 278247269 493622358 542414015 580960766 142296545 985455752 924739455 757534479 618011584 709487161 834289300 652684081 409525870 271802172 24593542 468971689 654366017 501846022 725267638 967316579 586569158 759460654 480354644 124459971 538853797 191972531 129722229 531866808 873627510 971356571 522929217 787984478 229913545 362485219 466708366 59130522 953472298 520241018 352013402 73652169 601782772 312018050 630169800 808629410 696699957 517792685 766484569 603668122 761073354 307151220 498519239 590274180 179467969 713643951 837813590 772970653 394994938 993558351 557443111 982649087 897311609 820354926 627105682 85935706 299447510 218650946 762398241 870456896 72443556 664812764 464059625 201364281 995954952 264673235 973006095 33859601 937066192 296981710 388151127 298113250 218047082 831406904 221748727 686926248 826170075 901126724 319838641 638316843 580837464 979816622 440481093 909839928 828993753 37513551 790895474 756994683 854486327 819313973 484320483 779728281 564581130 597831249 320320171 989025029 651450058 428919289 416296262 325392395 16570369 206440284 104489203 309449270 267684716 292999460 542804132 574183202 479603427 877877671 947836506 601563237 893098424 452079211 193784647 893558397 843971908 267228094 201936016 848159911 376612171 134535273 250175106 386545219 403353001 601145358 823145416 332192587 949673436 71711685 791525741 416698452 47730930 106841507 672101820 145967364 779613260 786951018 661575192 661985202 631014423 80334852 673040093 992104896 411131334 977549491 684694231 872046433 100088447 782632009 739852119 914006095 545750810 905348106 279073518 83865102 446587178 829545968 915538858 17670656 468423691 535296834 562174728 525655930 921193412 964457662 775936175 498588041 667354596 305637807 293378736 269379540 472567722 235700782 64256177 521330584 767216849 187731552 227766208 378240726 998495947 232995299 155181460 579246406 372646185 639149103 551180499 575218205 653759807 573836347 641276874 344409424 912929748 411981037 824846487 794267380 773794051 27353292 575041346 732546492 129466267 558917951 133174040 128297471 700626116 189667877 793708055 790278479 591631707 852762043 391306680 908822430 771674039 64463585 440303822 464199013 677139770 271339938 267295973 123692717 545077379 651045055 940943031 120585890 892837754 867869970 323574229 570977555 240465491 810032791 373142985 927571268 520705745 766420624 667621075 193520098 313890236 517700277 810194762 439516945 946620016 407939815 320162228 193382189 24955448 568360236 604377054 117440555 913038501 309276273 915243338 935393139 367758765 627423227 694475648 624524928 541891473 756107742 75934825 624938847 695096347 530073907 562814334 909110982 246321572 928186888 335642590 280969822 789074966 499313280 416777123 232161468 874109313 600658872 945229927 36695755 396390553 369424505 120569687 352471405 341997650 661478687 252477358 521932118 258805669 668753406 281741890 361050662 790520565 481229810 40713713 91464163 234500815 916062828 59146621 672637149 626524310 981684221 424346222 967692816 206188768 898163479 86835912 903282876 942270340 35970694 763007844 624167269 525247862 823176406 139126873 363665837 469486534 469328732 309130118 225056844 971803013 637579808 983225083 327984604 309337070 538895945 43233481 840245770 709245967 36554463 724526795 336826166 277387772 514320699 577050989 418655614 993446126 877744552 953851294 152048766 384901516 730193395 338022064 254118244 739343707 289575518 258570786 879656378 104019307 854318633 916389406 112512273 219643630 699120170 196663995 634605692 856813098 190695331 466227486 940441489 460684498 317208971 183378968 245421248 7704840 521662131 549539311 414365366 428653056 678018044 873654569 745471252 290211752 788055761 452959697 239019926 40145457 446695293 481518338 296150822 352459461 262891605 988361980 581104510 681466278 562102193 278844578 353939730 906848390 409807035 444150945 173762067 451380829 15813709 992759180 770352272 452524864 696652380 692143253 909708184 128933513 517666637 403887152 601430720 428855212 348478766 123036694 788824846 616728571 654089011 456866049 904394494 4915397 259467468 348168761 426275172 993172021 381125883 597488187 393543253 215612658 88186370 893218283 912047213 597841401 560466221 283524158 909204591 720665379 160314442 538772131 601717072 912001929 536249297 9848660 568310009 30960255 659437041 498044595 849989597 92500818 756959037 319133683 132402685 123796694 280374552 844460622 544961257 827055735 719986994 746881491 460403548 350886516 717057309 229777130 258431017 644407054 812593497 603558278 637444023 336876324 353917741 863739750 204979837 324566225 191099398 544536908 187507655 333679213 828727251 923975723 190823658 751585751 670318653 502782932 897002406 13278616 584554229 811254189 581447567 320017805 910620140 319609247 781389381 73514355 462785435 765975421 547426910 717782139 365349425 948191052 368470153 947944465 378046479 661348545 648644276 932954769 747501243 657539187 741749088 1861104 61327774 619098553 100376066 948930989 782005550 506473573 772470415 113489982 650774219 394533858 744796577 8745560 875810922 906794287 861382694 564459513 448649978 894882511 454129156 507860275 324925367 186977775 450411496 567657780 352212425 6674344 982588627 272771115 12531126 11715539 408590898 235510833 749729315 547445127 499334851 951997043 158331553 52004261 497868237 865374516 816236226 828899026 419173896 619638400 673655010 248268268 188820244 620094336 199600473 998132499 158498113 541574863 541222505 499963447 29809337 607428283 408192637 726565411 552754758 139441124 564285483 107309394 599268516 878302316 683831809 481197583 682522106 903280939 663061870 103717921 809912256 51030012 22726945 615294100 326774266 573266950 418819010 386667662 18169326 506236089 587188338 567912344 866319081 444713787 603188001 364604017 977673922 827915042 532773009 858001477 387113412 25444409 551128424 79832382 794451476 72151119 944616780 381683495 859874462 414120303 3173126 340188200 868127745 601269834 335364559 279742679 153007716 408846277 511413876 386798480 357864945 723276815 426027928 298283677 761913493 186529380 127294986 809392607 791757271 125427732 694176357 587863690 581134772 885451246 870115453 967545934 358715541 326458160 138341017 343535695 107666980 236114732 945000747 322737601 186778791 409181995 408553856 385098505 196005536 222014648 110740412 142565918 46134832 626541154 441865262 862043965 218775288 613666256 877571537 915388196 605412488 549611934 698145260 443341752 420533506 545441667 35160005 887093012 254113698 995245097 400867817 22280704 744267203 85494599 946979027 214025851 227982038 495962548 773967145 914524750 846922141 574147981 297012830 42708909 586501494 920107970 699456037 603513154 69636671 238980976 847838354 857319109 397239718 310243936 319703703 651890613 187887277 694812280 469457487 566612285 41849484 481434546 341360050 270203272 278792676 491949411 590516602 890128869 339251712 376144119 278868255 538753052 148968773 20354399 203538161 578148037 484140324 680419869 318565004 471973693 41731418 316724480 41173237 164067892 175099568 270759088 417335760 885005174 896555338 255385748 71279898 951417976 279070148 270328018 952483786 599272855 311147187 155521082 165805403 750226128 907139701 976459720 319869080 878439143 576364247 424699969 113836380 315285516 555467069 79342737 46766573 787083618 247526938 814334983 821519139 241559925 140975214 401301751 220078365 356034978 346117131 673848228 228069498 220385180 155776407 56245633 702564240 469792397 214826766 640910604 70865941 921007089 278076892 81330237 881811708 613462181 184419590 928901074 451276118 458524268 525485988 203974779 540351289 198711803 882465842 142864149 790350569 454033322 633169762 807932589 932027891 290943177 964586009 882399824 375062961 198981521 522551963 108005422 499990 343822779 146142633 915774566 376295813 963341147 80718714 830751862 47584229 885424193 872637169 48615870 184604840 397062223 36025298 180404331 819483505 12477584 41974302 168245746 835217430 645952085 493293045 644737840 717903502 795088298 965512946 548582269 380880386 18502601 777218357 855150295 834160533 191663047 129206187 359470201 464739702 390210070 831640115 48667084 883501012 77032566 194960753 647492520 934621152 591798527 923470699 36595744 946634858 882241550 783861268 721652023 179289848 734965122 994573537 547534784 299660431 960170834 837725650 364118157 759778496 904434439 249139469 363226103 711284477 122813026 823946262 700773780 657823420 8099777 28026031 965016743 730421061 721346773 90652012 635285414 863282277 577107728 784736275 398216373 524266170 983789362 719537470 855081791 119705277 785807151 231009552 716849900 243760034 206792428 525560350 831272475 366097057 996114291 33809074 610516169 450609858 60958031 732750022 779183594 293167945 383444602 663679157 883225401 770712021 703336686 228913921 240428859 93818911 571290061 279083353 106941109 79716532 19640958 252993644 92416557 425664268 415696880 977759395 870052363 210506428 232944998 923362881 189065096 529468649 275189806 693702728 224940323 368974955 119891643 283906177 338716255 761324252 384983715 82924723 780727229 785611622 5413321 375279545 978753307 934751192 947599331 619925110 84375002 701374205 677604431 271350650 815982231 726258630 669643922 896616078 155779618 591090035 743262057 89933984 341714219 939766191 250983621 419338308 407760194 320229653 131231606 133361221 68624919 625042532 689780875 714842044 553538322 124931947 531220509 460334024 837794474 297485106 974704639 872778318 535974937 212798667 524123204 656036395 63535378 143250147 194738986 460861196 791457084 708323834 714312237 927545799 327051566 120485472 444611435 112811002 982847509 93289292 710348199 683978156 379336380 463911376 129132497 552941733 12727781 19970984 336509439 502172595 908960209 971743567 851259928 679915900 694967522 552276511 177301023 810759262 792519740 661454089 171738627 380269671 131960636 733698929 196064929 417658798 248450498 49145474 106423142 61532334 536652427 552047371 985851311 320905483 59852846 305141953 87545975 246183729 805635911 956140455 940249074 779167448 545496756 343537474 554292723 49897812 588288451 22976444 702367322 432709681 760528344 62434844 28169541 444395808 349273050 435670369 485113156 360379006 572526648 512688500 836872609 773115559 161552310 161994394 407605822 975688170 360650402 81532960 430551474 726942251 598484262 908670003 689625760 11616634 150062793 370283839 574320014 282000202 697855278 536647553 717687943 648192379 432249007 493779860 260274651 198452642 656294151 104560194 383862985 874700403 847311085 442243126 780767800 824749354 184623241 846899631 981946260 664657164 166573033 697874723 650169886 482317484 751363137 148808453 413624682 993091054 9595088 893437203 681598139 794743971 509063827 223510781 465913907 285163830 646535564 328325640 248773432 243317456 676798321 742270896 689372389 697385080 60791921 641034545 915017485 717886609 345876506 472378739 14098110 776945489 170052840 514639075 811833945 197868125 294794215 61720045 98560241 219660265 250875425 149202539 313302590 274366207 373559236 27040966 120279014 161058531 190966671 905895555 482270762 214389080 799910633 647494298 137756277 435343387 978069804 910073881 550994798 415303772 248604418 862689755 339059420 533487288 298311457 442681017 510348875 673838451 930917399 888704708 108869750 882601166 213428290 601383480 184968079 907189119 570893417 43189281 305278938 554567396 617292374 386444922 618066030 72986754 802362817 769778001 363523714 284931266 441135128 74431506 107637231 989411865 966366149 811704908 263559144 510673206 949497718 743556021 899520587 101725849 704839590 144696132 450971301 529593349 271485149 731612111 898212021 174745177 173177243 238589064 30962963 7661725 709154070 644095456 183627530 740207406 986307729 860445892 973848258 395685487 761350083 872433708 79676959 186695669 497524277 321677541 134669517 738483641 817990218 281329122 327098461 927472930 692084622 856901105 506540788 495544897 964330267 832103201 47226621 473483175 990630060 36515025 882604598 207964273 643540032 506290748 358618214 468942366 708120301 16144895 67439917 687122383 746061536 373792563 548429251 795631152 174016223 541482930 589238470 229980188 134045356 975227514 525060380 605986391 287833859 766816645 59740848 326155643 315671473 574950911 428799503 107527831 67044739 29777126 566744056 358698026 32737387 324280939 532627926 716486020 715170646 599571873 747685165 371975315 313935021 229644543 194822214 786019363 796814498 281753744 107049961 343310484 893354978 55900169 467755816 404931157 584035197 176966020 34726484 539421613 975522761 100326698 847218991 854059505 584645677 60318363 577480656 519664948 197959995 471112799 437942707 269548303 997181105 220822067 439055330 952532672 350158398 547837981 198006318 981402398 704815060 1615784 713945648 311489912 296016380 677887991 925549857 429772655 972578177 577390480 4287044 453242536 494912874 667638350 685948455 235200719 168630605 901931358 819517763 39939842 34424052 348861337 61160856 417622068 963386497 807263436 166499890 417151197 279380946 335235423 890424931 600624408 31089056 31192484 176573703 333292177 135716199 118651043 575588104 346783656 358836322 447659944 824565595 647471767 369823042 701912536 854942897 396404962 134472304 682270731 5287476 275430075 108415642 491355295 474795352 786831553 411492031 685079734 308403200 492622656 570056238 376523235 376547919 551463307 227391871 324643850 167524938 24217104 451344559 199145685 234010032 441369131 793287768 355462635 308300742 60107299 913583160 396391737 390265370 440035436 626222155 61233896 776786442 352772243 452110144 213979258 886920822 976110252 885222687 247410801 711897656 484787813 486799973 478440698 860259544 288708577 535969631 150507825 383436976 373055275 748694800 467958474 779540374 831794018 504389035 126667701 373957963 19748882 741783077 184968871 559621420 377151794 82805242 589299386 728520840 909213224 648261773 255173506 980473634 959168450 896220331 236616140 373951273 913016381 288895871 652892028 555011139 744720167 877642616 620393756 726697606 832011699 912345721 91814431 809990349 479516574 185360965 535392378 535610090 556607426 622197260 87526859 346945451 880677887 494071950 448024418 387189861 421712552 906863068 914881178 45935118 484515824 353861655 222286102 294332958 967587876 115834923 978452572 696803601 978866486 252239183 307096431 679778176 426239045 351267460 561331263 372110602 393841212 130726364 468193101 240852736 667047838 357296523 530346126 266305438 728956804 256148398 391097821 630277082 725284777 100348172 71063308 757013795 926258164 469309535 751290456 280421595 165024162 455207151 705399939 76756632 408671249 325552945 855327740 573667869 746969518 31978949 262952650 745225495 259491181 138366616 495887919 663385616 568051025 633761709 758871384 343351132 315003963 456245605 378335920 439165597 800119678 77653089 60057065 170154745 695162751 685431757 476878341 430696447 570322131 789761507 723420287 534251554 606080398 624287026 39185673 594157169 125591404 495684086 678836459 347892909 974170541 483682533 799954957 512799621 941791774 720151573 356495444 852282724 217136028 399829673 233825410 819041321 90711722 464092290 274395807 708075252 627160903 266599425 913583760 928538311 13973130 851530892 296013539 213209872 179636241 33614331 791442697 300399239 306205502 302515413 242203730 749888010 309394851 175571835 662939174 412683857 725065813 172621673 329045117 402236771 918352263 326158476 463690631 699902779 876685576 944906915 788489815 172434282 467576658 339219149 330072594 184371187 962598102 754386969 641565407 845072008 583187821 19427788 216520118 850585595 44340330 202745072 614641026 361770303 555008096 463917656 241578562 857884511 845180720 288331525 923606451 662224882 440587774 101140735 459432795 294611714 605430843 571789199 100036106 733120471 233497589 837085918 663957683 961278476 653386494 144921452 647417786 904744865 282728893 791469756 346236421 950082109 714998776 238891055 17446916 820403199 207233938 544126587 655066576 589463638 240482812 418264861 359708325 236114383 187054184 479345653 474366738 381999280 941329490 185212273 426451555 711549619 944647854 593319361 701394305 294758395 864155465 420889676 649069703 740656725 974025373 836124456 48000634 724067676 118139455 777909770 897835936 5903561 658375015 390471456 347758472 628887337 882033149 583936302 430610677 442002143 639333474 498237052 583410891 149941189 367490141 616745902 969655320 795127925 832484819 108061381 423659276 405066739 563837711 405759105 498509120 860557873 58570147 154897229 445725317 450663370 811862319 940196716 609941629 281436645 457710735 46742851 425675435 415532836 521300856 986256239 677352285 359610609 900759505 967834778 306258133 731190841 394280691 842830162 117082501 425223867 856338632 762880155 916041972 846257096 345784807 678586536 456911757 806929008 542443968 791357000 602546645 207530414 699906757 495043156 257879452 359405773 73394467 505064074 865042010 24771958 647625581 227214544 181266762 431181432 572166438 930687538 912437999 831643560 484423789 161767132 58366935 275193665 429495668 691619083 835311821 795186458 424599928 95728096 900807534 860196827 864272323 901371142 924507466 830230847 627812420 156985445 589286415 668554533 146801032 433442881 663415560 20731806 64872397 222932251 321449431 780930805 558684822 406025410 541031267 724847955 202056723 592092621 991659435 29377987 562845160 914832700 977303468 724354463 216016411 611842998 132274659 929453162 834190130 484906716 870131303 586140073 718372096 246223874 703558437 873547330 214035341 858424834 709222115 89494253 656123872 980884896 776684867 32230424 77111448 645283329 678809532 635932016 744597841 405907718 629672493 679666459 263614771 645284539 694431212 22305858 942736340 813051659 553951352 148764063 414889494 649417847 970552741 567497672 240648463 131614787 258637094 113894254 876859537 250510699 402281163 702964443 815548646 242549598 61447774 311545739 539620575 488186895 314626104 281273345 610439724 928941611 839656237 418076354 812928455 185925265 250894202 245933125 864884954 672349474 718529463 315425339 198825266 799056521 635392858 692391128 101580709 754158174 131307945 452914105 273630202 688260360 66572214 38723657 565030646 154647458 240502958 188207061 902103897 184961951 64574999 71035490 219768871 189291704 756076928 472177749 369256649 271319765 59451398 194598396 937407137 216348458 444174845 694471453 626520613 11284816 454792568 837136014 29861314 502878552 948953731 619353985 315768498 438862313 387611330 919550595 128809163 538554087 109650953 214090804 859611911 70893244 489153586 674627154 498452016 586760865 894814667 444258759 709827587 167057546 774699747 522274435 111600863 157557645 170115177 137519456 543681195 67455752 859488586 228978973 618253188 147955379 27877557 579226801 74310615 455108423 698432323 4662225 572826643 530787580 253997114 79685461 25853864 705372440 184493727 702622365 839438070 46339290 758429448 852162959 24744873 667392918 587974264 854220461 762206967 236256783 211143335 187519540 939720294 577677626 520996912 213896452 44214981 336710198 86004819 266044577 733899889 900953570 439535317 371118762 801140548 404410055 410451558 102860350 147765752 133131346 161949955 625448025 605408296 213471024 768657295 109475537 594387868 503683750 485580200 382240984 945032084 786573290 654913138 864858220 161095069 564080053 702341228 466788274 389671202 850004150 744820781 656012809 868286095 872530763 747581598 611240870 627951086 209813485 672550568 155254974 707403279 124811979 842623019 800037108 586126983 64658133 811297937 935499527 984105389 221018605 140765188 950493955 27671805 686152194 791318673 653590242 856753900 63405630 865164524 113702048 152470897 593489346 237895607 652632833 923233265 968486109 707147883 722224500 699783740 977703746 235125925 846264418 876988803 701267100 648133123 294589400 640260461 540289215 745862725 512367087 37455797 832113466 526079770 222173383 312563150 500246924 11009723 33550799 259451800 353098461 15677521 881169399 903613450 964490953 977590375 622658634 180617098 375148210 457006611 886907201 673648998 193913740 968707329 299916181 544006923 706759511 935454282 611952617 762961261 305131374 908863107 947286878 589496293 93255950 141936674 506736522 996901171 645395845 754968126 519601053 137976602 382333213 436295740 48576218 43363163 446621999 717354453 274045984 320791239 498508872 647904024 802352535 62147944 763147375 490515832 893882105 103745171 607232038 484522130 223510412 310448279 881535124 650565037 958088674 447005431 362408487 136730691 160533874 592773020 137882490 885016582 909748873 48773875 651412833 319232129 562079682 981833078 997347171 587072827 3817518 495024509 10947737 225592505 56132160 141667046 236652287 642393242 392731079 20719154 575317732 786108625 747335065 490972902 682082116 283213095 159031593 99367453 518153431 212098469 873602758 774638730 235025382 102589067 374012232 845427224 212152176 786485337 564794498 75829392 135623515 117829036 194055951 289759093 582511480 685197954 533006071 454308950 998278357 589798458 243056190 14832242 293257949 542432112 130480653 597049837 790711133 54772131 234440522 657392687 94104374 464203612 138197851 256104192 414922611 296447959 983736715 976790498 310726500 796379998 371659308 340125320 390140602 675397055 751711225 869251037 21408629 920736609 55408981 902882149 715990935 282705250 135506669 540846744 252504466 890316360 3256211 895369792 743769556 414017636 9800457 754862942 19500871 23992943 74837755 14334117 73046996 734306763 394339014 61835205 304243055 76322152 913669462 147398870 859790781 801207648 861546231 984716096 578383867 426234699 649079800 462146601 993038062 429478394 177671851 230653335 783564608 550836512 194797089 625763454 147390004 748616306 884409277 250266342 801291498 123016442 972259482 943864710 445678521 627638544 261245580 325051706 4244808 367816341 981812984 823720723 340454061 618279076 178940530 277469725 239179708 676131428 954418239 814244906 629374449 291893686 746928585 462777415 756057667 946989563 866321579 812955505 213133432 252827647 949524145 656541689 326605092 328621445 622700281 259179039 411475027 375731148 43664789 276039865 529997519 259557968 688860134 1193701 973162156 802563533 420815170 677196673 364506576 130309800 133444935 36860205 909112415 726221148 156774241 936354691 789766300 44357635 275211046 885942556 260576481 326460372 3589891 327554936 890535921 473646533 291509713 466258007 57938927 338567483 37179917 22553726 462950805 207422059 555685767 392250586 480084890 620646809 982350367 412272898 35218632 294024710 903192461 567719706 646036066 903592944 161761724 759779790 910871441 594551780 999560528 454026643 80431482 6849969 293086394 134920262 503176390 683758419 445511993 128517971 599251423 350935808 300175886 182690680 259253186 259986514 322094593 122957875 781141169 302544768 475060087 606806666 498603014 780700841 400065266 215683474 880864745 976446657 263831289 869453920 427296204 499690673 538229819 7780093 481903979 366580929 938627320 27079421 196674009 506838858 159325208 777257031 709959514 3595597 346947203 148116634 90368950 563016188 353006066 853596415 482836793 415172314 370666612 532126032 720368533 689548798 42836556 976639281 689165587 881544855 4969563 235241425 713396079 809940721 834346404 328971238 235838653 994160273 943132795 890721298 188602220 426944024 256142708 593881565 647762923 103293469 35850176 218529399 55363499 110956867 532002502 861883677 158866255 602744370 407448802 204537531 218995759 178692864 561967612 171912274 645878099 204295079 43334707 370711350 110221046 93232988 476605282 822643132 750799095 811087837 726366240 249033125 906178306 280927623 598584620 157589814 485231083 796199512 654005525 416000224 96343562 705086101 303764757 309408875 408722049 305007332 944688476 221379631 351285058 335446430 478079265 431762809 633520439 764958800 81846377 800910709 39170875 977453972 640326447 367785839 34911600 616810764 379586695 790702268 464978449 264981695 119179760 878610059 734278795 79983863 263196870 368145353 978975349 898981378 592133099 827759673 385739712 636037674 607910737 611479872 100113876 334042274 312387444 496756287 315798853 462852998 909612304 622151036 60105146 925916618 966083029 194948423 957423262 817521771 856654650 377906927 190398521 212823329 347604746 850387197 587219923 5126342 731710666 299382546 466028150 356953726 837349879 406171766 393016662 973515143 363636157 657451126 361194429 712802700 628882758 362837410 896516650 869777625 3475738 434826089 950796605 353106 568902897 839117781 309126563 395439492 286515806 201736402 291898781 654248375 396065087 44645818 432849052 416825842 300458267 700915960 667208419 943939148 210906934 377617073 884935111 506864056 720812992 952277322 605526146 490513959 878715210 559003147 599978028 775583062 650217513 358867921 399241948 873387546 418414500 11325063 199898393 321598373 288243905 112172131 730511180 162312444 545687856 212771233 295045035 455319269 412530686 692906369 37687244 990275953 27592511 29247364 322821772 714328580 346108032 168937648 541503500 738280755 614658626 631916327 633867150 216578124 466010696 1054481 847651194 287713924 206639075 165564891 74046801 994303843 476513774 340815163 280593045 702810087 336484285 937650241 261627582 298954650 929031264 211993314 767988990 619692128 156710366 614473328 821436938 458185993 560679589 831216091 243606683 940591303 715123659 285645377 976643240 796190839 665035190 746936899 962738371 91571172 949980498 821521898 213749137 678034297 546976497 303039008 910446056 800856606 774381224 119651536 325777227 695455414 500728960 821200402 874271898 971771763 238308785 414643731 783703287 590701455 370595192 159122717 367673347 472968214 173031181 663113299 790855696 822749631 536729384 982521387 279821875 92781266 604474383 623954131 8394267 362292327 955191942 234326746 694020774 500442813 449262791 375546687 493692305 887732883 712379452 689849145 6287518 407579353 451163061 544922076 302434832 294137814 838590779 13043890 230829931 960477530 531150359 788089484 201033790 288308031 841700675 953846439 385690889 943005921 260276914 551139855 966203741 882348007 756452904 909498501 507885909 592096705 674747218 990320912 8041893 672449614 977876352 550524664 756554756 752534166 458232960 731928934 617315863 267680963 269174598 103263410 478376039 575935955 211471102 650968540 461481384 744931180 647541332 910926783 131348324 564083872 657825468 903908796 703161332 510144627 946382170 65172172 959343739 758712844 776654434 34290938 454662997 124092393 695478572 951526303 898337179 865899210 381114572 692789524 504554277 230833589 969094075 254227525 924419328 681175561 854135410 292529944 939028212 452291428 225333001 745318539 113804187 899027312 456371689 452523047 323084803 242643604 844211896 213362736 37064278 525468211 541623609 460860192 6474148 848380057 120214164 797481927 480396930 837909304 567336731 75827431 339853453 723069461 861772824 912489978 642417970 11990299 321996806 838937811 326249234 124040396 664497186 720243260 146171164 478063229 183444522 29909348 667728512 664607484 749771106 711916992 322868869 101293211 865436722 583596443 794031551 585926193 879391997 602600440 405456206 968691235 821014508 165607600 933601669 827278078 726982714 601503011 174572286 182311536 469618754 869277726 42438896 622254619 658206678 434338826 199531951 884972273 946848212 733610819 504608485 199333902 81854073 720879654 962478524 613089599 484187896 839524180 744443385 600198481 86431418 520449433 217817646 712626201 448158538 207079260 693595666 938641986 962217801 490621265 751523543 760517569 22119814 830687941 663671994 216479393 522230407 873222143 424737952 54761557 447603123 670025932 521891966 555223582 411235351 120337630 676000005 134861869 210802304 990928685 396157057 72834848 938000055 556540919 492986195 374571203 915347756 93085776 667415675 877454750 902721131 736039994 36754879 156019922 250302216 940770946 117913680 978681556 683760300 801095175 760718977 773995752 96731442 920196214 823838047 7288599 524555120 822734186 646879267 180738848 698901768 854232354 200158647 304235300 827976496 884247470 289656293 300489407 326052921 952701813 290941209 114110982 121420547 484445186 946248330 209091246 912613220 358642013 567339397 628338617 255363237 529136090 626285501 771532872 80141653 746469308 543706976 251330553 733523910 260727166 182698964 146383025 294761462 460766691 642579230 88716078 420302152 108658437 292074065 35006950 653346409 409972822 356801031 577658016 690151515 749465215 29561138 147513051 559959286 111146062 450984511 16609815 773944950 332475404 889643200 284940767 932816490 762455095 131554229 183502696 549543592 871885629 806678817 907820679 876955165 847559675 126496924 331138189 217609186 949642675 840810579 607538615 537387712 652720703 227169420 925453035 231393464 37365792 585294775 498694931 763757381 501928081 414757388 375780962 116577493 811774113 9357640 426929669 899733825 242228430 178100195 189028956 986435159 118608974 357706426 704859359 750539278 505735885 525663009 566769627 277150662 310288337 299155668 511588721 110535094 322091855 493427496 251997188 586977388 151809492 800145571 566873179 666957414 982303517 293059406 456643731 305743787 647642180 828922584 391683611 343943508 59199618 788006143 19648970 949345865 590791124 135266186 556117850 727144895 810759958 980393902 59700547 149299802 565620353 296388998 748695088 732051952 866218234 863238355 161365268 130875683 180915518 539210308 811952617 106873882 521766784 11172275 506886975 924305653 892234167 2403264 20009440 920676577 364644710 622357288 988895877 866200889 524269970 762134733 832433510 968384092 499097016 920971989 628985984 954654527 65566535 844728093 156787700 363936288 964086059 546187954 660022547 863914176 247575345 995386655 552258685 70770184 619184106 863772258 544994025 742401130 138587261 212342976 218841260 541087137 27197194 180853420 773474665 951814452 669049540 188757219 526913060 81729254 367049773 453637788 193806498 904229583 561011372 15451327 116755311 494538114 252081163 249140293 106613123 802883584 652781501 990493664 319319300 993495148 509346904 877871504 172937857 825091705 913938673 275044220 572642946 143205893 816502930 451575499 608113631 769573661 247352401 431267422 370463396 411481803 678335656 905477875 786860569 699538475 78999179 986135328 629562465 789902855 278982061 270398445 455997822 288212549 545109202 629221432 502485369 807293551 555341205 544369189 24146790 82011507 102041795 669620781 583902906 223948198 145717311 477268747 814480753 812133010 944933083 32637242 430962353 193233032 345096700 995728451 446992599 490518603 29699441 205055336 100029802 91469819 496652809 707022704 469513852 611417985 578705680 405581584 523782804 103934203 846999459 828503438 692039596 539133317 557896138 818284298 495145651 110640810 48669144 484662116 2161659 546340967 213381749 357094250 512926699 601898673 840307219 839814967 703122000 144275239 35311546 934461317 774586265 413161655 706125872 634592703 115524719 264927036 318851307 753103910 676082092 629156121 147370910 307920041 605994577 113281061 848691224 36981107 381538838 345027463 887355337 43454989 26747373 806409315 182530885 98217956 698509656 116824937 589635378 344210434 826103577 600626948 68684863 79095697 777952768 864191887 251668356 478377427 825883307 307810000 360808422 955921816 283938856 616487788 680580737 208430348 584939148 378242730 366380257 837957864 992565400 899604759 650679409 382214851 539690289 392574920 178912927 252373677 243373276 268385326 97742079 304548093 622384801 596987970 297117243 77985148 368917797 881082889 114227051 118532700 707464302 934646670 681217713 256356 331548912 116625394 675868807 839738886 535999682 172988847 216121501 540055143 122072174 278627274 150721837 972785646 759409818 145322245 466442569 344039385 563441934 560880888 796580109 167183043 557477613 708501335 297411679 231299036 804158465 798131366 960347702 332373353 899575995 395843829 909285235 754942025 954240174 435972635 19362751 442031780 67492236 334713362 117290815 175077267 979789771 826641891 167041842 134592017 806324550 817323973 736689648 441775689 934341566 938797125 257390108 975032622 634847878 341631643 425014405 44886935 898397891 937531627 128602067 26543647 285983739 95424933 128392863 109078042 100539464 291849307 112569724 995989074 66197255 601071491 11042730 49395082 198798881 952465972 6573561 401740523 341882291 6903662 641771389 960925917 106099729 73658608 322790741 140937842 22751191 124871708 568724454 736019924 785132728 509411962 904560338 524142260 532854000 430172978 19556438 877925510 505261019 828418741 375606298 770225784 771239119 716947034 67225845 378132345 494972593 510642565 704366334 200847013 530042945 320342745 740695998 904749933 295073307 588622312 33374083 179879059 557973264 86820010 134268189 342264915 881288947 937464393 963653932 114341039 699331596 378055705 173878498 74322941 909710687 4822005 924371237 248685342 937545862 487658910 672296437 780865260 67175790 621537461 730090073 618426554 641282800 980565316 694668112 525474129 758309213 892588668 953433666 949397937 801372934 197869134 445360846 50123783 925008593 861431676 109378090 626426155 656565418 134720289 450468270 384946120 138611809 106232965 56906019 14236814 122866459 874155938 263961462 104401053 904443271 465338435 798032042 338898629 698238351 655406841 743381684 165928591 300343000 624909638 772425280 395431422 516625495 24068120 350219816 680625377 612694998 666897324 175935300 585728213 507978651 537617045 599307410 324950739 478399188 37012715 809005232 156540651 38483498 305063673 414509871 373322473 855794011 813501907 168470011 819743857 730565193 158100683 875462872 489361263 27640339 515116783 52108944 266813820 536822437 778094865 143824197 453694437 268433981 407531888 122679000 389303678 111938335 875660690 998773271 782080455 328845830 842795163 546219342 61919235 913759829 201093258 310982469 298256345 757442844 695298683 182958510 617994156 204905 449358079 815854454 232946743 385188337 141068509 594214298 994407724 967174717 425788532 283219395 693457609 940545126 433011936 70944698 615627207 308100193 120626010 870855547 992339076 494602766 501862947 500904292 268249358 728307255 39004190 376549935 758513219 883048557 286609653 377987640 759960924 514148829 695359343 101025198 829757885 335670864 364181435 795570405 978678309 810642959 406551565 192680816 584535870 938251779 249860000 548592231 784708684 976769739 711637981 539682919 777661315 644789903 471007257 247536949 368902371 153141496 673746612 995891364 849215610 911780063 749999936 119239435 945835252 791011354 498560432 919651830 551856626 913827822 326374783 570943276 325636432 861941494 923115193 158595317 335314577 529658447 199482074 202724459 391064009 966357373 116432232 391223475 824720787 614332503 496556450 755888870 582367700 698792924 472306094 974882044 9510014 232699619 408578626 90601312 361490084 450903171 906866503 398106320 473977641 720526207 85454953 873464082 796716056 512858837 233488318 516544057 155162691 619492606 676036190 391274486 764353993 300530279 363505038 113378139 49018095 283581852 965314104 192510707 993319813 996772102 78397816 232587124 95491498 695339580 898661559 71154753 680369135 455699591 714013942 161511108 60440210 172741640 826355520 641335063 917547569 381581204 824299606 234311995 267219231 94584032 434930138 952677019 860931295 756504948 633588054 852478785 28380097 946802569 179703352 305837076 450507265 214282105 867589890 267774220 74488419 238059471 597343811 864687107 263021948 298548478 898598409 61465548 225606269 475900232 323991681 625517102 433109615 397853791 294247519 389923524 628049505 873549124 354143131 470698818 430747379 42246085 45474581 103598443 202180447 892181992 37005771 317173237 689319375 135100128 249442474 85470182 282249873 748976316 672087553 40976982 400186651 855337276 494942008 954781961 122109503 630475713 333958752 648738382 535776813 671713305 219327821 359615204 236803970 581323015 843533364 25788770 308617478 995302365 74345829 163771597 93148465 13400432 264634476 358573707 648343993 388971592 684979920 664039569 28205408 828673444 430923685 73089321 13245649 278728623 661813374 446137678 748484114 473851628 184319742 946838685 351365460 638521888 352175149 608239650 111431401 619514538 595718175 292992907 320541210 723888635 740406859 444170916 435036119 55503194 158757159 632011159 908688314 298691242 287715418 790600354 154726972 883816308 105267092 992486812 144296457 257939255 656985476 618335059 358425598 134414972 14330439 808005396 938551458 930507555 592095652 414804186 539557635 218615215 234659674 43110816 649274962 414446019 672887569 958783949 487698019 2860091 829452444 52630571 657149485 388138903 424141046 518912179 982979473 624794749 849156993 912494513 480745289 439638489 939831217 61252279 687673331 305278559 501433454 445083038 323044620 77196654 320884672 215125350 540474671 326173393 801726796 651865953 685211805 365907627 46613474 338259955 339849105 421525601 536385883 293777724 312658353 575561433 702341108 414844988 470000102 316062085 284882246 67703322 433927889 561888483 274329780 347218716 831458594 651892169 575186303 179621049 933547943 882392415 589941595 592342205 67329024 159795462 247522516 114323208 158497178 70879895 144383815 820828235 536563904 349711165 368329468 169149588 206133775 593879139 958607269 355223495 123118927 347870663 486348838 273229006 937329982 962105766 116807813 474987195 196986666 52133884 786342632 854214492 732854558 654734046 53145655 672553370 437187061 65799331 621758507 972327470 20656178 26240756 13935309 715608165 420548035 408275971 418335499 874457624 410617494 162319312 899296760 37708441 687012367 733909262 515201767 541085729 73111386 971073625 440885323 637092081 964818109 357729816 922560268 593985888 362206144 119560231 744771228 936042388 968785037 569936773 134348656 426924653 162756272 273948214 529234632 368245623 658999742 60742563 242390530 30046660 530470069 232634152 441284724 37968665 743217950 423228701 179688049 429273444 832493604 22980686 319268211 745657123 488328256 670445419 982207305 497961529 184829649 46516414 851104815 675126036 119380904 505279577 966958883 698638079 406127365 49423084 559868999 690673370 252114537 19342269 564812339 7964436 82416050 524719182 616194157 714689335 6487886 249735790 191223432 462303228 214513215 476550454 677200498 137866394 277616924 719458306 695761710 645812053 130215113 27307530 560916508 151039181 487789996 457558795 500983592 495064064 888904353 105507745 416772738 11051081 826199992 915234191 499225560 86257419 884362782 745675671 559541398 630324022 684360030 181209843 262765921 525711369 623833550 275340045 658610744 491087274 839454933 59945968 319048016 943264888 561902547 900179807 43819173 41207750 920560429 497599912 109508561 57428615 626276484 141125515 331738472 690128794 238735859 577967401 759592005 594944479 861005358 249129351 781021268 970989651 846076499 590112143 76256246 726757702 334769838 238226856 341133157 634430352 290769100 56377008 485321783 727259783 904308530 615576068 920176632 611908811 94717650 796666492 479819384 150053109 917007113 630286843 676327946 539578293 979196039 439509237 809968917 799408551 429835522 27179730 438393596 306969825 533652882 5064588 117459798 450525504 39597256 284630160 441046301 118733428 770892672 124636683 640426214 821585422 887302182 902635396 90916705 27061713 643886580 528704823 953838648 171133512 197946577 264005333 297257615 490753375 280013699 487454316 461178555 92117560 574546554 777114853 692867303 89706405 22764554 543555944 947804215 724716670 274863521 353245432 951648676 820001826 347353352 395342890 239511550 854131027 676201745 894527412 320520640 251154804 840810968 957133076 862217922 211816747 301187970 165945971 3549281 583434906 995193729 655048511 721222783 100248591 148366811 987269329 457366346 278239526 450536152 619058131 685631339 72482671 818779336 913799840 517641557 545614149 146639070 502226642 194260532 758215078 773838260 655926982 934796983 666946667 475529917 201727628 764842862 623727864 656626675 809247695 962813061 633835247 445706068 166393885 259571895 598252702 612713858 289907299 711372446 124577751 259004535 45279727 428620042 508159324 279966179 624681881 358967509 657553388 267014152 193684466 462842776 32424148 94553507 641721941 969276276 616488037 253927771 377702738 724853347 168694464 278758145 292543704 405753458 375376673 698569854 300103490 615666453 759583038 122791555 450924549 836684189 240386889 431973912 960442096 393923391 65132437 687991963 805532242 21823720 41838730 974715041 811102578 738874453 292529650 945368803 177602950 745050179 640490016 852330182 750900908 707164510 451928908 832664546 475619068 443142024 625137042 470187207 739226084 362943653 889804006 414138713 74888329 721594324 217322785 857916404 956807460 678079271 621254722 530307104 688169743 985345678 628481043 780741885 353150323 505614094 424116274 959879132 655637269 503546337 71330241 689544222 43573141 389155003 28623102 498423270 798736095 976272626 557515672 386045193 470142811 44718113 527921275 537781006 665465070 881826183 343480050 14559307 498875212 924915054 626966477 821280342 715405854 687093061 264468884 430436987 583603941 520920026 688532903 756898414 566537525 779797805 373515948 926816702 958768827 242361750 859496469 765598062 762957225 857954813 632198189 793339149 181277092 188638515 38412492 863328011 753113582 463094699 203467411 369383114 730797625 450601679 86463364 282118218 935765593 386683628 607644395 193281583 20883601 204868838 612601906 625515962 889467735 204920883 153822657 54037986 138906566 206247067 214759574 140514105 111889943 665234224 316192149 396170090 692523581 386461270 876453650 837403184 164035473 574222000 824864318 285856916 530621912 434464015 663488141 285731724 619385538 421930792 291400129 489647064 387128332 892813527 381460415 115552643 789555916 330058506 826247540 250591093 111355184 222544966 580204251 55119568 667135578 172324948 984267489 460438919 916899427 166846584 400704253 457632554 475582465 158738097 860346400 880104609 349770936 64768136 966064899 200458016 864853630 124234501 270802188 942829256 463605221 892366235 654678136 87444278 849385500 221101556 473696401 115583269 252588471 693393615 173723155 377469243 949032491 93289639 618210715 926576159 434471032 432729870 16534496 115453589 194238620 51357705 863273621 527959784 328484938 16395026 393226180 364316090 995826207 775077059 299841752 925409979 187680842 127201387 485120794 965723858 762162174 738009261 261229855 29565891 819664397 164619079 499122667 695121801 145679755 333863681 32853436 531572018 588761911 995801391 567219 97285960 708114204 303193889 884562997 665246992 892717213 847367885 300990363 757043098 424776103 408858570 596840069 28040199 158886947 548188340 449710179 58995117 427039204 139543775 70616307 776922669 892613383 913530366 538674631 44303509 267451680 920116068 31111047 258157201 856518171 663239320 524029300 519270706 670994383 584230952 629202886 441073205 936795668 532351336 982807158 578092061 166306910 868248099 173112469 608973303 219686057 974089848 505297351 426440163 157752947 631176321 376548358 160838580 720153143 406645608 112346062 272814619 943302916 596873978 272970965 264443042 373080915 329399788 108355879 609591936 205691215 46857728 950036831 70141968 124428154 110184585 459685050 614566266 931617146 123040705 49424645 719118235 571741485 350006080 346787236 255988895 688637402 716908804 412560141 38050651 254724953 520126353 136333733 47612334 452063682 842313260 259280245 102190735 835716951 84941575 583904271 186319067 108852350 109560087 254954899 985294450 66077314 183421943 365398825 71464931 205337243 662213573 2910450 442955308 344042571 168078162 802170279 705618887 707206365 139717562 890438610 905848096 790063506 820551829 709973699 50024184 849636478 641255450 773124885 191834865 975439754 54705400 552618121 267200593 741840946 905419142 305856769 66099638 54813141 791221205 114241696 184162015 695039183 41376221 645107879 419766532 246974246 40827146 859353321 330192106 337379797 210069794 711742485 183418695 160098980 981969455 930084890 838636556 824870237 800869742 299896339 608675474 997100178 448113632 793755991 377580132 829210264 951777962 641788409 141121724 837460422 818695729 974149920 963208867 478122961 712607972 971320379 424858797 704537827 825634441 748571292 379904185 179837243 928186352 562272483 717628226 349678593 947901678 263027805 156120287 539664258 382794963 435420316 77792021 709387467 222165249 458473207 861230980 77136670 528061698 634884593 619035470 971354818 57657426 241815845 60237460 456215981 322927611 486354516 950223837 336788671 785204199 704602559 89729072 432175613 442253465 726367304 854445896 790573663 991448546 895273554 46902309 958999533 902977141 763942656 520191728 494825255 865490656 598601864 658108817 102605437 397076023 766656884 647298448 135878477 646771674 119628657 596334978 302308150 218000732 985045253 413510664 768542812 822697383 207592543 851994046 428171823 518320091 539966414 434402850 533926042 537429153 537402528 794159940 695801960 79280501 584086378 212263008 385910349 313202727 5434761 33297968 24616901 733821942 623039220 783349984 912558845 634416529 796038724 643845749 723957698 650029952 84688047 259105224 689355845 887449516 28506756 6569622 172099346 487372737 766068463 839297660 201013186 47402893 502857793 722160923 653126483 182223650 490919950 372279191 394569362 907631397 413819601 179099340 440193932 692061525 166461627 72810773 613339135 67607871 82555840 7372612 837603779 979500756 811471414 467211806 932629206 885528025 58046082 283784946 438785577 162692777 969139035 432539685 696617760 571249441 95625322 730508254 783876188 277071080 900054757 676113879 870159085 270049287 246064155 939677158 903655998 113847036 935507836 987868710 546907361 659888499 39312291 718743725 212074620 472216374 699057945 75373745 533540485 28309301 698701913 848708231 212983750 874933718 418542328 445902384 22231846 541077084 535562507 299802752 283483313 936367479 819576663 408360454 341692892 109232023 653220483 423086674 513422146 843809470 410816206 329695252 930571937 105129475 685760453 630224890 719132158 735901389 749837982 293553670 767631775 459074460 131544701 968278262 595224944 517197571 442625594 573657101 972748738 630363037 824791627 401488295 212237059 373206379 614753221 906299095 601389301 127368145 111732233 887378848 738176923 184393846 756418425 146375791 412264475 140075470 329626968 514234137 627988399 46336413 399959458 510124296 616052757 741350297 141575252 933906242 651273789 677512885 639578498 464945251 777211671 8927737 260963482 680740065 107335507 119814158 313992285 640910236 543907784 530488016 749239251 814559002 54777427 6439849 492012977 47411506 468109983 486547319 848414608 890273823 632815018 816096361 896526654 119254471 96978138 339006863 279255273 159808812 463005942 993176350 192191695 160508910 590036374 519063719 952299161 467912154 689177067 43858610 376818112 75368433 962492825 942472185 447533829 745544736 389799249 727326091 492231178 114805519 39172383 992500411 926116792 400139660 194041438 873990321 771710892 926756826 299637149 20975918 756911977 535966506 724518928 782121688 304038777 93111916 63973566 744816594 38506533 507328328 433781229 748003534 334506615 647099947 422262382 314211112 880289918 321002847 153033979 442411037 636928389 171953373 364774915 438181706 305377806 867961745 586084861 308534858 723164713 57761639 280563587 734218316 34288416 336302083 830874271 917656346 556416338 519332 315496291 313914479 838814907 203224353 894730024 767557167 401319326 769502897 566609027 57333473 634878872 736867627 463338230 150213947 303030779 791285338 515515697 653614636 823675781 297521511 81863941 678064509 958489081 939772831 713032946 905709648 411136134 86467419 258285735 893709829 891967330 469763329 377684371 835390742 728906869 797928370 551259392 725437450 514349305 175213080 170951300 677740472 604865722 620351952 926058269 911973746 616548349 549939433 293928317 44789455 285328812 958135482 364174990 800786198 435935776 605670957 224474044 178679237 502340164 342072804 198730824 656819743 554508753 38886524 692498526 328813034 197723145 685235680 553805553 679946950 497204775 880138687 349792008 525679060 430686409 907273673 63261619 347492514 424846934 345538598 853861636 542456696 154614522 496767126 807682134 319115648 87898418 363814550 385326072 919397152 793459682 498093951 350049185 748932488 129946713 723264080 356441295 891900311 569669351 301147356 318688370 819992943 554808055 542299783 832248972 120376456 724072187 589888796 914505215 837954103 717302917 829152329 41136540 735085469 335643783 710530621 634071940 46251662 808351490 802220882 671099629 773485009 292503859 580506630 889555003 441984454 190405713 457154299 616988086 210851956 284577338 772113943 710739361 502564969 488924626 515134052 735539460 343640444 502856269 888008631 296089018 817734033 189199436 292818726 872188034 732392028 312037552 245757605 578201939 26096201 114591739 979451044 322118324 620108884 171017172 3196987 848068641 858816285 408472464 693783833 894386906 195868942 499274023 182280377 81754396 963249001 774983774 773818302 425818807 985932279 691358872 270279198 565192638 48152994 650256697 230079704 152683952 624752301 506321095 312495249 321014409 651538631 116462222 605385431 684043441 145129006 101371831 487020191 877882117 912144466 209985142 798339330 166756507 205074734 884072268 109944866 898283516 912977398 666523116 28299732 304008207 745060441 662019215 635665278 589958242 914875469 812258292 601428951 103898906 311248126 111486452 521110699 662356988 161777248 296348818 768173799 303532920 781760822 686313281 197634348 776889432 816809109 721166134 475658473 314511467 26952128 8903357 523235435 395055273 879267375 471423563 900934206 868933658 585436023 841905813 919610487 358677168 83971136 4467972 78859758 897776745 13482050 963015327 735861230 707702939 708420425 453766006 536094204 52563602 688378478 527777649 926281227 723978231 669165170 362606380 856677935 752158980 902649977 552494846 308639437 228549448 712673354 508041179 323495431 918345690 211608614 12386706 480095519 413942250 843534360 952270635 908327610 186056914 588701163 318748683 508997665 431048953 812849069 13296873 51916340 42888824 856803470 526578793 322910155 11189012 765229945 970631791 969503389 881286959 925913511 355527442 292018842 314731679 120032198 568422931 357318079 736106498 472565388 514222544 483362002 151113773 513652914 214030249 961260701 866367488 690232279 431857852 713034642 373167176 300254193 159754316 949455882 704101834 875293885 130280671 935967970 398451580 660440057 801309594 393023082 362075933 243661704 336320427 107994822 711770160 51129898 217739847 295966947 846002534 994054756 339516600 127207337 554235739 364798826 108394208 327730934 205825403 290678319 77347829 134999529 501052172 240111231 424567792 520701495 552085284 77858254 271889028 85358617 68291823 422373951 525567029 155401814 66213070 166104970 205181420 155021807 975364154 268992359 448155637 59756044 286441508 723445030 370710439 743548600 976586716 972254325 740601423 564755991 598647729 631477218 168238900 614135576 912939496 310181214 707557183 464723672 204669707 313617235 11897088 593691024 153780163 740816877 319648037 363825658 9267561 74760127 149076615 48651789 758621941 524003353 699969655 243697909 213573142 318492173 268938296 128651131 700837992 673377827 201013214 287078124 384323019 322586721 514736490 791328304 109289435 937720727 972033306 569818851 3219072 569695391 242903119 651642827 381310221 500856965 60245511 195681418 673052416 544417852 676706787 837058156 697346867 996230722 980444448 963017579 343206766 413791182 555721742 367812306 406096199 476183632 858334491 748202255 436288872 242675208 612873514 991515623 209342062 939627687 483578344 403376212 534816020 343103040 420570939 313280942 893859588 658926362 14678982 864180121 273061347 223560062 546864610 601598034 245678149 763623585 468654946 36937881 943132900 314196728 528922603 105996738 422046236 1727038 851534019 712433627 977292087 157214099 822718335 927286316 462588088 758373584 419332360 510431272 132244512 801981830 260575723 650894831 931353640 153528014 832438910 927255609 680871377 768479829 800135698 934786338 512353372 859421868 250735248 858125834 205266139 422087376 172349650 753602874 142211673 172069506 362806202 78991127 112582855 555548276 275400756 111620959 913211898 88184749 497287849 734720251 489151600 355818253 64960026 922084183 857055368 649016026 335285571 468338934 218643751 30390224 477483061 557867856 919525835 241972417 432847198 353751007 399824396 970233359 787152302 6262388 551408894 724308521 526619675 814084551 956452359 790339318 285105599 561089413 846696160 240292621 551471719 652140924 676117029 669358451 96635274 798201800 599804194 775132854 785484374 848705655 515046691 404688317 346108428 759050883 167659283 62338842 192241747 432355704 174085474 561667983 171371288 945208593 357549552 353081011 5476361 469424694 583314656 39612323 504757688 552493855 785833263 822063067 361680051 116392554 843195092 24308749 223191732 308710895 357441395 520238057 303840120 351232083 746078476 44922147 12627117 158591202 847665033 582749263 687054552 634360388 285233722 702038974 718682532 870729416 802988602 491771670 681914082 94440877 673709123 430012291 118716655 670714962 666571365 648502706 927290282 920916552 588825000 548077813 831448919 382761237 697672164 346260795 357758788 117836252 377463107 831418175 139966915 166605553 132541048 498286995 507489897 465643919 603228557 325051487 214283801 828361939 8293756 2806323 912455345 192019989 162111458 682262478 677950531 360018281 713300343 805884044 186424995 107856739 394741303 457470229 291856288 56411586 424585694 762195988 832449257 596683892 514200712 51360141 611077760 171987327 257139785 766475923 685235220 294447605 543328789 566749272 786456850 60640427 69074690 934457900 2502050 23133902 809147053 775812633 135052867 402469398 434192338 954994931 40149012 137793202 983587328 222367929 803685190 258843000 667456923 687774529 512625167 628830822 77599067 755413025 898406837 835533598 668298491 451998517 439818311 654525103 356827266 440896626 276947554 916387756 424998708 858809854 727133574 784006560 435625128 259725739 673366351 145761706 333984038 914482561 386747809 3953098 945513711 203042948 832002219 295034845 800925898 427641514 257860347 848641665 972537054 537006440 391161390 396270354 173409843 277464277 322085590 750814557 136921564 120195785 692491633 337626377 783619487 72076279 491271976 269181293 478410379 62014483 269377678 297203338 292363050 620494483 734135447 375372393 381128863 894559131 824855955 58759004 581705018 427932676 759703750 511493715 194660142 115270801 959289461 693101490 286539646 660472807 716489896 250036434 629986372 638012965 659344097 559978428 224116980 191039667 948936617 815208801 966954926 980187269 106345884 185316711 289857553 651344490 224159649 668255786 636608532 895982006 249765880 632550483 317607416 254319106 633330184 107458054 355208206 21569064 653438489 19945420 575944384 692052133 625051520 683320956 943929070 641121145 838657764 210060839 328606401 977548917 313013628 347624539 740118847 476171902 120923356 150803914 584094991 603207034 102473319 611603089 904948477 293586565 752763303 551890901 130755303 91362152 784083196 193444160 827289410 270906535 526795563 601537958 132847925 163667666 590917927 767780358 396396250 284741952 313722547 679979230 930474703 365697742 698596438 805241085 204793210 832944563 140057038 260230998 497224846 839017121 72901892 865434737 868375482 350014099 563154080 660798003 89870286 533872430 93642574 683805928 722356495 529341517 641385323 154159037 791439079 467238338 987317887 496347711 533363859 982125712 995095549 698553442 799895962 91004881 942710309 516469450 653785872 832042461 961500702 513223019 288875965 59346208 617945087 290122202 922938829 934885145 571155154 895083528 200615384 268222106 803699742 40230056 504725286 393608856 598607552 181641626 500603609 694942703 788611429 853629212 519160694 339659385 681516661 334882366 659632830 114073160 938245681 552506234 188375407 967354505 129454118 409572517 624474576 535858229 112106557 437516228 769083399 947246207 401139354 804542178 245845513 248602839 618700932 719889392 74653817 257117469 550838291 421245828 27395378 298081332 343494240 251534940 563759899 390464 129997884 548163228 581865961 734441849 940409664 395716509 826482752 777818127 915975412 634160144 935677176 261604799 640083701 30799259 572645022 300082115 654168391 324125230 400356168 564063710 301517127 302269471 964227261 204467173 734623099 949357008 496431991 669631860 124399075 539331674 185595399 778915764 163962038 196608273 178974697 526406310 384084711 28540806 448446532 796928125 42308408 751744804 356156278 38415503 643603397 189563243 241410990 183503623 760833731 904653265 899590247 442509696 401157505 268090 491295568 13985095 715539501 516567091 753012970 189153108 948293761 567612229 390815217 866577418 282065745 800078937 809386637 71286010 982078149 559841384 140972442 224275071 479737822 57852529 348145229 733952779 775456402 986308134 475061215 692723169 238466481 128060186 882533767 717628498 77783481 792242694 376545449 696279416 320296084 148681424 215954121 599661885 63983653 246836320 572763050 219222225 646478431 368212539 970746668 775342403 392164445 795978524 119686356 524778889 975500051 116062601 312864405 508073840 586606221 966161542 967146806 364703437 70079307 167625961 451323046 272579857 259670076 677008603 908530749 264338973 732790606 654516243 179491563 54972971 312692726 348574325 436224269 559655629 46142367 155438188 751253851 16953685 387064693 506249269 835571789 634965090 519894669 565276920 22690831 558456116 290029803 533769154 65680715 75342171 901124421 907069263 636965582 901384958 362127760 630175177 825773348 798935091 586521287 253451593 280175568 746528457 475965185 905332611 37312574 731242395 409975824 493036238 138884049 563600252 563843976 643969613 680242561 279640833 305769047 798792482 328291635 172866025 450424228 992873458 702270016 633308202 182710205 664878525 411557306 979544126 555777923 694883148 267013316 274991686 317435091 963595464 758790359 989273553 869142292 794974133 194046683 340695379 958994373 232940830 303146720 823464455 620584248 741211721 919312714 536699332 777168495 779769974 186904648 137793116 973946598 825077937 471139223 954920234 240135825 24875464 77333675 283332086 228922634 101583954 283427025 179869537 937964428 996367612 862541698 358261410 226106944 688810285 776130936 473501971 528725295 111878186 622430129 272610296 382317726 68918216 260673054 878649220 367140948 416419211 511400526 386534851 740304202 941553661 101072249 542129271 352912326 250265765 653725516 63748010 869832944 33049644 231853081 793256952 590664811 634552482 732751887 439943737 400228056 467283317 826750646 648623902 840040001 878299632 201411468 527433484 724624081 237595822 444645117 813269097 345552541 405683213 672899570 145504166 211980338 993432168 394626788 614421889 519391356 91564462 702817596 267611724 821442761 245952417 397039099 359923320 558757324 667227222 740917877 741635139 168478868 761456690 121534014 855104495 18121153 897126508 577775810 778825213 313096569 819183969 619380603 349661442 750452004 411654071 71174816 577054426 93328866 836908950 50579394 115945222 772634551 201705873 959121330 558954741 164493981 376764104 905307997 842795616 711186940 954062007 393573712 923688959 79481930 241123328 317255997 394112632 816778584 634639441 55429082 76968965 694335372 585632743 281754932 120655587 883519323 198453806 549629250 798621162 71087245 315852613 767987291 876832841 787600076 423949267 497007355 801187758 809065239 856199116 371676251 429007505 664428261 234462692 326727204 937871274 653510936 167561189 98676630 372389641 821844263 7496280 484522634 997628899 810831290 839803691 388167782 667490063 93328882 949926815 684534122 852042207 655667090 594192678 19196507 924713259 753293375 279778527 975720204 906748196 229260794 500284282 820893718 935640771 5596835 508745704 353310131 365619601 961819965 345669045 228680503 410055157 84193639 719225952 94947152 36933131 756296394 751585455 588874209 292767135 918571623 256063485 674230976 610217128 826119808 504518175 386737946 332097532 417287766 251875004 37939617 738554873 808839639 302785493 744158170 994420577 689294996 516977406 35334158 282403451 289914804 169130816 98907512 716146440 454407082 499821242 988767062 398148426 723740719 577548766 206710693 887059447 268228473 409745533 703969186 285265669 299319034 969376124 575416698 500867290 84821591 409505324 656320120 565280166 48049001 915716088 807683603 231743266 723280395 34857420 635630170 505869916 991934597 427162588 609013825 776301014 492317343 531927972 18484096 28706512 718764364 734478671 428578172 419740826 606448926 946165216 167543675 412637123 556573391 846416854 157127830 767600639 895070193 504788697 925130052 583860673 77584367 193018283 840905059 444171715 21969438 580610240 202089428 88586461 56951189 843789579 816762011 504036202 179001164 747934287 155286677 177488319 177296496 679571848 125028988 389296253 970586931 474694759 155987969 191679710 390262700 364652193 565025573 574847162 835234512 228377026 10984080 558188281 197623372 121139274 63872578 573382254 643841246 989257408 279690952 896482116 997657526 890203984 37494095 227713568 123494541 480630777 160262130 482886797 463369306 899574319 276431448 267743981 783806283 646567645 967325129 173953431 305872471 856787966 390618098 254007903 140370973 675888428 586390144 332417477 606895822 738489555 45802841 937191616 945743287 857014979 264296676 77953803 979632658 139801815 475371990 759051027 368882231 407829809 156569080 392856265 261379147 833426497 847796599 476957511 194302013 85264652 689191683 933340522 292654851 401119784 951016479 647682941 672696556 880367195 530549468 351957199 849640676 219428803 133387205 787343812 632646748 972877355 813531169 95657006 259601211 875308038 782610323 471539824 492432091 381426721 807481323 404481117 716881889 352285382 449921025 933577513 113658083 750350613 461543369 764355597 252957847 240622477 420791141 585666461 485235128 873570053 962584238 555980657 876455764 980884575 404993399 643814340 860689120 539836295 474304865 366044906 482716968 591409623 38746310 345171341 489641187 310824098 163288289 675137879 325003180 406934519 532995098 930180978 278578193 417809055 910017297 932240124 341400820 941552289 472930556 183865182 539346647 145687791 787261710 180179223 631453328 397979589 15741133 469278808 374417993 719986543 93297230 304166895 888178467 551965889 956965274 617780109 191816166 358476812 75643606 787753632 492536711 773894336 354029070 358293942 890792552 902203241 14176572 687700255 922539960 549577470 787208820 664907030 716863667 388552980 941741846 457047241 325775660 371386349 100304517 736395988 866760876 468939311 890141918 907645044 393588994 602522668 443344709 205546287 318649716 104301469 231403749 924189700 639602887 641342514 874059049 67515784 889430678 670663953 775304659 221543638 336410536 701335924 487001392 524113425 273301343 931000344 711537790 931729863 863441043 964713863 265366536 579195495 587048912 115568210 681504158 506724815 428231904 986594988 445077495 409397771 804130496 100064912 304234739 156679200 74710536 218198299 187268862 379393868 299868971 753398416 600873566 550203844 149615030 396707579 358804415 625921078 444069590 739787632 592420200 594697529 757324983 723847 880817710 809815752 331946164 679750852 420719443 277600245 377911308 576259918 48041428 156770762 142402403 348293686 10224583 706784510 801188751 446439763 95025812 634993688 763447005 309660216 900124801 383229613 526422780 913324122 875846748 702484024 758596137 99766520 262236555 101194417 644777463 687102554 140722170 468285933 218234260 567887332 820788078 470280721 78075210 354316684 20434433 524146461 345832754 170447800 994533242 701056381 881075165 930494376 244285312 998432753 890056153 53797356 893833534 823411552 205192667 946979537 866962595 969593058 240282703 955310627 719513369 95487721 574377420 292932746 741512475 768474241 279421 585535943 614612154 584479446 79246089 16911457 366434430 5931159 577197518 418009413 112954542 156616477 426373508 831710733 494432843 369452732 749296530 878055453 698122215 126205136 722849190 480223594 269130785 559719189 136069382 359801482 585667898 540001067 910550088 90116183 298295405 499514395 456183409 351136718 998867291 508098069 399602839 254007792 102766517 287310447 184446851 358963909 344225540 530046319 390246681 506272007 582305279 942544274 335626623 234680739 218559165 876546758 415759614 262239642 881042539 333204396 673760059 459142195 745416325 321180322 347475580 95718560 711547951 771100015 66713519 248399520 187454855 955498204 854018740 48697737 428970978 214226168 410168216 642734989 230607679 729018941 590815898 620875217 45489342 644767191 826376646 547846107 221866573 635219147 664404463 878643648 670468539 402176109 361055551 955284006 343449501 559086671 383360509 985832009 840876213 286919501 100815755 747886564 232709983 740208079 368593069 734891574 681947615 160920924 556137967 818929458 469927736 823160225 290656721 309788746 453697050 673857208 43990997 668833141 714258878 981379047 310506829 937769893 785548860 398791441 101749049 817289436 563626216 24823616 656983848 593280178 434771075 185568721 439595327 410578065 577705465 394225940 241616752 904524608 53947412 781130448 44611575 867635187 269405002 96771477 531437963 87960178 777913937 212759156 969046615 414627313 15805906 912710709 659174285 243442759 770347617 362094483 907836030 957635506 538800647 854127235 7633548 309995790 321016514 509747554 676013293 638441736 242641360 328370175 546876873 253092747 674682609 805393125 219849453 728895382 904063908 864756113 484872973 729671147 763009551 100158037 952933874 847139923 415597364 516197914 931504412 664038376 265617060 858299051 401702418 423145197 85071419 572569436 53791323 517936641 375099789 699682767 79796101 784275409 539401697 340461987 763845004 649386785 145199304 332947536 12436162 880614808 839756977 352830694 321733409 715823798 710005448 662423930 216428506 358976328 997975897 484317013 256318549 990562356 668011469 554512213 954922803 977532685 771210239 913157423 506017095 22070272 975527685 846832338 318083664 137048805 385152433 511709107 206543568 532896533 694857615 64722579 396438437 235015740 249177803 44320637 620640366 870891483 292023857 314989783 224597012 984325119 912046559 98143230 917555750 201915787 639614498 224038406 190025257 180888120 856427391 103912231 296763588 859979770 749559076 399452365 20261640 509233569 184141391 364111338 556017159 435314765 611962673 456202414 542691315 628988759 417674760 747385383 298768150 810929631 927530805 299012154 20000309 123469241 990088689 665085451 118830739 619667425 963451376 614223166 621960843 18125750 695843299 732070590 306810384 55387520 546306377 158945502 374435321 712753698 245728052 715697342 75889470 433652943 525200346 293304896 50693860 58160569 455393098 341624915 772242456 196749586 991968629 355170780 522525890 355734013 240184106 254453074 182128890 849152166 340732002 752413232 94730590 573832145 117075996 424250135 406868582 539222820 209111343 102155871 683689822 37310093 544453094 821966442 805577391 727030444 259494136 49654361 210953568 167965960 114935 873066560 739604469 133751256 125905250 606866901 863038094 274997854 142801960 471495295 806319339 680696566 783840101 333671357 696939007 74049498 261928093 355910647 630929058 232860185 170016214 569521163 289738951 110748851 856922843 79123499 791974251 195633149 55603380 231565073 400799979 844347267 277272299 747642041 133104197 702513042 798677261 833012188 955722229 871928719 587878227 743743636 613062584 664669279 670988455 348480974 185149498 929587030 511056767 136144969 148016676 699035810 943889135 224600579 646198016 254357190 746946207 87791867 178648658 112420376 325434549 915347478 440293692 355759594 744190776 310609691 164189259 806965025 57275642 479327752 763797488 453412202 730990881 740397955 719261168 716686196 465225832 199489297 493839526 343051329 625845746 967360648 683399519 749237358 972012055 798440490 140100933 989854800 475595978 928151301 190443151 235366429 177490877 975601784 212837428 769936004 802922627 450485379 331818688 314629556 524390625 294632639 206648829 297546775 651947543 858404818 72166091 290850317 155810466 490194061 585680589 829261985 238941823 401347179 567663460 668412731 128056729 355302583 295601355 894417147 86054574 733200383 438179515 790410186 858867288 862676527 444525240 119033044 21518003 21042675 144761770 646294750 850158883 239278740 734617435 327508477 622027489 539297279 279005241 856186433 461632532 18590975 615942442 335809911 195825030 93080350 58217579 602933977 896102998 96199202 896171909 410400371 410732394 755837516 228721769 343842606 170947308 155728992 5771742 174234220 513436994 785756160 617542041 882785397 843756244 452878025 933648430 454411500 60415117 336585304 194032411 676024392 293858963 537728013 407266111 247597000 167708975 703537962 880833212 558926339 830983782 555101688 342320848 955112086 516110175 315627681 196466301 609785273 815763839 168407392 894081286 861631032 859958771 849459638 512733176 586221137 907426362 232455870 664297716 122715025 750265319 123201185 202120909 996744480 584766130 596657673 55816897 42017245 643687540 277752680 316829115 242370626 58190080 195675740 452400769 880371100 728615954 453683909 341816478 954520534 573528094 239862362 706871960 655020400 18190882 340915746 421791479 729068333 530671536 7919698 739507680 927157670 63135903 872230439 381853438 830217221 227141465 620856190 838375563 676428632 499216066 581725996 271012128 76287408 881139777 765194757 89355687 71332118 256135089 427416854 828575525 983606263 253846886 772011351 249261668 71386688 399356388 333658029 876473143 852325030 965379595 490173615 101697482 369548793 424003260 126052453 792761173 214176477 151745464 572878546 481920345 17320713 678321205 12870380 701017211 192457926 684854238 752287245 558802349 763065241 406672505 105085506 969065076 436011768 664447286 189879497 32589631 334777066 341857604 362370794 70822877 242134492 411661881 793993626 728941353 609069786 724072074 285439603 504733161 281825922 985908870 984965495 807071863 7121119 247440079 744049610 714651431 264775250 39547738 932333279 279494976 250868346 689485781 936826854 810473349 144372153 924196641 230593116 261067467 92324217 77542774 421770709 390039140 983536539 354366867 240548566 585944827 991151527 122691581 326010473 419550718 186975478 547911394 995864630 514370987 801731637 313229241 57682691 684410862 42208820 192569801 265402492 514916448 688430661 40608018 760848667 717152296 571592023 224053335 940873792 429858331 957409900 170758382 204275358 979364303 304393283 765645716 285150446 625089051 390211300 459124855 455909167 209271090 610930958 971452628 23365380 583500809 735366475 509707806 944276273 780177251 768194676 671274649 72605677 142665427 343848063 714508791 293700363 616476471 117571036 828667154 263147183 502142761 242422121 622142384 505994647 270272225 430698753 606020856 652366621 974089675 998856853 705859568 962342306 661542036 192837784 809666980 571418137 698043608 841269597 746107324 337288088 311700751 427099531 324737751 48371913 880821218 750513596 689370855 590868104 894306821 591651643 163713570 396068850 317030594 498088417 472565155 683243913 6472724 299089753 577060699 842544342 468456417 348164080 779047404 269613274 49650521 767546820 461899626 996265368 631763271 971699204 105273208 615825595 251729709 407476320 14252294 697438463 313186968 882172749 434941985 429984519 242373006 214188231 811279847 19496268 419775943 79053950 404714173 547413201 410509761 407156432 823846091 370735276 324252948 688190154 918303097 242638588 93454933 710898508 442288731 881611893 393825760 311904977 624897265 266171404 616638770 883607694 863187666 993753934 40410099 652409731 732218024 571723170 89206816 60784919 468023854 619978802 981232479 432744388 270562068 904108783 762360705 681117476 121686838 802150356 162498644 156568677 734258586 602119118 698048849 767184908 65669892 27425111 381526393 63415854 209546022 772633871 29177246 940011258 746249909 613578098 912508360 213298647 883868349 459946402 157188449 826953697 323082200 460383177 773749148 310864947 215413042 903528365 284896179 450617741 740878057 501524283 897416088 338568223 346218719 608542391 877202098 323003959 511235402 526978074 519705166 584049974 7811138 111140243 200158234 195487011 476424788 630038761 454039369 542106753 750461645 409332647 414460229 492415177 825036233 978723845 381561278 295199909 957931443 230518151 145602969 166417623 255169892 748256747 743324979 352245151 581724235 731916986 972853965 818277968 175641273 383293444 974830146 316496119 906926366 338541321 159160150 574612313 179203334 239151325 424050277 32361771 75805394 923397045 68820022 913463913 704617390 818327055 373718853 524212774 545352114 443803845 381334013 568105155 949652623 243538788 868446365 491380710 886170966 495597046 767924617 317070133 169459089 999618479 811188834 951983582 770889983 906641240 593286733 374796244 229518695 923991475 736753815 861363967 968597643 823695150 463149166 741079246 148809637 546652918 970099279 363198433 833028542 669956289 225300518 659155829 185505845 957103129 175953170 922510707 625087562 300622757 864813375 181336656 459749968 120672708 925774728 978727357 50103579 442955006 222094248 283547144 698701608 727736197 802617728 753236429 680946473 684723268 693353846 808241259 395600399 388859323 445100792 374057955 193537315 657327733 866671141 261518057 307135301 926567835 126037532 632104916 59647437 645553772 530363705 525973761 429929497 546999055 963340516 334248356 599882792 227464521 736289040 518643698 730513046 969038761 955754816 298318426 266883907 476466001 698753287 251340893 592808542 232387772 360657362 78282079 109842657 576909297 29368182 598526528 325907075 120848119 660936717 204045856 172985064 641364454 776573215 533627124 862853636 401710091 558340922 636436045 473814187 831702374 896686163 401020577 185174150 521702537 633357125 402300706 368513713 764921278 487798300 774871230 166330615 614028348 225098019 158053710 677976486 526761060 288937436 64437690 790059659 181733420 684302041 285156058 597312443 539567941 504308773 528802077 516310320 821044549 394064999 366525872 509733474 362235387 476725783 640173218 389846539 679590842 126048436 643636771 937410739 433484591 669976174 911364298 92873811 777556763 228102334 891737336 450222147 963706736 261086302 297977957 719125781 694711760 536998554 193220406 367875388 962482049 114207550 560708206 148736661 989190244 735057112 99444165 523961128 550010437 995718083 700039492 376856530 841367028 873342632 613256312 263847902 931716503 225324773 96116155 575618148 226506546 370244567 915305668 659739782 559044870 224971809 713916130 833891290 176811859 402624431 791985019 518008978 195015945 834911591 842162889 949063992 457772387 470687640 794361515 723826496 373105038 472246602 574512554 305302736 164600906 163443801 337741967 69543127 658987166 788860819 756889988 482573209 539431525 865909447 735044814 63091918 655391683 217651456 489140956 3307129 168972918 417703962 196242427 618600704 873236069 658380753 364873420 744711815 662019269 304462291 781403434 522371913 143408823 438253870 535888927 869224227 664656834 782207984 726102081 541204988 188260862 479955047 702470479 745786564 622785471 229253170 499951040 486804589 603406737 828504867 626113048 29950113 695401620 221336704 400687995 853187862 650764246 106876771 544877218 366377910 427061318 113717878 956354107 57810065 401265832 107773961 723043579 112673232 787632266 698236504 709339123 221786646 433234446 52463281 907282673 683728659 600621823 753119464 451498931 788833788 586342553 464732534 746690624 606580515 394666473 468565169 918473555 848636920 752619061 912057350 769983632 69080534 936146013 352040776 36881241 509698322 361177977 573506931 273267218 297108679 434927578 210564747 518126579 239763483 390658438 549990957 7422261 791837062 427834056 572205218 32285959 835463671 702012434 506203954 227586211 224625359 164406335 80294113 982948134 95937687 516464796 154942225 564991851 995891864 544290704 499997379 241777583 967090698 583984066 746679114 876551065 569044804 715313654 543915420 901966333 765268877 682096687 869254872 88220167 418895694 216667387 381816104 686264998 441736119 969725622 305460824 515574489 509804275 600476843 424542026 333231684 865636042 820154525 570620520 412549328 377055568 913684794 710764582 374281511 483083604 548052227 482120483 63308448 168548709 959733197 79472895 188507278 128032706 268887835 742867302 222465065 856518081 675401941 245728844 729928306 928160616 283589418 34050385 116432569 359479067 996217268 830632194 959566992 756303281 474130147 835741953 394675607 258091928 233058303 138851963 616566440 68724737 785566119 933074587 101828500 225340754 976036634 755098765 291769335 242305362 376289298 632456856 364784840 104615837 681668323 106487044 423032142 396802715 932304537 760902258 486770289 226901645 406400709 440662603 724589720 651612021 970409807 880924741 301818512 136942780 773763485 631023040 373752714 391101048 516226939 122771486 370637023 73956017 170708650 549697992 979411407 217793499 250905294 940019495 812486702 669787948 67846193 124289915 982909120 412360334 211393620 588575834 347450529 510481150 242051250 545270543 819071982 95258211 456096469 692276466 184630663 650887442 505669299 697266806 277394059 431696414 113622912 662647433 281160183 190716334 778361399 984680344 260070529 440705728 129605029 433148759 191078275 134965629 32311311 272615489 834838 14149194 488526110 584731428 9398101 538167026 209850548 183815204 327969175 344286070 41894567 912954226 842553204 907299152 126770157 757972004 373441867 361709270 657469270 155887322 384209210 764049658 3140520 736438536 551443837 292728958 879788566 460167819 441615414 829782478 178993937 217060709 932161330 634597190 40786834 585140651 761305737 48279886 478568640 776540598 501566799 36964840 187091096 160682682 300082279 137317321 552864243 977866665 162066099 692492174 385494671 958954707 586306750 223591500 963014759 666390978 609724077 247999570 114319542 256433237 175328454 157686960 970070035 407632924 997736564 745607862 797955771 52983162 519808576 850614071 707703056 148532071 983771485 206524952 891931647 262623154 142974442 247361414 896163417 238671189 732168006 502385306 821918984 401378773 450759409 741771733 348143761 655936973 844085714 688945943 454524280 525910586 895662811 99991901 677966890 125774474 956140592 221342499 943416405 32610818 530476533 471844492 848727134 981583303 742619963 796692 61776976 746711179 361264526 782101305 782677498 158078068 51353949 344693206 12154 807670819 585286114 306136056 91455107 200128203 360873863 400437434 561792086 872495476 802361258 916477274 425596890 994460685 280356709 946682946 964558763 89092785 605173194 5817484 952884955 223368908 906037290 417801457 722012401 817688026 351941839 81309759 572263763 904017305 631766959 344637018 95420861 274920541 823968340 199604753 232206430 713731593 584580915 325549547 303133707 437489639 741018907 498433163 752005446 379414793 322746838 746424775 912814060 834775405 735760705 33458897 24393369 731305185 221869296 694231422 792714418 238007776 254424156 281764974 392828392 782957296 575891200 857357874 43096238 618940368 117572065 772828600 642758753 437358154 132159121 432493491 703706179 870631511 480664773 152775677 222656678 902760559 391631840 400922165 338952 698476353 686250140 10315683 287534604 551661846 40121968 763503860 179424891 717492845 160989393 25384908 213129654 451151011 897353720 109674025 236232352 863697070 394309539 949495563 940146638 926178777 743323495 274830002 947334066 641056584 361579578 775496134 743913990 180127367 162971286 133492417 166202107 799810587 494891312 774688725 499383521 462609170 626444991 208552831 856741666 383571116 204547545 180781933 999020784 552827581 81464135 236042844 767178565 340876793 423214141 49329815 958896658 700716272 598505228 134152275 819668980 436182179 860782863 913525053 785461250 730111861 105553694 944034033 859320321 946389114 749920096 680503006 565360722 752200706 404821628 932132563 769936846 831102179 994305075 811086904 285096455 904760104 482033228 124528477 497432080 367046716 227501400 171959447 52157331 975788464 868437130 119916644 262235889 657597908 151421235 588750228 840201077 152811634 52995441 349528048 977763573 265324362 733250772 239655598 358585042 439624944 854295547 563871769 429387254 418470287 888054635 18805686 639771098 551267947 570638051 76950140 5533860 760025097 805972547 519527421 697320032 368874605 121599846 481959220 809933284 60891741 486286292 214534840 436261792 197780625 40848063 16430617 456643433 620254752 203798085 16719447 661477238 570477273 795017771 206599345 167450599 479945881 959933822 328999704 859378635 466065989 13143411 589431380 90719687 442982812 761861542 54873113 513343931 960715999 659451687 857011306 190765292 495797858 620229373 541567670 271366994 81054494 76138486 851816817 407272968 512295783 625824842 514935026 625780957 977621315 659695417 319910663 496300647 804222052 556682697 269255676 977612569 325953993 52738223 195464590 667677898 99988774 675112175 74904492 249199833 110589628 186644057 108714258 611666556 640767257 236799568 77094858 335453117 166295710 11303001 137055062 738901993 49038126 965425945 563603459 420487534 79030113 746024913 679584115 258234464 59840161 186904813 785758166 209150175 267574562 339476033 396854551 454398582 520429927 393566499 168841648 924879041 152334888 322746977 758115327 986138740 551395955 705649392 885657530 809788638 711156314 461801990 592880137 794668176 949676664 382363427 330435907 30708404 778940152 811652406 170621856 669245346 148545525 415293029 217217665 363127184 632285323 473872924 629919317 514402466 418839322 444861573 323182902 350194061 405302628 891002618 536450542 886225421 561139044 595400830 471250199 593952939 613690586 638222260 982198890 497841834 711558516 21012671 270132758 263682093 788990015 428103994 770353955 198964591 329926788 114061172 194606215 824982160 69683318 633753821 49413807 248714668 816497088 470509059 281189339 65477753 381643247 559708923 212831705 93868924 340547443 774956748 92061487 94236013 660686870 845733713 958603522 745400840 157095677 216952871 108462198 755063963 734003064 43758269 204710246 840091196 709616353 327273865 827219555 497658140 398511907 602464636 744782889 481034396 789550870 659817717 349495805 906181804 128516578 441385060 436497874 331400097 338667647 564819754 915531193 48962220 131862166 577812832 772269605 679496946 458041588 874664788 565921629 483310716 811638616 474127927 745264448 234965719 707410108 482074430 171356380 277408881 652098753 726515803 205294311 246954286 89260333 27736375 279646917 793121645 379723850 31846629 338724128 439766353 540349278 257659154 94327064 243723325 417450553 967877986 832405320 276335652 815065734 438680918 807267881 536335791 909530078 570700351 838627753 777292720 438243895 275130494 188353575 553034538 882461554 198259424 538349774 567667383 795342785 811133910 649633610 88349059 672537444 386267649 343124727 415036123 965900408 219109064 191710039 419757461 247286993 159619600 864765073 417721086 944823549 867576627 931095529 516129374 775001119 726417940 411149700 677164613 311267720 843717242 931864416 483430488 966486957 38732661 489152091 800359873 152228873 576217000 293847542 74416481 618562638 684511556 663018053 194852174 156993888 483943941 912949920 592538725 191977065 826884593 621050298 506647691 245492679 815080470 221255251 925253844 486219730 386054012 832719330 123298243 688958253 977767830 896319779 601894759 347962336 54283451 778765402 275320734 371873655 369656273 822985538 548634556 916439667 642236284 495637018 932529471 91606039 984709742 730083737 937826009 668781722 312067245 748858279 956800299 921366856 786961864 537681098 721009040 287858872 722751898 757435485 84416879 218395117 442854703 514415782 19936895 979200345 320883919 232378509 587372985 980213006 860765851 566890487 932498439 231221603 106002128 66159749 95807485 588767768 843044530 598186806 801072815 752143284 289329653 651872675 378665289 204676657 603563821 735389014 654069511 804676958 577540521 623944336 734364278 142492772 379406575 478724668 533974994 870713262 2604946 840330681 924010349 636558381 206979388 446483774 424374913 278226517 552598544 248227267 934107412 358246974 711925947 900059263 749071042 382143497 840114077 201324677 890853585 197312230 666571109 939505129 851567429 15222573 107354792 452573470 594479921 293509624 846956021 806151950 215597201 99361622 957859186 684517986 348593883 290774570 496578513 621263712 522674810 17616257 250546638 166527500 126849155 126861312 140211581 836299467 605818993 548892300 460797815 102736618 120431602 868138672 725690287 465059158 509185084 650806985 416233976 480769495 790167715 616232567 58949834 816149417 967428405 627876360 771320483 701910039 4991931 182875542 332251886 137454090 927555638 449415513 127597497 176170937 802764867 233924018 386485219 941292017 670064928 34998168 668016839 645312929 504958466 309991635 299235953 56997293 883593052 207170690 573666150 605210477 329926131 729472367 940559617 733515614 805140529 156662845 552047336 170441117 32654671 787814405 901393399 712289695 687896439 801607227 828544459 120179913 216454624 840047850 37273006 346756410 123369507 234655844 82355944 47747939 879356128 839591130 224244803 674602817 351447094 782880160 718923703 920056207 673175833 215695652 659549200 196221308 868104436 141724316 325430818 791125189 904291645 734780173 607787883 512490626 272893056 25528303 884490979 357643146 671566000 708885783 333142626 895882362 868218637 852330504 255548191 846137289 816522044 882789275 214834190 489628104 848720224 638997531 373187716 91259896 194162536 893388449 512434733 270017776 820322550 759497497 481403132 505787804 569507498 594550307 492803347 479370588 979126461 646058099 832356696 518781476 851249206 836888058 342380234 242775760 202098362 341452533 85113526 196206749 488091867 565482505 727333188 677101203 530520121 548761798 813631025 978816798 9616568 170576794 125950728 131618444 612909475 358474877 96632680 577578229 252502965 751281384 802315582 77555832 768355410 438279165 952684823 415400065 558592393 782478298 328144720 114319609 867052945 394108638 820267127 128803865 90553007 730495758 20834945 680822074 333922946 732144611 671445060 205017935 299418598 637901607 964016197 154829725 4005780 24982550 808768024 916685957 631329535 719829955 381852399 236860002 114708646 931864340 698414727 162079089 632073113 350770324 627440498 166336720 681610523 146070788 87991808 562773265 230125336 39701099 334114052 91593175 427164212 723807403 778103992 406330955 275552188 871631554 3501511 874919397 442554682 932495439 672199806 7950755 864444127 947304876 624773679 661155290 926581825 514250830 157965431 67194059 20310678 310284145 900251860 686696033 90529820 598398096 608627646 901588348 720111063 310086752 251246710 183397682 943119794 467461535 640166115 21502161 332215152 464250182 259844684 159679534 384036277 109251764 931470380 89161485 328878024 886402202 455912666 960400975 926918736 72094326 381214342 432858327 596043463 635801426 697438882 571007828 694311178 49020856 721594729 480380392 866945415 612582991 331008496 192686925 106321413 541704797 10493330 982173580 627427696 381406476 805294865 905748689 354725357 219010836 136846484 382609976 334224015 85788861 816287212 959792895 668600262 978176115 152906843 545949586 476398260 531686080 300041263 428352228 537494774 378724991 334965157 323070127 56123279 584553379 875756801 448816747 214657207 892827847 805660152 479641006 808682873 707568530 180532560 777562923 304683851 649379831 722791182 459699881 608927785 17849915 810171358 923988971 222436714 190439146 524149865 22642158 447511479 598770140 833642935 966733446 423674042 796891493 21232203 404736906 216635312 929370124 8485384 279037188 664529388 112723311 591989023 948743257 85357810 189269924 798775849 728555247 775340565 700153893 794389400 48842272 310126422 638680777 860895099 469576902 573806739 803611090 103948981 254888917 988171266 87870577 560759697 248264525 351291819 924063732 280244720 383867088 802157177 497134948 874560371 645022124 830531798 153978802 776341055 476794361 381917873 968486038 131967520 433697484 915316488 673499346 522035239 303546533 913061331 966767319 847410703 237147099 787358975 157929924 557558908 876407058 314950171 53005625 41406154 208395095 260596631 950400960 185029310 52956939 585658297 785906505 742367232 143460760 460464267 200351968 791447293 837844149 703570440 325144855 8819935 390523125 154675068 371900193 282588576 243700834 807704585 469388070 512633412 627170730 16591147 250786416 832596711 396891922 372900846 17054794 99797116 382037444 973938541 32110957 585699114 440303665 329637383 71980974 216642486 182204857 205756437 62358275 121792332 405080715 796550612 716249589 484446209 998676767 803694952 93033387 915981416 945962749 714985703 682293102 752657823 23774792 667483781 144753360 117245386 162536004 588685338 747904063 724889839 50341957 941576250 694873262 537182356 912981528 100560083 554420996 918009729 884279544 287449498 679970231 504395086 651607204 263623804 642471544 340188928 936148081 7959240 862845075 240803796 417245056 15876971 577802983 660075125 764005789 446887319 361321075 534119025 243481784 669612332 14083557 640782912 939222079 730001346 342425220 880616805 556346542 170192110 766338703 943603075 453726744 480234010 5565096 90413702 317814938 287010157 399365077 63099206 119317747 606017228 273698296 569235791 230108845 224319249 576663510 685310416 741426067 930027890 530009860 942160959 948222342 864034384 840090246 643609169 896722941 586976544 888172763 1875736 374785065 500845326 682953727 642377260 590499593 981615095 177627934 364420835 650503539 217208307 676410738 775951390 718503826 898276888 561423400 782448476 256194097 697864494 85798506 728004546 111691470 880244655 532156631 593571024 879431280 325454652 164698935 655978312 537610933 573269328 621574511 120424631 78855641 571500484 732292446 563431658 876183200 102971005 916931862 68997195 730422760 947320487 790957029 931604740 801303713 61156185 358316218 16780547 204343201 699816010 883045449 894596903 772987649 313650364 645331602 963534900 689729880 145303250 337326065 279763545 118458937 358909168 967675722 561207765 860321298 528854213 923321779 528149195 856136431 977725658 674037347 966710225 980881569 237555872 396584944 143756249 262471703 285362948 582523612 719160867 239801808 632510005 274820428 503751636 876983104 34348034 124205228 566316837 603495628 34733164 280423462 380819636 166172758 137847729 143543335 828803463 856598474 874284787 74637316 523776046 974504645 938705135 65682010 626553822 794090445 759533585 995136139 607460608 46934767 280681553 231589232 185190710 271898367 697813227 399800645 260756099 736909087 541808587 56057571 888918857 787307430 28142129 715562123 595261503 728218191 626150419 322236719 797035423 260774644 916698215 175877359 894123303 119291127 28665567 735282902 602438766 41836413 592102258 155313590 978017366 757921397 649315605 962410577 505525571 874375731 289283606 335037894 973440048 289638266 528484492 667367433 94769566 847205049 415705939 700837399 625472588 651126554 967608447 108820508 207621496 975501890 286915181 277852527 862945885 534302724 668957441 763452646 231809195 485979088 101493021 160480507 888742473 113987487 102422727 583433440 309669510 872198830 565363592 808367920 403700973 170143229 228773148 901355242 700307345 760202000 46877223 336406368 885079494 370735395 513864069 605882587 492361537 618594916 900778824 232526293 573217268 678102473 957272557 712367127 435952125 675789788 981538979 71829518 106208097 485261417 799018240 783623270 324262 657352679 374352406 223913123 230310729 252823806 780265700 988087092 535746630 339658624 558135924 218196567 964707882 388807206 853083645 295062057 105759090 79184180 916162385 986733681 384196949 14332806 642472601 487471994 600361858 716693360 998869845 919002993 420919474 554533845 892926483 527411830 466600192 660637566 952788950 252958004 569548794 987689307 336269411 820480855 103736624 696608926 323692178 959164953 393855300 126306212 93054793 591415854 162134198 7403606 544813279 111111874 373981867 27889468 367258590 576721614 870670177 477382574 609814660 990190692 698374448 469706286 93980732 922648060 253587360 612310019 384081339 755471850 778578664 149054978 139084181 613004838 48469225 462468738 71529133 399309195 363689011 467177909 130670105 60590737 537223926 946337076 216320514 457537121 412838985 535618521 256341133 533012701 779939437 688195511 320786023 443870833 368769162 823014360 43548196 642219457 114755934 672183626 927003865 438190912 606967748 434606931 433088840 923460501 766905209 92166616 777680154 292492310 510957028 577201561 261560147 592362341 131112712 66027257 475450978 888407986 713101466 95853213 311650570 12360390 140742509 667807811 12098469 134746598 775410472 671103341 62205569 488021608 313167010 828286315 800985501 355572283 880971498 744349571 535114615 19897847 401732973 881857327 406952598 794111857 171255681 369473964 695994170 990657175 575112224 500067736 816439798 426243636 676440803 132398907 251315168 131678343 587972515 166643810 77523225 736025580 457739738 520043727 16235402 692742693 321278865 370738294 194045181 927046407 448563221 239785618 431596523 775888942 878989418 623670418 358890566 483504293 322773494 795574655 141920232 959974517 566105260 163130189 563710881 576412660 493750414 1240453 582763804 908988050 621323218 457262041 448198505 770668138 501118717 312537907 759749970 77313098 322664971 64463740 67798967 39351427 587963780 185821003 178849399 879179465 595082806 85549552 627078021 876934805 628834971 424020041 586534932 892718788 217780960 70355786 430551315 982515279 96884871 584560814 462024382 692331488 209514843 379640593 917503662 182456269 181130273 14730517 364100538 587071029 392360040 780372068 583271563 150304474 281482841 755341160 728422737 226849226 931397627 593654486 686183285 594838904 508897003 345240761 355807114 315352892 131373842 606188605 870531499 64689115 347174876 678847218 501186379 31264617 642134877 946345505 654589393 293770534 212132542 633390660 241653095 319217163 979511034 839314501 961371308 232025169 109076120 751972953 878684732 199418932 702975644 479450396 582496063 884901067 104419698 59923997 237438056 9532192 32821770 329642789 235019615 573596668 274808860 172170533 496281883 179600605 403806063 244743917 203205757 806152653 294622677 668312537 767450706 273754826 335957037 850815523 945459707 961739880 490514334 762442497 697622009 459759275 944392329 592311454 970749354 442705607 559634908 935748658 884066165 820406336 539398365 386995868 581100999 866370551 364495957 809381627 316148716 492227041 950977101 480134445 608355863 452223665 974209779 160401629 664997029 383075122 84076539 742867467 2990764 437413776 894909064 602706427 853795040 829552053 317901317 253112811 425073503 676217847 262751013 252320682 508075242 921591947 654549048 442096858 965315053 656947886 595182125 20399780 540757593 452724842 677727197 956855248 45543184 908314863 94002257 878056701 978987260 358850391 96615459 743362965 954893371 917627615 371738032 161637185 668435859 82274829 936940787 892680735 60021737 577590137 641536034 912278615 70232918 457030306 975671602 896507336 910012877 184911 352339429 101235593 589914027 633253449 216741113 71481437 401140113 895363900 796378897 804652965 402301959 972409426 850058722 779183477 761649653 488063518 920888690 819300180 888676795 940859449 122758338 95124685 585358222 72929917 884119545 239451715 882687330 848447937 571939355 285634268 343427249 203415380 749985477 135623727 300541110 513200178 761245836 498084365 482857250 830774348 9244366 973228642 645386705 351345694 908114471 982073374 506266609 934553984 177239112 705148969 3755572 615005462 835884878 300157609 437467442 304981612 209457262 985884125 806270894 730545026 898728750 840593897 993973970 573207838 604873969 623105339 47038930 543492243 871105980 111110814 880906381 369255683 61197069 607913697 397114034 430089404 9019477 402497090 487915820 703424445 190360165 364477749 729845539 978531459 322373751 695145859 155854248 914637534 379361707 152644765 423515466 599936460 615546091 521733572 522630630 27320377 271915042 515723759 910278955 597432615 639860991 804838909 813343577 891793600 532996061 840643025 631809447 618899275 865679118 925569633 463417636 253764290 2381919 646506897 880883370 706277403 199694321 356899718 554802618 294389598 103959903 185278380 572334278 424881389 646899117 499449011 323520910 394858578 228035223 96835727 736065911 500353812 279982504 473812352 1475212 501543572 77217347 150743927 903359463 781102028 744989112 640624506 462772859 193985243 6044570 382257918 699168360 370306056 820496641 756216278 824229865 726559131 136888560 580497362 215060648 87115858 994280179 573841522 999624873 669417855 123438738 893201873 351702405 110608678 293792536 25625051 171181458 455411241 221064391 158729905 418405920 353669391 499481251 980104384 614658465 984977132 181313162 649006095 513641998 610055259 503815588 18683141 171734115 981649248 85484655 563316586 807749053 911541864 568797260 756732052 98276098 860222722 883981114 33766773 240675771 783190650 208801037 2145758 731600018 358422696 628077059 120547928 384747483 475318525 918996310 230793848 578665298 283181934 766861137 358271366 318705850 940547061 835200519 674588122 990421705 981474115 767805881 859755497 835880773 31428109 312185947 265562444 809708802 387914334 377236715 859075754 953395346 708328319 718651984 62998445 116792798 385352208 299566928 61678480 279241696 945212329 41847650 344007318 638685738 881510627 71902331 999810011 984980804 865938418 313182124 76034411 393505825 824647930 177322507 745346772 580659126 108090500 99478852 666110262 580417620 445573107 672132664 175614168 949411741 374395208 768809604 947278548 687812214 83347159 812991669 541763479 991205877 357965192 851793149 836508211 168608402 826489730 319240802 703254628 382666880 835543731 372644003 816915535 79417049 71490859 936335495 731025981 88451846 521511468 40983641 663940127 340819745 356511548 434978945 337982362 112480544 640210782 518743963 698521762 733644630 826845771 360057548 513680598 466225707 896096078 603545539 291785196 875653639 423295554 702763271 207311916 721196055 128175757 40383978 481256761 293227796 449169083 728301353 835665383 46851312 934581109 655167748 955301647 332194755 666882911 827210053 140009690 806254986 425311640 311215799 604529369 411356421 384512727 497317101 931955479 774153322 178598472 661502174 681639118 973353634 186125900 561293398 967945489 552893826 399338052 690758311 369884102 142551558 512695172 93311878 22232804 840270337 267306828 810981815 337769225 173650314 36293881 690873603 311769908 782596131 356094233 845326438 318144828 257162404 536924240 718780125 264282468 873958132 386671696 989262841 950439598 223522521 375264898 504212607 50426811 808375355 402194988 854924304 630707557 822837665 851522002 491016894 374376471 402295129 166782921 519928751 900941512 811427580 402427775 514502617 75161961 741472798 116719584 951625670 652840043 978997590 914265600 545319881 678807768 660511019 372815882 576647800 47190216 330799715 85247341 66460720 795875824 419318738 4388060 2428208 738897741 670753543 467401648 724921259 575377059 315124693 362770535 286633491 876584770 143334492 267178366 553624288 935839445 166904681 686154202 238919148 822312940 795567524 816818886 487269468 7968578 111326564 348465781 10067645 101685979 788703296 708542256 768298737 524645328 342603587 974187094 37292029 274446789 206133726 664379049 766648194 69181135 216148108 159123744 30303615 23791677 748598873 101265651 849043874 146159031 817338482 606654773 784714670 240072245 269284184 123305027 595908986 829365916 972821767 982987369 176457916 573920213 648989724 328286490 899162621 614835818 429324794 783308192 102660494 804670307 992121624 501376825 38634238 872776495 945685519 418346014 345946608 344985330 323861815 306128618 54265393 690084455 775440718 63424899 28365731 210936073 280835244 35690849 431150098 250791335 251446161 922990331 796760982 497982041 772719638 968019065 742849100 715773430 686691045 339368876 579877160 515632666 604424156 212075085 902332856 250175864 729413506 896475602 895394384 434127840 815195014 620903836 271978305 448318048 629405523 171551008 881129188 431714404 410851695 998937636 856170870 418139726 974068422 83490730 166467867 131981993 383848694 459406219 577980777 900388692 425831424 683306928 728899400 840943055 782849808 469520763 320679108 55104906 183273812 693389367 219204535 37328298 626030797 53607932 343399892 799424818 325947331 279652546 584246704 508872225 758949550 351769945 151886873 494447964 229799655 876690701 286632890 403069713 939492379 986176900 338949624 869757744 535991430 458294991 786717577 406761920 107196662 688102345 117225062 461120999 188983925 159142614 897481085 850734468 716293416 12001173 865304927 10362224 544612944 195798490 15368476 945210420 121995620 274362002 481532778 953889381 31257196 885933291 256597444 526826212 706206951 188935899 950674928 676150857 865114165 865626644 693103079 651005619 647585934 578680823 325252457 79989708 477987164 726448671 80901659 938976329 222857577 996650882 25641332 802976033 305983971 507945098 63083483 130568136 6346844 69433248 362959455 364526165 89931900 820654241 433850368 829569620 234337038 836370288 196908671 945514910 500100885 328488914 114574593 237460430 655830988 178297076 389917721 402777834 591170183 206161547 315180312 478855331 464789137 840399067 801535022 322961452 490258320 333037737 337110303 812465444 935572073 478770847 127743726 769156747 165616482 785117364 203787492 964896754 867740098 584135690 877596151 755178482 188117049 899496635 140569324 360167893 829547723 593523698 722724419 942647786 500241704 899731640 247952732 40542986 991886958 936525474 825285031 367840895 351656071 990093301 826272144 251480868 578093923 561435434 719770231 753650980 318669565 231702732 46031600 467788689 322163371 324670477 391211863 496946597 422646343 53136354 811646107 700715245 390067564 854598330 486112766 350708644 286020010 682202705 946831768 68532386 987356714 254110540 544712537 84297507 418600215 995157534 862882535 181777426 885762991 615737427 695495423 181665427 356500367 47840490 335392526 517539636 49906859 413822082 110134332 662074082 329421568 37999261 281782406 415542781 878393770 650167438 965858956 778237364 705623260 931267536 787200615 889093739 483966531 541074254 353923870 381057972 351105043 667670626 565005830 102928019 890521325 869757702 142193300 407806769 745673832 579651377 141751164 754543496 347028929 544052123 280835982 952461204 556369937 841737785 521601854 343741979 444603949 6094384 627328699 511878344 396108125 925648423 29220116 379418798 554395905 777414833 30993739 484475249 51100582 145085713 339633070 994629027 927590045 11379813 898596482 499578777 590589822 623144785 982233040 630673760 623236882 695175796 598240620 628578514 90848333 339364869 153789586 483076781 54525919 556482562 121382319 641093491 650989372 835492050 304833185 806929145 225704806 209324416 239034323 27151593 156490181 308188611 631843525 616514363 220211202 262332378 386077971 989728776 444387959 988784754 649335216 795993143 48176092 841943513 999597652 281016023 632192849 829738793 84643000 167632715 472418957 169489318 920765933 533753928 655672241 542988224 832128040 472905760 443420537 156379093 322296812 636125900 745115931 824960840 654806368 14487664 259742457 503912823 336022356 773213598 849379319 507241070 544313372 642719026 12311660 427836632 281204640 763657635 835618383 688302479 683994129 174784265 232221027 990110788 693703753 980294056 981343810 648398968 578079013 750505404 74176343 509514208 229217334 314042800 265144951 48261983 490694797 88996781 816544016 95910527 860548510 662234619 320534439 462849859 793700418 318261553 119775587 916224978 648215968 401010904 184455918 992158316 598458206 748189914 426132537 19493421 658115538 951381979 905175724 378358689 795109852 81533328 583289032 419856655 504505034 571832155 306160599 711926399 795984350 762618637 626611364 627287338 752316225 782808149 85966420 404655723 51011609 670147978 29499773 955263587 771554488 52867586 553692217 313627916 631783821 436153446 623888879 673904061 141293812 156555544 873958676 688150979 647292264 145830280 148539435 875825479 515505452 734153392 298887522 88573731 863758102 389474520 38924367 457519534 374644607 396601583 697942650 725283678 986685047 727650370 871148741 697748725 509918870 994284998 441856294 602299302 988550436 314622534 626434152 998852305 957612401 173499533 832168442 245672672 273496364 732128284 899610980 486379927 586925498 337740480 622539638 548946624 15280221 557863364 660648573 964927657 83724808 581922062 717165043 223403256 7744767 225483076 690925077 805316547 766735927 643701481 10088501 385433352 260543608 62140529 326972928 328466660 629205085 633274730 843535360 739240046 148834468 146807926 536145489 639496879 290034637 685231817 984557215 980336256 321438991 204703488 494401320 171275844 596782786 9092083 594931752 223569391 543419549 264937096 217796106 488100558 372696381 939943565 258125002 492535982 856071349 94309895 443142596 58172076 958692025 4644892 825393718 912952902 643848656 201859841 870973924 241916362 629482785 813227346 782238249 30479704 666791849 633407205 556059793 812979595 486784614 658590437 907614490 335229920 761205986 801413494 668641238 491751363 33086159 380635698 959368598 456137355 203108084 59224174 834035541 304288286 429816964 592924476 281165727 580801429 482591837 289117757 855909014 773445455 432973133 870504032 789803869 308069636 911280515 374147075 207586997 168294305 407318188 782167354 160771039 153533335 604122676 87280727 32802778 969129812 276698830 420251789 394815157 566741766 81683891 808070381 901724792 601877756 86147147 94251932 43054004 650441734 748524922 774819445 772786753 378530686 728369457 800103944 523664751 8550300 243914899 664117161 321898756 996505155 158198743 861396901 909923698 738827195 431868765 229487165 818171515 477756974 66910015 765128421 286750190 8773383 436756727 697438694 43368450 479641649 528224440 85101799 386902607 217477701 566271270 281343162 661471495 396219554 402503185 412394198 242023903 809433566 390862706 812969822 540155581 603004295 181665687 399709301 165524719 178048576 612268027 840865157 806850775 79411358 251583390 369197623 374606958 425022236 464524658 627757700 125972416 138513665 987262079 272405626 400716872 430360836 446220140 429330667 544095084 610385906 262352060 308756677 211447338 870006335 208557158 224209665 561726076 205229318 426815058 899696917 427901379 483823088 126070454 872222325 376926942 785116971 624551609 726647992 511543047 439013030 180795128 903117799 309986641 721251339 130302946 264188387 165712003 610141173 370515790 122588209 76185611 112713324 594375838 670345807 683538455 396980397 941936462 401477058 238134656 237070846 903749912 163828382 861402345 644292075 922064792 847460812 973631942 2764249 296360849 66092194 248976162 934827800 452113505 548347694 80747848 8053345 253145908 508617574 445458330 693116572 960934773 921715729 869149353 682516502 930115638 565376285 576639537 669151901 47701328 547278453 644624250 995453546 649552841 499203092 559709731 235099830 690446685 307404578 604515667 872887331 755316369 798598653 445346969 60617264 991840650 507205342 690524137 619840594 146345041 670442296 644956696 186612884 785200732 45059923 42769576 798694385 148408475 348997469 476712750 983691707 5684142 959131452 290659048 911279885 336850174 83015140 263418050 48587876 970766092 204369097 916554335 738794507 57215350 363763308 371804109 219080493 242381455 626595047 220417609 758035717 248551805 481988866 515536796 749809825 651617078 886121748 172666552 177993556 351113131 926877770 378722114 338650058 225884438 796169349 258516903 768072383 790427211 292909536 680337650 967370842 209086814 759779760 11607606 706991383 826569212 314892588 113032833 127243076 497911226 316241113 254780539 295948800 340534888 117791471 832513434 960520370 547807841 343834778 396198760 664063160 422288062 61299997 353896435 839007453 39217906 819235358 362422774 133069481 535278382 760431915 532304143 437047632 506195072 820729861 470816616 782872621 279798118 845667050 724426816 533486050 250528992 329794957 162338680 76369897 146865869 314062030 808734339 557322975 306915008 719106087 202893237 749077438 272047173 381095278 946363187 516329543 730165203 8293510 161845633 470815993 944194686 792736842 298887671 290622946 821857838 790767183 131492404 957576114 865439928 543680112 319561279 405796325 846703909 25016725 726637345 920559071 574396832 403337838 246692077 2794316 43660773 959910849 628726812 190415831 75913555 681294730 952572313 504495317 826917581 372140849 848883317 65851853 338700107 712909917 220809319 937852257 871978755 57176181 544423461 178153096 885804165 531084040 564219945 759187171 532222951 143184083 467499989 394585007 713451220 682400533 770411802 828747232 464664338 974658727 439354944 111138206 65537867 701803229 108770880 598953073 217110121 587065591 751514988 411966429 414123628 718514803 613215931 23745395 322491445 16602486 596585951 564574797 853849940 269779099 756280251 66196520 273160392 29133035 979473639 997491661 927081736 490923013 928289147 423058140 303893253 29411496 398752005 23583447 496403437 684044973 352423016 533074603 118024800 880595506 362549115 356010393 712599809 386156767 615647330 743078059 487728211 98443357 164472274 426100709 282955876 741474027 671199706 224439603 642722856 790945281 805273413 31140477 615463043 488188558 968985332 668154228 253058010 450961585 530815771 216626358 533415302 697888331 509538205 870959700 542681501 360739833 27308042 321781023 976216595 184534195 423593256 917131273 414390123 347459227 857682370 787426468 418576473 103757240 658214992 892804360 742132822 368782240 985819822 880347244 808709117 212199748 89245906 749600552 139076026 187987460 286843560 42908688 544921139 871210781 220710000 619294682 658558232 569840227 490916183 834907010 951918230 532946227 286717481 132961722 394196994 819306274 12135598 408050327 542470143 440217451 540029282 56393620 598382637 549216326 141609122 189955467 268889904 599252277 532558603 822484990 798715565 364451532 311074140 534611940 968759442 338949685 327919983 767852910 492728969 446018141 693166565 455121090 612083132 856597248 599587366 429040528 569701057 695909835 22476692 536221338 67912180 31841674 525867193 344491364 308296093 403855268 142013323 197480980 594862813 290959666 604073140 616969742 417008437 899776628 635285450 759793501 207945959 593379237 850819057 388551365 243426727 557653702 177344964 589515772 145088738 370190889 654820048 329576846 335770780 467499898 392769588 207234726 251294680 220585091 846177259 583884436 431686310 614389497 143414036 398305823 94581857 691591681 644050209 393763499 982625193 131404043 836735488 801818980 912485082 803367357 531987136 783096627 93752324 201139461 510263358 185936168 819360992 913499813 855375853 878570136 148687750 539722228 91943771 171206643 936930750 268521585 670994176 466373478 125709346 774119831 342441911 371346749 46799201 720686453 876873558 854325137 329812337 824416853 129393473 422923887 809385613 11040631 742290499 839061059 953785339 449547895 209634301 699327460 435808015 403400117 642049186 292726379 277358372 329736075 459636526 634651764 571331072 949779455 782047988 946609867 994414037 189363146 616438090 379718322 488672 442252222 470020795 7428728 818607990 708203199 922811683 240775782 494180252 512431465 478542837 308150024 884309367 809349204 987204615 637199183 952832588 812296040 706319371 503253111 384590486 63073380 911455707 638171206 72480711 25435978 368480834 183863946 792812089 64729537 998084330 366780458 407063733 142758824 660919747 256702204 714425918 713857127 137751786 720133902 178585803 215271531 63303863 356656167 487248161 623815422 283172415 163188901 126522159 235086118 221720970 490016025 714538105 447843325 354395846 228613140 387287132 997481460 29367673 271236535 969062972 396798536 921393836 549451005 16101497 679360954 377603576 54936017 556529924 510681251 614182799 606137015 874097522 61601467 153486880 325559593 786495001 576984530 741999031 392265638 325914675 640793232 519256988 984598747 287171677 467854748 259211693 702486186 632418133 342385077 861780041 77535150 552835002 311013996 769430526 69496463 47387519 992877158 220238934 775149340 657737556 128963482 598468330 547233266 408901321 394005733 524254191 323451613 442257309 547764889 777384440 672754059 603299065 506394952 244199182 802263321 787881080 969138925 343285375 658363620 850956504 52388278 391526003 872570879 527051268 234475070 536134428 779846130 605652967 552209932 315897125 197410586 610802295 771999866 100361588 200931323 184048832 938611183 663602001 927576873 16600506 59244868 486117778 493821303 437147960 24538931 136302227 257343883 687036113 292435265 455395174 78954492 299521673 697528614 856457205 117144450 317677244 707398541 107764644 437426878 487242851 550923218 679668296 823564972 423168806 888504757 572773049 218771123 413547267 580141620 908541824 241291803 647272102 474007313 974584670 968185694 602106437 540651436 342205524 906738561 963378645 204711532 828051318 79195569 461257824 111680562 923457151 562728061 273683049 923314517 130230868 991924756 675380750 681994370 99281147 956507543 429176580 647875186 247365668 463620362 203163072 67953905 243180099 544561711 376770620 223055445 180644692 573660488 78740916 888470331 398347709 71344567 974088656 478657953 972513475 955072263 130915528 505721831 418761809 718485243 474654470 663035817 769286460 353853469 483463411 318813542 448039612 207927942 411458608 771346369 744317394 811174747 527053336 936485570 211113417 7845286 697209548 22644324 305753142 938732221 185276948 684367666 707062198 886082454 718067729 29451065 488096904 585907226 442665075 663216687 765469766 444804176 757818994 228974106 268656719 728797320 735946016 892097913 766328610 390029235 906567801 869075443 827263870 26095559 303299195 10777968 815229808 621230088 951507277 609524663 333848794 496372738 654039547 850440923 192968333 317052694 767991534 866050747 560254856 994300112 681438399 291908978 742742525 470671219 306484523 512786820 405681535 310377465 510624371 511107402 272180875 843126087 716305043 931230177 494529764 586529747 527685579 427759268 590743743 459374612 324040617 304370062 646744729 779270138 11046358 619426212 508935619 69469569 826576899 950453786 875725388 827133233 906214435 799204188 406102544 42211228 789006391 643819880 756561132 463895660 918301230 907722917 119511143 238950522 125963536 228452563 179980628 412701733 677581821 50555466 112427464 663144480 861545418 426648597 108022419 789605858 242864959 580481538 217913154 807027453 284417979 542372365 170818723 822430085 296582693 488296068 688464456 691074294 328505143 81319788 15415669 578343639 106697667 357724207 522788875 382591751 325345241 51989247 156396321 303755853 729463174 603371791 919548946 292837679 77438892 350382772 718163214 394742194 569067213 2191518 879659517 804058913 690323060 212158240 436812801 476645610 231172390 843143164 23715649 79312391 702542285 36334578 601790778 895114246 459188145 899547033 948251117 465966228 132595041 974072847 774662851 402857878 517376410 443085332 910397595 71507948 662543903 680355673 943970920 838021213 325055476 757571770 95081512 529282991 845310373 195456645 326641295 57950234 193722688 891467421 808088699 850100427 932144820 149769421 858175363 515301807 52489576 498094295 278480198 441453491 415022128 980796650 454215262 619450375 530905145 157233031 481474333 491820847 523560666 54325917 487002160 948661954 188294881 204363407 37507450 710001482 18121855 885231243 820773359 902377180 557008209 466485177 681234139 646144935 841619899 309388433 994483775 952358997 177261255 429321257 622742347 886930789 276325811 131804692 279284862 213157560 913742473 494602831 877071429 455434193 214921487 261634499 675987483 704058129 361437980 602275912 184349576 816142463 554872133 253609980 961266814 976660518 200298271 798538997 446646438 938122162 237445640 617574945 573208328 161245375 282586304 328189346 553777665 86945545 242003503 466026234 25895494 192026340 647887985 887284939 611650723 88287351 184080074 446312222 460630456 631813877 581443194 869221734 300069739 491972467 241972026 72055 704252446 567087425 786607269 28618507 546896033 323705159 322614529 950874725 98676345 613268393 810494442 927858496 201606788 81909737 984140976 73427591 486001467 144943238 806163103 21137310 716373092 560198855 78359822 943084984 188598884 679840791 339781523 447575401 449485256 878938167 407813071 845295827 309371642 95993405 18825320 268309605 532006546 575205083 385762942 134313080 940385466 333901797 778748108 191387237 493581608 969544365 686872061 464842608 240513421 396893568 986479417 740628209 760104027 84751233 89016861 530385810 797349106 574146457 43038881 939059804 859275148 784917520 469099322 404516995 380083483 856850100 627039963 754400955 606376791 106046588 95170282 569771840 41091712 296940543 70508718 153800553 951506296 587831747 167749225 389449733 828241887 640050294 529090591 675586263 73850893 377771794 766729968 566804085 120918744 25159196 797102062 121438116 133363455 743141447 815498392 756399192 320267629 258682591 878403615 952026194 413181459 122978744 64131418 883512928 927386837 827854926 660011311 563479636 387819042 390211625 566597385 582995499 685094548 515051040 911811076 463195769 986383198 707694981 300011518 733946686 820582259 141843548 118613302 21391171 209119211 492306641 273162550 653312161 905914634 716810305 369034592 701371865 568001418 600924843 476249595 486932161 869552239 711669895 760087409 184121115 485697757 859371173 301897505 273917964 726664932 876705817 43353818 784518365 329435239 690006692 459383654 952220946 958919845 381221215 323389075 377931815 39098905 188177170 476500110 481654209 632683989 62791206 349948198 787674274 530331455 935688231 502504666 665759982 695754186 505062854 427366410 181281264 317310422 167789895 512216602 648375009 919943833 814189073 606399103 279110201 549849231 321789760 281016030 743753314 258184859 125504184 244125816 760982078 636203758 66656050 238383911 959028588 88542794 243253326 717310797 963031292 128821483 288968512 842045401 349091463 542613094 5813453 399265887 701157060 557913605 852335923 570695570 360390440 173581850 958379282 5528191 744889316 520619384 37188473 528510759 490052974 561052445 483186832 95222931 739829578 230986521 902845727 25433375 968465922 499411655 257709773 786832967 12725800 884301975 277695951 958488257 778247931 230380733 931171927 588872119 708619144 636409324 936941678 478801800 855207296 32546075 350479767 400430721 198392613 467634735 702107819 638615801 842355781 420564661 570889946 717418427 441943140 568907291 744310462 38293843 844390920 917606498 648559396 328347204 425889346 705853147 974638732 299675903 992893992 942729667 41209521 243409652 23018512 271801353 700827962 175872966 856499633 760766323 999500437 245578185 365648353 306325787 247124578 261061106 575067945 27970841 550415317 537385865 978598871 622079065 145536957 828932856 72309307 361837950 872788109 410490212 800870319 560174261 844849831 460773185 784699431 49287154 896718838 789642641 400842521 243000120 163593131 765780537 827113162 873228406 594738635 164210252 859483696 549831274 919001526 968794604 459878426 873892722 144374842 985169029 375038595 257964106 87950186 265949505 62760686 342721273 6106493 989119826 754598866 206440564 74828012 668769490 99447814 920698829 62380680 978631029 510440546 593280144 317662989 304760911 267500094 922370653 846771141 433713981 247369717 851964365 995430890 829195377 142049786 100930700 512927130 958790823 460532590 73024693 717728658 672488391 621761913 525694085 427101530 671224236 75161054 977817160 875959725 159922684 887331282 685724196 824315912 860803183 912776194 332820936 616578658 459439305 964616845 437553741 219695352 475999770 433608395 437809927 747402637 489824171 980164370 268812979 866518027 211883923 972241731 342862660 736387982 439495562 213280012 310001290 688626036 691766304 492375586 58143371 130673362 236432063 111177965 851387773 311765242 875788434 765365235 822281155 116796523 416142291 874561715 371723448 396918512 755837967 628108964 27133311 233241973 218786397 58031156 492568745 963341814 949072870 49535216 586589327 444201365 817359269 39393060 133066411 940720880 223277502 212994379 521183799 518606771 201343731 560960083 270593171 497635613 58947669 961869805 789221867 177763746 761896427 16044062 633310897 840850503 171912099 302163792 954429681 772470698 198489097 423303435 236577241 846792181 63314858 344879720 153127040 116964042 97612800 910511180 904115346 732115364 277475071 550050211 765176476 10998958 404599577 554642345 34316510 104936473 250479514 158319591 453970190 708120545 208684607 915071111 775040005 67069141 676082174 693780322 498288379 590983791 500510891 489913685 528591448 560687767 314180782 763542792 102617041 648469312 101332229 110899111 951466029 342886869 894012157 190099274 442884015 924739289 825105306 607840540 292864243 101894838 735938436 963557799 95899143 710848947 927325990 108351212 244340428 518237727 101671789 65642611 258960737 203080811 473952520 74514939 615512053 48258448 886295403 991214850 65128565 427769174 967003816 268947314 554297147 776723284 359388324 902536854 354631855 942635127 458718212 29537058 237901218 113904756 947683027 294281182 614601238 95454009 513792138 609798727 870721932 148386867 672282099 656377396 768807836 693023997 228979933 309315526 216712757 773286002 265790420 230721419 64970623 517859089 230026984 106586194 172778882 20393670 117997554 316424100 437562519 392227573 327164654 817442481 376327768 110020326 754842391 716459390 118252993 290620315 203112522 546810110 722471506 797968665 308373803 163346926 299300826 728558372 977354927 890942081 560080798 300493837 407598707 633009215 465156214 49425881 652686952 168623735 312293825 901587939 597977857 37523779 334805728 370145853 236855246 907845799 453801015 180116836 674764005 10376795 296215078 141727394 141534940 204330329 814758883 9009300 700019081 586818290 57705629 338712325 427332610 513135042 773728144 231948397 651657647 5828282 156505697 660416812 905836099 146553947 932442134 39145881 49618606 556443100 451787718 21638592 646721656 138226927 340944423 302830398 568405526 35956453 564535105 470164564 881573389 139104045 282361021 945674503 666533236 996607425 781335730 101257850 396894663 655596119 174674362 51946630 441760640 318295941 547539653 156657117 312107204 722679603 170206134 42036294 401899444 255072730 923538247 807287111 10075548 516411629 437137828 911449932 116300922 861548591 533179617 629365860 644299213 997650599 384745697 224970808 396927734 630013624 501687593 358256176 862909945 480810685 712932962 478636099 124735374 602187886 45259969 506511664 980333289 678469233 526128280 826022655 625819277 489305696 518355351 776447883 722900711 403333705 493808834 705903937 51451921 242895598 603984719 22035238 545739704 952770420 856243250 687039343 403624998 265790544 864234495 353433110 555254819 225801775 952838376 623533074 571995058 360315168 112511140 693704655 794845365 747120616 734505921 648174671 944835967 159744709 382706940 572226000 872332820 14788749 882333156 808322863 415774355 19409030 301455370 796898317 117524126 8744835 909209180 20547859 972361922 830290633 553157991 168153544 141037853 204091973 104035625 740892976 904080500 239258035 597700701 872478265 976777886 500735144 925048453 584766700 714984854 397192935 401454034 409723445 302894425 590610368 699920374 678640802 547737052 129446544 900937440 438324837 925365251 583318141 226380233 285558346 110499496 861879271 641907741 315755829 148437707 310620006 718195328 237216776 182120894 970625471 964342806 52215913 152576696 414788410 552071438 161716978 588647592 695971237 826740206 549810754 93594645 158693762 825184033 260749485 968192769 115891267 392102626 771650557 439818956 878144877 709315702 378176016 510813149 263724200 615573089 665888584 177902910 7687622 543674073 773328666 698445768 799323216 102869189 595549069 32344777 680603990 398887767 677949708 863020203 22087553 117003856 336606411 269817432 248269218 747041411 650037808 305382480 93651933 517648579 594474532 589284690 917946291 577629002 309880084 613343712 479793376 315662844 437039663 98714077 135142413 168529000 55591565 241584069 662701242 45487152 249755362 148213817 41210147 309744402 554073571 406307844 430654910 554201094 911529072 902684488 273437818 527324375 598609385 281079089 965815035 752514259 383911377 836777012 276667014 499900488 349580625 150317666 289393632 809142828 891131209 156406569 875648614 858848482 838731699 32612654 47536461 866678525 168331959 145820415 405229452 357291829 277583505 320373919 892360120 39893208 901848455 733213795 434996477 39784658 567109735 125505969 13045497 608544675 176877286 273732716 975641349 942606282 174439293 821777516 421341332 943117496 58341870 789647440 408905884 502669643 747423402 555911492 214493097 573296634 406585149 322535383 663352773 170949762 282862419 531707105 640107648 236173796 630638263 50987886 434105360 266185420 270076125 74645660 664269347 905319209 363317102 483608406 513846619 581663590 563303870 101959983 65456817 579419374 642217127 445919178 448368310 271759385 498180984 347950598 548952945 347694011 386941974 476051009 557679455 133619664 191206956 483988267 846378170 106511441 626757781 377604978 441324117 349092580 936667832 176407519 669791037 985910247 466860689 628895070 315849747 510106675 420131259 592681130 660020856 629963739 344505898 843004231 716208319 187031624 591938722 778692942 708750710 312790784 368320719 444171616 182938882 880563263 110253911 476508032 295144990 824259695 116596617 164614752 416802736 9745133 363219246 957125288 909454424 221195338 230175961 659498515 697360815 54160558 174786125 992282806 759077511 520336760 49241667 754514512 876180770 825163510 337020318 976937021 158751336 267756376 103039779 843108899 632962815 320299935 456922440 878926463 434718628 581733948 820367637 909739586 554512837 204571552 371037348 758972124 231999476 219960144 660996852 973972433 410520521 451076321 850989420 246775113 45068620 348508223 601663480 712967073 463477176 506462895 856415402 201911658 562052992 60153386 351641431 449470622 510887516 268991324 333763932 536261223 444149669 22527436 520030878 328270121 467694891 572708367 350376197 588794309 85479944 174355479 311062631 586721073 820235668 431935155 898024896 797965126 604731069 506877660 148500701 548764893 198351572 756097879 153255894 834176862 427867301 780744631 346024670 32770707 864220836 438760403 377644697 760733864 936873944 348610967 696322235 60223004 192384982 673270983 309111353 604957175 373013866 525141474 43954299 345020580 313413926 255766387 370670690 103624810 3591070 616620422 493519150 734673211 436533103 822478530 298436204 658343106 702044341 160589693 707858516 168431959 998347278 855852888 868624858 587921348 229088142 170334963 513332312 439117198 730825982 296141767 664454708 213459219 841616424 264159117 476903074 927256241 201770119 906474748 545743448 304161101 898838495 822839670 82069121 76753008 850168403 180187600 387851595 989044799 165365766 593935839 341141988 473001553 187899104 839592503 855607157 372404604 754382970 391348842 811650325 765477637 585114785 336892621 206197318 126687223 302569141 634681837 311840290 308163852 873812446 179813657 671082665 165670854 475925913 112120418 114404920 315073185 945973252 444951558 652620322 937560269 920490763 299387798 909424641 516103264 114259392 344411849 827433100 960606855 866263554 732685964 661096545 600238213 716055666 242830266 519560360 314059237 136918127 289750607 448846718 192001594 697781809 234764455 984444429 680316667 804097970 774648032 161210081 61476270 76010118 775604135 529905552 361612905 293094142 109717585 710565951 229732356 390338804 673978588 837877701 301916048 447995413 46499644 933318224 715878063 177610297 495987476 863195317 748272493 480340977 535530352 643450097 589748360 992204908 894186337 685316514 184819451 438679988 639665110 151088629 458734712 940648766 50331766 988980191 871390938 610494274 700044365 832820154 217785008 482241915 451108118 248475875 469689098 480168639 14025231 115739302 451970537 121356026 158403282 198392266 466881668 332723960 546107129 593109736 927991041 531629037 318369006 840045376 900947232 199443687 286107114 182465717 405516265 512342469 231601019 508034122 12339339 728901569 503713673 478307176 540358895 363400788 410073763 82148120 707396424 599678902 758723260 577190912 236164978 347805989 117146980 285379108 644510038 480554471 227079843 402801859 946171996 401462282 183702540 10442425 177433992 106965202 625513785 665256152 160848685 863421756 723780241 416837290 926079549 56915805 250217957 281453024 754495421 564529663 197699417 908094132 745776328 724193815 407579877 102095348 572707732 657842087 306270137 860401246 687426373 305581800 92212850 139984476 102287753 185818213 30095782 712696135 530846074 210222139 927848368 277076378 707917380 844415582 612028834 487671467 870900680 23051697 186635684 452922500 893612452 237283545 875016679 549977361 733376923 196523472 390174853 547306343 613712122 963176561 57914440 594533869 767108945 804426674 33239806 677589432 694037903 217472746 679910496 162851593 955402631 150109525 133981868 800146210 716659882 267383903 802112625 688922415 946640954 418495951 644729300 362685783 263719768 632939721 861538231 963316145 119225324 425713065 864102290 161772722 306992631 140666119 418394993 881849660 749143521 900826621 757561113 436577550 429046022 991956956 485314358 182080084 757200269 71006500 69023819 462740213 494537428 844393288 499906607 553123650 408270265 814922980 398677977 248656864 811101088 404536314 883003736 962824156 28718268 100567657 875877079 319137340 477686717 378345636 567165781 129957159 640447459 638731994 747992089 381686251 909295793 877812320 774901348 928200914 690808882 597010518 794587176 242759577 813896544 583524649 552328274 476576447 778564904 87669070 359846882 618658134 685022346 167099123 132298957 450165543 160627838 128797636 598930486 894571477 330268364 206862773 516595071 216628507 396523638 779023504 193444175 682814863 806329268 498117281 905765074 111514222 429259179 562455087 338942547 925168405 990747302 508667650 904116004 840834555 689573348 883233080 278708363 921638298 941511946 325561141 728121433 509379385 177334145 26260443 488367428 241055978 71955973 876058824 737909848 89524322 51370012 207875095 304704820 252232836 648932758 123153791 160866931 133233013 715287378 295736910 781938051 784689927 68365467 429541198 724375971 87125215 726587170 567161029 122623247 396665924 29798328 365540397 382493758 196205328 397895091 435443047 434660267 449841794 339474059 400280601 254122559 175588142 642901748 12263068 624898137 6456714 574793975 568151043 504670805 455440243 559180158 686628195 452097355 922333289 609265573 786891145 488869655 174135887 644512271 294562818 660650198 63036754 242220859 546105541 995494413 511273844 789203763 739594622 312591399 15587484 672848451 633364557 857353223 216126741 334501961 242737866 348896036 337942824 551340639 235737214 564750991 656113123 82490151 42308489 751692663 163533515 927495564 99318305 350568381 309307766 309018212 70948985 931467316 964602507 979359796 669144256 586207379 996925519 249983008 532659903 951818302 393947614 848814428 841329181 323162350 592410809 296476159 891658935 965244160 336894052 29168445 510832212 669925683 38786104 505866858 154779687 116937775 200200273 569681027 117076397 873568970 221933803 131383325 705924664 450729888 606839705 251899303 860308890 651225536 838911473 842209491 878582675 195262591 66396516 665671483 182329390 235857966 920219138 518034821 319906603 15347079 483279359 269598603 983504137 712670984 325678514 695446927 984696488 293903646 90566348 998231996 614152367 487835853 562841942 50763274 973660205 496716974 865198259 187617699 503947392 331125169 646668192 435822159 647020486 303762021 917046429 798842227 932667667 339215304 204716128 852521184 843974797 227374492 20269240 679711204 647052348 362161354 266234575 875647574 143065025 942436123 773043261 274977032 27851449 178882357 478047601 815789217 883376299 256067674 790473984 78744859 995192862 237351716 598762241 514646113 904271476 46892622 118895800 238649609 549693055 239154997 92071159 764525196 962398647 718232033 882755370 845549389 594147404 842056373 994740679 199248240 88906441 156151735 189777770 836206692 920757390 10863074 843812863 481631576 499876790 304999583 693866003 169452939 848546201 588684637 308014562 698584439 694226858 70697999 458266212 680606546 277303234 681348244 361760749 666672176 193156372 629973572 241435989 277682218 214932155 997520377 661422553 2001031 14418890 989546759 439427579 921482564 544758257 56375751 954140341 975467628 352350399 176706770 819183647 486465373 162282237 447779448 5112947 982398813 881057905 180111989 25945097 3887634 809314607 456207569 337800115 77339258 665199468 610998508 921655997 876315859 306997477 700745105 817516142 653556269 67480202 709918386 55579065 481803504 5246859 275749700 556163957 864109004 455333567 142501518 198858006 161607874 941104784 645744218 952550941 568955506 793340511 11790317 171054829 763334764 783756164 526103522 518807390 232068080 268782030 280056410 713286088 447761820 545704700 304537243 94443527 64164806 774914030 222734637 835234557 91509876 767288375 608050982 195118533 203001414 152132941 843259522 725004123 579271293 960810215 630381629 660707439 800053674 740285118 319019467 530776542 246173915 283694109 907607013 898098165 460280693 718671798 193616266 126458824 20083059 100690191 759542758 752672890 918310276 824290862 462547730 658632613 163351091 571344165 952222019 958855352 812035192 570693062 896853666 591613144 789498717 385676787 787250186 334048045 39795656 296955272 438862868 488786059 778550628 113315609 956010231 285254566 211843580 330836546 517842277 353819711 154058842 350614554 552086426 367079486 909172843 91306980 301183515 538088594 529620138 135177790 809824744 403437733 750399882 661702192 564498693 382926259 854406134 643691695 994263911 688835365 529745879 443676128 600100171 181868338 985377739 15949040 812388810 14110594 433269393 199421604 253130755 640407189 677214602 686564822 692969218 327348026 112946193 760771642 409948975 298027341 114955108 828864910 210363539 444263563 747931246 731561915 115373143 845660055 474466736 179531644 959096656 632799318 572944868 397931111 171368120 961642845 272378515 96042178 134701909 525500272 701121702 575435222 889852027 435274803 475335338 635389926 52734986 103759171 503508688 972181886 952082737 316779160 57875190 417011965 145270313 250197336 586329028 925414389 890198632 444907053 909870931 963170578 249455671 10323807 640827538 537097528 130177919 659987196 861886007 944371792 78283157 981117459 469455908 413809188 832580104 600119991 368670921 84332681 714933985 626660410 743183478 297501731 420859742 129898722 38836078 334117474 94304763 167449518 67498020 535790264 286707404 119016929 68841258 679662625 774437163 360035238 320031680 591111213 208531863 947641720 420685434 503929693 563472328 511114815 984375529 559782871 882485323 239764718 258968741 778986842 672675161 695051054 546501431 281171986 676745907 2023054 886691876 481995463 497344260 38557946 832474599 754225965 691439841 220944060 246065723 702788522 493694062 449675623 979672279 810188452 425935591 72225712 667405890 346926682 175773218 998243713 225421010 261530307 39592795 234971274 245337624 574970347 121093392 763193031 164184572 56015318 803107380 665313382 716792494 283147383 770074614 267570528 689716012 404616468 777481771 940051652 987239432 48604759 4280284 793247127 90175768 491640416 929981347 928415278 514618082 326060053 270068101 434350941 424805622 955419376 541198520 811615067 155293174 435027721 697393067 395221364 827092703 69074293 908200691 291148365 291200542 662514404 929218481 719914427 604048828 153704493 320463818 770221458 46716476 224822860 585522740 920458622 180822335 447675647 232973589 881951871 431253609 485844488 361781516 386728998 640410175 425904257 166018975 844596466 419389849 337962559 7167606 598066735 222538807 46185324 301430933 374980329 45235831 748479256 821419057 649429616 857119350 916054152 264035783 340156257 894202169 661269343 391734735 647231951 604483191 145768147 190129986 650127496 832354333 259910776 49054906 651887788 985229320 571318846 136254944 715433525 908684072 779145617 558644370 503183119 454015342 31413705 309160554 618874296 803339765 927256019 982154429 475148760 625507303 449691617 769431263 142525237 781463152 907998347 625245943 973379036 483746414 748845679 306336082 971474428 631948846 734025756 250533556 936456584 541756741 759688099 575486467 114362978 846168109 864747390 961462046 337594636 459424562 28060265 422738321 777444505 402895197 661810217 916466176 932355413 587869634 194167460 300550807 972806478 417484973 85687881 815805553 536362796 206731258 256309172 100701033 245998877 662358297 595184868 830371780 787386222 263270763 308309055 560681110 174203016 865782875 460837603 729645558 527187889 836635196 633992483 45265356 289502825 417298221 939204342 671049853 417787222 7746054 227143045 688481802 148146890 763813170 601584828 160776377 89272553 272965578 205578098 365219635 880801144 619243613 562428480 987019221 652054871 486660089 783055541 668235234 439081681 528563595 698283766 507353064 592186468 565660762 14073155 77598656 52819325 173091324 751163492 297260430 136706104 991620787 479144631 342938123 762602658 772934169 976622048 994660996 409088099 1330692 371659714 46155999 717245469 564810530 31223647 11402918 961323053 108908355 600159379 15394683 820805224 347838212 658612122 583874491 172595686 86568720 418081188 67396464 397205830 793521101 314243 648223862 602260784 897597662 443466387 371963737 461858488 299718216 721362701 771519430 223200523 762965245 439713543 903982271 862730911 147962865 648890041 989433538 620844933 288083150 545546372 924801789 780407211 267380552 404270000 6976475 197259186 969769517 971158510 617224873 513491419 262489812 333023404 465346321 364859380 146549621 250059389 371297910 872541252 509015665 14383134 991666315 283703380 567529754 743709907 830527343 933334923 836798026 772077177 594879297 211892583 954273557 878554218 959708180 909855598 982788283 875184452 13336365 91035274 147826198 64784804 827653127 981508421 960617534 869913612 240220093 443565130 885645579 495295075 350721733 643021724 132719616 247574146 455267500 970257314 668117568 192245618 699797165 766838147 576775634 563973007 221453547 385002675 259628175 259637387 12088039 503359197 560351739 778526104 67945382 218249880 664470662 405089806 512233696 85080911 767888338 445384989 791676456 416898062 271517736 27442063 695917089 859836132 469215550 1167834 146694078 131630521 830630056 679522614 243434804 668112458 87965596 202139949 271378877 148781816 503825305 438294568 20041469 701540609 349987079 933429506 256815841 436657582 280295440 670613794 744891629 10645804 436445422 816797543 810479637 673137577 489112329 946790629 312618497 727474316 499190205 259656980 366844869 353840508 119448304 359287611 782456909 219781276 403085585 200530886 582721890 985345822 182248098 481386706 463249790 735558866 189637958 871949621 940229700 138169646 240283675 188920498 604976 53630234 857849540 35986656 197944255 541238113 595468042 282249012 817331113 760854994 620261739 492140335 217894809 99914433 306285736 966321887 308719446 151875651 543795731 416751890 693450870 887879161 815289897 418515490 402276838 384302088 984984643 88682502 170008696 420319133 77041834 339471221 206987041 943771017 707369746 521629662 507001354 512716716 775325661 769931796 524157216 569890438 854159373 320416523 106466141 571011909 555268792 304107987 201000047 260371446 190195867 696086339 41327077 807339667 831867640 852618154 245205704 142009946 740553245 230654209 137309595 684099108 111251483 549298754 284170993 698442857 234401924 61114035 404367426 288075610 529114816 142922034 895495234 132245157 681030870 864246755 234609620 507107359 785161041 716934975 806313442 99214516 186418453 147986957 845865195 996353841 284031654 543472042 776470047 231884211 714452206 107450530 75642582 378282119 971667742 212987959 745916325 980852826 959033995 198072586 301490259 162948225 641501593 40351733 811423630 365782474 502359711 995022011 547338411 249486973 950887165 557633914 399832118 199718446 478601943 851862668 988197549 63221622 247785360 768895878 102121022 348781757 372663972 431240397 945332949 67554736 388096101 570786402 335751078 88815624 984033555 849249319 583861613 558794387 636815248 797461340 584428401 750611794 355915688 141024472 540144319 50984318 599538362 504812329 191314160 713359661 860212539 633752923 413979485 584009724 850188992 531063147 602068564 46851932 597907058 712601244 394443090 50800493 369386622 762987425 710642110 328353266 999356366 259941212 814926893 546826532 954482955 395993884 329205968 502133988 51719932 691711176 901630694 617294040 40841217 672104206 211452633 221128108 151042333 573304094 60981666 991462622 786792538 812172108 68277899 806370218 971476490 213947535 889448470 172233444 847086330 703634146 358645717 777821352 328449452 729272633 796914479 49994833 301463964 696615640 894408213 387803098 42896576 337822271 404182945 68130862 43506820 502176393 958542507 230135741 759573509 954677078 763982685 855513782 576555826 978626750 536692002 141209314 628229516 180936847 808093199 380621084 859294284 939196714 244691698 535904067 606975371 835861984 68150584 917547180 243149318 620470918 911095290 711324333 881645446 721746486 100035580 861754064 344015145 891767303 755144466 623843851 735207146 496727019 440954294 860853208 84838711 732692580 657772640 788825123 368169282 517492168 379624112 701512332 821481333 77867697 113321704 869372364 409442226 279613788 617149541 879469478 431352997 436868311 107259451 624900392 719129932 408441106 525693326 14546613 445380646 708553329 987693555 730016464 703934294 441924196 613519637 281208410 740045842 455575715 339201530 68665208 908952686 800397572 802729329 573691987 610342305 305820300 291287212 559313324 551782032 604799541 291079325 79653504 475973613 42229110 714102809 996540101 123202958 85433205 736982168 491727864 282006500 336240338 851214654 61638951 926289304 738794892 950755702 974959699 717692037 33261650 649052828 705816538 314489478 963352353 892997762 372808734 692391479 325348510 974953027 126202186 857805594 870062286 948728811 27763538 16510877 716020677 644464551 208556844 160030300 397042830 171483568 981379652 497463465 951775362 380067736 764384392 434895229 454280017 284693394 241168242 299048410 403346342 506311155 110578782 880103936 705596764 651090991 650538424 411583680 867028877 552960814 713431847 506851467 571083958 573266372 679740785 294497351 731631448 233110710 467799498 727575533 191992151 545759477 117220376 653140979 672328952 918461491 752914448 791331936 961543810 429952964 94713888 140295563 152587319 230653982 42393098 246303818 260051108 146690086 171590520 955627673 640516769 438674252 741332462 378857653 291459627 488189400 393731145 71999271 835291121 560630292 77505996 815551361 381145745 780280148 126982460 460007438 133729330 738938726 349786187 908046242 280181521 919662032 763865691 342135430 464843514 34343518 218129334 407877256 588454741 319799186 479833177 943700069 491704172 306880482 374507515 709527689 712385066 730278280 923303176 632546263 483184504 336090149 66189086 388342672 168676512 514862813 380547084 202121794 554901420 463308546 232291601 23957302 707573705 347144867 473597213 123247101 671057720 949020451 971687313 321809382 893684034 175379311 145955864 559994004 377516616 470052946 927668292 165368472 630789183 844955742 367345342 230657879 436686431 771885266 39981288 812154339 904471428 279417340 865930492 566649692 665865737 109379683 193881364 575239502 190433103 578325004 356526827 116608288 371383415 386377099 540749055 236534268 261964889 138091701 670514860 378985509 185112044 427434523 936049771 69810458 545382429 815232460 786032619 258203520 617701268 503091197 78384274 443829996 256356102 523793637 177424874 682557889 946739676 604659586 94219859 267711248 666088241 10513152 579701445 792734907 508073682 220900530 686333871 433402123 944361615 794080010 483204630 607268114 197988340 419202614 530909913 801851888 771152287 562988765 585564464 783234670 844605573 669603214 572053080 730745448 386949496 41972701 536582692 867422857 411784784 316610406 607508008 948189606 922706586 358346774 807119705 907018500 75388530 961267511 342807678 870048070 460303299 754571147 580940193 387903858 957251486 911616525 286592186 116560446 901836695 742902743 228865161 419680007 118706200 619162716 820285709 374905779 97696534 667179596 231613704 907822957 27141058 443583596 803519063 91663530 150448962 7761269 27527176 508907745 321354714 83083715 841451677 326299343 235744589 542895862 287991725 342064770 559257520 328598220 283122906 907955602 150171567 779194815 465825814 868447529 133852408 399915406 797530561 760283314 876837209 565412543 606688657 114334038 674384966 975829590 89915180 384888614 350280808 535094080 50451212 303302535 811918444 805201557 62180626 191415269 31918630 441124143 319233064 483020183 452327581 731430801 3902950 247980546 331245354 886354290 819553458 75025155 990965547 270785935 903215992 53899681 153494358 255461034 335778750 517299018 930523479 832674310 534109471 243683901 708989158 358507373 54488672 442378409 499632048 956739774 742760682 494397654 430638149 966119645 279156065 983486378 788276642 605711917 990761534 25914545 286916397 725640806 568083194 600971075 872302160 936728451 352716066 308515241 901249773 134950273 340083448 781325708 646270983 755857260 472031319 110077316 681185758 45706481 683881156 716981121 946422721 297796286 191731264 660813689 6308662 978112673 34424054 841873106 844638131 853641850 417577498 880798180 812726154 376588968 521505403 852603767 537043364 624302835 733214649 985298283 349416208 780248456 348194876 46798025 903813053 304481116 903778146 540977015 744031000 11260929 11405980 663782794 340132652 105461071 15939577 18108245 514002933 762195229 456468383 668725061 901347175 309142079 662351437 243976656 542511568 429612530 540725664 800751357 946288540 123161182 138217835 484439032 243086875 999761461 767587862 410255860 999432415 859250772 533863326 273998975 72064267 946610983 963742782 552934335 389605865 165296267 219561590 463409678 893922584 64711280 488856875 870875048 384943674 266531040 928932526 866501750 570756216 580199687 362723790 977999759 314675487 788965393 723224460 922962175 431414907 606640008 733606418 754524017 391114184 627553620 220615175 899274243 870867638 515993341 982712504 642126818 870008893 271042100 689136785 953114452 612397324 961144457 623366698 598354828 582278557 426238131 914953491 355174821 825154616 928197140 440986735 976748250 568688694 279441010 173297161 421181341 878080813 914785456 699373737 849775033 147167459 410254705 774966393 884226444 298766974 131006895 696984702 777794802 882594038 973896992 898996600 539619635 883148387 534145378 997521192 466091236 691685300 858605344 748313989 783402265 308808307 562065779 538785117 172886906 572569300 358670951 415662459 710340316 606083176 159611809 143762870 736212664 843909908 279092091 681768383 71475064 693273299 632954245 944011739 610663234 678291580 311818808 407836878 50272897 973449769 519042114 813078987 808808311 472665094 881025939 742807213 248124591 972459557 968690810 739548077 283911278 351936806 969731963 704239408 257819394 417976344 919356929 481666060 428783075 297934916 680303629 270102786 505399505 585570162 161225998 867183451 741604491 452705719 655632775 542388742 367533592 363749463 127431388 957235918 586182137 562172542 252259674 474445633 229404247 666316960 527677800 606404898 690355016 76248824 926238082 976512622 986505946 921794149 169243471 427558356 11142728 77162763 331652311 232667334 973159243 823232895 107043300 784609976 111785161 261298425 261938323 168091241 369762741 571501365 575563924 839973798 358308055 694370320 42226743 664186721 537212466 836906432 777254791 836091983 219369156 76789948 110203491 943530128 68953018 717474080 781671773 374308982 709139353 858413019 614912517 977469490 873956534 693528925 892469401 188257174 208691607 397352489 204587775 680763010 649352750 941661380 563134266 344509818 289646073 408398670 483424830 110563338 484793905 729437395 5905508 928242930 171028257 286164904 787048191 167888339 409115583 957754756 433859976 149156556 454806408 755236641 266463406 634082774 933977068 853555860 930715974 904300044 200397943 950697821 111626253 627508604 4566406 344853153 490398433 297381522 775557372 979490142 141587579 156026387 580969570 912348457 779511828 699261745 277519905 791280261 588542889 49538178 278281206 363486651 819421564 446840864 187646841 988012764 127510525 560812617 675613636 764773925 678405824 342264406 238999583 608287164 890399767 32421187 806242079 249301474 343371712 920311094 65460789 591645895 133397599 674883215 23035687 180346194 248519928 664533177 339585049 197028010 977968597 969505604 843111803 367304433 725586741 811129511 960796670 262351240 551945339 489556128 350364750 599558666 599144609 235010804 121377389 483298520 36085232 46543961 370486512 609300102 937901805 642242629 14746886 146769104 285575928 584485427 779722944 225941086 857400974 71180895 521068949 468052818 207145507 23555158 195262311 545706647 171714832 648677884 970204329 472162348 432964975 916101001 298251014 816537367 92828384 406110661 463390667 272508783 428132682 179207232 194842110 174604414 16168210 407450243 558373272 828688960 133068444 620614976 514218103 75742312 622405666 881143894 219881946 49177913 847795062 394853768 789229465 885264866 946080092 487714030 206058658 139058450 381101341 601069964 560006078 25708392 310053267 160829592 961330492 600603394 864142490 972100118 167057075 747260424 857369802 194070267 391428226 497311276 209317600 285848182 562416510 730196981 282552152 37525090 542324998 858181698 436921713 812694022 808982617 411169140 928376152 388248700 174022218 261044849 854521319 908239126 883820818 654535143 993990587 840633966 247748484 834352664 531494754 108547384 183900051 417930245 98110155 184475746 762474537 430240142 434815944 186949178 961771550 330901089 461873395 193829587 141403978 916432697 982031014 433037944 417036097 846589035 180375835 252956540 679233543 913780583 62714406 646083665 174550921 96313556 179454474 804555046 743962818 339022124 658712420 792598409 267298650 906311377 896430438 878313532 466048357 540348496 899471626 896041523 515288767 909831194 360065360 569653296 157511895 493711753 650863688 173055504 224049888 991036978 275541371 590676348 328378135 356197597 673670472 306954416 731903762 997049444 135841360 660847488 20968259 424466201 642198823 761841400 150958784 865741141 869196050 665678058 872178998 889293737 793671235 887838439 720229416 64433861 806192578 85738259 48542386 246548917 516683380 985349742 547992434 910940739 836815048 146347718 662802487 850415068 250168066 866925551 505987112 125668981 636481305 620497278 725764815 234180658 146317316 954922464 528639825 621690726 910798753 70667183 430274308 134186578 388393929 395940030 490240385 653374752 790637095 964883742 373741346 498008726 560890266 768956992 471371296 641479640 623905875 701868677 394185741 183570350 87726463 321984001 462492281 811806187 120603455 174574241 845764451 176454714 851369615 598544818 21806772 414014603 462821880 487698919 257687225 234447103 90952398 552445190 587556356 327828102 285526580 912553123 274349 489386118 919859756 875815380 969229522 302872028 697463729 118962920 791399173 820327955 37725390 803185356 520226466 766476941 923393014 661614057 808499427 914095389 156043581 890702972 799470051 106133345 140894655 202183038 360508433 148459078 740692282 691140705 484406362 98308919 30979598 843179081 608472675 287925984 774485013 167429253 97156089 57542593 480078457 418566901 424625428 246149960 42644895 655152138 775731527 443314194 164402530 754047837 537351423 299170604 378099429 310800111 171590193 693550051 110743444 887455779 620585969 827851543 804817138 144443305 477469750 771752216 630623076 470853388 296954225 799101876 696021053 513766948 436307396 716375362 417501150 178785776 792361021 235863328 98380970 118483124 820723502 431412088 66273210 754093533 318165536 213989840 101935253 959653069 732678516 536763410 169657307 953895652 300476214 209153586 761424590 611563395 896346898 613387442 104061600 526629216 43840902 868043125 655775943 436501370 735481894 465140767 352569175 136059715 139645793 880645029 107568916 370805345 222700737 669361305 658634107 484222826 375308987 736703980 331943305 731065098 933831889 503899036 419799719 568539843 289869740 664965513 369953719 733046499 227309116 215545448 863794427 550791942 190913409 285396555 234655843 922516567 582768622 412976535 572609496 41324185 733159006 539705965 382886922 169932863 792148094 196218086 29612039 218534548 196459329 870904627 242945393 720001021 961045577 359466561 399892980 358716468 746373375 366166678 654730028 833121794 873316678 694514458 282393190 586693439 815641747 247364450 118901809 402315924 514513130 16187543 410753835 28380782 767885980 936633391 20037410 19845838 819504198 117456717 51365399 876313997 485641284 47025976 616239258 275508561 790304664 788486012 465359354 368909279 631610992 480072448 481215275 850694315 739664841 219941246 943050940 285177347 616305772 84728299 132752119 320723189 411704547 787500775 884169588 683794564 307861488 98374499 620155406 983035783 56231915 744427714 357570813 862156403 271572941 249070710 691380129 846920302 58959132 175984755 730136089 780398967 780425391 843453029 433361308 190200012 684278663 980642019 354649434 46414448 828053331 147237842 862635883 475663369 775756665 576487623 190659401 405799959 620290458 390725068 149696476 298356757 40047221 724240554 15139506 205938398 296556666 181109542 711793945 415573702 545312877 518249434 461902005 474651201 754220067 26218187 737040925 254577468 34151817 88962546 911015385 566792036 594882939 386426460 994877572 378293035 518560330 872355722 708662203 698246370 301347370 970245710 674717134 50139295 699498191 141591099 339767164 501113502 770263951 971674065 1288779 812762342 293959536 390638575 969582589 490052587 942605250 74322187 484247270 82725347 240951058 647175158 316548092 381622792 24961162 338441051 140306162 122448542 363355809 593010989 252593231 780410458 229118316 860771639 827602058 402627675 230229635 414115257 6728527 235697636 559969904 604107077 4291711 838532018 270336892 784390757 969945203 166179595 907262660 114834299 596497291 640155561 518711611 854988030 398960172 956698011 612062131 538098161 85538194 802514873 151103435 50494404 804145265 48474476 730734113 459021399 841936741 263977912 454662162 846913259 642091102 960842002 642102179 870972803 753601717 783845677 257035406 769945634 977993681 669424924 942966467 627210679 722104272 35311726 748854350 120813149 462358824 890553709 540388927 654437923 848159958 370843844 699228020 635391702 386346010 457994957 283178249 797779505 476146601 60047746 538951558 689289137 716898129 112045955 659015548 603783003 782671408 34448768 387322805 972363658 934432436 603205109 919065625 403766006 639569672 875094344 328349762 585286936 416086580 231310958 411198114 22706686 145934485 755614311 17636054 418972502 883825085 190262235 412776681 616919585 427518826 165697228 479268563 165856079 806310133 779525104 56762437 847631477 546478187 225331130 415057845 471444739 183770820 639033142 104102451 803440506 961681450 82355171 650762135 826830133 929586896 657815859 462651788 74014947 131364230 534495854 958210875 634168231 900424895 819197074 642197917 438669570 626858102 991638307 635013824 729059559 459043892 519048539 807505411 358433063 142390233 367980592 424094766 780442379 870916371 222846629 762716420 23119114 850415684 335154778 278859527 837056922 467413652 824890874 281306540 558116044 609627690 500240918 99086238 773503205 884430171 242652586 757458359 221854605 384458353 255268676 266995302 367268858 433121288 593610225 739825400 97885043 356507096 736997147 212863770 616180414 213455793 181702505 831158556 964755438 555925078 565118091 991464817 97989726 404942539 919980282 175703962 574883286 23278350 895098194 677961608 256349329 564163229 965365670 506777948 556678328 723651054 192984861 539195791 531960936 566867057 115062281 543334432 661931157 96923786 300588123 91863370 326873715 75609412 444086439 716167118 87534247 698162817 148229885 831198947 64927712 941907808 341491652 351984172 136564205 645398104 456241528 192741846 429791847 355194587 151043566 848004711 624598947 589631940 423546502 685659618 206539739 49399886 745225610 114064143 456145736 549958779 229127016 258001229 844273597 186463793 521839844 595813348 835989955 193634848 432883789 539402555 149412990 776648706 57905390 517186691 156415923 960491052 973839680 246729132 150575948 645293791 953767038 54162466 568000513 273122106 551456856 115010591 333990883 714336607 318491571 724920340 563508782 615181599 183363950 131693815 823295195 56582924 268891581 768864969 827278527 439035474 67034244 769600662 240843972 835905989 408754400 36011067 794250857 830793522 228965404 367634041 412996898 611945729 874092897 844872955 155054913 469134575 272831901 294000478 992298396 468260243 197009169 251644032 371073785 4173406 696633657 479189008 724454948 32746917 972704880 856304733 127515017 921078090 478007881 980593062 343708463 17481708 246065968 116687462 272424737 974038263 474138116 941991295 904800760 121688536 602356092 635434824 722556586 438882110 507664574 629642506 713999498 941643767 869577159 977752029 145741879 757280428 359640989 370374653 701372002 252384492 192354639 190477200 950961553 25190957 595831407 935286380 415420061 487721202 357006488 98763851 580856284 145533411 986415021 77523322 438274292 563926078 28429297 591454755 703574568 15166408 454463193 608393620 170046022 262739081 318630517 956943982 120541882 119156195 373513976 376274136 448744265 484411471 486990949 317711124 65508107 89387978 826666473 556389261 308150626 566101271 159987558 980427528 684720821 177228907 187998299 743593739 863135324 525220165 608398426 238562956 249419473 581479911 257093926 615248006 572591749 532647861 342092126 838627163 450809782 978661630 322916868 270068756 989043117 781992971 170008154 530656504 738180912 25713276 434495242 720061552 964109025 857407358 604968036 176373837 465073511 668413338 918108868 390738933 83139983 309301382 949630054 231515117 571517439 121899319 791348048 314815140 687210560 837605892 490899869 796548498 766835613 270939365 124095307 483520382 416645102 78082260 91628615 836206664 690417845 589452587 575269592 65237723 151415609 745560844 577101609 309831793 741093670 355005560 383267101 2723576 753970050 535942024 340178481 430077522 213251008 679726923 323002059 802563302 99824439 378795348 882851702 168651558 51047927 826706043 728830482 483532456 589770081 440425978 629290586 930738364 514633387 139745122 263547270 244316766 696190165 882139270 805378921 551015898 925655833 532432244 668019086 916026119 658381987 417676314 871480827 220214275 90919762 476549309 548646056 643498134 926225047 65720069 640342879 622646468 785885244 358410 858287387 88121258 853043891 579176687 492885477 630674744 616455852 629723004 728558706 786476055 385405325 534414271 361931983 949084835 869305335 282880416 655474427 523609891 979664957 740675404 766033144 963734188 442510940 208849205 417462997 473945422 465104874 680224618 810721756 873175198 285071032 863040286 201625410 114586498 957565402 455322248 600667075 105306033 960701069 115585553 380377384 845322679 635622965 805088617 721268585 216988814 81291178 201372003 170677542 250194201 789704953 787634936 397106257 879108260 951201314 595924153 323159913 988489733 213368274 87688743 7166053 425945647 317474601 838326874 977631601 620370825 298238310 717079160 914825183 241852613 958669597 29296105 55647480 647079751 255691461 882524524 223679865 681829240 510130755 861575616 464690488 202601741 272303179 881375419 15593532 893371729 613199132 74924693 116042236 698626928 364821730 967064989 410942859 321374376 664205661 123941630 184732576 61804372 38893188 510573533 993704281 971920679 501613907 974810800 911063761 566217080 381927863 872967022 768444299 191951938 854844436 930500040 332153519 920824549 448596283 959854360 153231102 789975594 182568081 494060535 502341031 737880841 280158205 833673253 914688235 736446527 848725307 81389396 908381808 163348263 498135793 249798210 365763560 887814528 352530893 549231516 272521036 997591354 761966608 704381853 532028187 169221446 191112331 555648742 627831307 348028482 616709535 20704302 920414834 111203153 279589743 561930569 371171136 512282762 964254805 431823663 24401537 62137629 238598586 830541428 163930538 461588730 294148244 774194872 367994559 261372393 511528582 15456558 201689381 836765287 196687798 51494736 25478449 727319346 999897931 65811589 68418541 858659073 526545902 884521178 833058282 643410433 133189966 45118407 664662149 245737889 971569828 119938260 994102018 236626416 893871493 66521555 736738320 144328687 184133316 441839026 415645947 652816559 974506682 171018049 319772359 173258814 482656535 69619666 598967585 512155727 965605576 346294927 38084165 914099092 932400117 615896340 371412573 284641587 484232001 311205357 398022406 968500900 207321820 46515057 686895176 295192350 298753837 596167233 548528696 775469969 140249452 701479788 568177696 2798813 111964959 707207072 854910289 807193208 161787669 276806237 793943099 206191544 765390438 962984637 366516121 764235444 491618955 70188632 77731734 4873872 604615257 536262005 888807129 765676011 248335195 916593218 602585662 279601424 214524496 513936659 784168026 29716904 130799052 392883511 760599605 415639795 1457963 801636809 922407706 170780952 12072809 109858143 365823247 212170245 579013147 263519651 779023 483709340 601397306 368241018 168273614 846238629 869339198 304624620 448971137 230272129 829260430 809271868 572190854 317339942 651711949 407880345 978646801 400078091 954706023 149538044 473885935 672366324 281631390 156585975 141916856 695522734 961098163 314128975 892555642 766859898 107757584 901367641 897564150 569241683 272714522 188701601 715185749 997837506 978345200 224243635 83713642 607669764 847845895 90779346 840402101 187753622 812854704 239343502 713139226 686182054 412462450 39347750 923806174 793264088 374020436 177053199 137664899 419350703 958369803 839951491 471756808 137597866 268796920 146288615 731246514 209603927 975521930 72066527 852177402 483616251 288364514 320975607 592930868 484707110 618226592 267005660 562170829 652011011 916548449 337412351 965952951 10323185 804413431 310392464 836053949 884584254 383961837 496502027 385241867 317670629 154046707 518455609 889590493 643151387 312914278 709829392 216927305 639722487 393018079 494285318 772000346 329480646 890579328 268218146 358299958 991542625 531496413 231550797 784076135 679935978 783147817 422250474 665822008 48085435 188562349 30216957 477310770 195714880 574081188 22505434 528853419 526768961 378999188 270528084 602367347 163649074 786359431 198240787 695754980 328769308 275864176 796723160 971569377 768593246 811158998 158454543 151135190 573930823 935714303 712964102 209415013 553135303 733388576 920423641 37930799 663544154 433578916 206596026 683134633 994061736 413060264 92061548 599659921 428453960 564985168 535467184 268746972 916617158 14446030 659839923 330726775 337958112 912188353 543065906 218020837 940820891 473426080 721208732 259149125 30348176 978647971 171051475 914061281 503686818 931905789 371641934 525216302 870148048 141176969 395272266 553444531 680863709 964493350 916615029 915821901 221657645 583465529 432443838 549763449 813600238 903114162 720497856 157617030 564143635 767596277 99801440 361973003 325068713 800826699 368045114 366983245 212131696 620417768 172166407 481801877 263288255 130371877 48142076 637145847 986843691 954464963 99426349 738010934 642103676 118876222 980882133 961853216 269050826 465919518 310691294 269993474 472694961 635404422 719303855 290819602 97620565 539446290 233322151 290348463 903441396 960750377 357264132 913744460 248609052 620094924 565750983 672549274 318679335 445860541 209020134 502048810 901680346 914678548 914770755 982031132 788214479 775423556 526459550 325023414 10962200 335066709 932309388 390380562 631829416 245177388 25871552 722323907 604108126 544695297 146775512 369372288 963542347 183074188 141645179 810725984 235417518 548059896 416325220 196593672 582651183 854845283 427271177 284085845 322185215 696192004 382951353 891686870 894629333 177536480 122518233 3456141 786676470 891356092 725095589 360213614 943187362 148672586 406871023 503094621 42625552 978581082 408636726 827836784 326133315 111491702 579523910 484596641 375862282 289221213 510436151 184910670 104746150 254230572 373328729 316479728 728517600 347544102 189558493 137007185 767799029 890506007 573816825 639517958 957171146 9195350 765670322 352789494 658499469 563431747 655483299 147225073 160735084 554188498 614881620 81799501 39171193 738602842 287991982 552693142 11906141 346413436 668306390 28858691 555245820 889642526 316884939 762556464 670128265 704980026 865578038 617161444 795231599 40031620 658599818 700308538 974917960 889165162 759175365 976621906 987556683 36088343 932022187 85722803 635010366 394340525 766308818 513175842 343983824 155518083 576160154 670167475 618140624 667432550 921414239 587839877 186538301 252561569 655769967 683534222 156211126 738766844 221137480 406970913 224836045 400370111 496436061 490730017 611926622 580741860 991799302 622562517 11412216 374318780 212816716 154566155 87912940 97141960 107190508 405318698 743913107 465636955 251573586 247703763 672112084 717219549 208111707 176832165 40761239 360673054 205535662 228631452 473084297 799995543 130611490 825386319 86200828 447563197 332383287 712587399 424438277 228650772 771994446 113902850 819724274 666816038 140989314 915846659 525172702 970708780 835355509 78601867 425462349 208880876 715130740 445849358 60164014 201056183 954387608 810190935 712143314 113247748 112356445 13578960 92429027 947118299 4355001 384978976 657759807 672244957 69791679 198601902 532397474 777824229 932910444 957261360 549426538 360989530 62304509 841681430 856866891 282227631 84364340 518478313 893738329 145969738 311612396 824901607 439117475 54939378 798474390 53645904 400076235 915916543 347851837 455161499 791642840 31923040 973808572 369221908 118134578 162931457 666205744 102323660 45762029 104763196 479887848 761980816 825885799 729174271 996241244 395251610 602495461 449221354 380835857 952784422 18193411 615790089 660192951 876341756 438003479 797038245 404552002 277008361 18675921 432947554 715899584 435849644 541877940 73693637 440193539 706054674 439279090 757368072 63689956 316420798 344438155 835744095 225521655 916656081 531861883 275416910 547593454 598073413 235750305 895781995 405767397 248676465 270466660 416451420 426838346 250471576 920727603 285192928 330474773 427695225 311472077 672739153 529892313 412063540 186155868 227158749 315438239 366633038 636076761 810827486 374388463 112933387 657151422 631011532 960531340 72134394 294315399 189962794 355709293 648809351 609619638 430411104 298136294 808084699 161311798 772469347 423896744 899975322 965097387 489523461 845103193 696882022 894246611 671346407 277837777 481265258 528905949 937110663 967183448 461700376 997999305 909504932 22266605 681807145 514632577 204228806 339169448 741070021 461108879 536861818 626346172 69959686 144304247 122691287 9632003 165178678 711354818 830042214 818343268 943766450 139205740 70288423 444543379 307859738 59915469 689057576 66730812 775301875 315795027 67419025 391818059 154090694 969116247 736695209 47310256 854193682 259278220 320599262 8231499 906160346 229213999 513539201 122199757 585028424 247090300 79305901 868235125 499041777 65535020 30023277 841144127 864838670 351145073 487287417 251285334 508005690 662657894 260369094 91214333 137334528 626189004 888661317 777390457 3087038 15451674 99108240 586230835 395245467 557680750 159375193 446389343 676296912 397619356 581314497 527556582 753010823 790662670 528928280 986454372 926672651 687213883 207185824 953809730 283488429 691431221 348736615 550485870 938959162 914551146 186848398 77869369 652586560 538555557 67040017 412942920 816251227 325367949 356874814 344542174 155232909 226434357 634253011 573204558 25107636 491711619 705449218 607956718 336073041 216919694 442097593 356773071 319985161 100161255 653854933 878496727 344842724 134891383 625754684 718121105 715226111 602967580 886757981 431202398 242844864 824522510 339331909 941151022 499309004 524295367 421072744 315248149 382678330 319503738 383710119 547196815 105626067 360931335 214028516 690502589 627677064 8640534 979989490 630519597 432831077 613385090 338433945 313340146 734775688 528898199 649358134 645236244 45120399 376934112 779949962 341627193 452573659 556882990 151849322 848938758 88379077 17647090 550023722 690698186 347536579 251495234 299016923 10798857 266267557 451605059 66844551 353440064 565224005 15382203 512645966 183787100 217055662 614963845 198786781 771882979 542692370 529139815 743826807 574546552 566237112 885737267 675685239 137173263 799730180 618071684 943853097 359014041 420948870 774248677 785387982 551019820 263467205 626832083 523760141 397497973 323862312 775244935 851212530 595819739 276295900 635021913 351894842 449242483 248593225 412448026 97564512 526865099 269286642 398126343 608972427 929157134 166953218 407040949 13635177 228870458 220481146 805382745 961049891 508733207 756604188 834497668 480955170 616319897 573873188 381591868 239631849 721554521 106516888 467548640 992283679 689979164 615124484 921157838 748044770 615633384 544729366 177690792 357416374 666436883 378587339 566265840 49135718 168508026 452258737 637208206 984025949 86629238 207652642 451891898 678859867 624110767 229665465 274066462 73256186 629267312 81919906 494622576 236569261 990050895 499281947 476396071 596279559 367932482 799310630 25943840 633653107 230508651 131045707 675230937 756922959 287425197 628611417 870644758 897857107 467120075 984825095 538589771 188067753 900011392 444811784 400136792 486638875 229450840 549835767 783172472 464559078 14470121 321015108 982809889 783912462 397415568 600777588 519655058 861945644 712684783 965677766 521642056 903742551 896737678 337367698 522645870 995774916 610279684 914763810 557951222 333814203 3212018 591790918 229266357 104037897 738769166 825023313 362584628 27258904 312538315 212849045 758213911 204094073 837771338 48962130 767654169 985981922 9405165 329320975 380262171 282681171 581786089 968640806 393170036 321834390 532328750 133648167 735481179 970002178 350935824 764082036 600242396 13597724 168040088 644365564 69562471 841525072 829050211 635966243 756676173 185517333 838739668 811278926 478718169 261803272 531786703 20042235 650666561 128901172 778325768 860206061 107949195 279513025 428225483 982293593 193404247 978652671 737850295 965704662 843426318 461593328 83539482 270700840 244421350 104728272 813049777 741334260 117915822 806394565 25896833 453787393 539994988 617342912 933294268 594743787 61027793 435428881 558924182 583124841 667483119 134955156 842839548 521987316 840081371 479300965 694390966 849973870 714027302 401427086 919991324 191178051 457280479 337555101 150610155 746064852 442354948 776726059 108306848 627500450 362474381 481339807 197752179 944923161 706941300 750734194 202185614 749964106 16951311 452504710 766326854 548961277 631351969 680146063 827039705 291779334 709786253 153207459 314742601 84539042 989574252 187569687 63591857 622991974 99639460 94444542 208142675 755601081 992612683 694595366 319834801 938515102 7686571 551013647 603690837 375496981 398823357 334474592 875388936 2506016 475216384 518476006 571897612 150802122 904070792 450857258 265914931 634272009 672659317 616221271 716021609 256970973 814795097 934811732 60902200 304511763 950073115 771133386 624166868 940416749 966558972 222631915 555104241 195140506 916650054 353866405 790225674 94715124 763191538 880437091 513837758 528145143 844528452 954147509 238637566 450391472 303308964 383481992 848196677 344905911 359602222 468366215 27576522 573751593 651382961 541468200 590704407 305731408 426600225 932339675 113782117 821303697 5125011 55240144 871725880 516023298 668015122 321704040 568977311 379323689 716458300 265234077 55893325 247654395 787665267 400037949 606585014 670946884 633840178 198614668 790006278 390588276 612623195 74610454 586631958 264704146 510714533 883322990 193176983 197458773 78178157 545316032 333409186 660153722 91171879 123622930 886084042 519625930 488672226 621379976 139173559 326220212 462558118 881240441 692581832 194828914 670083803 100232399 777835850 905517365 293482073 584019653 302282184 618017185 738150300 758164671 424001583 343890759 559038011 431334386 938521727 151214316 659140420 958412707 514916334 515936329 698449612 338719032 248373156 758257348 235867188 374556257 157361632 719924473 983628884 12772761 86355137 502316752 184729450 871086003 458269817 824444990 879627218 151855362 181842709 289788834 77789899 300253162 535823885 153373170 80524135 604724646 566070075 942779308 506164399 100743732 520822635 811203121 178307489 259107153 95462732 892719936 682507913 220039633 615616779 314868221 195978783 173664469 679092130 417219030 987527275 715726 354898672 89666736 775805190 563171982 574672913 422185123 637570730 267249695 852695414 302172865 278204268 745346299 277105623 576492406 208346716 808803784 355833119 224285097 310586181 307594366 771411090 250720114 806299842 786748375 643180815 344025445 26396969 793016281 628188368 428581074 83333528 398098664 859937333 836631245 534881569 429854937 477679963 282021326 966596061 646897068 986112879 870138944 202553298 938613901 611529569 715754290 792723260 316500099 451879499 523269707 262542700 512846431 508270919 185654516 320605801 752136609 100585367 558865472 680189599 425489596 851305058 267939361 604913716 205860420 870865338 938802624 711988784 286583415 914595044 770203606 239514925 62900038 910064001 360457153 191941239 651472285 141613974 74042436 221381872 101971062 611036480 437782739 524353195 87900433 793926766 602904196 477445911 817622752 91220790 76432719 489578535 805102584 355640964 317305082 837722868 610392880 648218699 324525060 973539417 902093306 343756491 728398752 535244368 138932167 981278265 223377608 333231450 77917799 734642996 177538698 650957945 711293342 336470416 76957931 764783852 617397434 861116766 846299552 226512778 570196979 507579798 759495450 598491799 86121771 515469588 302572479 569241723 108360551 613507109 648006026 740818116 697303807 932445155 447368176 824724207 28098175 640246778 327182866 212309824 685647024 155236196 831000879 285808617 913294506 880761435 389672019 940755974 706882092 839492837 978207040 664868007 173156469 605212371 803687087 66273720 901682776 968049252 817886296 890454564 33484771 713737125 627803129 590345983 598829190 334682956 969721158 458577352 915143089 730116967 651962704 433411447 274670558 722812714 418279573 672910408 380316413 186262920 149107011 924851488 191739790 879263209 409887890 942319277 208227854 433138409 989821538 372247668 783677844 336502007 319129220 758236827 940363870 282783669 640902247 206456645 14951820 362114000 968929983 222988789 716322409 474163709 505937025 935726369 180751342 802288157 307692572 210778035 641778234 339804621 91927497 912206940 896663551 974143380 326444311 586306594 396668413 26927590 921442537 695810207 389012822 350342953 900818662 199404747 484180073 740457526 394620041 105233571 534263662 236747628 467318493 883330092 423200677 915731535 405586466 599213498 9071464 405479857 494774813 577162623 552903583 650185146 567551551 853010513 410737551 30597942 307568554 543632072 593302180 282566743 99449546 658065010 228466976 277547139 380141546 465599524 850976655 708966475 994825090 967039743 720098051 947550673 171166361 992043943 201164047 944730228 417320213 273172371 143114280 807379298 601793794 486614307 381972963 188890468 160131708 286729791 146853303 903479911 130571888 176699463 839213687 382743527 182193155 33782436 394864669 88812136 808457243 160260217 481616327 24991145 47324616 607888976 788812043 947862246 646033480 314233078 621912247 797905489 992720429 582661051 13493178 863797491 271522143 113930868 118054134 179290255 373828469 79713266 293377928 579410590 774738682 852887337 586244648 968091863 311961428 197206796 751630971 553937406 9021794 777720709 329380371 551623301 655040136 43166780 239413880 957878949 15083587 844700783 71312216 167333437 883119288 157280948 948374766 848430383 275957553 150021580 465452502 226940394 143309813 949395357 287391457 666025722 821096660 224331979 553974290 537844548 350148385 357577892 482444561 415768108 654630363 974746029 23250734 634971120 100173213 368069388 491596737 761592528 975109003 944507809 150561829 692806237 866654353 127612328 18726046 1628759 793252107 759261504 497220039 552371097 148038594 349899047 888145469 940077513 338278847 840158587 636215627 171708759 191377591 458313657 59440201 921913128 838284115 979298796 847716997 195335299 891197345 963029158 377816035 813231534 945942935 676992788 680514350 102715887 917261919 1876069 859667813 268695724 660916375 65175737 429246379 49700832 48590174 302127379 185206353 83237474 344949233 576177867 181486886 926485499 990716580 958362342 466389970 107864910 621496915 497037899 11511478 591962350 686879109 257719186 703441787 500702273 222251930 691093527 206980570 870992618 162663239 95666686 401467945 131147338 885581446 431948932 323144523 507232435 32116011 372698770 585262263 216901303 139339228 180223954 616784779 456894878 184444364 72099828 620001119 50381501 988200381 834950759 705347000 212374272 553896438 837266403 476209551 288317984 495436954 162737095 977977819 110351598 389634270 513839886 620493017 685114364 754617911 922550557 938663838 542843092 62878185 93469834 101607110 444171968 206791150 24261000 459576165 669227713 845708966 286657881 546359853 523520415 468707530 282652814 998495432 524079352 807123695 290255714 556821003 611685651 360507128 306607452 837690886 296734299 925585058 298728358 297494667 170803702 209076843 92207772 309212087 978318753 277410728 754325223 938336570 936018129 996319580 901897027 921233978 957531773 197520661 837228284 436037709 579542045 931986624 903839156 246632474 661123980 733571433 224356794 651987125 267790140 757592812 730636778 947854006 544661075 130556585 667429853 393927914 561953485 286494383 670774419 969941301 586224493 589063870 184189429 887571951 513635728 953743662 92914121 840152102 21786523 892593467 165841829 842984804 811689709 493246693 894707512 729153960 125841357 55893930 404124841 464135989 297584948 365991147 188840426 100526263 14565706 495229921 718805239 975817667 756520511 720467372 637253283 179985946 437122614 679063619 333686384 375076586 357700280 274245700 286977887 313493512 736960728 932647470 159187508 669435044 373953647 927582783 641761712 745156554 17923579 185981352 395923783 224210647 303317436 331453474 63003097 936333862 710598750 746582081 659169420 719385619 31601931 263446023 192497020 852665379 520572141 969229533 253551364 438019735 967442275 295328697 381316398 87985278 987232836 972402992 450679440 891118258 462553406 112948506 18233097 993728689 442713546 563475359 912830861 288444149 406370522 795432857 691429203 410088897 791755891 9787310 621802278 858765248 576623300 613753541 68068983 947909491 568913477 355374114 560565032 935999529 535317713 236370865 392336990 676226486 249111805 572985963 888519388 553237221 478811756 265801079 789548117 780384258 688366786 518206063 603259319 401014871 596933183 22783020 980687363 761662739 863395466 759421772 755734292 770896296 143757778 433472951 836850657 297533655 380737946 26860094 181513341 366612862 266326282 463085838 10308025 805183913 148536666 619921245 299074302 296483685 464834007 456895163 111154428 792815767 623533462 235471435 453420593 566380729 447754785 130815668 900241526 964144738 643100244 303495290 188916193 247647654 284724128 14686727 389642252 13997758 408693310 974978167 476926229 355542127 206799183 569109078 247604350 505093960 321739181 912850643 990806749 203458663 697265625 241590845 859207246 602364491 376667899 391740921 664901817 509386943 865197250 897055170 126744648 974467142 13101699 513175915 115853763 391137683 660596760 172781797 300501795 571716801 891723003 433496467 515201979 890790578 979519446 446058447 706120395 791694468 193442674 512398594 398031109 150325900 336173803 586122327 276087416 105542134 639248443 333070484 580873369 344655228 274745362 496437225 106388726 549697715 230197230 555403504 711994179 132311297 707051464 151865264 447731376 29887785 946063355 968873088 170242487 669192910 445287964 532820438 199173908 251628968 325700790 631175501 606434236 155516103 237242825 619088288 579577713 123831677 254975319 652611390 227808426 384615952 922234467 840369024 741993372 86407518 705740705 294472257 382606175 34646735 25670427 834497960 985507041 627739674 516490031 183503070 364123704 460868534 80407600 522385000 4221494 813777027 999298781 607422275 175582613 884325136 218341918 983777166 169298735 10727845 380829506 722270844 847490426 926660163 792133970 170855214 796782270 392244636 522078083 516756586 818593673 747518701 753677719 77172777 242976871 939030160 576328811 708963267 502691860 698845526 809656126 282715769 744679979 721266326 92002141 53491124 347207447 480306014 287315322 323849144 372117962 597070248 564917791 889965111 297756318 996990463 273917511 533826413 448194910 994647740 332641588 506740123 829482880 266650077 728124544 836634712 789585443 186504418 219244531 440594094 959703040 776196737 767359313 467971523 44589470 936473981 210624491 684735387 887243226 639801563 71643766 118173032 991736086 635694591 396130256 162571952 681199513 464197905 672211062 598255115 492558720 430991861 294054313 264241416 367108191 181854593 202051590 807081710 537644199 881680251 598862752 243923971 231380247 824306713 655136584 906450587 855204215 9529534 916667244 700355835 302672764 90059522 834174798 430669051 160945316 436867211 516665606 128593736 471849375 444783943 558527642 984725397 971816942 150727186 118505703 431799928 188117161 705581470 395553619 168411120 578669856 583751001 848913630 220744554 25176866 192531753 884685021 560327378 38718521 888931771 339521748 63882899 859177746 833404495 248503542 699679803 994324336 680099989 322360600 940139902 754573717 554195042 845058900 868091455 199723648 574487720 480467987 365166922 477789872 968612038 565687445 765470242 700277408 575805990 776198135 827037179 356723487 607999714 996888459 485838894 69981019 93471358 541795349 900720933 715995994 323371987 205772031 800418914 774969041 256206847 570653998 207833463 77058300 942644391 208706035 523463212 437557420 300784596 786573864 907146372 990291065 504950931 680550985 896934305 284841169 474810492 115689045 197642805 145323401 773278725 650508785 548923224 568640983 131051609 142552173 90901091 505430624 329602751 562152965 152012744 20797760 548710697 769449512 383773748 195164890 410750026 77906699 141201407 931633782 991436757 329373558 59718422 503360338 636102883 971733254 79668505 893608547 383026730 177824243 963897182 792899360 829034183 909742868 78574808 517677384 815838696 53192320 194730087 514956511 485202136 210046652 445399192 121777170 683852312 621937321 137862828 22985872 925997363 188273620 287011046 287121933 831780544 488015876 286183729 774708342 420833925 120594688 477716182 728510749 27630263 940234496 982772365 535864826 962474991 772971583 940637514 985960665 57318455 32974453 545157497 193861684 426004034 727651847 617624497 456717345 360096203 926679058 519449685 549598011 517232447 885821262 980514517 542285605 793393653 130985669 920567017 393951604 483739689 557068640 967570621 71766820 789493867 234761407 636215288 885628465 14628714 953949356 354530009 118896748 87339378 310720603 147226349 795897492 235028291 798059638 682729688 671571092 421479878 623547301 934197532 398825134 750858033 798495256 856054374 910448757 464227186 849654567 164967275 432421072 347319109 49836329 876106717 649027504 812077445 415777561 923035742 979617567 153589474 965083799 751674541 54660870 135552458 154325363 798026772 458373615 265166109 67777791 664885367 81119623 888465109 875925194 40797106 920117431 602589896 644467812 625027837 10822294 349627416 953023552 324140925 848612127 208104016 903033183 706407504 387574738 955984987 805786947 338262291 625061237 842907828 984876641 306548211 443698778 544670593 560094194 945802970 952184250 397022213 736465152 293987990 956122107 399422444 874658570 564137641 450952349 219693805 529632563 643568521 922309268 503565563 841078308 687020559 38317826 604750263 928717289 212716333 520192078 241943974 279570635 817154602 504272170 508759571 756218211 877422089 737396544 200864287 675793536 883755478 162272857 457552442 354784139 190374791 859994251 25260534 27507021 111179154 442009902 34848790 894963382 51952391 536317906 180390498 843652643 760613766 97983644 368908906 619350357 232713518 121227060 645591531 819480410 383438507 818884153 205669559 18867165 491414777 542296250 892846650 286526471 665514619 136709234 751822041 908184011 996618807 90413032 906171566 186093942 872295972 661714287 957534109 944242679 427691628 511166261 29864434 784255882 367725612 247805121 163920113 681385363 221435055 250657069 406727203 769175838 134234174 427015108 242031863 168920305 262652980 521062898 452117283 807319796 291460270 289175644 747483862 427447098 124583327 843965456 979437263 885841181 514053132 206439903 270645743 927908154 883675402 659429663 861784886 109193042 433587443 762855124 597473046 598215050 125961566 335529432 356943873 930315306 878065356 201888434 460429724 552669159 774431488 708111298 471647193 317962463 134752502 150172805 781127249 638692996 957236205 811744481 766165185 764338016 83408643 562174531 107328276 931629611 899430789 754629813 793166715 494381222 250989142 145643829 952123713 543236407 290187437 502031305 46266419 375040328 156609217 300703141 944606718 339494855 273074981 560857521 646202819 353749408 203548320 26424154 165727280 749198147 984592801 327980437 516357193 303004548 936004130 208749950 505995158 120824962 184482905 277109857 886987967 135745523 45118713 232860390 978379369 389583328 711647494 558112433 85678292 874542843 340202749 885553166 725928183 790359519 636873314 257378330 271507221 804626277 351505262 957737550 86413356 467317207 849139374 82805 829219404 521401574 948733571 361281426 310412335 132733975 682460817 879346548 626072522 879924000 189769032 89848389 176940659 133734695 683545737 2090372 786862463 801393177 226159767 54699773 776266691 440486670 642231557 804678550 934019650 298107264 963948362 547845477 148550078 706349478 113384546 878089016 484162545 253456229 701506598 467080585 98612361 162101783 84141121 322021072 648199981 211791251 872935674 175958935 935514158 924331456 212789609 130864261 840270010 296339632 824703072 333931817 324247096 829488577 61002131 314789558 173221092 417524770 4453988 638360371 883751919 305763421 418289154 505648160 457623288 558397251 470919547 759960590 661070341 402895658 458239151 60220939 410425487 976679766 72775773 40413248 27984360 498493328 605977068 207688541 747518847 519975108 419055801 998181113 743143672 752783910 894588898 888472840 138078018 199170948 594183392 539516906 621447400 193102227 586084511 532192102 595096194 997922098 239140870 703276565 520009609 654702906 860741517 285209559 998286471 655505289 361343664 328013247 367790316 20441575 452872674 534968314 252833014 290311162 931446450 612980366 373780381 583320292 300330886 590689031 8883271 496187056 583985832 470393427 199725599 390373809 160251019 151204557 438009548 180543034 541444080 39851526 444507502 766831978 898851322 605183483 734157339 654387438 674552450 189885931 291946852 409556437 639036371 793140597 522025467 40826188 122559053 471951062 158066849 554606829 161281098 380092512 695525691 878603545 697756416 152676260 654646620 171620807 386073086 471628447 956241159 406343563 483820273 458056307 887018916 978273585 896371298 527936449 514994243 668109616 222049034 547976273 525222039 201463576 759764271 649998344 922216068 653945611 165659785 578112007 135831469 362825809 928355604 648058219 267160970 502202680 778790913 793211699 648146047 154427094 410897321 159408425 467060838 653472703 966171671 636585868 767841081 481729866 900693025 970340487 774241664 15810266 934273402 908341173 59780362 721028720 51811213 829572449 256171514 254675121 180365059 692879648 66216697 720335652 682087428 295886126 975703746 378046299 253704857 120698607 28849037 422829126 786305261 486472180 352911958 672885967 971051697 158587240 454215820 116225817 342894889 704596243 627387476 458851896 221577111 212121741 167996124 987862856 893203659 406173981 260161578 577121691 721490431 659134001 323417835 630166821 908108597 603609226 481435490 380329252 702557546 311974881 732477126 255275103 618020444 89263310 243749075 517704128 813828629 805509105 953598686 393548749 288125367 993887134 178308385 420242737 640200499 937874332 586865689 102780232 963745792 566632304 953446492 746451252 689826264 250986913 67937030 232287388 616605025 386618114 502261582 505607635 977134250 47909854 917471270 622932747 994315506 337455290 211462573 321716467 238400821 882531110 692230156 350108431 508373129 662461043 549714870 102669174 795063194 289115144 295828281 822035534 489550273 376451033 437546638 264816486 941492121 464161309 436792091 109539562 107102415 420878687 859246039 999829393 829875931 432101010 24881120 707391405 841662636 596647111 304763466 843807993 702678356 590596212 914044491 352290228 963280769 815872394 703098337 841926794 81147426 654336157 163209441 927468302 370093489 874663856 540407440 457714825 146591762 279731275 421394532 584368402 122615294 878121378 143097301 822906838 557585302 497144710 605056178 899707759 815335784 744480802 822607716 639808939 708093442 669271804 503356412 129599076 109152370 707065013 700416624 237716740 528757227 204523636 555073986 422737328 994990935 50492172 693110095 797780184 904792894 360703816 690607471 453953887 938304325 768021080 367522324 414962402 92752674 817983516 653892392 431166303 703235746 485849128 545408343 250125389 569218338 511208871 929464418 784654974 288878501 172697352 912305791 77955457 502322079 719964479 238890140 28126072 918081829 822496422 30933132 79069276 273801649 390303099 787201175 719146375 23231558 576815845 681099126 226695849 679454933 333940760 590016290 65963199 197412357 426869844 489098213 442879332 708187746 269465571 889066037 376812873 337900839 340208891 884457674 230399644 276494575 328255723 786166573 819174444 321981451 378074112 860823869 820164557 590026262 237694107 612895434 372479587 999558976 846374678 937852432 566214718 795292900 773278982 271315926 198787045 973666434 488898232 188043968 707283591 374222572 993539449 607488801 375397424 772427188 315343551 697767917 739363425 697540574 468366385 171472524 182797923 43242442 962691735 621096467 689619507 798172249 291722443 771616651 37067939 787388773 380672950 311058982 14875396 592712375 306902394 590802846 686490351 197439721 405441203 332488639 491298643 673440584 680036243 543382512 867496611 498298977 692495710 76129480 928102755 503921272 750463753 22410007 677966796 997212192 29886079 590920789 760184728 818227333 376678753 835221790 362070004 540965879 101376001 375603779 536610849 143138015 668338942 164709682 75216901 477666841 823686915 389794835 411071970 796095840 707510779 425064849 142967959 414541774 697004243 253853531 87979597 86505879 210895494 902053519 338245662 185653160 737915251 422126787 327309603 807479621 362207013 21759437 345408493 22190514 996983766 240463733 947838823 63045002 37069059 259515655 497937057 562657726 354025832 381019532 637910475 248089097 895564662 662833634 451767738 675684642 528208683 873201927 602933178 240602057 223190826 781231751 417160927 917347362 980643166 576971529 965074372 185255634 226370925 573684624 479679303 846195622 458407777 250994024 24685139 100171071 672000802 724115570 600000193 674916603 218170191 600057185 396016069 944922455 800568921 731732653 805053998 267308543 397952964 669732406 916674384 510495700 527595840 237533645 699903912 832294187 188527740 378168734 695099620 634427348 170168624 417461004 194796173 241621897 517530018 956695412 756158199 931410575 6761716 254867621 831267675 18763725 873313469 224669061 612096989 487223072 346894499 790955357 245062598 398904000 663889524 785447033 236629358 475646285 685575407 146989918 552000217 50426069 308640401 754357950 887786024 738583484 307497489 504026765 631890533 771910650 419223336 309786977 309435163 35633989 210805473 618104500 665636774 763010641 370389190 86074717 376368799 993672862 118551046 600177837 985501852 892877058 151955615 629734639 553891412 833888440 505768211 773229144 444049700 101791664 366104714 558724749 160267673 142369439 520600082 822280522 331699594 156669333 310505544 744789241 665251601 975542826 735346851 750579842 20010218 378606872 194817075 131935222 564771310 225331685 977862099 444186565 492312492 400538769 538383429 308936847 589133013 293752983 720307962 485056554 9956919 383923651 621578571 123216300 587655235 156156840 233164731 148297692 651784727 416551894 884552224 631810366 258330840 70688378 482069489 823116158 984454804 670116460 733776169 941548608 332987012 731174170 821036666 519803842 897135685 571272519 283431172 313447249 443498365 813614135 495757625 179916954 425605744 912614059 274329198 279513229 850548074 275770453 511871402 314981716 465668272 948287625 669310032 339772074 687990959 618443697 779976137 905359673 983571214 166355292 29674693 362634565 35031540 856654382 245850975 123990268 331871629 256780046 867546034 451889148 305033486 680206219 512939097 162748830 123110117 135420579 92122724 554063900 301322358 734511836 90282467 527976261 645396188 61863736 661499583 222585398 703990175 440344292 3385022 945079172 654741920 886720988 154462073 90445725 768189230 263376184 109514491 463032297 937988413 20426302 563519386 347741050 258752621 160987342 60827454 43188672 382178233 771972771 341849530 929643856 864294674 653922504 216909809 870801092 166901585 837499847 714780396 176117956 645146223 165118905 752970110 411867109 435634418 904905371 83473908 845708892 167454066 880244580 921881329 588607709 995690390 772435040 788470338 544698562 616143150 421841754 840691 950398670 117904995 722957085 739642675 717534140 451809406 722857902 164512248 991095567 166145515 732103094 950365772 249140510 719409456 454290685 662557103 793336671 32578044 629190921 835810764 234147095 191378337 592739242 436752379 365412967 849831952 858462658 150257239 444673505 825951043 849489500 742922777 594790509 662690294 280467085 192594816 80319130 186818964 909097689 32629990 881401888 755610662 584332301 332840592 320600797 410519494 29625249 701334488 967085774 701610991 235211392 428468631 392469379 974460892 467060574 415516242 852832264 747916138 482701038 345065820 56112927 804083982 109260547 707140899 378198129 489802057 454525677 948873224 677197549 533343398 6847316 46275611 402345914 154650275 493700316 701534836 4182080 555221931 980606498 807811199 139125005 770804904 729459351 341750563 302055119 370261726 755184388 302648065 353774427 24294958 841181857 46980015 884601485 568151182 230333773 994690270 234888451 382797195 864292180 485228574 238674227 922008868 603132925 287917822 826648499 223228953 512181312 942298308 638056408 839729507 785332439 369802921 614738183 868509195 697793672 959648094 445649212 81609622 200159309 428276575 128182936 278214262 435091694 453980762 582829674 703914850 858777388 795533438 517574786 59843700 685656548 670038168 259915012 412366365 846386485 932260908 601008507 265300900 864030568 971725468 636143796 648535729 416671291 627524232 904721432 525121149 245366862 364641047 261421719 856001262 615283803 51829941 237248591 281294089 437976482 77580017 18525320 827050634 897817127 686936840 444709491 689212920 90165900 213297048 227891726 705534587 389836612 827317839 598626656 983969828 669859626 965710035 941104459 320399723 858154282 243435427 599599737 783201868 568273863 111212517 30759385 875886813 716315514 127834995 171428521 966222594 201646997 104269587 72644596 223217037 336062012 221618889 398567124 545651644 255273036 632167719 966271296 220591673 464467572 197609848 410823979 932407816 54368756 555152176 78336740 377663911 653419359 452505571 332267277 286925154 947337806 664442877 156365729 963043385 719064495 242291235 547875710 202608267 813956852 45653518 110158744 685344385 259801842 743554240 846155245 301809997 477318658 308595393 522069069 954979202 713509795 787455393 153185974 382308332 808528059 879658521 228818629 16101078 908631891 140974578 425954504 978810782 764081686 316071032 522588884 467268990 790973756 681516504 248131534 396552336 997248011 581582626 545148314 857066024 31389291 718259206 953364836 664599927 108048425 771107622 21520598 365027589 180401218 278359730 963335224 532490299 866184351 694105691 873285237 313009272 504632289 757471524 466188883 862812407 26340210 683108723 437490170 819857107 12253562 455976950 638275937 420899419 88239803 678467994 154405997 525422521 633813801 75258168 693215398 113497431 291156638 443777399 191442388 948753694 626417499 488535609 753875562 385044816 188867875 159425938 371916421 938758724 118682474 917587424 313635713 444568356 725114425 752802514 477245645 410464638 958714294 72924036 212815911 518919881 564007466 829982321 810165758 882389392 744928048 780364624 794648801 386576511 303904428 269535239 53661086 589706361 662744129 123597806 679015655 365654973 343957454 414194322 86321029 969956194 598563599 509483956 853105288 703658989 878059506 867707804 51122374 3998380 398082435 25154252 967465244 889451778 931398816 804640542 873307707 738315495 3372605 171544248 312459793 646199825 524197982 757481924 247271659 363241607 15222023 551890612 503248857 344082957 55388169 906710140 338430503 514038538 500165173 234410450 395775255 307555154 195794889 502700873 341227274 323580278 190389286 663904081 105824339 575450550 561349119 201729992 798368770 70169360 604780327 478796126 378205946 853338208 393390592 908359576 771565189 947401787 52332922 62988157 682753561 521006764 308692445 666056873 134831374 457194252 179242637 974826132 576003488 203098886 468213424 981668942 770808683 629041158 210250231 916981801 649431173 931195866 905563640 827219531 665625898 315612943 5977444 40746270 769291772 380933579 782580266 610091800 977276253 868020474 35729977 566876261 28151538 946122439 960129291 84367012 432129490 754117573 183828978 628751614 115210491 53018771 46618478 461480597 599188448 340262106 940034886 897942825 704996698 133908239 28065708 629781418 428900704 621241511 17116353 214947548 223211183 631402674 809829618 705685124 617033124 941878190 606943282 863529875 913070090 803282174 835251773 910560663 774379281 582197136 234485412 18776675 670673837 164877495 800393087 882198474 770470805 525441259 840360753 746510215 324550070 446101414 348516663 55488574 976076981 979339268 171478581 269039070 315736219 258325679 181057320 47537942 718537259 602389263 504697463 297413421 817200503 504491062 689486592 251336740 407527213 556440266 675776788 948317797 947447270 907400545 80107423 9131502 962297640 178627713 897996623 526841820 956508592 931201373 161619677 581013011 134635581 450044474 994821803 882521887 996685299 408841552 316302910 464892365 728682493 118043929 525299516 651372690 540682127 977748964 925088917 174053891 159436394 157866430 956537427 185302263 703276518 980282203 20446305 208215753 342865588 929323573 650801589 179820798 104513890 299419926 862532827 293655780 856273146 555534774 277140084 208222149 238857098 258300293 193492387 860854182 413651743 281849005 767440570 837420234 258661424 805844430 774389656 459298248 215567797 449232514 129234871 636394242 487921921 9619207 246435626 419939973 702388683 783442234 305271324 286947104 727695879 210105802 673655372 797863101 277372154 561129978 467986541 133564696 283032793 303059105 219111738 473878563 258460579 827478554 160418133 598979969 256758456 497889339 541668055 830071247 230459784 322271474 67951237 731430990 409476947 452685749 438920687 158974366 502079600 480716718 785484881 439870546 891266425 428829200 345776786 317372323 661540743 241915854 932569180 576387678 752503368 950658320 47174402 79029511 571069699 284012018 346053546 69557857 312133648 807136998 163802172 483490374 860829307 700214138 801294856 722320485 909166160 5915450 242539754 108173633 480887244 547698491 259786085 724523598 72721233 401598885 582386265 760509052 472086022 416900264 965113059 356140228 445011753 615763456 654676327 528038920 167623287 71437580 921676345 901365737 907126113 230610679 455176509 555446897 480069043 729969580 259480235 923079731 993190965 989928729 110752674 136349104 396808085 577704027 120064750 116107861 565764220 87604109 80858384 965322486 315821310 656547691 978494858 234811508 909512169 697130759 865324129 952293872 149363711 648731107 954853076 96963530 126687118 650985401 488532168 330803041 23903406 595748988 661709933 946510490 541186606 502635106 484959338 340188782 550239873 547072476 778280921 893097745 557206510 443195675 424024432 173518152 967118646 726723622 250615011 142274965 665007313 477049746 508223863 131821687 264346571 350958335 614792302 965133664 362740081 455487391 161811635 207713688 145250848 273811999 790415535 736059482 175354885 313111871 721203952 831848805 46653359 656604432 524325584 387006009 588276321 65631187 273951835 166807715 387121985 202657235 227720777 835817115 778710908 936303072 467717592 111705607 519370607 728361812 70073241 415309134 776020497 384420696 862323939 913161844 895179623 892606464 12951974 996521372 981101329 162542234 94205592 714951471 479077650 392483740 22863253 635845748 60186850 675498080 787457057 899051721 649546758 208498431 44782579 66370385 175674209 30452458 644118074 619647768 823057796 651517210 699056605 663412577 177481362 892321600 713465366 684296657 755771284 909598138 871423847 143958375 831818479 784196919 738851050 723140996 778063454 110529627 564839229 294680490 25883900 189143677 9245499 714390153 825359065 58352390 70492783 295232382 709272032 947495098 992774825 211089885 92061464 480169557 473673243 968992428 592352264 65916278 420282992 295919127 106468904 832936583 817441313 591233922 532980495 531731617 885607433 425370710 485062433 118088159 729676714 760523753 519336028 30792176 941775281 625018761 522140542 28917107 610793422 332085115 644526065 161648121 867679848 514906136 957673495 960251737 179568532 175805916 753372083 896638708 910965236 311129617 567506817 389509462 93447267 385861027 381062249 925649612 63232458 310514717 662143635 947571905 374930534 339746785 817375998 374281987 968043734 289331525 20525195 786390066 143634515 368669633 72210567 139601022 304723494 82626377 179613851 415640499 656882643 491632939 289610692 518833597 813775197 908635758 479994642 852345510 409877850 242983301 458486913 2137736 942179494 155570646 598325950 378768178 849511018 724537487 593279565 552645075 987913249 459815231 724858799 74074004 730139393 609802350 199457235 228318438 1228592 18367528 527732560 489971803 523386409 756009460 70820287 418664895 68211518 672510329 996473389 686048829 972609435 319548694 28239066 644475310 449972783 151566215 371204276 783021472 248797492 363762652 310475813 496841134 894466849 718725551 767268608 297595772 509285634 955518633 165952852 457824778 964949159 136103381 246325490 942102519 223195930 531178727 704772600 708899448 521736330 344620847 871367495 289541035 464898432 630593689 881463309 249877129 310062494 627380484 815525057 259301712 311613796 648214909 338076264 644340532 96586343 879746146 814728121 936371907 1218646 74103685 801362860 321393785 185618620 277800391 800217762 730798132 895670779 194925819 833865801 787973641 490227498 515720990 811043185 329554806 879015014 142590037 830845851 124118730 455099740 478314320 970042166 468356363 530439879 96778819 103571624 7288463 487799516 69128701 681182405 175084555 686195940 235106038 337567660 782387777 802975601 651076449 379908802 3769212 250017791 889040829 58098567 250896487 314761323 485031561 884858496 410074277 207594270 944881088 303203923 532412044 525962986 866371835 97114198 501810091 840358289 371592712 121753849 225272325 89199581 23793936 129296354 585668591 817712643 89048914 336393621 998162529 777340601 463658058 228077241 180101509 790624170 519049354 1592237 689961389 130721156 659788554 210917316 987784755 141927031 129642564 140756348 177241606 673963751 406054448 524931710 913258841 208440963 911859078 270822133 916012621 472810560 921664425 173654154 601043429 746769100 414053187 513707562 558097672 609891316 182846148 185231686 320497519 216955824 440422183 720614885 460524873 943404847 442543263 894671487 701868663 642207053 20440874 18171237 344688765 849183146 879573876 766864084 953965066 124442437 582573166 525297978 45359052 698950921 442353282 434426898 324731691 211179689 411798651 389160023 176149051 910509737 568358767 632256896 292635789 421471217 567999271 421181586 53388300 404306827 591900410 667796217 746899637 917830650 399879399 79105615 219611960 657197745 548738469 7503602 905713490 332976541 146832924 633270905 40682329 983316602 964752404 870416297 234743866 15783254 848346139 713500029 423472591 296869886 341124601 4698813 643215123 218631309 945035756 106819800 681102981 791272566 885721814 967928677 662964926 612558200 872787535 874322793 677101075 71561845 611163705 612904096 433668777 433141628 457400584 107521573 573679273 642438323 776752513 511077138 965338107 135389876 591295164 316082337 768710971 846046224 483275500 862619433 782887381 229291401 302393984 766660172 333900213 349749070 730942661 564213642 788115691 546137553 752732925 404855805 779061219 966815106 170584043 710670757 181720677 982521308 409150589 934936970 32729142 909596304 962158610 798133679 161209303 438171907 196452903 184474348 322034674 425777410 835970954 402415775 157793404 96744437 930881538 250909833 991314561 840380581 992230389 828673693 871677985 868863402 903209487 17508791 580444921 645433771 256293655 216171587 869222434 653041979 415335451 861339177 55006299 167119974 993023595 285845262 655235630 575707890 272954245 906267928 840028417 7051302 751514325 886375440 191774358 261487450 734574277 139269057 706686647 964766633 650842402 85499759 489156266 31978759 2638632 793160471 256086165 696878594 56478527 397893648 525985408 773196665 525438718 91272923 63463932 334140277 236366342 965382599 923481595 911557562 720190318 139216577 362665280 545179133 462629818 779734886 897766441 396714434 921883007 650174414 9235242 336668281 604596897 649291980 842795463 82372420 583130946 314676858 90955997 510136983 145009581 749850414 767628196 114158879 87396425 520588606 253528433 906406045 998367541 774277190 564264936 864007450 614381744 835381494 857079206 994209017 545014431 941043702 269864862 866397763 281920543 322790934 346136181 296837605 148523707 160187324 477767042 446257337 667011757 90794935 895025248 770250020 77052394 410192125 369430031 175736328 727993014 908080885 816799813 834528741 393511579 409643904 479075616 829648337 240006082 291988166 392999506 757293522 62973262 999490358 199349429 434014382 176886475 232740896 796789153 292167230 219757655 939687449 426088733 267976971 544583050 798534321 162859698 311523309 859214209 198271693 860670083 725142864 500093397 34138153 882527740 890278146 948396079 480961301 16253303 212035587 291208746 885960865 439803213 572112261 172284852 630430199 284469053 106247291 508614550 306485939 143418906 517829561 400205585 840294582 222188147 637100014 559533001 604053309 755718986 875948670 27445831 480502089 914262750 730141572 681794640 524030058 264499964 451179752 560855791 459025384 199161979 225565213 887392945 944126002 63657666 178054281 820710078 950177753 559973127 970256791 467824126 253641922 479928998 108382552 287323662 921147363 19441435 208657986 128975289 675309909 248934513 933717238 738582231 467027618 292164619 754013291 589284196 57608516 383866922 86193355 693513113 967789358 931976214 639373808 157647880 297875488 450989700 528632223 334625004 218542321 650514094 384495492 966958240 777019269 797519488 3539532 557235574 39576628 97064863 11703226 682191251 633000897 484317383 814145591 607652573 851960968 986649701 122521653 344837319 91720597 630664503 867169448 50390406 876504692 465654982 514698981 586708871 678848266 228080247 449472074 465546585 764225277 889128383 944378136 896717342 467216385 548177780 138354917 441157463 406631543 190271457 331986777 531881208 872654141 133126723 804587847 716459215 768503491 159370743 987867570 617333178 291019610 831069858 193059578 251738726 384007377 609631463 774624252 901691666 716347788 139875694 657693771 914227644 47606137 929097319 744613289 360929898 596395647 278121697 831426897 274410246 781383092 468787005 389033961 628725428 456313650 406060139 217837300 313371860 71723433 691956968 496844542 20044513 375136736 423671626 640760759 721335854 187453360 193026493 245798190 525514535 431232871 371540712 218302452 144841666 689173280 437963686 702305267 506532890 250843297 366060642 94660877 222858253 114674074 686258802 78741839 714951572 683838000 702895029 118706066 649699782 996153716 672736468 129285098 565218732 843084523 823817902 483055540 825527719 288944790 427264103 571681811 809435775 89431316 794037582 6265502 621007245 515075238 414952527 91582220 719025899 826935443 207987062 978359717 177636809 354280731 920623374 662107033 371774488 828114808 834028862 638866301 399090204 315689960 492201977 97951505 786261634 744260129 376335018 692879774 236228578 153987471 524822230 431672889 399600044 459256060 368449165 299234628 933907528 760012842 715703065 799529714 205710713 370353862 26895630 786892663 816607270 337155919 410845552 573661051 214148358 917001283 548332317 119594640 974730984 316490627 433963685 694257822 260195642 135021734 636431588 124095475 897533005 491420340 974326489 565689527 762741565 722815686 212367008 861524305 649631655 309113947 776076501 719917952 501437056 522519090 788409842 563067121 429901707 668187845 775878901 441538550 111588061 972767140 524415386 436163699 554179997 672215646 244662171 880163646 155501496 373587738 705136879 965847426 419124507 647233157 649548574 245247328 940528084 239522064 71499158 570997181 50859269 338320277 93139034 518264050 496230086 600274817 96987012 444419789 921625077 481625411 825228876 925030297 710365047 766112117 305397061 467494651 634586726 217264412 261878782 849293413 241072049 43101825 473684920 941017991 454634275 666355097 306390972 53095271 809126349 856768915 325155179 364527393 642392577 709549724 794345488 597772404 797785071 196029226 861973266 523834732 610797236 955750072 790715694 199560876 722460307 994629983 213648976 948971021 727445360 882719381 880156591 841082382 511409717 94084361 423236323 862750525 183551937 941861415 793687050 306153537 125221227 496969056 554494769 135907481 851037120 84917501 563134554 301338597 161710545 908617076 808817494 293848169 560867981 533232080 255057128 965346467 900032710 48251054 448347172 613781576 198808634 100240706 203511283 152727231 670841145 283512747 73097273 675109049 486039107 984095204 592259249 611631947 331732432 75632998 756009850 735661043 4359896 650367965 811793965 511914377 504362266 178885041 161732399 541079515 642949361 961358132 9875205 934090169 575666298 426676841 631930617 64630145 295701129 140771943 741144233 868547425 400789822 762956159 167678459 219024085 580623331 327397330 785694821 345865714 947826455 558518364 702958716 638392063 845025295 944544149 448780584 934636590 145014481 765308886 720697608 844053161 928877889 176149917 314904640 713068659 880545230 697161529 48793353 352531230 948104463 527845437 802484372 950380275 262058226 287605069 12745533 105245348 665277368 441887284 945021526 467979155 712378648 188339156 360124428 742291532 322444550 298967636 270751994 118872926 234288815 957481098 920671527 337779564 400356638 667493633 277210087 522293826 84326471 354718221 921360264 169501457 480382434 203948076 604974960 6440145 716481333 121598281 939418313 302041147 188868701 932479252 644484903 105514298 305361771 530569223 35918676 362173292 342506963 367778336 847438479 159220761 350161298 720487296 744451416 109374745 317499316 274401375 150595098 964712404 900539622 181763937 777570076 874853965 772132671 915746548 296910188 276321868 659366671 74450826 709065868 586363232 830449101 360941447 92313500 862922658 734961203 993563434 313124821 102989607 906261029 491565563 472967410 300347168 590582341 421133819 179089620 689166972 720467529 747788034 959262671 234633867 162845260 11835620 630758749 838532161 970868368 840068668 538743125 279423106 419340007 508023542 867297771 912893460 706229876 330340411 607831640 459102449 273642191 208813295 699734980 17669708 426343050 593973536 471570714 443840608 903908513 945968559 494583088 981185186 520122540 829870851 160363342 532686733 220680446 977183845 205619517 59331075 941522540 64926842 535901932 503638062 114967645 582030018 931778383 14502877 383078469 684214041 973240662 185700658 440261162 852017825 987936320 14710986 740858412 815646180 474759045 895376515 852412370 870969940 371763933 119030356 297077934 675567721 653014831 399755976 601105747 327580105 767098420 641656621 140580672 30549540 765246427 590224874 404002449 677931757 297443101 679808203 67728041 341894067 9381675 980576418 587709277 931081396 174562702 916390992 569891169 892188501 788668885 408243906 508256651 100639402 901230795 921182997 899144084 696234410 693997587 645911517 536968382 856635340 555300474 895698192 359116827 192072415 500631618 319391488 778974941 816729631 844495006 755595280 495621491 292346667 345883322 764203126 1819980 454953054 759884139 946032914 86299010 236121335 605121633 613980822 326686755 945814722 234184563 142470640 960393972 629252998 917483177 282669515 515904752 533303168 604702297 891318392 500564606 10986096 147808080 694403591 794896882 918349200 312402073 432178314 374465351 848525592 477149811 576853338 910014674 570178838 717217875 528328085 564621798 92876673 163760599 209089561 337664551 611628392 971388257 702109813 388874382 789611934 653039223 619995506 643499624 999894720 867260863 840640005 217285499 395868762 707219400 569676637 289754598 789972490 346546160 710529259 156237017 89768709 50662085 168371401 383663828 515146322 48027844 454974282 57694439 20983024 135457018 592485546 463816023 572181029 457834176 2925026 45056446 475652889 200232164 790919700 802725139 829877693 684444785 622266370 45995373 973243169 700077542 295968424 235220562 994369320 810953755 470960529 871648411 691332541 804724156 205839491 917042003 991245744 272233161 721051025 784100051 471241860 749177227 866788096 375051586 25043779 700281716 792587653 125068427 393237657 373359004 745644719 289937620 817384182 948680688 258779097 752486879 669837030 128697259 420006574 951788536 435132072 192620223 88619074 76252290 967416909 536172864 133741147 627528883 115463501 462831551 994546689 792662708 968866263 984050385 471893162 933449557 926278516 628148007 342723522 701077036 941735912 44367972 390822369 703204320 925998155 378738046 391026301 865662095 628255232 612486098 611123995 223385068 640233032 425662656 610221753 210251996 275062700 601688917 727398731 774978124 815160782 139642769 261822076 90585506 816614213 241847518 98297244 928569771 481958492 970543539 545376737 866064222 221473597 152995747 46945143 688003298 542803314 901254863 671013720 649411129 542221214 317124409 764326988 619182542 460261194 356429430 162186894 3830633 669699248 532993820 475253193 845987708 405309691 654043487 794683761 966999893 410184531 945404610 355294875 606645055 29844213 853339823 453642722 256419769 220936145 162648446 690769665 153361247 569087410 655259067 24368718 676867031 309022045 59401567 508388386 728381579 702164911 719024471 126076665 990769110 933296912 97600769 618059353 609888449 53927126 306924518 868938456 659685095 885620479 588303587 474123386 461697147 350576783 263466094 865336171 984010186 289215378 189848672 738775676 617102499 681482047 129504365 957661804 447741686 136043631 371802619 587583520 780494141 800356127 638857231 945271763 540717944 280856369 618026124 910019666 905047467 796608285 712832092 502933928 238056716 680161313 422931000 699603062 464444622 676051145 18842170 776938411 534182179 487192339 972965555 315904005 333189364 251519412 214940072 481522378 858307398 693278427 894859355 685192692 594428645 661924072 277876999 487581620 764583812 514692289 100753738 100086099 648392602 424778162 113342859 627496828 577072158 899374027 243667365 815121379 424482339 665140507 528157338 407986180 587977000 519902809 137199715 827146306 278226965 880952213 856428013 382231172 919827901 973984238 242741225 993179558 874501227 98181084 543966525 316039055 679656105 752513166 531142927 987722307 29443098 961468331 82729934 761420034 321296787 663887952 424696988 722414312 793103692 209707973 763660661 947595125 715600791 469079020 87890589 45900685 958001387 673774861 598449383 455737162 764347081 612335585 349214710 268457643 42604284 263468978 649369333 442109412 456874679 897632474 722372749 228145250 306432698 606890764 143470532 657325587 586817952 749462690 67370255 164024484 685639609 134082375 592933508 94367000 43854841 747906868 217557146 723832734 797377112 200780863 809101592 60923117 496042291 424962742 635578876 226005786 418857496 705725938 731343682 553484354 244721362 664830449 262584567 501267405 975316185 312335582 720484254 212116873 340616689 823471028 604845059 83237833 726473181 833045201 494578518 339567345 496238405 801087752 127159820 30626767 449885605 27304246 299303566 896692108 335894965 471116883 611581433 404023863 683595126 583368013 276968852 834066351 515374658 972509829 207110027 699873240 471699216 72434343 36635295 500904833 986693989 369459417 362812495 400546029 56778131 979843155 164037697 992514487 53362081 566830317 475284050 6216603 807041434 24197684 220101123 100366489 691100985 766095363 234944320 432094702 940803002 895301821 528989516 134074289 296547097 661512785 471090118 940206419 476208051 186123011 866355324 550601025 440990850 945916459 157168037 453650812 291067562 548323938 350144263 413530571 479168984 959064675 527698743 555405575 461903357 294464173 559167908 644189614 599876253 850394160 11167230 922071173 482806318 870014724 935369751 600029081 422032555 109936114 582173214 922120336 534794257 949712195 620854014 742338960 588113595 440678372 735244873 729574829 606286440 832138322 59127748 612154504 769112644 769833625 868121456 749468598 60721306 791380375 578026895 165551719 572219438 680727661 504803548 567536440 920679300 730334555 767196759 486776921 898704556 426424217 374749981 231917438 216880818 150062190 85108307 603805175 749965748 248166385 727926508 635961971 713658373 81027498 453543464 971567947 489479105 765509032 553367714 4594778 121544605 994107209 32255533 820342757 924280198 522883880 153523139 801016147 937850369 540996923 608690649 501150899 522290895 210185212 153841458 493746309 280272523 19261517 270071289 125941908 512886119 898159743 548156364 164446890 900580770 707443583 499402205 720986208 479665416 182398999 319945335 856341463 606930244 458632539 419473775 659084166 505032194 827524036 171621915 85147968 941889855 352207520 903682118 121781977 870553916 790499007 353101463 223360861 344598015 849321205 719114320 81997698 865970451 913731364 347697878 693055959 885669437 758259995 126314434 468087107 285200450 110774791 65455793 950430668 942319318 251095398 308873779 243393479 864455729 477175432 453942787 782666814 554794529 51668786 873672972 807210194 365307372 860855063 187108697 55278429 241538681 368693219 752988195 449640845 836398478 546668323 300600801 329426271 415937225 192485636 35121386 921100022 769773833 986090024 526076699 562149179 985586396 488238877 15825876 549081868 996941615 505902600 569418523 802816512 102140666 277317122 928384585 912377083 392316188 524216640 957600282 378539215 255954047 95536070 808787090 811594844 215015111 382561747 369497732 506475701 425435156 467570886 115465217 63361331 794795797 78451048 649419400 705111496 913574667 381848400 729037892 890221077 918046606 240865064 700565340 882845305 462395376 415522351 107613029 106694529 648755968 484375383 387621974 608287069 718063272 335639761 922878845 605730627 479430599 218372635 437570460 494400954 293407706 184909339 223388424 746933320 130112595 612486453 969799426 190528307 503481197 889464268 291345726 182652051 97858859 361202916 917905424 402606441 408157379 816586969 661371811 785067752 783261056 737429058 68950850 414597581 48892338 910228001 502939640 855188169 870140153 113405929 467112649 806244460 271178964 328274054 436365914 38539069 586751430 826512026 999234405 825554446 688569918 766619772 105585454 241287945 852705122 765161490 805390273 246044949 37813184 871352451 952779601 847208316 323568183 192129445 273743298 103556912 723633245 341944347 841355118 69987247 140044569 521397691 981102689 851270246 195463732 248186512 442049983 355981848 688493894 838191244 709289880 339515315 247563786 41003633 422427003 654439888 776721725 680129020 885728485 547097641 659153203 21897753 705459905 386423810 336873363 393770369 467059725 441011521 919964077 657855921 760331901 46458511 185650178 739070724 150249680 252403357 123614896 515449448 773167726 188363967 501875727 469105419 308823108 367808886 649521187 873732046 168943420 902022034 358250293 365022280 691939197 208375807 771197249 475006348 463099297 546970101 741084030 920892473 56711992 496266870 6073155 378630201 787092991 340788381 709779387 145639289 769307521 660065336 619447969 158432306 344733236 423580337 237578461 531823031 658473060 220882846 2424713 605549814 824770951 895070417 460219995 919077315 864757806 41069267 309216095 449524187 177377669 524195796 600216940 375666825 118533237 528325582 888917607 629568737 495665080 312773964 830463436 392789519 73533329 818495036 449047554 904573713 709497283 119676342 151852434 995113857 762599894 524136338 512770685 615571874 620672420 124455246 127886602 308009031 749200932 870849234 104785543 313525353 913231116 772962317 203594306 985125996 96900063 690524209 496450225 164634477 15894541 54846652 615265378 949568921 406489793 417270450 275548751 161158535 209264681 713663635 893506603 965646821 682077177 791602329 72222389 995324661 236264039 742539815 617884825 440094080 260999760 607715047 813523322 151264525 316979505 66185513 593715516 467813203 662580560 241413676 272418155 674607788 913649767 302366007 853534360 997518723 407748533 980313115 838733850 672810724 809130992 90055656 426129219 27680622 953267506 314751989 195905378 423972591 979056486 505914870 17682633 893866513 57791160 309465509 767490507 50071664 860168162 130469375 233702684 206785329 174129278 314832657 426107084 746471782 207595551 319042420 125581034 706824600 173686379 158694052 457919918 429256435 226223279 755301493 490534607 897674212 100798961 2700900 108822277 387067660 537713806 217965436 150786755 389248038 519561741 784700392 92604698 894970083 953098318 995988304 702896941 858871394 89161295 34662465 56863180 895431748 834676288 956444978 594037095 727425380 210576827 520416399 618404188 565086763 63201076 604204514 821321361 142535905 631964911 657645516 95879594 522617492 505645932 839334294 474168729 106936973 775724833 405827468 909854112 108904515 573609491 606910990 264719875 696291992 995297775 118812458 707418076 654184144 840480256 806005639 735338466 421561751 968371507 925223088 959746984 831172323 786726210 924152616 634780141 945818706 636477502 63173283 831228815 844125165 705799347 254398869 1231070 733674791 831294412 266918254 255940795 236070901 276293317 684798704 257969808 737349704 157880168 629730350 8349411 340327091 597902220 521505642 546070394 492580125 486224619 965963263 619591021 64926132 448733379 901860635 475511358 136385859 454734322 224295694 234401386 466987516 36709264 467857776 198034257 187561352 234056479 577603895 721476701 459697374 423745667 344770266 928414906 659484563 602744772 999675884 571813651 707919379 220959127 360196084 101492604 238051615 80803936 903409800 730516183 598755206 994275768 161837505 896218996 579960277 437302194 998357522 954864151 350102612 335627190 504345598 308183189 826383815 81933615 130760165 839000687 354683990 847936710 180737687 638601093 929878419 305026201 340524073 272579871 367875808 4240519 726850555 484408499 717051256 624456835 733186668 634677427 125036721 521983632 241360666 342672019 655695892 504522473 573549150 933532690 462451193 762730934 974627706 241484163 893424184 131595365 308672452 683009454 852691146 732279278 958715948 260611689 179658289 180603528 96372430 246909879 936918023 541969488 509154710 853744893 648312541 556303618 122378740 957861635 138574979 249677660 1538945 88282140 488780527 774298796 514534204 850928193 408470179 16883185 381605267 944925956 448478922 927897143 169450045 108938030 835942978 111915992 877470163 454637575 548783410 491018368 451821943 510619943 463620373 380668355 656910731 9912122 20824272 998308545 580498163 227625127 279329343 952562318 298940233 681105393 559451386 917762235 107896211 754045784 778728985 406736520 644596850 497951379 718809564 872675047 929486772 120671899 605106755 919337352 885888336 619406162 200467091 607296727 23209416 516363059 362142683 332024658 966076613 883113059 202020760 106566771 319596706 29516298 58813710 822613304 433749324 422132846 154385487 499765140 511267680 565739681 888668389 740136033 722860495 780186635 904726583 953800987 79723967 616231447 697006087 372152944 218154607 267448842 734515733 703953532 123280450 654476231 87282558 966011614 69588526 620487800 50914458 890152518 503966705 118709045 784544996 332062343 358911756 992997646 89851571 637842199 566367400 469621876 985005549 311622545 366108394 119009454 858846521 675753326 602896667 251836402 461546269 83152843 424753889 32503376 146367183 196217398 150243249 764788688 612513108 766059629 495132493 763152438 611149714 924231016 542235536 885841827 130754332 999064023 140992080 429332620 717151977 453034130 633937149 367487563 952754032 360084713 731210365 800002902 977233094 600486293 579691369 960915175 558258597 973236487 665868328 762352135 547972110 577261200 576188113 338721913 783175213 702198027 877398823 791793591 576014332 913215544 658896337 584902674 582741229 465945566 304485333 215995033 796849430 615724960 590178076 771309428 502740383 68580087 174777390 280388933 488876489 322485905 29063346 202493183 200858018 426149680 488373041 866359928 893848861 950851020 159819671 276489792 575297006 313737632 826274788 841305657 872359034 823570182 18733169 568646361 331542435 636917210 31764357 315291939 431555049 641760043 742914264 707680242 23036610 577907185 846437256 258857383 719817683 420941986 853296865 905567857 668449129 741236549 249435508 609384621 605672485 398608796 382861066 813983109 299253575 241947243 736311599 473028179 672677886 569039738 306723614 259731964 463917713 425069100 343899123 23050355 332466028 737069431 147628178 944262473 685668934 617373712 296553895 683993144 628145513 537211670 459463735 640009942 167313010 118873254 299774475 126064597 304982861 33113038 374033327 251967423 725651875 134045272 61535375 971856071 262267720 997294200 758707720 215102575 102079021 917872964 517515149 729988631 138293114 314003495 277777148 1843069 816535773 239997035 593815661 246956876 202993382 188495763 783086697 636198978 254704567 120221845 708898186 943005074 883382992 660987107 921905448 928899279 540529751 371936407 482978451 961105685 634469037 886934080 365918528 873779626 798112912 878382253 211861395 115524960 612414118 537975414 293329430 753244228 600556874 404936031 607805241 103016329 361131801 999941736 306242767 37846633 825250193 305269773 613071330 153541359 501570984 538999976 854518907 177365754 908837937 707110509 878691727 436844437 321819816 600815028 416364027 752513889 458752310 811334307 302402830 808106792 899107234 421134309 666250113 325448717 785675302 928860019 793355116 528842051 670609420 426557987 636503872 271280677 140918700 839926645 170802266 465234392 941517743 532477507 919376347 769008580 857524081 708758603 302297287 97319003 528381919 500451027 334847181 926551854 259193088 495181024 430831966 307118490 691406078 159134997 353827448 313613545 46537988 651403530 112078407 241705960 616169890 822670696 595243509 209601117 897268635 955063423 187692005 48318225 697779525 559480106 534927418 558361843 771805818 811162221 323067680 291509223 556089084 684103844 339482065 711607212 942822936 943612396 88770489 801844821 332832492 143388720 770176234 540700351 625203435 832993124 445208706 899102615 592550078 10990960 460137975 588572723 173254631 374135953 179564141 204676273 953038631 806378631 249775066 219686864 310242743 741233270 613571446 843802723 242225895 860690859 223162402 639163080 801815423 658807677 485832704 632472131 964793692 805762280 556492349 330900136 864800977 661804633 264452435 433211723 56044193 237856010 137943158 975499004 891244005 270650636 500014049 305666626 209384847 666277645 442248394 266682051 426202218 46070782 483103255 24406927 482722364 319069732 424120546 592272714 482470633 882039865 246433931 694947912 317528136 593133023 404333047 762745782 662354184 358455886 50818749 464542143 925139160 902725247 367639750 672329799 528698359 839836198 434762103 243711037 342935814 393056425 940950027 444957785 967802796 191399374 224296529 288180648 280566386 149133181 799130303 904462190 163155433 998094044 169519411 865137206 223269857 965683295 849446641 272947053 628994713 566841625 849590135 674506507 279676447 563049345 84887592 29166329 655850448 167693581 977479380 848967709 461514696 577602621 405855309 276504203 253842094 932697123 817703199 656646318 440121170 813238505 293226265 954998812 687658244 960531020 550694003 943306723 432594095 25995235 593401839 408244513 628597723 761242933 729179562 218968931 465205076 657738111 780767000 260480550 881167874 733280880 158796065 628830089 840073834 458775342 2255985 559675409 110626074 604445788 956260365 68969590 66822433 88298036 975597761 381625706 121403497 935993742 520278304 389250652 734856284 398535298 118262498 218755228 931539834 313274490 368272344 822825508 911161548 991221025 609426504 193301772 620149769 71438041 822822483 787758452 879767006 15533193 852040715 115546327 864060506 926240757 930709276 248603786 446237741 839426220 994196519 588487840 4228635 60030942 735494533 142769812 413283342 69765765 49120037 597742087 874020458 363426898 22860095 352433303 173173710 488523742 297611180 810784238 780169548 937593192 831124649 776886810 685231762 766314184 469875004 900694869 736790978 892472512 887099542 907593125 533978275 654784146 236647470 806613346 789533017 495781856 815984893 923707532 128058956 266049082 491162835 470057560 149844820 390637380 855575582 328522200 930228055 159422500 940732732 176065064 512265892 651120092 628022572 804369848 578546778 88899050 113226826 68898947 490802599 741314239 605476307 63006346 493452254 158816817 109451668 707491401 886383614 267598674 581987847 825534951 227865890 326647632 373014482 258861392 964591359 432764362 6743848 515478337 491694810 352243199 588557641 521206593 694900781 738899785 960733731 936889784 722357499 136822711 907227162 899767738 722183527 228282378 369200217 901630714 507226380 21649320 797495758 268649845 409408305 657729265 451072953 100953788 40486500 981932585 204295211 771719258 77457827 119280367 286728833 588252384 209960723 560723551 584145449 324823264 840128318 739865348 838823424 246498318 344228120 891989343 656898127 602764027 146574058 800957851 570949453 457775727 843360737 206899116 347879500 402840528 493023489 267564651 955687373 510442891 982381433 843195250 471324121 331007515 6845126 435806452 222223187 208680214 48213581 71788185 728222314 89252877 52020661 239404344 733208598 619071929 50194364 878609013 639494883 585867951 550958461 209120583 485738972 346413592 196396873 198547588 832582615 82456631 86305676 356496077 219363684 518402777 455446418 614453695 877846924 846651621 597159465 632250286 858442837 665898426 318240062 313935622 11447306 174719291 682458882 293078255 628857228 352813929 253344197 942493947 278756693 943308963 160753770 939606258 208357214 53418909 683440158 550205596 883776941 597175290 984165775 29372228 213643023 707596577 614632245 351296383 814643957 237135762 137512114 840485816 118842649 684396378 93438852 107312643 582206403 899885004 481774615 186564285 526601777 158246738 599016307 300097057 993250554 771939794 768005410 827588739 482204893 342605081 859757217 699044890 425279121 482202695 82825241 426239694 726899805 258517632 45017244 191155798 637935402 720794391 583294213 137901764 260611650 697988710 74174001 134121014 296203148 48228876 853333079 694418142 61668932 831655893 536156547 8728134 439407810 47962847 229353650 314223931 177739100 112442341 338062797 22918621 818345763 598747679 802014711 748546749 985147075 731315722 25020761 211303872 188029749 134919345 691992060 563725705 110429868 165879648 407033929 19362418 14070915 565573309 115485129 685565780 139650647 642704578 918699949 787249255 423192345 746044168 588476486 886260037 586749149 996529330 623133771 145169173 940360840 889103259 998673104 864420550 429590949 371943345 483829964 416022776 109105537 465147550 73791724 448376933 603697519 246555288 70058765 896777890 144236358 622938193 691048767 286457050 388561453 174033188 957422586 556835105 77171482 401693013 406304370 322090056 692951845 877621379 227191724 665267998 420213284 668541755 304976671 638411069 529089279 422243851 294690182 978378480 923449062 577375418 860700720 46098997 598243692 805154669 383037467 81836580 216301470 79085467 44430037 324010782 349911752 479202433 395349385 959916241 79684843 950439422 683892305 34318897 668035590 410507083 955719058 209040176 66246302 21166747 90203358 804887193 53728050 930111016 218981956 762897904 609582010 519862602 51244485 900026687 25493035 836541610 896044263 259963964 499797054 967543822 674579601 675523044 977252669 259698027 513881199 715242192 786617905 629518620 797430446 124093643 436649628 69465573 846209559 18539467 443645262 386575593 301973259 66786149 4974972 277495621 675338084 738599113 493248743 390598608 564670935 851247503 291262951 582206264 393358897 37623989 742754074 528209708 635494155 106566953 607407479 235465158 202372801 58787556 803498479 118755770 233127502 976703487 850039533 9124152 945976239 474724525 562734812 948215084 506612552 936466897 999627290 905657741 464441314 847250481 432537819 151919266 625734609 806900020 601448121 440277136 776837688 176306669 33311358 806175459 823982338 176237637 629271820 605869681 155809718 327753912 343877269 391599304 299681684 813967871 610275089 598720798 884110598 855195460 674048990 74072839 758058228 975098290 644522287 550108095 872444442 840252629 701001324 554858539 482979493 978477199 530084993 822772501 543722953 187438350 946086234 398375606 478400689 623144798 937923125 209897275 165882768 772707829 99962889 376809255 185524840 888594890 816960072 485806408 415447102 360668710 895551967 870801655 713170376 402745292 294124529 166682956 841369738 40633571 679044667 575658642 545641532 769476931 213884522 70152174 900152539 891773710 709063187 332354237 955716359 901044267 806761249 314556290 809266936 620298063 139720522 366459013 470832673 188603020 730671460 55178887 127892372 868187741 71762670 439734170 800179742 467330853 102333276 874670812 559039431 435183570 759748835 751923151 393235060 72430048 459464621 407166376 830407383 134630263 95284997 710393572 865123262 651167422 119087026 461318324 641029725 222303041 4825896 410064276 741342255 306124567 636473332 515561065 297506612 779327435 165449614 704726207 183495212 532827635 419079559 383724741 235690434 480355546 505045704 913521749 445131322 672481960 881599772 777768988 775868735 56395635 838858206 613892711 269240039 228100310 243985609 49988280 800999826 186338009 892735365 257815974 936529190 768359339 787706681 633601423 503922968 549829873 194461863 738389852 390051945 111705678 586830336 131202852 477933926 371149364 523525004 913293940 698920581 859154002 763569624 189007897 38332958 685218162 85280225 554972965 740761774 788885695 972474736 785874278 246558721 364830905 329816572 631243126 577144003 613594769 47670889 306509587 946927208 263512701 935685506 840689785 506715006 208380111 950666082 383981398 805270175 907023606 501160756 667617050 993272410 591957572 958248050 730562295 78439027 834281335 853506503 559804607 94362769 244549946 975558334 836209443 210847884 558506167 915145638 726882096 147310086 710049168 516570399 902409939 2117040 323349801 200509694 220971516 582667829 892685693 855116284 568974138 263422350 885371392 753975839 681660326 999488062 358045898 54850262 803844899 73553934 971396924 941793539 177475028 961448490 285233073 615193512 414934838 967917187 729489238 704474498 46538123 952971561 404625805 619734000 896764447 335859649 669011286 660490910 471868421 67929287 116466607 118322559 891363663 917528149 871248350 689620700 583303261 316987205 80840068 377225013 157618354 604507133 185178480 536792312 824984912 158671515 629272023 73088825 265037262 427822169 828003070 878819896 182754752 745485215 574263860 736529851 936665965 464328539 23170572 586534099 200472089 616234094 588663056 969589877 528539612 577671199 389388336 402956019 44096487 880884967 877962415 470035171 303374647 894962930 572879490 961338047 576783649 439717732 602693325 263651224 759472362 878180455 649448876 531501498 933751335 794648191 393141987 87542363 970591921 66074024 690730431 636659881 247802205 204793195 415123315 302017658 882531409 550385334 842699669 967728878 128218197 812242963 246158405 251496514 749830596 242875435 207783790 210365094 348121820 943768866 498305893 355085756 81899542 287619534 407368304 401355801 948707194 749399715 595001758 925850289 324546849 775011218 468573279 803349911 216689673 882178203 519392985 686305206 708577868 662366493 307979314 11082373 930133205 412599918 989806102 276470190 310012622 204207320 621197284 47596695 43605517 897336498 267643198 328445326 787835285 439262217 935274108 25697292 142858880 618823539 624301767 282351173 545103297 362369575 627214965 16209529 183243111 986421593 39778531 259742015 663102012 622101606 941173253 114520755 239259852 738199130 473876583 711892691 397807950 92394606 30329399 904422027 278239460 158748444 523929659 625425391 452989466 901062380 560317830 53666943 945731679 794657568 680015184 760826546 992737382 844626299 958207648 745620422 54283186 532208613 590138819 251155394 429769965 721893967 225888634 54128861 194679549 583058891 835753133 939316184 446177478 574015270 152673678 997314914 80503086 837095710 185108909 52740558 883706946 494272578 854595803 198876105 213745178 40082555 112046832 742339842 490365696 642080799 545959701 811934046 876556990 340638926 201587148 34943354 835591300 552068297 189206836 644197033 882753377 270530442 120844389 687027448 957232078 447674067 325502422 29270497 442193682 706566285 344562267 853879527 894554395 962894267 594404580 38581530 106548529 537500241 658850257 318586886 454666168 546884014 837653466 623623092 239387469 363669025 378308626 86014946 347181333 908984518 792255793 528825700 426860472 135001112 482892304 360649265 73900680 953737597 474103012 507779583 590957226 939240577 968418381 825612762 725145016 352018244 68713940 883360138 879343165 780920836 929213143 193024012 195422367 173969431 146204931 844390836 923293686 519045393 700151939 388290356 382458395 730066545 669752654 776142833 277124048 546384349 432712132 846987661 307648705 974657493 968110396 208073587 552736895 203478749 46457518 132754864 470359566 161589198 124818863 763277796 507768335 735817323 325229645 319165725 811971737 574319789 718986335 402518588 4624616 21245723 904264344 694939824 542657785 671671587 408546454 384224627 892702321 417603361 626480623 578134803 654337924 615187360 485716934 909449568 377424540 125881725 434706578 985059026 985775791 976441442 302964103 366401546 727204360 253479357 516004208 602139069 7641593 888303952 335628598 196524141 339326466 332060781 958512177 911833735 311617644 504984453 640195277 126293113 593998672 4994801 460961250 377182253 222804832 538780042 262968537 682280734 802650871 210258651 496662380 792570711 749973022 733406968 388760997 572754874 620663801 687230604 394784835 171569788 66014536 125128168 762417490 867363160 69430676 104524687 265862813 994920805 808557033 637588496 689724926 772325997 198412299 281507106 814003685 798445556 181726871 749472975 399230763 37367994 117633820 846707197 621281224 980924114 249978719 799579931 602021031 499989980 981965373 867923910 330138775 690157781 167163413 643352089 782559902 184293605 676552455 440389263 295656606 202462894 415530565 348859676 224048250 417958790 361870361 911971757 629991806 182848005 68277728 607008495 939187858 881161939 518810142 896670950 272922173 53374269 65115727 822521297 767627550 248172337 863760618 429446724 786454464 886561158 200174261 734753943 948953561 847580308 247978448 968673775 591294522 725231017 294750849 801808147 453357754 787188037 872106695 18873710 674623310 503010536 931689694 580473626 534915265 848912706 243062963 654809561 821629312 166778302 534440986 328182765 517984732 551678974 795858853 941360182 172849762 243844743 996285743 324459500 101165363 876514244 274498480 657047641 578001149 229989794 37984958 882084253 808232353 496752380 38224854 177965265 657467826 449111008 421509478 237105023 719710611 553342800 867027715 807690728 675367800 930452622 224223914 418212886 804801827 53313512 870303700 570296110 422517499 610258326 504914724 930427113 385943185 795549177 159261795 426404635 603256207 84349253 440329657 205664056 431604549 991742416 508000394 175721337 655942918 811673451 506582065 140940683 900322817 950822343 549163978 528080816 630173349 761723772 308046908 495060371 328431943 828310234 68762153 727659585 622573874 895846743 176157845 449348105 253380284 417836278 497468531 403864011 881312219 210084279 162824178 611246177 160864562 324094977 543174394 589869019 194675471 65291693 85285807 781729073 699103089 735362714 915164376 912494421 961442602 611254563 878143755 770411204 559660149 172875527 350340823 849773798 597351364 55435781 261322279 296356110 303842448 364883187 473280444 747480484 17901418 161156863 702427181 903864683 677739618 790376247 573780749 857210189 154146298 603017602 929204373 621881174 567762825 911148926 689302974 58931449 251540254 713713590 398911542 622475143 526160576 895322537 339388413 147966581 681159789 288856410 75971467 342758239 177404845 960592647 919278931 363816552 517139581 818560355 637310538 553644544 332828069 97683172 899950396 617552541 201999382 299868529 50147999 395563348 160120331 445016421 378146232 532605895 590007347 921310659 6131514 126572800 989520327 203369159 271926248 954306277 594219475 21248599 801563651 752198773 948534967 79326081 285141985 53014826 676913261 836808173 416443138 236951122 718467455 196179319 854859729 922576669 632557149 583041138 629890640 780607413 132511436 663068098 600796245 639365456 975311610 361645705 697065633 578118380 563156023 150434769 61209466 851536591 234742209 487375792 863543931 73708498 503359917 699553657 668493756 997234284 981787402 48146663 45799694 684303588 456718664 508738500 233698600 771604214 388424624 58911931 127056029 337941412 196895225 10826796 688367721 652946978 825981863 604876681 72848758 484734558 208315272 643279733 469412294 44899914 894471888 818569373 108272842 528436420 851343438 872612540 840669672 493880051 619138180 897106828 869797676 557903066 918550768 842187327 178717191 351449618 896889870 321832713 315310681 924128793 217852920 183913406 690407123 956025415 915105232 696544251 887960295 54394022 150639212 618937924 647930830 667337686 767492060 481237582 627074400 830630115 965259363 962119697 170908223 995677093 101132166 722814545 105972381 798198582 709020224 472098246 229729337 437403340 738605303 16819717 871477566 946047144 188754289 993797207 260938914 222317610 542033187 247081724 215558838 164124962 995880487 422922912 924067766 442458438 79325013 91103591 248526053 973273813 211803957 220185420 274837651 340786197 219039689 730351390 396480164 837473894 917742113 973090719 818599230 921074570 767391791 758088512 478462506 276491147 947136945 66625508 447080089 478129762 950110626 622805870 683372045 675833659 818895904 843102943 562389534 433101054 896558355 10842340 41716425 875266209 346718510 630879214 215709703 618686631 191076032 547828828 566347605 185132922 191826869 158598516 987241263 503155764 443955199 248190033 676107799 316950024 53822283 352548270 976408612 818144191 979053014 813563864 686257716 605522062 260121460 422694296 542333416 244311940 147501969 412655917 149026631 648598442 11664856 221407025 742722874 326815320 937540735 661238026 476383018 712500168 201518895 564245203 778476863 289680009 386885818 236544762 177792660 12015493 983954940 521813048 112265343 315763526 695997563 266798356 733850185 601620439 596794548 778361964 815176926 460505247 490216584 241515501 436049958 42964232 111379062 438810285 354272536 484024222 351362009 183173185 74598855 894313994 893064308 893708133 891857920 277803174 554693163 521947063 608586563 422320196 746557209 133558657 895464146 833902352 231901399 509047137 587310426 566682533 257032014 501117845 56041108 604225381 548670159 402200940 36348673 954838330 317143035 922329740 108876288 155823295 726149707 385364537 549932465 768763156 39725131 981030023 29092959 434183671 496845812 183733058 651611924 122135130 345690150 160229549 321374206 420047319 352152149 956721855 842703019 639838777 637213702 816143027 153846177 264215993 493107268 883210885 430717880 330164748 94751411 738761298 561722178 610699785 720184771 142312945 9480610 443396624 565670706 932178507 564798265 603201793 620718094 175895598 942028475 273157261 593831898 933625151 341515359 212312264 324089130 117215636 678522218 662986229 641297888 403060440 396695564 415520267 7009850 225864951 968476887 783992675 341714226 569604383 884640318 212629598 548836196 188649354 413570986 81810329 750733327 81646907 405763568 548587603 173211379 384229840 949161102 522012561 834849918 513220079 589264022 70327303 376109442 725365483 41098837 525525228 227951396 839546021 569746151 332279546 227850671 232249141 370413909 563067713 917374463 196320058 263747606 705267259 169271678 3095252 461951086 901679391 846635226 248581492 513438023 686124367 98753980 587645208 10786593 372690152 532313585 698400633 894247417 247200210 295433051 43975385 203697730 513260146 213433510 317727782 42045283 121974561 930671014 311726485 130645574 272886228 333643850 417182465 15437550 910803858 9667506 280940713 520480165 333592059 78039358 647555880 541018202 336340333 578976109 331979995 321092297 241545070 376651981 88263317 898877955 37232928 72774899 887453530 367793444 115090653 208279750 8275375 833230019 67051963 970932498 39823103 248566114 386674856 87897202 233653002 768380812 383238532 802935274 401849912 634280936 55042357 491059443 485155810 8244938 930210342 443409771 775240435 895681434 839316189 949581326 524121072 822815207 960886741 493935275 566587764 391073548 924921703 255610943 988222046 126390149 275404637 749994706 32810929 673637116 164029947 363059497 762372773 561049968 46578856 178149110 625110534 748697222 716489566 869727346 148836843 860285377 958133389 160385865 350839464 270448868 170644708 403953453 179731317 522344032 862780856 281610091 822169897 714902447 621080387 349045411 126317162 526932527 815392211 499698918 866215192 614528153 333795973 341728331 41729322 817763112 32569421 102159525 116346615 718861370 572035551 688496256 546617329 895580583 585644481 154206591 732475347 486605248 663306980 18535358 285979023 945966729 451900554 968884857 265874104 220664623 796149693 853230196 19909364 295423436 516572529 522545229 397120259 589782621 748639047 633370984 761562303 321913485 357797767 123947734 902196143 767448936 513699215 363079533 494516002 41214401 865478778 678524667 487065211 682916865 225295449 580220764 295603268 354233206 964555853 852865001 593971827 432757153 32098258 527695488 361707504 985349358 552937930 660640214 68875297 116685279 526673728 170638293 657308032 139065904 802203459 807202747 659429095 807997433 502299951 823235916 651028045 584458329 839673692 786922149 280461504 509960748 101348284 650728609 367136752 181744143 455071446 484072278 881443327 746631097 286769181 109736258 529126091 408629962 760528470 126626153 276967371 69663641 488095029 926789679 541569443 459575969 161923547 815719738 439752621 679646706 762300239 600659068 84586565 410408602 936654044 534682278 86184076 16391237 495536043 135129118 372177390 84896944 563315796 703639110 601131577 335357078 593676799 3785248 485523693 164987440 187122872 117280876 378291176 339138296 254897780 427542827 292238426 29224193 66074441 519139813 886683796 776964873 595651856 150286473 677918690 469834178 489877063 789342446 81796552 993397853 997007248 182157153 549009404 589412914 684146007 573517657 759358535 826345125 531148062 970544032 228693432 973832364 399098040 919543545 792990733 365182977 980404852 818319213 945221865 200708319 148318752 251038831 461965422 573131039 720300410 859339608 573417535 948247993 672063878 303399988 965773245 9263434 291778863 137896630 597758898 494036728 494014153 925133537 930495489 514663728 884240246 657140713 57422809 976689988 939708033 668864293 173224305 250159587 733082430 399683002 453420960 696542679 731204730 663645 862376152 413943926 23250140 537246798 209558721 748378593 967914413 614314519 886444267 553010090 386485374 243040745 598268499 39930707 561290390 787473136 705970859 532501468 924468659 189395159 348222761 899070393 718941996 551354839 459621183 473079901 279439830 205768733 265422024 405988872 179466706 896152529 410077379 799785042 319427223 672064544 128938617 3637392 601875334 216440974 640935904 423243233 338112173 934820103 549880170 104491367 918459999 645833542 15674871 437274858 996471873 356756150 479523796 472368398 45244406 638106522 910659665 112658317 593575326 689390008 789677479 921156304 884414659 114160813 8736554 742802272 280605998 852977728 78820285 191365476 764217711 710568398 609258672 792694801 114498244 238453125 170271120 733131036 968585185 885308671 13301244 24539871 315749449 568424273 881133706 865871548 743807387 829298206 762670819 230120422 49860237 399121504 864789568 658473401 823334314 192667767 693518417 656234508 23367699 668704267 966526310 82045805 63648770 361187998 794462428 837528522 474941090 717566488 606047199 6555636 186871755 39501454 666021776 585671836 590913799 304924096 209502750 966098045 335721986 471647915 637524854 218531423 455770144 894756634 617975336 55429607 592885241 542704660 478251508 470978159 345350506 85190447 705116826 746152806 535083366 131227298 171416426 561884204 529261354 988273696 283655499 345462382 746346118 972084319 155492678 237244532 284701315 435115454 169002229 341168697 285937977 252076201 299906265 656360131 280907579 822150562 685781540 533609572 286350740 180004369 377575369 333734839 519286946 881639185 321416475 359038103 817526717 105870257 228811682 861500458 247501148 872936662 182800609 652196575 324664536 649619530 274640608 114558734 419197448 785233530 786147812 40731690 312331773 83952485 291232612 3193468 8907925 524521792 973672408 23457812 184029964 245610484 592957898 674432130 499777294 249913483 831322045 956912377 693489274 884152946 394593698 971523273 189857571 641285810 242905915 535697483 15889441 758906223 463031445 578272178 838428535 730122515 804610788 352806351 386580886 217545191 201884567 33349270 286522886 686161026 894689967 957272617 982616291 15737195 5180311 302257963 511228274 974363299 760987938 569270295 238605059 6716415 912839252 365066002 686596546 655739131 65566243 183342049 315249825 587511895 790868427 457440066 346520155 849541283 318985685 889430124 689743847 611805008 744199038 810743849 65780237 146414593 503627912 956339781 574314888 659862441 849193140 479191456 909733708 404761917 291636593 591646396 424882745 144337970 500844215 41883449 955210090 214129479 854503334 679410292 195958426 3532818 406334827 338709579 389616467 625722720 886516840 83643724 322027365 495997955 645147055 170662288 829366077 927798524 845029561 921610616 105847048 909572160 333096771 271018957 91211817 752723436 180298932 278576376 442718669 212881393 640925272 417303669 894509085 699965200 2358775 644644150 337563373 271566082 526484615 954673350 487681674 295550359 11342112 832052500 975543214 788150810 209806038 633217020 466491008 620508429 795284726 910064187 264173988 509558372 423515131 216518150 624377191 985218748 652735694 181787300 413693151 661001129 675913997 562340116 533978102 21973673 619975486 173514241 985542457 930318718 573770050 616587105 804637411 888701505 755020866 655406896 735931841 498001406 729056664 383859378 793186636 391586220 222527935 44204737 474535200 562822627 680487959 701789638 549314306 782906641 21185953 658902508 627901423 477529056 672658517 497253848 450489323 915300861 3627078 599591632 633339542 187165470 834297507 608875777 520829769 656790112 527579779 298670186 468386846 448028480 478413593 158533173 537705654 749717402 631322987 119235080 365138989 80526941 663280129 727444234 251993368 845729479 391895047 152477219 577341737 400441307 771511928 711224434 604331061 873928051 775182776 519565037 553426121 639215564 119473428 382077308 143200194 925861096 692515371 850702644 241969675 521256669 991295690 196281207 762917166 905993145 289093322 35959028 301743553 530204619 41163006 427669912 486443992 314291663 994264431 274914300 425968995 120657513 231528709 252605911 543158652 161113380 89953006 99198299 309875420 124583319 476552039 816223513 612338014 836533589 781910865 216945844 415473195 878304430 158882275 312605806 386588860 832762148 547222495 928307421 217315189 70836208 42972462 706533928 759875577 245281240 4767163 401332499 747599150 955607201 361034071 220921868 37042445 194745409 903903182 323240027 825547791 925912587 988031030 414174078 25984243 962176794 614359177 656985794 447049536 907881771 257826025 621408605 716899961 889460056 810149704 819882794 956021793 683870397 568511438 422355666 99255828 57264980 449317032 726751185 274556522 711672253 894896384 10094224 570969019 669369001 266870701 694853582 792970830 542368622 847193160 135284113 661473016 363737188 159850889 783278365 770635868 113334630 118110844 623583731 529583569 631499738 191771248 106426398 538985032 496146889 788457989 60034509 229303926 623318126 342103405 911341041 916288033 938307044 247204116 47740045 889695078 765551924 303325801 170669933 886169199 407512068 850322590 553501012 110235270 302575169 729072753 848181060 607089771 295369950 163850346 793070501 681032963 298436640 434232196 12431171 654698569 880564498 764337339 475454341 891879017 677193575 373077644 651239696 65630002 362135026 799328996 69259064 70681076 13980901 940567839 482790698 765642643 274672958 952447003 276132121 846513317 222385377 143516672 667104078 679167593 6951184 550475500 194927533 185782078 112944488 957242167 452285370 434245415 572996708 208573868 116594858 345121623 601315089 115303360 161367504 881505470 711595049 217598651 484365579 107884266 520810135 82118368 179161447 271531443 43669409 971956575 836901569 751373405 655095750 652329127 966870130 632168314 560582134 776439736 682491529 989640992 92840374 797466782 332143149 331251154 840374114 362422785 930179253 733395163 923017565 882314511 673533407 356787338 464896380 861714722 992739138 258253302 978227556 768653746 14507854 897567440 878712426 75540004 256714301 199718594 271849077 243239804 912280036 338358499 81341970 627894830 42138855 585669838 398864724 418675453 852400955 22170987 49135524 856208161 653588776 55612468 387598520 534419423 413847573 12516680 60802985 464331334 689245729 211039780 874102303 368868403 726449202 18843524 333256151 903791313 565004685 897053102 5749900 101126554 981529787 88284191 945515728 338194788 703619887 728897953 214220646 866964978 406711371 168613883 544778404 110686960 629160157 942896834 608659086 127461421 814471539 412944426 962038378 899330744 764134114 300890983 855035606 894139583 258738561 26655469 281612032 875575421 252766744 434720346 62104474 369458771 258458289 217922100 177293315 711138344 120356279 579191863 52957364 456414184 5290319 496962303 611485395 217497733 400829594 673243947 762116558 49788182 909946320 614970148 987148539 371854954 748043894 250151082 936734666 56139824 583654362 56301751 486286014 689774825 547544985 965330677 763735499 12707706 206123151 312573653 822104820 495846327 533294978 991696874 951303342 679710970 389859928 725003769 214483438 561462903 654364701 955328241 472738879 484412533 192548270 567805120 373953285 273039845 218662065 276508328 66352541 641745588 372539454 170581719 181067157 613460097 824112010 533593465 920166853 736066489 207079791 4746165 670390596 4648801 139053271 254316754 766152668 507610244 432780251 185981204 649066086 515568919 96304422 485068301 568176139 652449011 477166092 103972299 329496927 669719119 391239276 163390871 602948186 625455899 827015867 13754469 692229306 321869644 162909709 512737367 617187674 343603948 122031280 185632807 2980250 787609757 694659968 25079984 299664222 948527435 506187932 455263173 33565904 837496234 527990883 213929914 136378631 877124875 854796514 983908231 87342666 360574841 918741827 323481049 790299645 332175291 358089081 920385330 883896946 817269821 746677078 153437381 45759933 363274820 26013802 127442947 672677815 324689668 104371920 604435614 114359929 179610159 154981942 581785910 183513078 248331158 980752655 490919651 365426052 958852219 806304574 350526446 553198865 342703766 906630149 663593434 487951988 781555539 910406733 689728984 521543756 910390626 550095606 772647058 598300931 195170076 11025937 647920224 187402636 127210931 605830600 146066722 884594867 981347076 76896999 944321398 751788614 176366993 642290755 275440952 222055282 381390321 379681951 542622769 903390098 705110977 402658508 928752107 620837238 990620312 825920723 914994492 28084474 712242592 669410814 281002150 510665485 467420392 444613372 304021478 276289409 710364921 779365615 182266217 445683084 551426606 199186480 587787350 366434246 269139740 228766100 946590437 42127158 7762641 935873749 145401298 448662299 694241318 632486131 175472870 745304083 26440704 239887656 110656770 762374411 657246110 126392631 51669476 532253198 196058457 84057632 978496478 699482883 321633502 207966398 166949499 412935375 726495561 778492772 710855713 254371586 839992909 201519539 427321790 425262186 436127388 915740113 804356344 400307158 159250965 252196914 810329307 858657752 994253984 15199553 256304734 271442355 507228241 848677187 659348865 55107164 445357393 329172982 649336578 472235679 241494563 160944750 615950421 210745529 848049420 613845385 417022222 309803267 419772933 34955364 802297705 923256449 566747097 72327956 605430633 851964121 252368012 802275789 36247761 69326100 92181506 170630468 896744844 873709949 791058796 804217800 403345104 540652090 146602696 455432706 996755284 569451125 557336763 926165774 922030276 197263619 897818038 583118174 908352837 587285421 994351458 427569117 679854249 399221790 3673637 932996205 941445456 255134786 509957990 41330844 909092251 810568368 364083710 199266062 879063250 129950663 783462426 529409674 150694646 38742669 474243694 77852232 671869122 923434268 872107961 251752876 188522120 723672219 718554394 155395344 80999851 699150643 213462923 255806342 7756261 855472959 644558275 675808094 646569780 770433913 773844190 771953911 389363249 410854230 382373475 121489873 540298684 302204696 190162663 972211860 946892243 198859327 238840273 333315321 237581420 524832078 315035058 680079916 546988979 847266714 732669573 153951583 267438862 673574361 343474906 937331137 915463756 635270525 123128149 13193215 507394356 398053901 728142012 869209040 848004470 956946022 598740895 506522537 939275579 883462633 943136892 308715618 492415016 38603528 579073459 833831849 707123487 889075719 893099679 839831179 945222840 872986564 865144115 63566714 461125235 476750121 390405274 524783864 158073544 430836857 125969836 632230632 50883641 270122439 947567458 583669790 646456043 560520340 90210222 262270170 103345030 287053233 453606188 960025649 330927245 333174908 42528346 611673978 15651815 578983899 911817970 715396614 504484355 244246369 310578553 972256612 331473765 371280801 20650648 64477435 974189149 431682194 464870490 742425775 382737910 990268693 74281623 636175110 850467872 967880075 82147215 630326854 351998339 586455907 334762882 656822519 928109979 141020978 576814032 475750512 980237281 432613937 141623314 162296776 326495866 167006470 627085967 917574386 317760768 163842104 651425564 409890444 187084841 243328098 48092882 686153640 39934488 577212384 165049707 856325051 440339099 944345602 525630164 134732528 428953317 813790861 296124123 312601259 966468181 132794830 765805796 866245281 925717518 23179405 570357976 933181495 165587580 391465156 59184867 602752473 374211478 175023910 550786049 365962870 949221819 315873160 890562678 325259703 96459848 320087698 135604039 638593423 978983820 309543862 892633134 295207112 499698557 811954762 702591323 593736981 870267469 590739664 268569984 424981221 259881163 789739334 879478709 994743956 995444012 575064476 739006424 748064858 345854242 579821073 353966626 919007892 260912535 238753377 969939422 590482021 957969729 41060004 259044993 263583793 590581990 67582702 602514228 643148983 676381805 735786933 563418410 292230050 523829283 628195807 184141276 214705426 523005605 921885848 402741594 933882049 622024421 515998837 391995890 773760289 983666990 718523004 546379546 384893195 222203124 671490913 979491660 163631193 219364880 352170901 469259149 154520269 84162943 443486827 852252722 523449452 719277992 201334678 809730228 764373223 817304087 355430584 426662089 923188438 399003283 285437893 175228062 732501622 853034713 619953492 601750729 691810724 947231064 882752881 331567112 520030081 609526762 212092657 185301273 220085656 691830090 975297451 531475493 546041412 314736227 563915746 59449967 525246956 717099836 507174893 650647927 572901983 480357287 569015170 403800400 603824256 8315749 850982880 960240977 983257940 5214513 258599018 585832048 186211722 384003775 910838832 781537696 721787833 402654429 946217990 801012586 830959912 777495021 410911844 528127952 467545878 597007509 106217727 736314004 32618177 608368563 635495296 586237783 205332406 714548557 566162645 663088518 699619260 234956251 876822623 946705275 159041785 849890478 379746696 896552990 170878894 194483334 378579430 876239150 75844886 595454905 324366969 759673216 617417073 601231996 554855804 859875982 538982674 58994238 928750167 23167214 241734013 451450636 597620598 632881382 768015085 452503820 887873226 265720875 655360059 699537274 643763805 505106750 338877606 596125331 543493089 179846653 499281462 247904934 421718139 237356088 260192584 826937755 6657110 83993603 237008032 100963163 984894904 20157646 28347810 186983902 552329945 575102806 883426526 650286061 146713614 581030110 518227600 461357527 782075169 743842856 601544960 814720191 487374336 304583180 80895011 31504569 893002370 510184039 55282186 679086531 323646062 534529918 51005574 873743619 155708254 958783297 400324824 33414013 729035620 373763311 360736143 770363667 106808696 771368527 185616778 805130882 439662476 137380763 286464262 629869745 419211799 273329524 763826188 927763862 490138051 911546163 491512288 8562092 299716437 26147083 693274387 281568462 269941257 396062630 458627500 600391642 284433687 985099608 365835541 612952486 378904981 168726299 107958561 311538708 675164240 41474544 212752956 120803398 868231233 691830121 177014381 613215513 754061898 19011343 143379857 202099634 629751198 151958839 656332856 900569004 947726831 657260375 5722908 457896411 980940950 529665181 40794244 946584701 768474567 51561578 469005979 592796172 253242195 134041514 687690835 745862367 124475730 160069896 856591070 945863816 831119494 7730788 131159493 973349661 934358597 286159484 798986105 39108473 167049171 661792379 38779052 817540667 238445219 999576955 703239372 125530884 701761325 328293364 555382970 500937434 491275298 307236934 973722470 326896964 210513007 603326522 272636975 257053012 440680768 298813762 716295842 766012574 167947586 711998082 29924191 738790230 385601910 237026487 410227698 580887394 624946368 492339444 67361262 556770965 812205772 224166075 834763242 296523680 61381044 906581148 204716074 228171579 184152341 634585712 778424585 880589045 469324785 145560376 542071298 13139565 939144344 223363223 38733032 900606537 242500413 471375665 85236135 748698159 539453531 720133764 537474554 820520641 909967239 991291239 710865974 405226647 239253608 95655691 383054248 495731412 163894478 981875848 514496961 16704016 685417804 435374741 375196669 47560147 587589313 291848555 130722346 263212252 96829991 15289911 591742935 189699522 156361214 718061287 247246612 232600789 734315386 501456711 156741771 981826242 703226612 98940946 945722740 743532447 873397151 377348252 521261853 773697506 689821828 111284850 621150508 371501650 686029253 793777723 484658847 868222516 359336659 17251507 344297513 240653998 151825583 528521601 672450299 520888770 981788683 77580271 137331018 777715727 584394218 496784301 134322681 413567534 906006264 429971263 213877837 81978551 451363192 676166173 83784998 380045971 836750793 969818277 447678281 697143631 74036187 857613841 972123744 772041755 556835499 926501089 652004729 487686835 581693242 791122138 380278254 483001086 922296156 627796738 705102737 350928866 603606636 903178390 915967455 929040088 930797271 438027150 523539432 159389786 426287093 946864421 355593025 64078095 308881826 598405722 113891586 625137082 639026974 664424787 43115924 704656435 782362336 644129059 796481579 515041583 384715171 943909896 841076064 678356229 15219419 788072861 365131724 24419687 277792741 592904760 741628009 391509214 598414355 653785296 837654964 198801985 226060316 641383669 354504245 898533701 542265598 586212671 179467148 91934194 834876467 794255092 480780853 73345269 694680425 995006258 586282890 374168310 825630161 218011247 905739583 180399618 315845258 336879505 997566346 789701996 289857223 624786008 153208351 749808962 28496435 187084131 310025981 550815589 801791653 769371622 990084152 753887862 548805170 609511328 745366804 603326058 35049661 520930780 237380248 538235172 9471690 166932872 691644284 739923601 441001545 638638360 303103299 107637599 921314075 80542132 564612213 361956784 940840784 9252860 840055062 1183821 866285362 526474639 998066029 737427807 739886674 664813446 235593070 698002283 267379623 478962950 753646793 681258277 783183053 452605906 458065857 754516831 727488096 114859789 322455261 917960559 231022190 405927519 740845174 835852196 190455450 664015679 437987430 539277173 744217750 871429658 581388663 428475081 206896729 435460133 656187835 735369639 948016256 351418463 606287063 969652946 330205279 791893523 115578097 413155992 393564612 889526433 663706233 729752662 521093398 516422153 878565698 463813066 829265951 911721056 242037542 263858980 207717994 833352088 417312397 469277468 429611664 705858925 109985547 558986803 363650380 832049279 136108357 138913478 112320001 103144207 197086427 579669371 122889257 998572722 194218968 73149121 913849369 732187044 904479372 855446608 903799082 482001762 946404073 885838962 937061886 654893804 619622187 458840110 341403719 184528411 902301282 246259090 477934992 291847594 49590853 658209288 519005304 291403150 805540973 715779583 913985337 579838073 657168774 302474549 666800008 310627022 257401232 446296594 474583455 276450162 467274475 456687045 187640514 393883719 424153950 521904948 223129044 902932189 736081274 598657337 48991116 500640883 294321405 863811336 380894204 939757115 544484957 748600202 388749517 637507912 607714914 638339643 828661630 14277758 92456689 973524778 154882328 210777480 488702406 37508454 894927180 892743291 743280918 237940657 789731072 996426670 981396162 721244492 926676123 86040272 966979164 525128788 446427849 478028167 185078985 554885837 326614026 605499369 460214787 557042737 190667179 773930514 540255935 475965589 281842259 467740969 699678794 166477920 521096711 202479785 99759077 920696675 954819745 423734342 500723991 603179878 638580401 469795670 768646368 885225457 261742365 391334257 737091681 377448097 369013744 420359955 574348457 120505597 105200246 979231422 442648249 690280956 798330645 671768654 145054315 410092978 688230196 282964787 525205532 191614993 587843213 723645265 449810539 18684551 368137723 718125573 470274875 285828578 288548949 44698130 574169249 903137773 155118458 545512196 435362577 796904984 518146756 721552832 615821610 544366140 432644326 679125186 783773309 804277543 108609113 161099157 33069778 505074174 250166391 500698904 37914141 912181943 651230265 952507371 976471156 101854047 717334151 573498021 7526261 649872166 482601380 490020505 810866730 345650606 709584213 784238917 939892299 774056541 474049 554324984 561237217 131445542 420859295 888373190 79090940 599450020 623971195 392432098 318173864 348307997 304198453 62356864 520567806 13787732 639764933 309988237 649807415 15751479 166033926 827759235 552296632 598384277 223674280 190200327 139351175 90284481 258728406 398168854 928687395 186439053 525225938 614595812 344186921 815187991 135262064 458432295 995788919 756183111 350795545 80556116 732378959 606268024 374894713 638861515 405976405 119078032 781693684 946167164 159795203 815900158 692330946 828581204 931612160 368398468 764569393 126928362 669713464 225220294 558269149 415770694 932077865 290089041 530701025 905729811 103657150 232694030 160191275 552363449 565211429 119316241 364305950 695404094 105000262 203705430 116115249 253699033 823118587 613646415 999769664 968671552 873621856 186521384 5686928 52485030 271930813 454006539 381714260 904307626 736968732 960210026 804114501 848060255 93274918 901168310 850559516 393991633 104826057 783251981 289022603 205852666 173043239 249340361 20102014 293327738 403561650 797668567 100419722 196971852 419144539 399979278 970042724 571573449 357655102 894037904 39150074 165467646 550278732 192485776 746143463 282460122 628693688 699336443 377738062 581796471 413511609 901135603 270128371 648929978 736096049 778708621 23209227 342330169 750953944 452695920 120660086 589350240 748334788 428925675 147573815 665896532 378486598 449744556 886292087 843187555 879176811 500898501 104486225 141620320 346628251 546342237 807842882 467341001 788125533 988436994 134482814 398657218 322576592 791372165 693656360 180792956 552865663 869142825 722248392 299644669 403311545 397694495 573363247 196151123 234442312 582287681 335295600 872821468 847365533 406746631 408373270 346731723 319686903 585697853 539382205 895092636 202154510 469374806 209521747 639833078 226405648 189284025 798287441 194935678 954174206 826294835 133424528 599506510 77631089 770754209 382140167 926746740 624468251 343747222 935929828 498411850 368399414 797109035 116155460 186008830 511116211 74191760 420063702 745661260 410054908 361671121 107620141 374514039 500260986 177295479 114848938 62241113 482847796 379802370 336399819 469025159 909083985 425795818 216674840 140953815 291370515 653409581 61523778 576314587 357220557 137262814 692128283 55224811 503867337 111949128 271776336 509922296 259164620 788580262 191907579 643801620 609320811 792401441 914197085 32627445 827558036 902440783 182664511 737555838 370210956 914313402 914971070 499320939 973474963 503188331 604496946 892061526 707840686 870325805 58840894 406138069 372603061 824787181 590918470 361622001 496498735 541242786 883106532 274707458 795410322 743744953 339249084 715817654 722576315 815558770 922331133 111117904 309407101 775985576 737285802 361139507 205794173 109245234 495091958 758931114 419605950 610485896 186278775 561440802 683018881 197813320 320350357 439226911 727259723 852639763 725376390 134163274 354045803 704786349 734024763 897435603 400198318 389388284 926797823 762057755 196831177 886904735 461911078 64042492 384672240 655127870 363113204 74590765 623039285 235348996 963628404 186632830 337985253 23521281 918888029 429240497 904141453 724481289 626831792 317867247 780270551 948171707 273627336 944176504 142589646 171253129 566209534 368341841 750349304 338592561 949889197 69900369 642803949 944543850 727605683 228392900 641352432 240732165 281241291 560897314 761852322 413241717 897840400 615631183 383047715 669006462 609874384 265474647 820310913 127051836 825708936 697711338 705326910 15486830 932354105 882455986 183208550 878546130 562310812 577266765 154202495 470923047 752589419 142603265 312628603 881345841 367341471 282789907 672868128 986729404 696968243 500818183 956882833 806499629 751416469 712923606 19243240 749969368 671583009 493740143 329953630 450476526 250061558 620006443 788646441 771722873 151033356 214838321 233468994 244172717 226410598 85490964 649216440 40332862 622780006 790490482 394963554 534530718 163599050 895931954 67410759 599834356 377277006 490831232 516610803 110571431 694827497 558932878 606365870 426580938 129435029 53661604 208360019 514934742 793691266 777362541 274545511 611401016 594566828 181250909 886744602 184945579 214782873 373798178 169096720 385655181 299235349 21012131 70897365 94166152 949290659 707155304 313568353 538148678 19847403 896200741 469117981 252406995 188476034 531396730 384546879 433169087 916103168 669157388 431866534 657205845 224901519 303302552 265724267 353848695 57227137 939332876 173968336 322146700 860833678 922959920 678008483 15513823 13434806 256906489 911915643 187753836 616856011 682910946 481970045 417142219 402852356 472370557 362982911 289877580 64575759 447825482 525438197 349798359 591434927 415364024 241136457 394095476 790053939 935013644 231930698 283735479 607322330 884923233 868617772 789234579 195670853 545456320 729996560 114300829 595707936 906740684 780227196 355309496 93396784 280767555 98755925 854151199 287835944 658622697 307792900 88984986 870494500 119037601 650808745 874118686 357010333 313647311 273809805 351422927 73178394 744325756 235356635 581740514 207738811 44260043 159541237 681872109 816705233 131897365 877487800 970177441 485658780 386415824 815184214 37659260 306645557 237448784 670671931 575883014 160490014 87881813 904843932 374474953 127099823 155729398 947633899 2781246 817065848 50278587 392544715 480961451 558863805 54847524 859237071 104914232 475049947 370607687 780433487 335046575 33976314 711778772 649801090 690830155 196995655 280039022 661021120 560886081 952986826 400777964 279683072 437980002 233888979 757746197 822480912 202763834 974420756 289047622 703162237 545474455 765429534 684199743 505290852 666095136 305971389 596123040 317008276 772994196 52795509 542555086 565949927 641115499 337073801 432399248 637414879 190954384 739340207 517020668 298070013 854244331 139414432 74897628 102162965 453486368 628085729 576618472 948832087 543250274 197263562 717173892 520426534 84120237 316303226 291543452 344033184 657986624 366332284 935241298 914384242 455030915 54419425 141535854 728497878 589159995 935637481 892281910 627224127 319076633 365030729 93565641 715705202 706081590 619302126 918524234 945064010 298882831 94156554 613545625 5327580 400383876 352194280 476821966 196720721 277632019 782182765 881163363 605801146 648693788 775542551 340184049 958896389 104359474 581444874 681202262 73217377 112711022 448481029 953611990 164086069 952921139 815621088 665205206 70655945 867895179 686673623 670512740 165958915 484332227 724954648 129638974 113421542 659386687 286190744 633750822 278587965 13620733 161032965 775627219 515914041 965538133 517465223 237759728 780917006 878093485 471553651 361924649 471206869 113907975 910971421 192406285 378359638 225874264 561873240 593478238 353768675 562306003 401385460 557112398 64294616 944227111 525228064 787136346 329335032 881520554 654555564 654224086 810355777 378394708 358933433 732202727 193371660 871916617 928655149 926565711 25165839 406674355 317857174 986393604 832623667 919890852 77749289 368548819 778890771 746589780 20023826 63946426 612963128 530576532 253089852 649914988 800919716 755018319 98478249 410044110 735530646 673906445 266512451 706258808 550339978 894970070 640254891 507757322 824284385 557327969 389983000 893983213 987443798 234208458 521856544 783480836 782383189 804862519 980743279 857490381 994439250 434573000 955973222 5807136 820473974 299081939 754133256 876489511 868588770 136554363 207935625 126887154 593232890 939448060 219595785 949705010 286171285 954412725 76906652 54510494 340137135 147581124 545989503 266951767 553454876 880436771 279370921 622480098 905591525 878867916 378111009 985831058 503988964 483546874 35908427 986441071 984926631 431195195 531892872 475693280 896899822 775250777 714542229 413373907 451050711 639143674 607536124 228784400 889527404 503683416 591357643 123452930 684206640 844861296 216875983 878135560 477892855 22803133 218786281 816337260 632249815 865372099 757886919 947668621 390695246 821224881 139770508 652521261 898666898 317572779 195519677 232026581 157449241 873372965 240926586 687751086 968251589 956068135 467806683 128661494 922626490 233200361 715921110 110206707 298754853 623602433 79389059 201336004 801785861 361404974 631804703 100330505 752188614 240434842 976505306 385547705 90929472 988592873 613891424 199648149 995140263 263389324 938295066 968159386 114808621 168872671 384231861 605765840 160285278 560528626 602521718 542610156 221386763 667910565 795055021 311551785 283417708 537240861 685629129 433460398 976868109 664720834 291780332 425348081 747782536 21642279 384906157 639295077 117040281 649572145 980322701 55127888 454355537 909962320 983186154 370260354 692671860 214179748 16525937 76015193 496521875 521887158 152680670 147325979 680166065 546594869 934887402 331590818 323516562 276253558 328269785 567156000 476373601 301056901 610665178 418102113 350461396 606113436 240467390 641810281 582834032 709736947 209136883 901893949 440404412 597988095 696063719 97665811 759307767 854593214 416143704 474624320 903067012 381430858 230281504 888018068 254875564 230380533 742247229 650253441 546647063 958653203 368072837 435199627 874530191 32121339 711532372 42525082 198061088 602371021 132899708 938660792 941569892 664185771 695186605 151336006 619043757 386135225 170130601 39110608 224562040 646709851 53417700 18791885 43091507 895143723 695467448 369772550 971888703 601932113 754609671 634425224 815607747 542715469 536411729 521952543 661872780 450651195 300950274 262565703 892454799 844593164 528345454 280821479 776048953 386442755 287697580 564577354 922687983 354620542 166322530 140883166 576789094 473749622 111902041 791132768 610337181 406080758 585273458 313217298 724974290 135296287 159165339 247086234 783024390 926861045 38831033 471485101 401300549 521645223 101689492 260452504 560870907 787441310 686070694 908913694 488619790 103691126 800813423 42815744 992004791 453323953 731965834 507226315 2265922 279369572 579830975 908028755 481921383 122689561 671688920 132023396 33253076 294974280 489726252 743556986 679206674 971856909 460799715 503720986 463375160 494186087 985041902 850389800 297106280 992965934 937231464 158220073 151381081 808331090 652303109 593977694 877735107 106868712 771499138 738104973 332718241 636776443 637378144 60011572 65698585 373479655 1896948 551134632 592673262 717898791 963410183 750201713 258518779 573099799 44174839 410147109 700622157 549859146 736449954 303103370 405669107 581112850 951477897 55754192 550584227 364003927 239672180 807345023 523342697 585478606 496767680 643443953 905458688 251409811 945405349 423124307 332221166 656361338 877402710 384801725 5928266 955602347 580063759 183567146 778790570 575160568 347092153 930145218 636871175 511733634 23300912 337638536 497601824 433934057 40519373 287652070 543772137 564609933 110563490 293996618 877841980 751575952 495663638 473431415 312000526 740514561 751046239 259544132 906034261 473142578 177885308 13955414 159190129 613775707 493575064 516699257 376284658 266732188 152587317 576461858 951554528 856445267 508510390 719204368 389686338 348480662 13521816 281407672 815770172 370746803 813566225 873181410 968168604 484639527 861989166 695895366 891785968 470681345 296968372 16047800 643715048 571081430 517296152 46429691 516012505 728100726 923593814 93211289 186771380 177793422 261260243 384227088 48690554 898262594 985356835 603021402 655347641 935120855 34653437 523645369 64618565 325236511 666855840 702917067 885784583 704487036 959287581 467509167 804721991 43294229 801336014 490997089 118127775 65241305 781947427 977504708 501715773 163625614 994665385 17817301 146671586 885238234 189732152 132382167 231763733 792142831 773731307 473503142 275985308 222944832 581500995 710138855 79833713 910932940 467045754 517739485 321612723 961843728 508327757 489661800 381294434 416397221 746714068 58555647 434031923 104989222 587559377 989947805 645119622 470632469 894168147 227414795 606248571 543145015 692817358 400133921 606837311 754169114 313703597 672182214 471950250 680553882 144943009 799298659 962920798 906082238 648845343 202363405 663903854 5154112 390954131 687813156 120188652 791196307 673757880 25029060 877070890 572057975 403626375 400184712 526801431 13821836 521012169 950720705 80178688 617572758 734444561 548699227 114964081 324578639 996583327 869765271 550237702 840681157 8126962 637931902 592940 691187140 49612865 702353307 564594065 241223631 386579476 254608393 966908421 726953356 820708316 86639464 934570273 689781827 709810898 575284837 761116691 675820244 13606553 658433664 943430515 834394672 716726058 864748553 756468033 460451337 323031575 346806940 846678242 60146071 941192814 45553057 878016903 549152485 88287364 492473847 582528800 65579880 644707751 501862931 873776626 536009931 302796593 637149403 882097057 85890682 271410884 364401403 650442588 237886955 420179102 161562516 744045531 494044317 779476689 66743601 423248074 399495840 384299049 262291479 137070334 696942745 247198618 14461708 442158422 808568567 106878909 98216957 487144972 502008402 176723956 478567942 470296107 881113685 569742499 444372440 214683752 846184729 35372991 194292685 260997443 259084775 207331408 936223897 142932621 364192244 781384563 87717503 221491211 498010063 194977930 10003994 213322311 824774449 707486081 18202779 366851213 149910304 907928093 403597618 677478192 253763991 599564118 597045342 861356809 489786513 636721433 219058229 656566316 455791095 621185439 981677260 679023687 756269723 336341155 236986362 105656798 608155862 57590789 930006910 76835950 60118185 130104985 937260467 571017415 672299665 484459257 348598941 452300233 61989199 192995448 231835756 531089743 180420500 400804463 348552012 390373046 258172374 384800722 197891860 253838399 27858923 813255473 133411579 454605296 886190446 963233807 526572535 641254775 249027560 209849046 105584229 51841485 447400298 243178619 705943772 508803003 166217362 800819918 560258351 837979899 196195426 450296991 56762667 599496265 258019121 987931988 803040256 51773442 732595433 984166338 191040809 190087961 877426821 383664758 767859578 3398151 972219544 736290670 695770873 193032199 296945587 919635629 170143433 18062184 415023920 253317505 994860131 485170503 709271216 328859531 907417575 927280563 720965800 563509202 425197754 997760950 861352176 454397339 229879275 259728022 339548749 792061526 950649335 415805508 324582309 334836284 266267078 520167866 793073474 249463232 135413999 666444806 797397625 100659508 494011924 333752516 681985229 2029061 754935030 940426533 796430955 683302988 997284888 657198469 892526179 11734728 14228903 82419156 286157788 261991295 45022645 714579974 924513484 709744557 413773689 807976526 58567817 418014206 155468045 949784482 744036376 895541734 653475802 675583402 139200438 469774490 172500546 651553754 433810778 226583815 699088548 66923448 89445738 682874845 893550303 213166942 433999440 20813250 279959091 891635136 634562741 794256645 161843559 476548037 84603148 75771399 850806185 112271835 179517204 256838688 866355074 502986932 583158839 212029478 181306575 94288263 225152136 982344502 629451651 493500676 450049283 616044323 925850569 547057511 156056551 317696261 481055099 826432886 224533237 491608421 258226127 338689850 611232956 465079733 673788709 661129962 461748716 510221762 718374836 541645550 832219731 467565773 809486765 265902711 37355186 42949867 333745149 402909302 333516080 833263442 801738310 838331610 267846525 533289718 544228158 319604273 89669670 852945384 574338395 332257762 317222460 285396639 453389684 155811462 706519544 886556768 518160447 414319571 472419519 189562657 259325546 540696164 754106178 55920540 112579901 78519702 587721944 64420694 989764635 343597825 550065223 510459320 786739305 132145123 806953773 232669103 334583814 574271332 630015814 265841806 448857 887473706 292962805 201031138 851930432 257204633 819361381 277290503 905483721 284060339 995242672 324346986 458727906 1803647 355701986 224287116 454697580 90895309 556690567 693058955 409188306 466507073 833198303 779503318 79276784 42154561 623205903 322275764 356245608 256487122 784498510 319454780 709677683 306723743 913077373 740020232 381183176 558576007 294983506 884124218 689924633 51341581 585035883 274070421 205811153 150126906 451532901 689330820 760712682 212274298 197927414 450061113 268561254 28086106 493497660 119955810 842939621 254895899 360675850 856544566 977710280 357784669 622700386 636557618 114664328 451853525 699369101 344859318 480638799 903955053 492633989 21402190 795710499 632232003 289059921 278958736 679643085 322346387 178110407 566249542 387217296 389047324 473100097 600443369 416858213 985465495 419956468 652132958 707984285 727567275 812339360 320726930 558333258 901230971 616224007 133210351 576914152 516805682 865299112 311804445 611153296 703906909 789980057 527226081 417931489 672541569 212330765 384248437 154139766 115606033 332911395 551309490 644134262 840051714 470777486 241128259 959885848 388744390 924043362 519304027 401603254 985458638 238386123 850762773 967160924 37847304 243573245 710854146 13142653 24607710 888100478 336227768 656573741 556137654 867977250 711017924 353192702 17824317 523144222 395517645 463695596 809878049 684390178 731165372 172653278 460160928 841501947 137076366 711774833 651305663 125047169 653014988 766660769 665905158 210046662 49777308 792576928 316237743 107765815 762011352 831405622 446482250 825214509 790233221 257960057 545627697 942872495 853429437 513640090 10613566 430236627 898529291 722708916 562722723 226723201 694466635 38254970 244909253 725880764 229987235 536392012 328408979 407430671 294836904 266731617 585524746 611957813 748776563 556851183 89800552 239500920 547946903 237443289 872344890 667074471 207173959 82950622 32674143 225555475 584206756 127923978 841145431 900389717 841794276 679029390 595304816 238693061 4269441 713790545 500286061 922088157 382987314 975284123 462071008 504853749 516718460 845151492 51764925 79378729 583306060 872531981 603311653 741672937 800951103 294043527 12521480 317778790 772994364 859077172 745445627 418320236 633183786 404625483 722543978 595338673 119375352 678224942 443049200 223638261 166859321 265653130 329162945 142743504 750800896 197731759 201920795 172550633 459513420 53710408 269762647 899198382 223571489 194340146 8675863 330451291 688906525 215430296 276915012 330757351 5727191 293507970 701899433 614929261 114453674 643742834 469386966 27969932 29550892 912331332 390769263 393238854 27927091 315449333 570484029 922583744 578721568 567751051 656857342 528075088 299304081 638874580 870658994 599887808 225563620 117316357 980690177 653866796 910687239 139209449 183475690 958966286 619663932 46948914 336544211 377173380 476600137 686786583 283284096 616855565 50099198 656967276 179087934 80342712 350459138 50795576 932027388 378208702 535738877 550403780 201795908 101603722 552133015 719449156 251749868 412739123 484685189 68010415 28388888 213858195 931192674 978431951 570405024 831219405 611211824 390955050 855382477 566138655 113065813 730888961 895937691 374437431 566110311 390205838 273524079 931109397 349698739 822521177 831471724 243303728 99528559 372686670 589807493 591233864 328212191 620619001 632063108 650374149 889932397 269716078 42048601 992825059 802183009 502929920 599089049 861171183 471074502 111331579 685759394 52889885 852989217 496136007 259712671 561120014 278155109 598106419 836033992 528646867 621686469 643765492 229578882 620389004 234955235 367711495 850915899 986015669 409342713 955930042 47000737 533445451 529765151 854129525 627293333 301591879 771561148 255949351 945981168 199178546 42748978 455318309 55533970 949091247 102677472 535163226 934561913 126724779 810336993 847872668 441620437 507105141 257098731 621779351 695179346 804780163 347934250 177155840 793046488 150474162 926522551 68593392 245636787 14082508 332416721 592984492 755786558 956870480 399494040 383417799 856758127 13218720 75104120 770427067 570037435 984544158 246165698 578241567 25649208 271359346 694426876 602740602 98073562 36255779 45878954 429437825 268342534 184352810 704895478 887554421 54369269 707505229 691169608 297826601 171328459 152695531 121734531 287590199 192533495 500670038 814507169 745976536 54880556 811487164 212015998 376654963 153293624 389957777 282142542 387372228 648719686 447672539 17678674 789300974 639303854 929314289 776005806 698144584 342472702 251976365 411349486 928237524 963993613 475537790 960504952 755277154 505334585 700782067 952952793 684155706 862035875 336460674 918327331 207301316 718039799 603506019 521378758 47546118 466446845 439753076 494619488 842415700 280984375 857449331 389337785 702719415 419200117 230434969 265868710 500916726 532459807 668435329 302504866 99518106 658313959 322006393 212249235 101395083 675850442 46570189 785652677 35336468 188177058 411746143 670206962 648041914 300437909 725423548 698506949 27797748 571421453 202718843 317945860 858585164 428752053 119409621 36332632 322032694 786808620 612416766 345658394 906838672 125131763 904999112 434711193 396769331 141752924 76089009 104856065 31127315 120251319 50771476 737335808 385709539 208624245 62298789 418780641 310425606 222253154 970169594 863937907 886941168 632261712 328096884 598962800 762571026 275818330 169402477 202080776 850240279 811241402 196339430 744783558 133868390 137947381 982755744 580973912 240377842 263108761 965316913 970982658 187623857 662487231 303685082 959659441 756869594 738834096 300112769 28349855 155752534 930855502 611610150 169734594 650160279 754562315 304992482 371113268 982006259 119263910 209970184 393432531 745175217 411316915 956835946 313191698 96603711 910697855 838846791 777126475 858876958 818681077 966550947 600245024 545604191 639711251 550653358 202936504 189864368 275719955 314914365 612415302 870664603 657583291 866656101 663209087 73247982 820251337 800189037 318382371 824017155 94789841 961509625 545092367 866110306 755383295 253608793 950449411 475716971 331797151 922149141 456902050 722203988 751371554 38925607 849266859 947063584 786648028 516132876 398334636 59301104 328020466 157545581 543972835 520355839 861395579 367895791 280606724 668485177 445953523 761005767 726732331 803536123 409708843 151243024 148112428 242724523 293070564 331653219 665995718 241010570 498345695 642553833 98964366 57321550 777966936 74913454 356701662 133607456 491276496 810641552 406247563 380199788 863553969 74403643 429971267 135072263 655203011 225108002 971542924 447671866 855635726 841981259 378490684 407409161 136674506 869502430 917617784 908921510 158205271 76024937 384729392 787827538 263241841 524980835 804528344 730512345 698003806 50805774 597240455 30625587 162401454 928597684 952191982 519498253 975202204 80538948 960605381 113588614 28718776 793301437 45722505 230431664 25285900 852966518 110164590 725637015 465300978 950378545 239567104 150150810 445172973 839837593 717355697 619072319 423707843 274107493 268483438 911495322 410154853 588895417 837171369 342397549 240872403 736203450 823064546 403642829 236036545 691321685 19247092 902436894 686507292 625927358 121310532 915519025 32274880 143958150 926715225 84737466 202881069 511279674 377627565 613023291 858508989 864098672 643028978 507132912 316041197 808523891 305980160 176695484 14329658 829204793 511680599 734765291 36193422 472738500 558989941 577898876 856017774 982343814 293728603 83857396 653351207 67766833 338717813 674309315 481486896 302034072 954329487 432067502 484723214 417955276 627236846 419435721 97588325 860941783 332836625 961069420 345617262 281349059 341900076 495172325 355110281 368832185 719259459 662147918 343309178 867902360 156194075 453149320 626283366 238902586 114041488 212117712 275878512 605644358 841731465 863878577 421395944 15646202 404654205 947365935 909520573 820958021 281449631 76024130 997589769 765030476 534466061 808633575 192499053 947664691 721010822 680186092 154049687 732615109 189423929 873242084 617902557 312189494 922132452 31991782 680335831 569148927 363213768 647767176 554996381 377067758 306576324 420926180 497475327 66316505 335050430 142437504 571402966 484675267 331401555 184624136 385234987 305829360 447010564 399980147 495856705 667195829 708475262 949777982 46453265 594648464 296673151 227847299 963965675 799049733 652577990 429448964 425398553 473126222 885574899 468954348 885238301 920509946 901049224 487278526 328620466 214586635 308720108 284139010 868464924 282156771 65268817 102208382 613291900 754251370 890213042 475716763 827189072 22675472 932025472 269942236 192677082 951414977 402948626 251892405 536547945 885780707 20586455 562605558 404973073 424847510 932743061 302633635 39226787 909601290 411274485 355380216 841707859 96656558 314649241 355673526 199904619 430270485 682702617 572339423 662686888 76270319 580152467 687672371 673653816 435621982 190724149 802048319 851603977 795090386 630051978 670576556 674037547 20423291 570055171 55810407 132333884 205735048 639093608 482279654 609642998 373814722 113226919 878918391 34500831 585647416 260223248 943721015 230197547 294157769 892898849 188303809 4194542 566803416 191622573 344845280 582300336 721500446 686258844 770541142 398067134 249685736 242283505 960915044 228502557 86796003 962784773 673452096 373762370 55379116 73121250 569238400 605414358 403535505 447451510 505555522 161196200 261978698 925648150 722979912 452820615 797031600 650374994 943269678 567830652 244434922 27804896 890088635 302491456 373507468 106556277 78047940 238591824 936888286 951601570 653324322 947458475 410874032 891272330 536218391 975807454 230723055 581723951 540524122 64528530 722743087 812843349 883521997 644533561 442006258 669562554 793511721 824944349 183036752 721970454 248725946 63077496 433741157 361951683 383737857 284932292 525219137 903286973 420228566 767649449 565508680 446571797 555063542 295665919 554889368 788178258 248172963 443680366 104092044 601959899 284930675 642556837 948809965 852146148 737805150 344135025 263793665 461213395 544318444 879046904 331019619 938650229 841352069 797363312 636961600 638786793 766035495 323051311 489516212 425015734 287394501 142593611 939926220 533356876 654961019 108613994 968339864 462854983 318648709 433646718 430627684 266429326 566359754 360277197 548975159 635486006 451248422 257283227 21450854 498154032 956480939 245465742 677502796 985401338 388472775 264854878 783835059 799082632 226798201 324979874 391497326 708949648 913112745 345179762 497608562 62071942 469094593 884232738 70380149 225846112 579897993 387799898 292356686 67792967 580411455 308497623 233728591 365513866 578315090 86583978 298922234 560383742 125122475 367388948 848927989 692714713 325288167 834504922 224432716 512722979 875224544 92227464 633522519 195181407 805308014 743302326 899402556 324563208 922475750 359153196 927961603 301609822 572163975 248262070 724386802 717479036 726022968 642727545 862884844 549718263 878917649 682584776 677197087 966878631 692529312 833614720 146633148 555888888 960334942 496512182 844046141 633561593 566354278 928918648 324598818 53192175 783953741 188631967 30703254 399642675 234229112 999095272 210603774 303450896 462380419 584287247 917307976 128432273 834280745 735107159 668853711 476211732 828043835 307517883 182117935 80167754 500493351 736205601 377592540 524025228 206622073 895857113 213030 499167697 591945593 157122057 501123113 993073558 13876688 980848147 661621349 362766055 888810950 119012012 933591136 118658388 167759100 559935555 970570803 532989746 551654085 544801656 304239362 36917292 644149432 880153129 971215864 581929077 580664200 827613441 536770302 150392439 633589352 101236703 869260693 135256821 450730748 239522109 488140415 528433188 356863962 192403405 267437425 913839946 840537908 186244880 81114818 118373930 93633126 792388548 778892231 89602213 814667745 712896547 766679930 564988629 527959802 848888700 552805181 779374892 602736660 803166451 13819199 399972406 964060330 461432925 921863869 970220398 651621976 605667655 317413788 350164722 556606872 17462554 170109260 250720442 215824268 850695542 532812274 361149546 420733805 906061061 799208035 447775150 501236869 407619381 149381102 494230649 597819774 16258595 93180467 464986497 315003005 249488603 993956933 868007422 635371229 977374431 765739574 353838308 258120905 863749146 885435427 408159506 434455353 624432221 120415372 739158602 959408532 42812943 636720832 197092129 816745605 912557366 40967112 73945954 228772131 900836506 671008464 790280717 315536567 126784382 941154640 644842865 955638672 771269503 493987779 566563606 233783091 149959121 123982400 263373566 270939821 625127105 457959016 809913199 798380693 677960471 988636276 481403744 102068340 952913223 788370753 51831601 469585334 365610693 786374287 496202020 157500226 554096619 256330411 946501101 790227257 450402829 660562105 550140020 307683669 221123107 377313321 744480513 853777357 59970617 844108725 833087150 698396407 343389281 374900441 710298441 660249547 97907830 767412368 690547030 493409280 870500959 200330467 993042993 14051244 236067733 161718517 912802953 725928078 452769479 947818360 855637973 847262422 831794468 410545435 876959651 204062207 35766948 105956023 157882563 445638014 156195695 813474790 975533129 5623965 363340665 789784432 929013717 814320502 221450092 193734645 649103621 47038479 921086224 356548122 439619863 831535278 981242020 589914904 324150099 327449646 617160160 867610392 904499940 650317634 817452643 423828530 900960325 613135233 675466643 816112588 946873312 617169683 717192398 43217873 361180402 899484861 405361099 13442353 106196310 379674168 859250744 663184904 750971424 224747682 274637774 214204022 499754028 198389251 953829651 807326472 332999181 474942015 451827060 817024178 422071922 749979235 294609822 948990331 470411935 296093962 553351044 757984963 712208737 368908033 132896440 795296692 946024598 386014594 602560747 904314865 896628693 542080178 668456860 597769035 154088642 994850120 904146571 957139990 108373035 581586628 539379177 602714633 924348520 144328279 810580396 456083680 244309439 426287253 730022754 51344810 491161698 516744626 634198943 167564837 141444151 692242871 145626650 822000106 466729361 307405786 363496497 639487315 945911472 922216693 669210821 357910273 977545891 36840449 453856111 734355607 964280885 723133910 958764623 447126018 298495392 42262931 767058314 954443277 141328352 483244843 941385268 534826437 869509119 886041734 74055933 243764260 127389896 281257936 103061422 202888686 761657446 161646573 340683574 128176243 957115409 545691518 918578389 868909817 673722854 172249521 119969161 392278316 519791649 619524001 517156323 855797752 418421337 643214398 533958415 64278651 13701130 43767699 53157668 607909044 394764405 231143721 552970019 86258228 549297810 117142520 149346268 786179923 671380462 510310435 1943637 485945918 422933001 933850809 279770977 4035295 431740003 814192431 951615800 296084023 967685386 201321030 822910309 338347509 47037340 351765821 686957673 783943146 614083087 479474558 481004624 76958750 308369322 307281434 400961830 274063494 472880028 653736468 387886921 48355586 59667908 959493999 507409844 887331783 344444777 407125419 408685102 949538073 155782469 873551925 511529261 530573598 24188042 875641399 268093924 648919023 293124191 961685063 148623249 673199207 766268495 172986569 604006652 498365461 293384306 420826952 777358562 42127590 591043434 650871942 294340231 891076926 158869593 113283254 863603648 293570022 281765910 83605400 492392068 69323871 886234815 255705599 902288909 169523570 193872833 685681618 82758923 720646348 144755166 197465887 255447695 675433057 480550702 786845207 276777652 919506379 794371515 582786424 343399883 418989347 394618071 393576209 159382760 579740664 580096680 509141498 599789162 105379832 596818933 75132577 493537652 590421184 837361178 937289789 81559596 416260230 653885840 855315697 57914683 230645515 469964914 187684471 733528286 444573641 673566978 142704911 844985785 412373543 998429377 254794513 257083277 894776592 97923997 661421828 602320189 433680068 149484089 201152602 356635081 457089166 817543933 323082587 65162522 707499319 444774157 569628067 259718102 793727287 879685873 452477987 246756975 506257526 687328260 96186156 535292 28862666 218625030 21183788 814812518 180821244 221108900 284674201 496379156 154163161 53477146 47850919 383517207 533221881 404286641 751094647 589099853 877008891 920945226 797908370 684300331 866806763 377409248 564747997 423139995 466858056 232373163 192411324 14820997 63931238 380652531 220937287 549303647 628089481 647226886 138613711 748373135 320825784 348675732 674645871 572066006 153672908 1736094 465522742 1368708 65771531 643388167 708373357 67084143 905238772 782936524 333912916 502777194 67049198 319752268 343804407 886445273 769381785 853877734 520552940 4291544 430738013 150776613 194339085 804929848 184577303 742931951 67376880 997325066 736128265 551474028 123007577 682336477 565588736 829090219 936877234 705294190 812064305 735420507 158544702 527176386 317445979 626866432 705257245 640867647 878123223 221761197 993274782 382676748 708253128 617245547 340392704 229541399 77335407 637330536 615899802 989879561 648419498 44065265 604106100 868933415 328504483 25276265 371062758 244389077 736576897 180557854 870497798 755341703 251652131 830860999 310202058 196475885 265230442 359779161 483813715 617301486 539785147 10327605 422420036 446856555 69941896 204639335 814001907 586873129 363616765 51155913 640895822 913116306 923679421 419456571 836394327 316237467 473885553 404419732 132238938 675996788 343279586 628344011 132356918 222538346 607281455 63247074 747880151 605578705 455843013 463929824 920102091 693083772 252214025 850049217 574986376 859031585 969887024 904349682 35327384 617778670 576062052 720112200 617810345 798853861 48716950 756369820 932261285 384268913 23141498 992358939 241097745 227055895 16349113 101097449 228309420 609040169 771972978 38943845 530790560 309398904 228506045 343958294 516394666 939158224 199101841 684195853 999828466 260335014 394280311 472365189 570741801 202500616 270014739 76627742 546207594 251388558 932817859 425643524 188387113 108556455 92538052 509550288 353397511 916906643 694966933 511329777 415872017 859900475 737798725 48294307 976712632 237687270 871270804 416215532 898875732 960663694 739460406 151779768 113403076 966878436 582826617 329180738 544827528 747894644 64327103 171875274 199162654 120396251 16599021 718736381 56947935 372953692 173225938 958801459 674417577 486180762 176833535 943165423 673448004 678720930 695805722 135575923 28243693 559050040 853115837 610114056 287623255 385580363 808351323 876107235 382721997 134502830 735375487 527928263 922415837 455280653 522204668 155461277 669932970 619504484 36680443 198091887 222258336 965330525 885278717 626754889 225105853 817538494 192865964 213654382 805355641 403179073 13416700 32231729 254205938 543509568 637446870 821128369 978254428 83712017 422399206 947535216 535093409 768508542 417278839 618357279 805161308 3836734 99447199 926353107 939380110 973769411 369935437 688756461 901820449 186569175 73116597 901930769 223137462 8200277 392205216 600871694 969695389 799960448 250509463 732054425 280245871 127523421 657802909 435496448 448000496 575578785 224093992 843050336 367507964 198820864 175169113 775436973 904426543 201130371 134786081 176194788 766028987 67120006 880796781 679699742 439668773 321903823 573892220 313411216 530058817 877846989 811447888 589524707 315267698 451829066 26965217 275427900 239375271 937295545 952385858 252605157 151864263 562069314 318636232 836949295 368439471 29243482 376306355 993171115 635587873 397108546 772572242 440711539 534494947 871406090 701356029 740058743 77956076 523345971 938962584 162583058 693338763 640512669 598820627 616068655 743491028 313001303 840213580 179910507 677452113 507550538 925687945 129158087 55410453 262785055 471309521 470346080 708110203 591219301 881119459 123658777 932472933 521472028 410654536 463398201 855131627 727440072 919438333 221401307 698841633 568882927 749122364 447449487 925289941 842689295 998698428 851812354 689210567 916343635 85496469 732639214 371805743 122776245 41088068 218975169 680733213 555139510 839057751 113317443 276834788 547315264 539807845 521383503 506229665 584077473 157029450 746599536 370320835 253981467 212115534 685711379 592417753 760204150 620831953 245639401 894097186 949417995 943469503 165216409 411211734 775756237 334139267 295370701 449186867 693082848 317749905 766230600 89697426 679261678 784888957 391307803 136840225 351817215 708665019 458947210 452323592 205309168 158165505 826479184 952733901 149961580 697770825 555826749 774723166 429202390 397521371 803926907 481699322 298894580 167598343 275387026 45700166 137993739 367641658 845004049 853244451 2971869 361533353 39264008 846554848 614390900 784380844 668885786 556241867 651470688 167924320 225281181 299971025 614347431 642829873 504734809 662040583 333960301 2693904 965394489 233179349 511028965 643763001 834886719 571993015 720209216 232191333 650135674 879104376 82425038 158727660 357516417 252028723 717464061 854511648 187356806 633426056 796163375 67642465 113834121 916248888 992278423 512353245 570216207 750107087 79659376 8060481 51767742 356000847 855033673 182132229 223019495 253143189 788579817 888199038 33348520 977060826 511617019 777479586 590749948 122235876 63383819 381349450 68655616 889690114 876844906 521907136 453785433 617591051 766306079 960655778 646234041 917153614 778353725 637638920 866432669 835154010 588844217 136094384 837520008 982531223 517276412 38443629 754377980 50442233 692854512 170298333 142731101 681239128 835715337 277871043 610265155 644011684 856610419 300927977 596120210 481736081 395430569 110980509 58738743 713947235 216271178 625628337 589080804 147918541 966326390 527743414 498775488 149465012 211730422 819819240 197075170 986151538 63509911 40668457 138915607 419091166 112092230 670818165 500583898 877271522 967507544 338307494 2814998 716276319 423095941 216739575 879320779 519367803 369413845 632492890 562322125 651903182 508246967 356336277 563798362 39817165 945485560 593087659 320578387 797935735 174301246 630586502 401646226 707774048 571813649 940002525 854047475 788521718 466993317 542856095 637700699 358215369 410379562 960287363 242288152 333087969 814448717 817698314 676478283 489686100 853997990 562390172 584957491 441241074 266249099 571527071 821103930 494294310 750780944 808270767 52339507 449157498 955726641 181930768 403226023 646130121 173567519 110344225 671551899 73516459 592023734 953150583 55500369 277995801 309335968 953334232 181753153 36002568 832164766 377652568 227972944 500250921 342056253 629649385 240069803 462689849 453104391 539414148 769178688 75612194 690985662 48810583 744206067 558040496 644162764 755117706 990408736 265727682 290122242 286238718 537933952 804012874 250583392 297391369 591566228 13784942 644646879 21273973 889246720 954584614 508975330 905295785 906419764 979230432 320293793 144290091 836892294 528275811 817003432 458925484 618642181 920277768 60638578 834659651 665909934 139978909 241588721 282553015 765232624 123618567 618327157 519619460 601731812 192932427 737686551 693218814 53836187 257041527 806387487 638935502 550618254 875838230 740646415 725274517 424570373 409099424 762743346 409257152 988604649 794711336 519801839 363742517 991067179 937821842 109322149 429636350 322110469 798968340 495025444 383656185 435488402 600267611 735854604 253310667 741565272 372739689 770294735 543747121 230191255 276054125 566000231 14301591 118393411 32228978 724488593 292498985 677132337 787368585 559592584 681970600 138205876 867357181 897564841 795066273 601248811 145337447 29001954 273897237 836499299 204491189 297908911 547572577 142369143 179824854 942046614 859892024 207057818 828527037 255987937 732978895 40711596 590098582 409413794 302899248 114887982 143966666 495898555 856133166 465654595 518839107 429420228 374358835 188459489 589868012 640418209 467518926 884763234 161985173 222100027 102449983 802980124 751555897 491234547 913301877 684511004 436249580 947321390 350119148 720621561 818197299 889747964 38675732 975511281 239185923 465769542 103700588 935586726 620778563 389980231 430713696 168144551 451379473 992483079 687394558 127626820 471980576 71953113 593287734 907061735 166797921 684793697 294675813 182670997 321813989 133792650 70269666 29363106 523295202 755466093 762259877 135916456 274282157 457385471 700417352 449884279 101231227 902004734 935537095 999409540 35453022 966736954 164033875 155568251 339691860 650169725 996420720 789019959 116550735 221417300 514302145 728912294 968761468 56672096 627080798 126095388 666832773 491610096 593008331 817843099 214963317 255866783 30271233 655921881 144586663 772140108 206558744 656701350 626784708 239486545 211498893 669922189 57371324 693002842 965346823 207795224 380421752 764297725 343062467 151961829 574442752 813603587 377250454 626590960 587301117 756133268 858916992 669956989 849800671 374474211 9632075 439124486 123427931 34693394 879374445 702517231 621617212 39984724 968042903 739141730 897662500 746060086 910665362 875115528 773525985 863373727 836391323 193597151 385725692 657076406 77785678 667814354 747440503 861082583 562368915 67970589 636859723 362644981 963396629 832349983 505366941 84631799 646735880 824620478 475763271 566297865 14481580 423339671 249157849 686695828 183161247 385858078 970370673 869567707 798360039 242335966 720077431 900529538 707830094 381748689 609355241 722571757 246315980 360464571 669695473 562222222 723138586 369051939 839914192 502011989 201376297 924973989 740939092 28890910 248642821 405444502 332363774 305598593 796694292 991104487 43636079 64235369 801614872 907828917 383098694 355119298 805006581 55897662 246183699 957522428 317891076 554725618 567960185 971630100 675510851 533535096 852618981 298387533 307360902 211941842 247213082 945242069 476637344 268211641 471661991 101661381 358974686 717899557 945619408 855712929 807961708 2720912 320555548 4034758 942651795 838584018 665284524 730798282 976602963 313577774 398256128 502099850 318855940 34886346 141362944 610200733 896021667 409497821 392901931 300467250 654896730 844893291 473222035 395426610 94325995 652605764 538264024 608285345 751401069 310306250 88739344 927284540 156464384 495520867 457205104 488878756 271024389 11203354 222508977 985094477 6090379 938006177 812879476 622480581 271517664 769318075 757200534 592371542 498794389 114256593 168712990 873525714 853127390 121654526 83490310 614362804 780754561 404667621 484533731 785692559 114831659 14484425 516398604 11091760 965981026 91290534 17368920 570052232 345238809 661076549 533926157 403284802 121764407 527025402 914556250 711222593 215495578 1852685 888282268 106640493 793985234 447201307 729267585 638969577 241130946 322520691 490421497 681793144 334681547 512566161 263285366 753927789 662555184 258531574 923297838 957273871 426796218 877583418 27382907 119218218 465256212 397206801 389442438 17076156 259180818 599667187 833811711 398209760 745648661 570526662 731241541 334604942 299721098 379783295 204232751 709609750 970627836 210976001 595313732 902960338 81320631 640696792 295137487 145222079 227778432 74646850 422877733 477209573 812812385 609547682 106943349 437874140 987006098 660432726 592604165 495210934 586098691 600078488 881098415 903729811 525393975 530952022 217609314 587923851 202128526 365784655 516692497 520450367 970967556 582457347 518821205 21620323 355739912 635441264 189132301 119378258 113918742 697376257 534735249 6167911 18728628 752265750 964131269 343298593 76057621 995971892 845834555 704681511 86006041 894948343 722509898 641271267 334321293 715163903 607804946 149191725 239894682 733785210 908382854 525971269 557512179 720383926 848667883 549689690 559368245 188458167 722144718 23605819 143034903 369088912 976222642 778570835 873790127 454336089 496823129 518996548 331062442 463497934 443964434 234856909 69087851 73292284 173224939 940456507 515267850 436370811 963118430 651077246 516179327 683341870 18653400 903537739 75926840 151023282 859804909 161773494 264219231 890244493 342504235 799089264 36840311 416004815 666571680 961650554 319460503 977510355 881379632 544817779 990843604 539956972 257230830 368791982 882350450 668815019 693818085 115978546 857022639 203794787 312391779 701014070 522252629 74213686 381188543 616956532 354577785 131286057 681936534 387670876 298132148 240261725 791545639 598235493 658501172 611815281 182942133 122734731 155793585 365127736 186662624 195586224 590472884 598648787 45488999 839905055 965173137 737019856 828647715 470407849 474150288 599100914 893989857 662001567 875574395 396819960 290465894 827009797 862610486 556560799 763229930 469552177 881559905 514640038 47408610 172250384 893106693 359389709 523205033 395553067 229878999 490679956 134784865 277365635 89170758 884092759 155716033 907860435 325606590 607445580 458081908 421442234 533866287 156350586 490444634 331551822 920510573 532101118 212227877 712318309 432269196 208704487 408020712 844236389 614703654 812600624 121747366 501782417 388408310 330857088 246474966 816737228 920333383 780894801 664932011 197777089 243143685 293563906 486412889 928950481 372132103 696406141 453650407 326525665 31333080 315881719 95920375 365341291 568989061 551851709 24702108 971215991 773232480 924620961 508978331 98387027 419847001 901886566 599299629 295689964 21322851 150017334 87503004 895591837 740035069 122110679 871299010 469730518 164872765 350425299 250384081 606343544 722063403 352071240 910529402 48946123 905162503 846492002 985313367 648114370 431686847 979082717 767092538 328033040 837015068 646521054 593829190 589486271 120183446 866770043 405268358 417382618 800891403 661071261 455505797 462413071 737423513 703477980 457039000 238585418 434804451 251507686 700420070 782297208 71431782 70885899 164497958 856414793 545841575 192776058 584457331 615455957 8491162 70338659 835781134 458722136 429678443 425354801 760053371 924208287 655075106 802621991 858016768 332673623 439678346 228507691 576151777 832934484 9528970 891957402 710113102 173036095 889907987 420885364 642644741 446038492 796183588 373009213 482638881 875256652 934702106 954468080 973364319 838459292 721721565 394684248 387609701 640769538 961923621 129808541 543470372 114725938 843638836 125042140 143096942 7588999 732062442 56204704 880307080 784171773 999549785 977898856 686475195 749499841 582836641 222301401 863342332 136088579 388531400 490942615 299731933 584171067 163948814 639959936 383931158 831444846 945237602 304530694 828765587 589094327 44328149 503333466 808276702 290866973 977318841 618117103 377962897 743180203 86956927 146424865 795235377 334338871 206586831 60482738 412464064 127515539 685281703 369391115 482173232 535212296 807952474 875682238 432726266 878880973 155146961 589213459 279638624 592615533 643923666 671717248 617157612 572634590 985785321 863485894 267782765 431764224 53759836 588442819 178408127 707291517 336109988 504017992 647101246 907052427 250130576 224664133 672150092 290722859 503186098 714404021 628085904 8549162 249962215 493170696 391033995 870274484 57868028 528485700 426903727 542912669 14286477 971216795 472116223 947841347 834461447 478969800 1972011 353468897 113820148 884858717 94078561 144717531 827021241 28884552 642644800 699459010 144267727 83743885 204435949 388283077 707123829 727781440 773161062 757211536 713766022 343790841 706304995 587130068 704718917 299423938 646464980 126826483 943456168 72842447 534156345 910201962 184981981 665395607 500868971 594265582 278132572 19298464 231917589 812060216 340637165 723867351 895273648 110601365 558096433 487862997 810370200 727562621 19386201 632778747 117907614 405720885 58162453 896127151 227018655 267487321 7394708 465948466 451047516 775156975 502413350 852828982 799738441 472827156 564111793 980660888 3810221 515837431 222431563 542348225 836341991 907748239 256204281 90623057 93226281 609294279 582225832 69661286 721573813 262087250 639383177 882270669 123068884 333654987 34074991 371188381 813891251 780884517 652818911 322121309 453320934 569984306 822546616 109065037 242902802 907829185 880982369 883915775 911195504 902659732 17877770 996990235 936916962 892547211 709223002 34639194 917258554 930261096 767039777 869914619 787287143 505039712 251931815 85260377 309057369 550310906 629300393 576353657 422652429 397533115 532678779 57790184 900049458 590361662 499327261 153499664 764133556 909836028 735259079 153833824 401276885 503154382 763741022 492726237 948317722 525756158 899603195 303668584 676407831 704210264 339765174 936781574 324861292 364477267 66521141 785540770 495097448 956408526 419898940 616643524 967164382 62102891 400195999 861754298 377978682 420927412 934709213 759470189 672510285 518541609 881741320 155839250 878693154 777383234 542234614 356900438 343902400 528594521 347417821 337379387 878779630 532024532 486140515 148707478 852881440 809240235 255442717 864479675 352545880 111512175 164372061 43129423 172089660 96242881 261289550 632423440 633022260 193578140 965938068 609504383 891551895 494878607 407772386 845429689 340756717 91342682 860912600 421158077 588583630 141644747 307915459 787368615 352765531 541967183 231043139 573009997 707430643 281048986 773060881 673740642 366467821 574062857 771926969 852378337 5409256 774238963 707905173 96969097 198329760 810422762 607906497 239454385 666735706 475270244 542350170 241663737 626269982 150223139 1132481 138084882 897365444 416543899 328311228 881179303 721638684 212088614 807037681 689101071 734320458 699627585 765986833 710388813 876004352 174783252 765818791 256761999 466275118 351715257 92287684 972304507 998470139 527529960 137578850 89520655 637008718 53544777 425903904 693966553 768638585 664846248 846334060 969721110 172301875 265037410 338081700 917408600 17137501 974889921 216010428 690591460 406701211 224561616 549585926 41756827 908703104 942854069 453850005 825818408 649381821 270657522 706190140 913249144 54311523 707257345 492217344 784977178 781906281 163187443 672382272 1902438 146141105 532040642 693775322 85203963 427374654 720009351 372749387 943926546 396509570 187755793 111725153 244220343 921054057 679503651 85621809 194452943 850494170 454610123 967529214 752290358 436439247 130079840 583043666 950263053 600252953 952411218 524485534 741454574 679575923 927124994 316238709 546497304 776183821 687831415 137969034 203699818 220729748 390969736 488510876 793775922 477415517 866522358 377092388 28120261 22243868 48479321 237945455 478871694 303839720 653090226 773567364 953128196 105613597 841429474 538998751 902771799 947492896 782279382 170429445 614871909 104533859 785981483 186325368 437879887 663297572 790539033 633267716 749067690 638515803 100312870 179305483 219908575 719709338 901693039 594291286 633177268 35900655 184219928 765317630 212914522 915998500 505353424 359726678 760485336 372969781 732523841 974574072 834365746 444988958 901024977 611472419 112936057 342589721 713151950 277782166 244122014 811477762 384667772 316591498 607695232 201958738 775183294 737862481 935053303 985981665 898870220 47905288 405867454 52919610 89157083 860209049 782287442 69611149 18648505 115925426 321675511 622280964 220847236 70255544 933945291 177425229 335234107 836600025 296469874 23863785 675804543 461770782 167391435 443736838 508741616 631945145 216419823 267181101 138984523 843503807 36384638 566641336 498985513 890196635 207506902 931654000 59620760 972044871 7198914 453562076 768483240 423574608 342837462 358557275 878900494 861070175 301749162 210500251 685873262 710567005 480750313 93847558 851281778 171443190 768962637 600203739 350659159 700737393 135402991 837213260 940894925 473743302 888858446 715027786 214808477 859732351 229440799 960062030 299186808 911795720 185314227 859457519 993335184 618326523 828418579 58646927 903518285 696033197 639170326 747009806 95376083 636331904 616822488 858994973 73296491 554158063 922843471 784008411 72053359 672835477 448076701 355332574 634594584 574002116 658041102 781943724 977366086 752973598 365054681 299993816 135531251 783872121 921632042 565911786 240932669 999275832 396306641 226582050 141448611 91231883 469333119 250627263 667770007 467999726 944363848 144777559 472482816 482058924 524997921 948873840 970433474 835237916 916547854 270886401 242470235 739765639 776578157 696777462 568989732 62863651 315723159 145665315 101649074 39038005 698071285 139674489 122554188 392575622 937113159 168305320 395386943 37761472 218212396 183848732 528653054 494857527 893093844 677126256 646724956 409505932 280904566 714667543 171809551 206067325 235002058 421478519 684862808 790704503 155376186 836194040 703741232 88033863 4612437 393263801 783131567 115747955 7778853 637562555 948355361 446315698 240104264 954119662 925780599 997210711 19345762 65164050 897268656 143055086 820589355 400623087 813996333 158227268 166824864 876708237 604957819 383000734 285129359 829261874 415777178 850133525 368403589 539274128 930009790 494904084 720044109 976152222 427502676 828875537 88520379 771193105 913381480 254983666 384590511 336528025 963966320 540335000 220721194 588544192 670681596 93318055 845813001 380101690 320101935 13392098 792954207 47597839 625239159 992706100 911662939 600222999 563096498 836532874 603443905 114877009 805703093 173518196 453621397 386779881 387127104 819753788 668007879 679262537 753470733 920237285 944946 922013515 379293797 196231262 6857102 129407003 301524919 518242232 811485243 286915271 495244300 194524743 581957392 279278688 971929626 150593415 219637481 309696726 506148590 493001114 191804349 393688220 116788963 557866866 747363608 13067310 361971976 378646807 580002936 222757408 632867017 645772460 774497730 69697325 114887764 984441647 958660009 437075106 260154449 724325644 674719423 877811651 617495890 144920706 572682403 293914314 31056951 262422749 118936960 266580166 842386299 559145529 856310314 367884310 992885938 534965162 244477497 639813517 314669134 267437805 823862027 45245132 489507646 189149168 741410272 696787534 746154838 741881334 47914023 266630293 729904368 132855525 752312198 611849418 628364833 350032442 252265675 24491681 590394388 499940262 98390765 234905557 241306335 8694202 163176580 234946249 133556095 965347701 101034969 423416409 263055493 133288193 383490077 117951829 930308691 659766223 971450640 769176515 283817864 73513905 625671294 362198078 175011430 102272196 340453713 595561643 113634902 839961553 843075461 873856637 675212826 533655586 234072520 559836110 370844980 301912181 115984269 883469018 731757483 124257088 607181593 460394660 278364390 907541628 769962213 939388106 318471681 458197645 39261739 657034845 774511759 80537568 579577420 465359901 201161989 159666217 211432178 918522314 446758313 769127133 643799656 714162476 871654729 589110808 524108544 647043939 674006262 392931109 658061090 192248071 873886435 803019117 351410465 976981311 368238053 503175792 456340067 317945016 414253708 276640259 340679559 565456836 778511273 426153217 999238333 722931067 813051223 412992594 271229836 290192997 934598332 924009262 568422079 958627145 708228674 337030586 294584220 815671852 595673448 519393690 560571964 297497579 405452944 749683905 988723480 40660235 548561263 134000883 821653746 394691940 888439603 255806070 618917520 270443032 245898276 471376783 521697393 819395534 834335538 75105487 520371047 559080495 356920296 177147690 79294928 882200765 16310202 346487852 940831721 607376961 850360373 959432455 6080482 261441662 551260351 891375227 721510768 866562171 480201596 213358352 175965276 883505584 379738011 176243969 999886623 867306925 835475575 829271727 421667286 599515824 270800786 196201850 668162724 936564317 877112545 518446210 468195380 514820994 831655476 311264517 14765060 420406556 436363893 652698498 18199398 528135692 775192076 567864511 64266389 362936961 385508356 893848456 613923700 412463685 552094017 58948795 178495142 847638565 542220737 39623997 543964428 725485686 149127497 667134464 362771974 233769602 432647469 420226243 984369345 98726371 881931885 956344438 344338975 762136252 549841823 824541093 544626520 69585912 63700481 934512520 117239167 917274397 121656159 221622051 794497678 910045298 520659071 368455697 378775144 821076543 795338599 836021543 781361450 415512669 177811256 254895952 405131040 303230607 570819170 180959159 177790463 749405226 306275878 891079767 184644499 108490732 856704307 131266117 252236606 757036921 535248142 846457923 659026090 277452999 843008040 268137584 875965262 969181704 98019051 161304999 487817943 196021509 509506047 311446347 329353518 30061352 618494198 588921579 189035838 447529850 913839035 167106088 434910220 94361308 515182706 859708701 559056271 613206860 129227 696915985 326933524 623563569 991206639 835094876 956644800 769110927 923286286 623114273 252010972 733259941 79004832 751506911 50257971 418744369 67749074 497038161 16952085 194114809 133060899 895111960 925552910 30353652 451248171 58312998 671370992 583938991 607842966 644425604 942320275 45341657 168025933 250124133 820675699 2558610 60691229 920885133 258709827 140582538 525063082 837746439 729864884 667439128 823687804 889132645 974282851 312096902 420392171 102935063 524205979 524782083 467031319 193013050 775952600 126190790 407689985 979275629 382671713 618843285 302794532 628037520 336635898 675364956 800125879 285077988 901180089 240113242 149349960 281205881 980630537 857457259 51189794 748263256 474094588 681253570 37680026 666269993 466410620 880494821 136699142 55528899 998213410 651625371 668859960 602163473 338823807 468752859 789811881 658790517 640576609 638298598 349771096 7407743 709341933 596376753 86035684 235869315 357607380 481685797 394771938 843210220 591479154 297350465 480445537 463133275 778929681 124084739 861705520 12698830 592477290 446461557 219441480 483923472 213473973 563889522 893112119 535646686 281015031 264421045 13423921 958074427 212661791 599742644 992749697 253855283 780320566 351250524 146995669 455510577 660353986 729851583 588124431 668931077 253200957 712842639 370620101 257854987 76634841 961181695 176248329 865192947 851407302 462193370 221994925 460438167 241507133 340353654 382750280 909734685 326233577 266024662 867803706 202584810 195040182 270542434 222806807 403682800 613187624 908830862 354647829 412399776 46508106 990654274 872864460 620912118 567907204 754153027 600791455 531857577 574038976 812602112 296180304 286989471 542863344 638020832 545587955 793494132 280878509 117045663 56966235 744767828 121160241 161700607 574449854 677661516 442897605 449796774 973649080 892592771 339811613 396977059 154248289 79271390 280836942 970631774 604292942 31580070 269360601 183559563 678798138 831110016 584828012 402250260 329992013 492511509 842659274 209946618 193609773 133919695 408107888 177383938 910092814 714672043 571015950 968353112 18197893 415986692 616175723 73604526 795725173 818254637 230427895 410741685 116243391 333519761 716865447 746240252 225775188 871292171 85536594 607748683 542601897 715178699 679799127 682453703 567446645 367436064 996487304 954105461 744884764 548678519 136740492 120965862 277270267 37963914 477035673 266779168 232324854 349017008 918248172 281774123 601284582 977184556 133592106 464835309 708482612 233861753 278014182 175587669 228912788 230989471 835827419 332377172 879505480 598226591 351687171 854595161 321858072 239985876 795194252 187947573 594867024 294070872 105066847 430471919 114849389 122415537 956543969 768998963 377174549 794573773 610415472 807395186 716257232 42520902 577180826 706605907 344256169 747890254 117952464 812445871 5552562 40585929 414807875 419277282 311871824 720868181 751437742 469868584 356247286 882681710 499173446 59303852 831419953 707971191 494327957 516971455 525079405 168401430 710409994 639403596 144637764 367384517 297670207 549964415 855380785 126776446 347017186 934610626 431383264 396033825 534048086 827840024 991124813 508843782 282166203 750731649 104417548 926649990 398942454 445949131 858697632 966015899 28682183 764832282 414046812 17684548 108298626 552521615 139098245 59794643 374817993 352837274 940750228 887559547 78541767 951518469 206320345 931078869 800064812 354293187 889773004 372556861 607121882 922858789 99920312 728092448 869941793 637008336 741198774 141582990 635545266 652314985 649313945 140477305 90024846 758730742 780338079 714132943 941431875 129280922 279965068 559487011 611017213 813280904 652860546 727148815 701156883 807121885 234319320 471864585 998432239 863773323 548062013 249196420 676833097 872011597 124507279 611078725 502979212 2563136 904472194 100029940 127861263 101004059 986567261 221593176 919378369 675573903 893741618 858697088 118643728 37578940 80334803 691639834 140094545 806142350 346123736 350728216 265644235 87113630 372639766 592922584 468772749 72695488 759868161 585259829 218211753 175251341 221894325 475306474 604142009 240778738 228467347 20555317 120182326 679878892 56464063 524214718 508542784 650631261 103171964 928107778 57954020 491275102 460966576 708544776 259827980 833086419 391434874 535357753 881425835 854123466 529850519 580102143 813425186 363193108 438485412 834295443 337895851 668629789 165540916 974105090 746155594 848113193 989588439 260302878 115424051 938009858 671056466 614981982 370385550 471584577 125587058 927165338 696861059 930258045 45937182 704539082 431600704 994148202 48997944 984757390 882101803 881270241 207531368 675628809 191748098 65978773 937542493 460326907 300434450 767334077 29946837 108287598 756520939 601329177 312714523 487954198 665984849 24509950 618842125 793256370 271404518 56541740 773067935 489692579 560109882 186691548 926674610 39872933 505410371 206075199 488882948 101782843 431620972 224741247 152912199 965912696 303546097 243365885 539779758 58737166 216851680 634750482 209824556 803236970 599720059 144809678 150797012 334398389 189453315 68070846 489844501 282786055 582093796 583977069 308101833 477613483 553779792 914094391 788317165 291667439 390111634 638128848 958433697 57129641 666541874 192885806 192756071 661194436 392882688 865501937 254655325 179581460 343372509 994610878 706386887 152541917 979581192 927370630 912692628 731560176 428127698 13959536 894035817 703694888 642796901 518745822 964531081 366394056 630547848 991004454 897384843 179544612 827953665 439385137 775914599 761390437 218780404 108612331 441229366 408113391 626410109 828023500 310476963 634819526 981042614 829936768 410058174 707526365 605987636 847935518 420196454 575129954 17605622 287868658 13805241 255975011 39561827 837266840 68003909 727933622 718558130 23476324 650659990 820592636 268010788 433541994 191532406 990010662 769286416 19574328 458714726 886847104 743732986 892159879 865769856 705679889 311696948 742918596 848873939 407515487 184304983 197538670 546385223 982137867 487578229 568517964 625165636 770403283 967872932 601260229 562106685 811817388 269045067 832015384 382882627 728065121 441029731 602855152 91433452 727774600 209754974 42273810 548912162 420317185 375273661 883238801 61134603 494206937 850970779 64287130 208518056 908669860 703802606 738715491 202392670 465911934 941318695 6429737 983149953 401061550 792494535 160725255 880294163 472642707 724998418 950081395 617834894 303145849 20156015 876955488 164409173 662200139 842047338 738886974 580797622 996199660 924365699 591098698 350019447 903147244 334659108 45457309 53985873 856431265 687310393 820820601 148328873 183407796 939667061 914426307 779557736 813777004 605114851 249732233 924369821 460340813 192818571 444672678 239739713 832886658 383149296 561649414 446504504 205973584 62365792 109396958 852664229 7566574 802515980 441206838 958053829 290513328 423356776 420900869 658227160 574133368 972962668 91054383 301462417 932684719 437022557 966482098 819103137 588732407 300142039 716296682 53280500 959296465 342276804 599822791 638740113 348716537 615439436 424342073 386043194 911548405 52032641 619195955 920949568 970500102 115718368 598289045 687073838 22914375 706486540 706091967 179236888 177229409 269914673 620144031 458538367 418768220 993395601 791357895 640502124 89562659 465830333 227535985 469493605 108086348 895193653 582136413 330084895 633750809 429466910 745823094 688777127 422108537 533087561 848882445 545516185 910188330 274192701 361099647 573422023 182585783 513337088 575306358 393898503 709086498 700281124 641107292 969367311 6865948 548074989 84627557 777406725 243651982 543276959 573499554 265395594 78141430 272846333 419329876 456409731 62605226 289987450 757134459 293371142 968766255 898431166 296634068 518744136 58688174 20202978 949587965 49644755 419950645 691321937 433078185 589332974 613835717 283554140 294838691 263135778 824873120 894836199 944618849 764851775 46251902 949088451 250737858 663410005 186654461 440143197 928504865 424645091 932195577 391871398 649571349 620692178 117764336 44500778 818952661 104990711 616645982 663184069 514029601 905587221 892658062 371715118 167297785 4679424 145008522 26099544 454010071 26845965 305907762 6691332 990983138 965757857 576516561 908836214 165964742 786683592 822522738 386409475 657679573 799577145 367489104 476623586 46690070 104743008 331490188 693842959 460940351 323487829 422187004 141390734 439966129 908630435 672611493 907235771 288211862 26317962 999616827 328393977 803873346 327655377 650850651 108838489 282957539 209960400 434507437 4240794 581155833 334406771 421480465 411572369 522143832 520278834 861199152 861929752 702659278 487090881 115587998 296290170 628549176 152377853 921952343 901015388 48710416 358566744 983472347 407029216 738750521 251394941 218252449 410310656 859429163 683389198 556957902 746887616 919863352 571338798 434039733 90585967 187015084 135378318 143432606 211294281 361832428 570178766 394209472 266767988 935361805 69073963 839221091 806637916 782977597 41465142 52408092 168069724 930686956 712332011 913778721 75045616 100475918 603179309 49614151 793829805 828147150 279220168 911041777 376543044 298465496 189660685 649868414 216629487 380048027 634467886 362751923 497098121 648161095 623131295 176943275 842591422 399564094 555109516 21993100 858840767 309692499 242809186 642094638 881271248 591487843 616047758 181139454 605501480 764833577 373135499 880212388 602928750 928102309 516857407 196714897 982359878 252281454 285856718 471703318 510948510 70427044 703217407 362272562 216305861 19174927 182961779 398589213 218870926 622246809 656525549 977691248 370405279 973415025 423775539 482905069 256880814 645308283 562585418 216476687 243194528 753597028 112088765 542434099 292474766 119560026 393434227 902802240 156930321 224549438 862012288 200416640 67545615 102973572 191890046 523789695 427336818 65868609 361750556 82455838 833678205 455628359 657183235 979221602 704083433 751304672 913906182 964951730 245702856 932750282 465600960 977473073 668210371 265692571 332091874 939646291 583168404 42672746 240774372 375553438 643125990 100278426 487254859 526953148 33415351 622367838 219025788 918343245 639880944 164741583 856202250 864537671 879873028 56856661 495658862 917549586 568301427 452027287 553357775 698103764 686730120 736820553 787121118 985525539 437542351 544402015 525294090 714340281 165963715 143794366 67357751 88344124 214629218 969868843 297933241 383066313 314020754 75808714 576535543 297597830 968194323 171189931 280861717 301794143 804612834 945136802 584189426 265041442 186765958 793557615 343159187 937054729 703521591 569549218 696559001 498991234 406758866 706191572 419000027 230445803 937461507 318257951 863192214 821034299 28983826 71121416 489102710 772292832 753722817 331685165 430665341 362035924 525427481 857996338 148702326 351476267 136378088 878715220 965643237 99906117 831129354 694943836 105434463 190542118 674735585 287904063 949314341 683417045 634107733 775986502 19033493 27395840 222792548 734628570 188276518 188192513 674312034 663755346 992782639 918880482 796474055 496355456 459564118 949285575 720188860 790535611 616228869 76957685 74288039 987199348 187675463 282404468 285890950 395771380 583806380 830083226 287898815 402343956 919706040 631719089 70491372 837252800 440189281 91849137 442162394 524036896 635794756 958983235 674069534 993001909 577911744 74207032 125321087 929491243 186384452 290707939 762989905 269397527 308279144 306582652 910220843 643684648 777018363 281499358 461020186 411750649 538584898 450062876 880734212 174733808 606218001 621503576 946536317 538678390 426358267 655263648 312982561 557231636 765473287 242825064 464929770 600536905 707055980 380836540 714689476 262053266 778554788 975695673 451815536 798030036 533723602 175789223 480872376 48410979 297277339 218789930 597178127 238118972 578984151 813689575 912498194 204658026 368242068 888489375 595367463 716208604 55935314 480075023 313823344 764140310 851226153 361615852 286572574 768264449 508901354 371563495 978039080 663636641 384273858 928635173 895339401 686042135 928054683 347573710 877483928 835140185 749011479 507641182 48814391 740421901 610550101 88872863 674859212 255862875 502182366 326613786 363471802 603986704 591749956 875077916 868471373 949429797 510574162 706313612 799438087 175298408 563920821 622773622 357336254 884981190 344295662 214144752 108742540 657916216 502341613 253274493 761351503 969373376 480650839 577236201 954934827 151012849 57512051 18359583 596496490 271508217 268644161 973946028 72355018 652226726 966237105 408466318 477234739 300205217 958633253 169410835 453857957 230011265 968481456 376506780 403250881 999039862 41832590 515683153 636898949 217733766 813379786 101464741 980848889 341287897 937570623 437037107 590519598 225946417 727665917 753874186 864125719 350897873 649611036 809883226 309788695 246882232 337576995 371026419 585689381 621359425 55222758 665296951 597674981 964918357 628448283 491685216 127661442 223824581 279728878 719095937 573683596 436316261 445589092 448701737 621680955 570268282 170575332 580351452 480797323 245738713 869045285 789366694 681664271 952314188 283319264 681098599 613668184 319792897 601515286 372770112 3872528 753985317 71257538 74027146 741526730 526867829 678272015 491106811 971226854 41826606 626078065 600436111 78929852 170050918 200640802 445807045 596259875 864121452 204620340 311734198 689458705 855574643 137990654 69099826 794766173 876013020 770225332 290590578 489095920 96629353 476504833 720389949 212953552 670855775 598840306 912322583 20641206 353335354 333734069 598362515 132327635 736823572 214447966 64767168 530474522 696547252 738140218 240547743 821372412 111284659 447927078 513055510 802567371 530885706 987512396 320953303 828055231 84341130 147862760 513538521 968688077 995300306 891631290 620641112 825163613 894302035 703781981 331182329 912627991 320200841 868857550 144601880 691830473 423249285 855271472 835082403 352941526 95506326 936595149 905881332 303267389 657938649 820581000 643882037 143264914 719615634 572580877 541343550 506015212 840443439 555231085 414791449 123595775 586556015 761937498 992659970 137879632 914319220 408746638 899361604 317179590 976272768 429499137 106675003 350563471 674333678 288278276 783904580 377040659 676792590 487914237 68268560 817607362 738609199 513196653 484337624 782885688 696709448 616800480 214666258 754939869 439441618 693520457 368641561 665213131 918769896 438852220 508999799 830743866 651836337 579307062 271467232 188732014 460784999 584174388 372376757 654511864 839955570 888741515 599189475 4117374 775166983 93434977 107352191 170627024 184112744 373432455 444911537 306679878 803163973 281463966 934786091 175685085 500085018 150980556 809620866 240678215 723590903 369626318 25894638 4619524 196950500 353434486 938386325 98260644 17891650 219334383 658986458 172029324 468460944 615268067 83196697 633029839 145047922 456024141 847828904 804366357 537533468 296301737 97863542 210631717 440045909 567544080 974113112 924910734 357398579 601415252 461279346 759792836 363751554 269967134 718598171 426976587 391633926 421250743 465823321 778455979 666602678 351476972 437735689 72154560 846762077 282745474 514683998 968960401 592586741 347643449 930385368 47144896 185597974 222989368 696894832 984070818 25568381 72794506 473148917 473542618 868248798 510420887 220075146 312225522 926323577 481995197 362250299 638732166 956066530 828009639 478670772 367653666 929964724 263292523 347766290 35995942 716136427 364863747 15521437 441626188 529828638 919591638 777247672 876126917 151649625 445762960 535504784 559829260 457246611 861649370 549078180 266054234 254552656 478038163 124264171 630437542 461776442 69360518 431749138 80288553 138575699 761342443 276916331 100116022 540438421 290778365 683008292 920008181 814549229 770029032 507749791 982632006 802223804 205069115 300781087 395752673 797421688 7236822 560238883 652162207 314947817 188485744 522521423 768083673 834586082 101981112 368055410 484916941 185164896 812944647 256746628 548139012 491845062 400989162 628464302 886102190 61101015 788111290 398079569 465332386 692883573 842654024 728873394 43274052 875182205 728645601 462501634 724373101 848974621 84803622 823878191 343863307 234273125 784746419 917935095 680976759 674795877 635723319 707849942 796621643 573048711 718577140 389200838 594627533 130736326 968808734 540362621 24290102 86321215 491626893 49218932 686894311 829204262 539984828 639638630 153711705 915127832 36954366 657839439 782087860 94801489 793115061 110450254 628283824 38874207 402209419 477762525 614265701 511174819 624586751 891930291 37092663 410920961 320829102 736506507 781753765 820131439 660597562 351081212 415247496 481912245 77687535 721557417 344257269 595803812 26744605 948098956 167001669 419082996 312691680 13107802 346393295 565623392 250216055 596222441 955405217 249255510 958628057 861963112 800765025 536899266 703978922 607814862 8412780 853597030 576092552 598252278 314382908 48062567 550688515 256387348 131327504 586001686 141783625 777514046 593585912 44426456 433817127 34583270 730738265 616260246 307096583 793553563 217165227 660417814 791909738 988197738 156029013 257188818 155978233 824946844 241920799 974204145 611033872 660120206 680147467 395697781 706020916 868464234 827910381 294416185 293580150 655119260 359047358 88571090 506890852 870548896 493611412 100301142 408252635 275251047 540198405 453313006 615011164 318429030 834354866 261592239 319849418 697555252 702726678 42966045 443497550 764675760 527173751 359417856 28124267 669227414 373698471 73816213 554590511 197476048 991657199 662186974 58382502 428269076 767057416 322677326 536500840 510659441 938910921 55528949 822264152 301930917 856958239 560538383 848022911 77859721 606913456 854496850 801685762 16400292 302302184 552173745 638072723 176383596 732891589 752995211 628366856 925568104 773091013 657834494 798298873 784782414 837294938 692470431 837402533 894613004 821453294 81119299 76263662 515785218 280689295 756570060 443210671 408348834 69682987 214519900 555166785 308312189 849010144 247216761 345177195 668573091 144475469 633765943 137093950 373844964 843662684 526307658 832835027 549393645 220406516 46039701 283585091 420717876 825457641 393631632 202535256 821934808 407682329 166789409 432029429 610128710 720347951 883631035 727350135 736658868 962423903 890072139 426900395 157472297 70602105 848696744 504242936 46379519 691652728 65791145 237302479 680793793 952129258 399783823 802750889 105734987 569598386 156981250 595329376 842202009 81082386 473617412 476501493 409391020 767120224 289146216 19170350 346733888 83325779 503438417 477698940 378998278 548010164 574031422 912564571 312614241 188783845 339643827 194006693 562246597 583012005 770665451 874509834 198361491 39073638 918482842 991309396 885878814 122809624 399786279 431302645 312859003 303576916 461730302 460481809 389917764 907635411 724722152 719275461 211349259 29401668 552785170 204691955 14430970 815146992 155546948 554289810 758110055 259549924 329190988 196951741 381778598 969337917 341160682 28471070 331615845 28504425 466992437 761797707 450881032 776649076 114185589 945774881 625502330 629804493 21154390 450077300 139355844 866147585 719682629 167373346 147084385 600102977 89521029 477654153 877268417 637208346 127419916 320923643 206606033 730058879 881961084 801781560 135864371 674286331 369670391 438891621 500540523 18030286 747699032 861228531 62086423 976415832 343415351 787176446 330277690 108195055 661563140 227331908 173099662 321939628 574756605 36265341 14155837 630320799 341936702 983777611 43595507 618702770 624492964 886252629 587557900 522322784 178174042 20785921 4342970 921059753 4403277 374181047 783408670 480061357 131730647 451272009 130142009 5580848 167249151 406020010 938278626 736735518 389629516 309447556 916437259 159888095 144308001 533280030 462785968 141891278 481627357 801319315 421289603 439837372 81259412 825174339 204529973 927742185 353725135 232716046 821756106 800382920 973538165 621442305 220947662 998585408 468896111 236539198 959705997 663437716 980366825 298382747 152970203 178672874 46692387 819967064 517756394 749028091 411881245 855275503 180002214 202291523 391809994 870119171 424429737 253930695 457307366 204760300 151483721 134276986 762017072 520729693 891625238 968398146 23211062 79386531 378783074 691978125 795434693 961540357 239724651 356206897 142164686 986046115 352252623 71892319 39022791 603076008 967231079 462664037 493795826 264514268 65599564 811268544 190914724 426698128 820544368 456106315 136486863 292860398 13838357 91492312 409840398 425634426 719558488 882068109 10073264 19623904 387722672 779621657 534314920 541676262 973638317 10230340 981973242 202274042 224046453 317041721 676311544 307888057 335958619 402525500 424302498 388893388 719361735 376222082 121635105 882124824 277405497 247290858 123715639 438222584 814220759 58571475 392273089 205501227 134137669 897776821 250773879 39040476 17070045 636617538 161594611 275582204 796677885 95958005 691068028 992041140 558851838 201103800 331521778 855594818 607145998 877001608 436413088 162848562 127740630 262039954 511561156 981344064 336085693 764558836 67467480 769131175 286659276 170310349 445877400 917766800 659389767 462853957 444521872 884774256 349686592 594325204 251647380 51679029 792641689 689098440 396230618 478149814 890442194 706816609 240555205 702557033 238642203 100985721 436671352 496732561 214114095 299736187 678004749 57619245 604707525 607610416 241611788 962341112 733905734 163050779 401592558 980179087 55742903 334252928 102659229 41344550 185011959 218309308 451924970 533648396 982347006 216704534 256767840 342557707 684311081 20506261 229391404 168722264 499462552 805778398 32207070 237595357 375079749 563581698 875132643 635707551 425540994 180818220 699320575 558475376 289609148 142502256 918223612 148601296 409791211 837518844 107054909 355314675 505072974 378037930 750893884 393329133 844558871 988996156 86883750 469735225 364000493 992486281 101611013 632322445 407921120 520270443 128307620 272185069 617268215 278207595 953492132 756213774 228512181 498949028 366813156 290812077 556251229 751441327 232906934 295338309 665836047 135738292 829238933 392190771 44290508 278084833 337622606 837866292 197150857 24084730 843004202 454491881 271793623 332147638 696102547 340079096 449715659 397766609 247976513 825569680 610776787 646304459 586230375 542564202 869992818 888871170 599087288 833994657 346140840 484286958 790118476 390284832 342236079 128225580 400789842 992030004 875735767 179688729 655628342 225512116 770406480 290795761 851812696 103749452 87938255 319901440 228214556 775365304 682234532 551592797 127560608 913418128 116711421 950482232 100620866 825977284 39666731 921351494 55033870 231090300 604454767 823230366 59121958 515352039 433284228 470041820 936937026 638118859 873518666 62046674 299133008 846906076 887808853 541425380 676371228 270847192 188281199 46094458 830627629 238591941 825932706 233313202 903611011 249803426 586993923 163941991 49837674 617880582 27249752 929302684 15601007 383518654 984475773 439798601 285892411 260041225 27343114 581625103 419747886 855058829 586191760 796546485 362422558 310213769 169216487 34551239 161434001 301669408 137995281 29200870 461626989 764447115 426177872 870653810 244974970 634202950 899815831 196195086 659564526 959072665 895999060 534450320 67634888 362774160 132789029 924740037 94623429 546300461 552051087 60531395 212497859 192870955 304996867 21212803 869358213 442167393 83813395 703004240 624879957 593677359 131427124 29040788 414614562 555545688 452741860 812336118 978833423 210961152 695449741 795965281 413174323 53706859 870465057 749489747 355488709 858646297 624988667 120643622 55890161 341946960 433064962 408941610 162272459 594911749 547156555 662273939 594972505 519768463 499319685 371197185 748920063 328743764 398786445 401723698 486539796 734866482 916582663 273665945 573730298 155111064 955303466 194903094 770450961 70722931 982855528 137617421 758632252 31592855 969415439 4241045 631399938 396122808 680737319 733725706 654317835 551450387 716505183 142934496 616929668 406349182 469126927 959498127 197611316 15819851 741221539 308055828 558727540 859164179 279563661 779519664 500518944 87323834 149891192 627283337 899050025 231043206 658006465 224271931 119214945 926909010 735644689 995522494 409396457 10507143 492575069 513615721 421394370 691531729 372449130 495625329 705995366 146413946 196488870 375366519 666927291 646622964 705710991 393565233 21928035 59225314 182794956 351121073 134559899 431780419 410486603 785378241 193690950 110269673 79437882 536045895 92170595 483212622 35565305 965093972 957359069 553367397 993056315 738875460 642168022 847852067 235012096 707883351 9179158 620905684 528243748 193241157 531351352 265082666 759203605 851830915 110139728 721521760 427715455 892340041 638620575 141676767 996570886 445776006 14552037 504136595 246213946 359257151 683101942 343943647 940531404 75573143 388705781 33281321 94680548 691038346 921399814 462421595 479371190 423593934 820365110 732888290 501311162 765990247 17826346 172617689 508018475 930238544 914537021 383857153 848438468 303087652 174787574 592666012 723901477 416337795 703856723 993843204 808443619 265474793 780798813 765286246 32585961 29246854 707351593 947494252 729120418 800304952 528911625 566006286 302082474 8864685 991994178 66073716 430467412 901915146 221427885 335908857 884162524 308596732 428193877 529484021 746415286 878168108 429095735 786535133 952527810 628339198 494196038 617198806 221051107 768600015 367160529 921305028 613148383 212017363 55305829 335014072 4082576 716515057 372376096 20618147 511195581 302129690 639269675 293442967 422792827 7274717 250696517 469380619 517561784 726261808 539153614 256058159 133079742 340614784 780897809 790486439 168550657 276316453 104593464 407332734 899339620 79267558 663759304 812058057 308220728 148062217 7926094 948535887 863154022 195875047 121495922 982439410 884246438 116204528 316688609 220251586 828263061 721944279 331639599 330503910 500596925 661981057 564871695 510560571 9735068 433096567 531385327 105942970 881317873 783047678 797242125 377860921 96811949 316068850 834421281 686759748 167260956 87685970 298697174 518336901 42842130 280754406 278954567 580577792 41122853 257786142 307189394 595301891 996755238 31595901 480815833 318165529 464251353 427770377 370597358 226425166 540092425 175952765 11846796 371068391 81347890 890154550 777393368 758953324 113850429 130744604 747981806 157571970 131765274 270940745 453927762 151851836 542027203 465540718 274258463 600472962 230048535 812425000 315212441 740180923 931418182 27349167 456440522 816552029 815317676 101688991 241908442 531270671 187240102 313768037 732968388 781669583 330484058 618331950 429411946 145801161 522820461 829826132 56262863 50744173 223881980 956748955 769081425 867663595 72280567 129597639 404300018 869758285 131843604 268561801 866179759 53921920 944382571 141463691 958975385 59301887 879265562 950697433 901094794 45264890 359100372 259502026 64189408 869964827 133022809 994991107 783140874 966977035 178433208 620547636 959286888 583880791 384096525 17628555 448684631 516644516 312314125 170053374 141834927 547923471 526587019 920946847 422371503 224429936 818077276 540909214 580283351 741375993 342357790 272083792 448601264 577519837 985609280 893024639 375245118 665943269 753966111 358864960 156337398 617056771 831424974 984377650 964886236 207826291 636362244 99294014 758063889 616426122 835320325 985627413 557308399 557901965 643439089 375244728 5930487 465883147 533944174 324611362 237912702 516882140 319145002 872005225 854430267 844324567 83940292 2604043 920736505 695219087 197576462 264441792 275530480 451186633 236198491 671514798 470938544 863810582 250098158 225711441 587179363 749606643 955110845 913811076 718759070 623587441 674280620 640019395 39152103 485707344 337360709 675469990 311932591 426754105 490055715 512481312 470499249 371934610 129849134 341727973 377554908 584288395 708143758 533539423 697125167 286731408 25540582 55716624 517713627 549435376 825659666 999056255 967040568 495959026 84074994 452591907 581406479 515272429 5564364 877276014 984099395 644662156 84412377 911700757 924037192 93322008 213514682 677949531 420134177 650350561 637500358 39620114 349401140 861564393 629625356 508286785 647010140 561478776 969594728 978887454 426540982 818218310 802023992 68456960 596839566 887464029 1668307 922048271 69117021 473050925 340454631 2186176 808000971 422053500 235772460 256131697 815361214 196064406 588356506 534501647 998884154 805833951 229821254 295909058 391972840 171735390 288035693 924051097 35245771 290247009 284923064 762208261 456720511 231107073 185724870 985544490 108263876 570804794 504340565 227007511 974439407 236466780 630687481 970320235 750995859 695208719 262997886 72619513 213625626 736650442 556140266 218790768 248530685 819924761 957668921 72787826 917909740 911142790 787611226 169118175 571480279 372314755 354195578 28824856 823586368 81545979 871953171 828435150 235367421 492998090 388539651 268886524 338834274 640783254 317166237 905777482 280564946 516273993 520506705 22523235 574767574 984915805 358304858 157330429 366392258 739836248 882890973 236484488 372363962 38638362 995476748 116146699 699266147 758687705 625597513 196280281 270095625 17806608 659047487 799278817 290099934 5913896 26451741 603858392 588292712 798971837 929504489 112491649 667824523 505678612 654193895 402746756 294213921 137109765 328110688 715082305 893354118 954719183 732418 318525305 384309385 680648165 627727829 422887411 780058942 623994032 781081629 422094891 319844067 262389757 79869798 480563375 812839314 888493503 478527418 705640009 557574406 839873194 830806775 664519483 13864796 132655270 201833802 712491081 429490017 331095031 891463167 706470545 961299987 212945998 458351431 941758539 627737879 988947894 721419548 736648049 77632233 207585701 781889197 602165412 677591832 315711837 995558509 530894980 351982958 553460072 52403260 995205111 993914136 579460248 577370106 226646345 883659692 651305962 272961401 170034595 649500695 780958107 452515611 350655147 67803396 508557200 799799626 731069301 773625311 92977691 61301257 430464150 589576192 118762920 81914152 907031470 969734092 36830351 894374265 527928859 225799215 668684287 456377206 662089099 68416994 722267436 365596327 206229905 176948327 836406989 245456486 804333265 981517155 96116109 238238819 346055540 693469875 711846926 217664858 430490046 243955926 361955860 750091062 994184919 828173892 827132497 910061475 205527711 48983625 714630947 53762314 856325223 421926697 71100958 873913662 777043702 519134687 92600929 207013131 88074726 137938368 536575236 509799185 738218752 834689388 872326422 612269173 154971526 203438923 261322848 157841236 586193674 865371993 737958521 973631098 619854831 823250069 679049738 990533701 118289690 361491921 789007158 3575939 642265927 425184973 782961885 487766543 835695743 960883544 580088887 322115167 393112597 418458624 944467323 292217551 565909834 733612063 630372834 928297376 976845769 36410989 845025193 480900256 740393462 313284008 945785939 542566990 126599272 264315586 40609543 370280414 442080990 913144111 44129846 285362815 909004494 922974473 119444210 675419037 71379498 851522166 486132225 939621644 268641154 632574404 442269931 475028680 825453421 399903931 993736636 317874436 224814104 556988826 210273595 452438250 64243854 952611278 9880712 6287471 29215831 513547310 53323861 242423738 93940168 325030340 972311215 976181970 536282315 333613732 475142252 639636697 9912936 729258656 542035893 364818321 551165619 518456528 755617285 457896252 10417379 461439735 986999599 856345094 26508144 941724385 640023253 10702472 992291290 759825560 164975275 548593725 343761626 422158301 631867076 74698732 132609478 867260408 579030142 203783739 139236335 212019153 359335654 140027488 977581870 954541968 692976408 297337295 13373283 143446556 26350468 686768663 505245676 600763088 54608005 429777541 115174212 830406706 722341401 862719916 393356179 307726712 569904338 143486427 212684025 603926357 774329486 846339234 120649806 349941196 356470034 608221954 995524647 348333815 638882871 173989792 548768843 368319101 24957227 449109596 67047630 872402721 810461973 786673178 995806708 268204417 844426458 945708992 264283331 819052124 580479328 291117301 943146409 360867695 644129116 177821375 368455836 47361033 832517465 705130549 262534260 739845410 744113443 302768879 939273757 415445181 172071390 773336387 63830099 36720939 812028488 310581378 653983639 23281915 749810263 282442898 873305461 456231313 234041641 697522968 606887971 701573012 267313491 237906370 727036582 376805190 306559844 13890469 720183439 526406201 32902417 557196551 826999209 830502790 962034732 878223755 256847404 613504055 419829928 754907855 722091531 838315411 27985387 889328240 310608555 29891397 160265900 992664088 170710519 326791896 224691217 203996117 553135701 919198877 485811933 33801733 843310158 567496512 997006465 726635013 81518147 734000002 884081291 94566995 517521364 644214264 201938825 570391454 415876440 111247009 458634204 365211778 713560239 36084485 824696588 221080628 522302427 138941350 447338880 27905892 830304517 294878768 306005366 808302265 715567578 20603792 295588255 278130379 86692346 72773395 368467178 446382126 661883350 334555907 658203334 911555717 297652044 786448258 877905290 823483677 324865207 176872470 146121876 990388088 47197365 201655317 820690085 666006269 387082633 386747868 58901421 191814400 112792403 775019401 850207405 548495452 21603708 206882049 639765765 890672189 228837229 239334522 43758385 782199310 259640336 953992952 659375383 630225390 10464623 344260305 680825299 498185703 391460583 401618558 116290993 867868757 521367016 714999457 491601528 113138283 844591626 402521053 336648409 496120898 547657212 249237009 574089132 552829945 467845329 359133499 432358062 202080256 958541418 383659310 973975477 155825458 163913428 729984090 994090147 836652279 342933376 353047812 516827219 886114938 760776016 301977495 261648071 498033831 143519463 355347902 443519420 293646477 73387461 601042965 452853852 162851553 375786909 202087660 419837476 342841516 473428214 214268039 752771806 700125169 267996430 441265481 86469820 104461641 935538884 740240477 44141263 532586750 802774253 760723804 567962744 197989450 948202736 405767089 536258113 416864765 896287660 658055960 836604209 410498137 373812128 845031040 81074596 185231424 639510708 65162650 594752143 504363601 372890493 634497207 364327722 243759214 904503057 505541114 794984234 14563227 22325130 300359931 26928641 622986964 441947852 480830948 41010888 512650901 320988505 742068500 343279797 349143168 229042870 525089987 851711227 74929925 512066343 882589737 59160429 926555044 48797177 365291961 647467841 242728811 284642662 275333065 385741322 744636591 423169248 57693476 703670310 234405873 773276837 80942429 351840718 534975304 919586668 525580154 295536209 793882115 715419232 511818312 986158702 407646612 571407812 262487028 441488755 967146100 512022661 77794034 506564857 800321753 207043908 371794728 640784897 900910480 367239755 961981026 587012646 570516612 597502454 708776338 189881687 195069780 930651639 128658403 213281519 534725172 272711477 739206478 94108165 998515286 686422327 491113852 438905699 304759239 943963894 333557437 195078836 615521418 509543266 398859988 470221298 819078273 983972933 576882089 504186869 501208224 882952915 362300082 410837360 24533542 74410094 715775830 164475962 315698782 368388915 981856962 825599556 875288795 335008123 879912658 552627426 31357089 454382874 719196048 356354999 877106497 590887183 685271987 276542990 352256692 86239094 714778030 402373596 508399107 524049527 481423760 866403426 425364750 636867471 285527994 27902937 582898322 530525509 152354997 801668210 510102477 221255100 214695540 824182903 904806125 298199216 841300366 857891251 656885393 32627888 673621038 602391441 16279078 892292601 720987434 77819277 285530580 735719307 7676304 273641308 36943585 695119659 478482369 906665983 750995027 211762981 444115802 771805593 843219177 303796927 153612766 391973679 105190536 973982596 98166400 960528902 943721999 901978509 659615573 390403158 362653514 992394388 774608303 801346599 599298951 51810297 418125969 322344933 568965670 331765046 783597104 307307370 262471264 565333267 982211679 685107888 362453550 920273006 933143409 947511508 305384951 770500649 835689990 117216564 509946083 117092932 858263044 202147971 320505496 529995626 325508363 803739467 748570427 240538019 305680898 478748836 138285127 17855469 258618367 588602599 448338061 697865204 602016913 768023174 850812658 77343668 110466510 152596093 305330050 809762419 989979328 341112480 57873969 721010709 131735834 60961332 648507481 752293984 376884775 317691300 378122992 650872598 16345704 811968274 401637620 760997394 324770128 662876962 132018293 740522980 557241985 753005602 602051362 303560102 128991272 138101867 828087990 637081513 377264823 66492058 949644233 638317754 691527801 612640935 182961559 109835017 998778486 814767336 991862501 829315741 271795959 469313860 530734835 441089310 414657286 243772803 81200833 142719301 223653916 546470895 215172778 516667895 13146873 946788941 553415841 781467089 530468820 41553120 479481189 23706444 146637274 591160306 892911273 599106705 573917398 440390939 521368904 796259735 237881045 56271239 351012541 342940244 504472102 421845201 535642330 645010015 449328747 940890517 913869188 110663856 348333434 398432585 83219726 360887967 210272700 399787409 410640846 885422631 248777337 748085052 256131846 758172794 167269629 543026376 125975720 911025253 897641017 775758870 147573738 505708707 105573210 141260914 179966072 955447287 681890990 194349053 620737183 921002890 139390635 305665736 115147164 123717507 525212034 433235429 549216953 474548300 785775422 27886897 605461156 652067065 174028085 651772136 298198412 884248243 960987118 362022464 350297566 613450703 6835236 714419608 199988112 213660852 516489126 171111824 862018988 500864829 135770968 170302773 828632 238802320 544026999 223717501 365021632 262590992 207519374 805720073 980210046 404038548 867108154 408240438 387141150 224597020 196952576 871930477 35415668 378722847 782611971 142721215 851032180 546385136 331467337 521263949 233113569 864816682 77080755 745953226 874702961 244740188 137007750 474201767 864825364 386587377 659647053 212512983 389826931 326678585 60088640 358672170 510804253 823930359 662356146 869126803 276717060 441691107 796783129 106946857 908606888 915537904 167818908 155526337 67990890 938870252 950238174 493824517 456694912 232589592 61102176 220321631 42746783 87007306 556605295 285994395 807010915 814290307 221983581 608440255 444479638 763796641 292560905 544801023 852159488 344521739 508687819 945031367 380456533 996625284 66076009 585073697 884453884 809528264 405997968 761785184 579800245 518525505 250057216 740769116 283051354 368287565 739335225 446733243 582064699 490322146 740277092 876385213 295396074 652619260 766324062 468134412 408309073 326527129 824549558 984410319 765978920 639863228 812892061 381111952 41268075 720584168 718215526 758094586 937513778 861922379 628102648 297868763 239049180 136525655 867243167 615933086 216564593 810029064 789449467 202093230 889277718 48151306 945040779 6296349 78790329 486449275 366824626 224807507 30691298 576463187 970388639 731872976 602950233 922035504 296047552 16686624 468782824 367871821 609455744 741666771 938958169 542242718 554528479 575329244 97261520 228557180 28883205 547817860 679677108 470425732 50309960 258907541 626743639 170870958 186753373 256123692 817121747 52041289 723573787 516659841 41704783 95382395 367060001 13514240 63803422 384822211 132649596 963127965 991267615 678668068 421167241 358619720 394078277 971434893 627547324 383473157 334992856 767877093 833950317 389564857 774535833 54813157 950333585 409454784 935568416 399652899 48234737 659199595 938280804 129877949 611733479 589262818 639700155 9277814 192982026 981564077 680121383 483234129 447976218 430706345 980008903 618978044 329013496 273030909 850022134 681334722 90687234 132116526 642026127 247846730 19497978 369874609 177506882 742390463 584364600 788178618 359387682 458311721 453162062 335983429 415823730 167216207 77140337 703994330 976827855 430076460 623584848 544173303 463191391 902521522 930858651 681293084 825648266 659726601 899408626 907469625 67566355 432606125 680650418 390916411 258303058 920132539 457128923 785336832 686179315 12436650 140964841 122497793 338169300 478545697 433558374 865579428 715859608 294070505 576085162 767956700 531871491 713148356 755379014 61228088 153133675 343890825 183501450 486266397 908497509 151108980 429684394 519390541 613080 25720740 278262973 318851624 866731953 773275335 389016055 457173212 835592936 740578205 131729068 65983958 865423518 21155378 77445833 411731903 285956912 52507520 183169265 753410381 591165273 393075999 615181346 421438060 554737916 872215945 431756112 984654380 566936379 847269092 317549712 528476066 871515126 477392014 75283985 339933168 262975794 728464568 558344349 6699135 305664750 898488807 770077742 124553094 574597803 403255111 721865006 92029521 68911546 722898606 83110350 280049893 374198484 655201641 243815882 369264696 889946860 136746906 225973714 210689901 252872175 465910294 461466596 635335112 176571038 177088879 696548433 366805489 183109 528581992 654027502 619057801 129454098 739447431 279896982 733526050 778481758 14077214 270250430 825419607 284237370 785404998 758779056 205727171 210008810 40113332 115158919 957765867 710890879 322311719 927391210 967972980 352555831 112590197 422139095 615598919 143936661 687007658 298630519 22848273 546091290 831920926 349916496 22463816 33213840 803855854 738719653 479892574 295035330 524030372 625325627 167568089 163916800 330610504 102156580 422522834 715775736 881088071 457149861 138104520 766936448 833880445 959932131 852772981 582391435 380077705 962446511 420171603 278876438 568541151 705933638 476634339 128849573 701998721 872558290 282089232 237105845 625219462 685192712 153903954 600971296 875065663 583681736 737468363 973806321 875771855 129576394 315220112 741151453 183782394 170486477 209492073 21521298 905603628 75233123 587009713 379200329 850950429 923308075 775007329 524224705 350540955 335404010 85202168 592838641 686146766 564408092 116314629 924767200 918787253 859267348 442621692 666567628 235464300 275300580 425384834 425977369 651837650 474633493 829673091 348574831 771637365 511234112 916005684 873827524 651831304 225784211 135990565 444479403 615769763 672623023 724622021 732086046 367854818 921437700 419487164 448041965 947399257 78148235 543964191 851078746 516609052 401352920 974433875 778278131 394313110 994437337 559223222 435147643 357179019 760728956 265372982 199628116 382395443 857986780 155741297 189621834 173461437 804413423 530506220 327940158 614374283 867593063 675303388 304865863 35497631 507264846 891894488 588854354 841649380 185577952 804684058 370956755 387547698 434356028 344087002 526921352 529524114 15579214 493765255 660277704 284583386 627350651 681731496 387940273 139165520 649842979 823893342 537533458 992426690 498567871 649050866 860951011 131214455 199524183 126180267 79648675 368172216 494785082 978983899 640929184 690242729 955662172 245976698 670280234 3683142 500706984 589680211 936501623 54197055 883629333 350374696 588339070 356690546 895196604 831484323 989282653 629399149 455277278 798863775 807261239 165436727 170011268 185693539 84091028 788028794 777247551 623054337 531429770 906792885 956357834 21805469 858722959 680876268 654415047 491976254 903185143 269515615 586896700 211208518 686316130 257251463 382520394 644203041 477179736 930882778 620465695 316633757 69221974 787539201 431125677 681214081 492875021 421842818 813144968 902400513 955813282 802223248 211762702 920642899 261016964 665736635 647148047 65186782 132541633 133522906 313549313 895877439 253086190 637717168 322976081 494785989 926735973 227589096 110085414 363961119 251792446 879968241 639536715 837151323 692901642 970274600 358347607 163020345 9065257 940655817 408569102 144849534 696686324 180630123 122949242 410299421 993795874 60887504 705925516 761949031 712417004 79175138 431160035 798705268 973425809 521188570 884236297 927309126 950075921 23077560 888785223 847588776 599787095 468011577 261758037 598165343 56248872 671250633 721920296 975266039 693193231 106189551 800012246 444546637 37583571 281895190 585766520 213345127 61161604 399768771 755241353 713595490 266355141 301851705 375575076 925117496 548931399 823307521 220722690 659952851 569123243 9360762 830752807 136815982 725528153 751632539 983838973 74598715 66486811 498790544 716617139 86209739 126416520 283478532 6162449 190464137 462192726 88163031 503818764 711536841 25824227 575945202 221200713 201303183 758596110 152252166 290558112 437255540 932383044 317924821 56456819 925627044 458743558 60734211 679025761 949329606 625820423 232602662 856152442 647229360 741193944 479568371 849686599 836805851 383043876 867925580 901978391 811359001 819957013 381993651 228067199 220347878 704176731 561410950 12930413 337152055 389836487 318748824 600856447 713725040 925602141 790211092 558245758 654874488 860197807 643965909 812632658 351636030 600430519 693992706 890056686 157075587 786263882 344398599 486960973 755379969 440499336 254157120 721789700 634726325 628216147 55986476 669309055 11967940 526574063 68237719 689720973 269596273 180810247 167380569 129680826 439303853 11354918 767287432 724994962 527198239 156388240 231386216 478947916 322171744 697447865 606517525 627044428 289085878 718091071 885870821 361460833 353790460 100784607 959152142 920993597 350426284 406278463 220056156 73208620 557554249 614615120 715556581 307257971 843129621 471210714 705007684 221755611 574920770 829304774 765066465 271255969 967335509 627117412 53955909 178407890 246736320 920348820 900646412 35379051 217681433 210220999 712943481 23210000 575043454 72357818 441284558 871941732 634505896 134609233 752138015 339214526 713386098 172470523 817151354 824465 220601665 34871316 682212372 678558875 770802283 926820961 515565670 692517076 794530490 711531456 207683906 682174112 746854779 324790859 339745949 482324425 691038938 927354962 504219757 333995539 320295660 118557490 722438430 581146402 637024688 319153426 968849613 6665043 735837598 2853264 393570184 181028324 450428420 323543836 363306447 484204885 192293532 534836380 990693760 348367676 935414155 375973985 890318261 216842297 665605637 815815575 969912218 637181051 357422709 372720834 11963263 224643727 108811625 279303798 396181849 692691815 519432662 980242414 992442395 752621178 310251358 7793778 489268804 858987447 556819953 842292105 266043733 875512110 331973594 324706216 533736587 845782628 54662896 45557035 128633608 138754905 339683214 614585496 845164346 204694348 533510815 305523363 711841483 488630699 848974233 652682876 161108185 108152100 968921204 920291286 969435380 158735051 433220352 671047033 687321157 376079989 666643184 327230546 960752421 785678253 124702186 256619543 317892153 591995442 1983112 366538446 848471553 924600774 685274446 31669727 104418772 692942603 329084966 343294220 291704147 478056200 14683827 202300325 855653778 608951794 928038427 156457031 853143154 711512204 720567729 867356534 218218895 977604837 60817837 762186342 707518153 829818181 316248495 603768201 558131222 251967381 249790142 305977105 199858384 175520990 692666806 233249139 506292257 514447397 651406299 469599143 554574129 72337062 868124443 248962997 645367120 76009996 679067039 809295084 744182091 200464848 887560099 455592462 955796794 442062347 966264257 613424205 553871195 990450159 765834978 913464188 478297927 703812493 101981138 148936292 975795883 452483843 204330899 877220145 250195182 111042521 449325036 621804295 589873622 385651867 301906770 91977364 105721702 889488136 526248857 563571985 542796395 201934800 108768963 879536773 26712834 461259038 167565393 887967306 579309618 385852952 138544375 494358731 290957924 177073947 601916264 1471860 328703715 205480773 729317517 796344908 342803004 912934903 922991303 58554356 207015760 210720903 296308824 864417123 556420588 950290876 748946791 58839062 670812071 58187693 8041637 450603524 976983170 965510032 124875294 794197355 538864059 161786062 636660350 885784350 576752516 345835368 936316279 329930455 554931341 567202347 967014632 982908585 798517875 466455310 681111814 692984217 915916251 90376838 415874239 256042810 739546808 841548876 849271912 482533590 883840509 119082467 434519576 786494787 87477244 152446314 881180691 278413028 919279713 242215059 641886267 769672817 238478985 607864781 493133489 499274024 986583496 983939783 399425092 21128454 820580943 677090010 455673778 670735292 130344571 569167731 467196946 400818430 898932807 552927752 451834965 903320103 347124691 93726454 364862980 593367396 209555066 410326245 573243009 982673282 449969442 874930007 934747875 126145880 638210792 128799350 907297264 239870986 643041182 656791591 416173710 434077388 745572039 460482639 875556049 578219217 11201287 752981103 263852685 43275157 107933701 318494449 576621256 333104513 380763670 34622937 950493881 239873523 735311807 289362903 907702644 611447428 997603210 968594265 882388754 955199645 288384731 739711977 734026652 252389975 313471521 133776151 605766180 273547147 743318877 393781807 840204138 252855048 995257267 224462813 116396597 384587779 207317166 483230812 215633674 622101142 8503326 171800460 772715561 569203582 887196400 612741503 997046590 683068594 174257842 237782741 572152846 999297531 459281722 431049418 369075871 492241396 471452154 270251091 116588080 515440007 461140025 599750719 213023311 444340059 499951544 437243247 382097886 128544639 957133343 956796410 139641086 21800055 452786314 55765584 534159138 396661515 815378373 306807398 535917752 646721885 934751119 415525557 552601854 934420232 854589918 66216256 835423318 539499838 915600124 583836092 382834061 952651939 283957749 914824738 535006638 489412743 468917650 371653770 416595161 218563838 45066048 562011564 200484549 106945816 548562996 188769724 559971268 744194565 200730021 386882432 77136071 298184975 769403271 126123981 365450113 510720310 248152646 541465196 485265460 470453223 183494864 876376527 940808528 914817908 635985635 157042761 632106383 857294429 634246335 719941086 110415380 802867209 7008699 79008853 471138710 712465028 59271341 370455336 335193461 413307746 337734954 709136269 292195245 810249909 404639748 115475119 269289511 966857379 970369110 602852730 182124008 393114386 324017623 950131185 315812549 581550118 270855369 793457943 211162339 715682577 518892106 812763160 440459062 310844937 297499357 826095095 168256091 609182911 50617554 967970400 942114091 23128682 958778154 780825271 39341852 893874376 78925137 627298746 393882210 970584838 793976928 700426598 767078734 280118838 645054887 378199836 902374668 417930683 420336640 205417973 283599083 594035836 506523509 37710359 33227230 109442365 709409224 504453972 510828769 879134987 392737232 810720 487768331 170475239 529783385 563979205 116408504 171044838 413585608 869390914 963172313 700589894 365299838 403150114 377566436 979508862 216352330 384516656 86593741 434269395 963855643 303283349 817365308 539862817 971056891 474277177 680823546 664221585 492457840 132102234 897538106 114738419 74423271 396377514 568908825 681903215 778755415 668340370 380159993 219694871 517921853 340480458 247876002 773395249 530292850 98252785 184293846 711589333 948541701 637080493 150215457 663182926 415302830 326688521 371305187 858362222 945158219 859860277 342237080 54809106 686528149 284677919 265316383 14323671 550508639 401278279 811943032 911382237 734044337 186042005 867014435 829712064 356746269 997405405 127635372 159303348 536349723 34203519 281466106 9506835 177156495 888906369 541082698 47053746 418703332 49076011 296783968 252735226 112671480 883996465 658995288 413376031 263034205 135840106 424464986 756473391 276918499 902582589 261339153 379702333 854055503 628896649 175522184 741641028 335704287 399972266 318106542 966855366 630519213 419670634 332903760 262199976 223159683 740205394 896910273 357442851 821567541 255756086 43220538 835861888 791583525 116178497 164892991 237044743 758429468 748088966 370880032 620918060 30723530 430050316 899195802 756269548 716825557 575518152 779381076 241000857 70454850 866920435 747884401 484715827 897545865 303165146 387956705 756511659 609307747 761693894 280574151 386483395 351519410 257345810 164398735 989057017 679331230 81276476 694426814 545408968 219726622 357184861 334200629 895452267 21130803 914565340 742004739 818017642 611939933 523472611 615739310 986933195 935179730 873202104 323192091 240123092 857188551 14641973 196704946 427190460 820040479 137879328 786032300 255931650 386158718 973378280 397023852 531442749 882040301 499506967 764942752 277736891 210438264 301753677 619035474 3008567 666365407 562739912 22183827 945455025 276354361 768580428 173139829 490697220 324202110 48272066 834113031 289374362 979612335 481756827 244350475 838973484 515606208 519690008 280398286 308273155 706206282 400725496 927622937 6223155 356984887 922173187 377040475 163416445 833898448 221881652 678776204 466159693 494803069 201451663 951283260 740029184 718382007 88449287 805667384 115308731 626222084 436549142 526474860 173583844 680499074 203264687 610129179 461322029 117965643 622304595 422545971 744296859 373179182 321296376 412166240 919304191 95356429 5749501 996465588 565465884 652698475 838969853 402625717 126832327 936488911 880618051 509094349 679658310 766931840 322522172 468942795 9584322 309433464 634166841 4810056 925753176 64203802 867415081 355128092 841105951 388792947 91529614 960889367 118984706 731930857 77756255 371740472 398616132 922861704 901627120 445593606 859196971 880341173 361359989 296753359 148617101 111669503 456380687 83820098 766594400 485529180 852597952 918891367 525805369 143194783 911951062 86178846 367959871 940737105 134867401 661260658 711274372 74400797 361030470 246095528 34935820 288157724 788998236 202832713 805468355 993381540 12068143 761439217 806516661 390919655 456544767 385422415 219242160 94728774 849035425 676692634 975912244 440876270 642005502 809166602 159648574 176677819 300803892 375995977 307304933 432232930 641918117 71955794 514937810 97393753 739922376 497855975 977980350 413582516 338224764 781789373 783735569 811960743 832805151 221154461 938812171 524102017 603200410 479571621 479288161 388990600 871701836 51822200 710726635 656121575 351865475 611620292 970862261 737427552 802444112 233202694 247286883 597192079 794731113 358494689 552452735 904431509 483746608 481737501 408577288 45751104 356402585 517885495 183785486 594781966 641980243 592819650 551559872 748294676 203955521 300446372 818054423 959443382 883132799 373567072 156734056 856389663 194724563 788305066 332633394 633829548 317472613 269689161 536612773 36699341 496509376 707953511 917845494 552939815 155615285 941452790 688811286 760691635 478801763 344397601 239201691 205916723 800046589 631011325 778316585 328588357 22634409 881044470 215386273 29100702 653607568 307831162 652253017 47490032 789161301 944524359 942638551 500047951 773058792 883475821 37332441 486598586 751520671 737187043 723432835 359717746 871865995 13054065 681419709 434030962 362411281 750738170 845395494 969057690 371323242 493636532 454881706 666998776 774834185 817465774 488003533 792939416 129259717 972389565 546741688 174696121 836507958 758816855 281362154 149803829 158864949 469655615 385769907 535015510 452439554 810242460 280498865 759076327 328742446 293002032 335875675 558608855 688051145 156507572 596948588 211283604 275148166 434201521 45776550 904028716 962553533 652182449 779804088 268745887 291681097 905213750 551414356 388936511 449258055 614819356 514706270 47840623 553495278 385434538 255796875 770735964 559030721 645183774 59270153 657928723 832885340 30322046 516837121 375162093 973864727 415578884 444116236 852689447 317805456 885166787 446576646 91760160 639118838 463041283 999823719 223874579 600767344 418552177 902522057 789983095 834896934 678554947 117603538 27726230 444727992 78826482 178697632 71450842 367304347 778053537 223811014 618665660 460858151 300606175 967057196 526011723 660262366 51668584 933329988 550966758 81619572 303964759 517253679 950505126 128739476 511972222 85096902 636221999 573516921 731811627 311871631 246752787 373756080 895238434 928620963 163025179 349323206 235775540 429974202 222881968 516368879 796378916 688448409 641875013 243487072 478403256 556192272 392666613 580162706 68523407 367516001 939325723 300857290 475038697 220394574 477630177 78536303 119438457 87414540 725360432 3318017 583549687 842646862 828416304 74741645 242163543 394499468 509784378 228091996 280184845 511068789 425333811 487882302 506343878 450007108 761151393 608191087 15481418 145964196 171861250 21055591 233527835 132852215 615327845 353390436 164349214 331540035 31656496 391837975 25059635 785162548 989042453 370575995 972174932 851521136 708564420 856065200 766792098 872320838 42185592 704493642 155806266 498080948 335545191 950424347 610391363 878147522 357874467 910436838 356064102 535282664 802397024 387788251 129522429 505032332 909450445 593498764 251464742 609922370 452804860 792986916 830762154 2542918 874138469 352817723 255231761 334967770 255268781 836846643 629659147 332596260 459495878 76613703 390714710 961301642 578882838 999712643 271294615 995987729 741279773 716016180 271873931 574809191 712337527 582117794 214779129 692527501 393018403 903329229 908814384 997985743 100137544 645446525 413518467 488613034 728994636 915681530 234317962 398753516 880179473 450440651 591968133 726203894 606404694 279923700 649732589 27092724 983140811 160995204 504136232 223940276 733775861 851303826 228257838 654531188 148279270 136006532 309729501 2807305 455879615 875804717 344402204 573041422 954880370 396381440 64599039 750791765 574194442 587291582 87946480 418598896 359483276 171022538 874065181 197728745 114406015 191441534 170421576 758448263 475635138 998677581 914249499 479970806 208334240 185981197 565925467 606136771 682399333 275656225 349251241 496466266 328292585 804387651 230941600 18112624 964542245 605595560 252756821 427080352 59077219 425017304 575427020 819152043 92114101 327916320 929530656 846055089 470315126 975723932 825065813 423084901 384915301 441552812 341810585 1512288 604003287 332318813 175484784 232755478 547033764 841331513 437624875 290497982 616289493 943241571 635443477 396003367 706266703 615758223 999402002 570166425 562141146 935710480 4266422 768366989 7220110 81012538 763520389 727358255 414750420 54215774 129974558 113840066 318620952 538851913 516963131 42681107 635759589 546915709 813286660 488813376 964509607 298224958 584495319 1909789 167261207 158600702 823074917 498126257 374749890 598289740 330197282 53786151 197931804 714061268 294745157 907370955 527062454 870129843 776250803 650578125 21823677 866100601 138989363 894831352 599245683 805282893 457920495 406637045 775690000 225624118 326215833 63883803 166860757 721524214 48117279 306426088 757014188 312971335 505380905 631902448 139989092 441798678 730568416 637362673 572950184 880404334 642369997 9271634 8638982 466495157 180008004 317907172 545295029 301329893 46960904 983578196 721678906 575119643 172668379 746226718 631683382 818536210 430745774 904082766 760869726 370228383 834831150 267724924 654251429 252447829 772456608 265873873 537731786 980477315 63991155 187715992 188301654 121822758 163603148 798949887 889758398 232817283 440293756 141007664 503810130 875070488 137249963 715582575 171906281 43459120 480376029 653340467 474068625 255329877 123771332 286198870 298703836 725511195 330639218 892530233 680864139 996634011 299945949 413763608 740203348 837306492 200282653 474512162 666102542 431380805 350583992 529614388 869219037 683433027 857752905 52122230 147042265 381683380 70762756 678910212 724074451 302271769 288774494 941299728 65718271 346622396 36030866 414622440 775751740 223122030 966310181 78131923 377634437 162155961 515070748 814668895 133307573 411914271 153422891 838820800 431167620 106068593 705411699 952111619 465295850 229672428 291534636 227449290 53410756 82347699 737888347 241461121 895888810 382349330 361839700 594396517 45593105 637251769 407411281 88119114 460891144 95674982 342916104 857018940 388179293 313713651 620531277 969782633 473083904 52605712 63071875 974477183 109311124 886342375 360044086 93658537 108945252 710466683 84398412 249048590 347239534 147857068 946711672 99161164 361823113 707256831 940071242 244181846 963607827 531570909 98866515 44996951 428942071 454400924 200452763 503164444 531580275 99710935 117399137 338830969 529659568 913870959 116147592 137061016 692447038 384055949 278822557 178372011 850169217 183304362 669369694 155720068 472443552 46934457 873504158 146988851 708037202 648985230 344814419 390246970 700948050 193623719 886298237 19231667 772120188 521950981 400227892 130821249 554576298 643653603 823990190 573467870 275337894 746830537 238114845 804767591 656002749 874713394 844161931 55962436 578610107 294718205 666849552 176769582 334931186 358239447 822420492 753876830 542923649 855823028 500214717 406110682 39934029 743388265 629653200 761120041 606550403 508149111 127537693 936447705 5508358 794140264 37514061 710259918 544154937 303799879 954479163 470845230 799445292 3750102 449618319 714751831 457582726 413329471 645006782 997399068 400042511 746648677 516997028 363312313 244762785 538155887 441548069 254102660 113269555 360466123 892401650 679942467 794228791 664620540 423454642 274296547 515346400 40802950 342639870 613834365 938313596 182842456 632251974 130261232 578983393 309898101 51548323 956803875 230426811 645534370 542984721 340095439 725369038 292452863 921949824 151390162 421064215 83283791 698118759 762504990 974315474 631783508 841343867 489876273 921818817 979548700 156436295 9449836 560485798 646442906 857512752 437217995 600690731 724485331 322543353 374246393 460391335 190990432 859211597 31650054 78685565 168682376 649164770 421912461 413047085 277725690 46013918 849877897 230347465 437690575 556508627 315405482 468174936 268218848 810020142 775738320 141670721 348804293 188251206 205414870 466181246 979303808 454383678 543875559 947048982 379641448 243216889 581598297 151836989 524623266 185814613 451963570 145228835 590797938 829305959 478709095 888609016 861051384 356714415 43328172 141206829 309254764 956145632 346077839 400580833 784140639 646783915 684365140 384869106 536063853 437209528 731278114 309058787 93848668 60494206 668830476 47816316 207089780 690554675 850216454 129871940 668482596 648681090 501786201 902965467 881122717 868729483 566472246 229358497 65001370 399648107 746016046 188455202 525807624 164253926 799175791 102030065 450886225 333371216 5912178 825356871 345014154 881438252 991440203 36607437 693137459 510973646 268904988 538478675 440328948 960552202 131695618 517283974 808873277 410039664 98302509 191799458 804824977 349894081 368176009 910297506 879743693 769394589 55591044 821420534 596061315 556444733 766401288 945018571 88611708 669323701 99094268 778629218 488637033 188190814 960187553 878539938 171382789 313579576 186870966 835722642 108067299 249216395 686742595 673062192 779803793 357098568 399574450 591001893 72067483 480242427 964462265 912421427 267173654 994843407 944373792 799776740 33178705 944335337 687385129 983885966 665407858 909739547 516218698 699486684 827742696 570747926 686413935 875346371 50861071 338223124 635409650 383833236 804536554 400923550 561988938 251116775 415077153 648838957 84964025 274824207 834490675 902414476 201539968 657023874 992633082 149274196 181909074 336461865 711492702 868584988 290436765 21002956 383122179 183234583 626847503 14714604 864456095 145326194 540895266 92044618 769555958 573181261 241380424 862824113 965786187 639269788 775035173 126939215 994469780 939569721 172700120 360858190 241048433 978155456 988350844 30696228 925788425 101738361 131182516 596767999 843624244 489204021 862848314 692761329 369872695 585569325 283441438 131514958 835143471 911928953 106801011 708205802 89421193 291362372 735014066 760472001 617011714 749387822 600011004 933254253 825451272 859474552 308102355 64529335 104489394 795472575 763736630 624683234 649895925 598179901 212378959 293172005 757623006 163725438 969158226 386059274 494560138 935076984 698995483 419248925 990415108 69202103 473246786 329334101 432710203 6913950 824866935 730160699 259080595 744093190 361040027 21855570 946498236 152216740 54333447 877061326 969301554 326471992 47770097 221073071 476639936 631932156 738583297 947159312 113281363 752974373 465070883 103404118 459186357 928994105 570347658 508803315 464166529 508751371 126405441 766721752 268164710 827373048 999295199 675819755 755399296 8824631 532246736 493963560 695031246 852393684 392716513 813299501 241082398 850715894 103243943 513367581 928914050 505791816 20741000 865150184 283014549 238131079 902390231 498826500 328548839 984029060 595565787 41342528 104131263 904239777 96553041 431532272 206352025 541765615 388809349 189881172 100751601 267116320 328658454 355736716 29036192 731010870 491436449 856962972 700881777 520374687 252403028 41160709 912109216 300580778 363654101 913486823 74891408 893037736 825255931 694723940 975264618 945663173 141244243 344769768 182162259 956066969 142536436 526860175 985691556 662752509 398344649 141791196 941682180 977746490 383496658 264139845 773527091 427028909 335707823 53131546 504866627 182562836 187096897 296497834 802515485 747019722 189157983 856669816 411717610 147920443 191367677 56900764 221926340 355361609 754691330 838200837 88013501 270901814 450528523 661626078 471580993 590191060 427498214 34757869 39882196 749183040 858558045 718334900 322477924 680024105 457726867 571973198 369755177 277116681 815670691 50485167 502593463 122537440 469771828 811909846 432455669 977623711 543052827 367873124 141194183 884507128 882882537 408944231 83970465 560572976 741384001 657080870 751435723 609543548 700796343 299221450 761502096 576857080 582400154 998543961 103394922 391593447 418100568 594400720 328451111 471637762 216549467 105694819 322597052 762165638 874933020 581058024 228828073 532355935 213401676 7692624 848865183 415332696 307476474 283581669 100051216 208515615 372543243 137279464 539748079 830439230 844421797 531777070 122831170 674460345 152482738 3234315 776259016 664870603 286560761 739396585 953492895 62438810 239414720 331664186 749569420 176848987 421380967 516512764 595845087 113661345 811630638 901886515 83454302 470991993 892972195 199519619 950976715 433880705 155472984 552661275 375530898 595824052 41002796 415994881 152789493 968904394 264196764 16026949 8347691 307674024 306447395 520497421 159004370 8252513 374791548 263540331 583854143 780844651 60440660 122346551 233810976 603111381 45230115 880602541 421854792 191400234 608747934 426405676 576124544 715688415 769846733 282789898 656489596 319424136 63800724 830966761 2956117 442233140 567119699 589616322 400197903 473323414 81547621 735186233 32860142 923469824 552342852 499677234 66844439 518008804 228024155 175578995 733182390 928001327 364942600 594228656 324891062 857385891 417314815 529145345 195431189 187139555 204719518 683141003 562012044 962055276 313712521 563324741 456695669 629647790 496606284 902496426 239330460 423699524 278556187 276491627 286390756 222458031 443247655 235303943 415611913 407967335 795509490 276969885 563379078 672112871 755612451 262897368 306582965 581009152 273480566 160067632 411953245 255717852 908938842 11919791 196908454 288193991 681766037 82089055 482388604 706958193 432119814 197663833 327871995 645451874 272816558 670959237 387012241 481040341 940597874 722728503 520603753 245781132 533595580 515558122 82874699 539714333 488407376 224733316 893844420 213591719 801416435 770499319 284949638 639022063 80079118 498872543 308088717 146075210 900606768 27531758 480344687 190443593 375233401 728709186 774745302 424594759 210418529 428434274 616906123 327676311 139184445 426739930 707493415 326947055 649346650 509202885 494485553 786162180 43102200 677293861 532331166 841083588 967070329 855060660 107918299 673360674 728232143 972854573 224844234 595271472 370212761 912094561 403087543 925539496 288135630 3296441 976931945 294189352 367501898 74242143 353026173 887856077 577374053 779011415 695117875 280857499 55876 874313409 28074757 596677866 799473203 273671642 494582266 751318323 335487703 22242582 547303945 867324964 840778626 967421997 726555846 972639258 693279732 774680782 965862629 992792424 715012311 532180672 365573712 643423033 456781316 175972655 801438700 769042639 182757093 863885670 84596077 658172305 98526899 943109694 169348877 200328482 699889281 612128761 55253463 693753408 745817532 880373774 493475173 416667546 837960828 909267848 67154684 997300508 309728642 930053186 285155165 111141556 461030285 469611752 940313552 458185407 978176846 136381728 543272495 612315165 502206196 235351853 610565183 141787537 855535554 223607060 644950869 98799175 894596886 831150005 127962811 52646468 660287823 748315522 33427877 157218735 684869500 41322 990331526 305871376 790194795 906275601 415283578 243840546 426737330 917924790 36515214 230307285 362406387 118061590 179052749 964832317 837219991 855942893 272218286 487556557 392005052 188274035 311426209 640058835 46945119 44904880 552715574 947509388 112747989 928564181 257768369 144871360 750070426 355831549 60454523 642372756 307353126 400152515 194592980 665654317 261238494 178398914 395237381 326041476 479190902 816392127 262331487 621752260 349618515 819909620 466871701 201838955 391461405 315839362 997573959 136639158 506489390 870500012 55944732 709546749 372323131 7482590 156517975 799502203 746130283 82280853 452831272 250352950 732327106 689742246 382636393 999175066 95116984 539179685 480812266 695171697 649225730 854971827 466837318 673376108 127769971 728248574 27770009 419505997 921607793 738856280 271187997 239703035 822476893 795254478 468497136 430641853 558238722 61513791 488936282 165327824 14613149 489337772 509564222 20329165 801102284 840506146 789743028 123850209 792626826 558075884 221661449 157523079 484338914 61202453 163199149 286795241 565156236 460368947 997356424 333488130 65464599 955048985 248831205 323531499 288487151 150633163 369281641 286248159 979532089 817701559 571614165 978671192 268027936 936978598 754788665 720156620 29152975 944697094 185922625 619901009 942702904 533543178 415093520 797323835 688592607 306872152 665277476 88190999 681631873 31482407 912860873 595574855 695208956 464741628 810574839 25557132 129061764 982123621 47549914 807731033 107174310 150637394 542539150 768116670 456653305 683209328 579786131 544756968 93194465 912556310 888248685 961599676 848358613 761170869 836171650 515176576 412081678 86305071 761168935 636516002 956910249 547516326 438411014 663458085 556045225 674283592 391674281 788069464 575087689 141850575 594601503 533712875 378040755 276374377 564306341 755324712 215898423 695077272 968981772 795292666 953545583 95275445 51150633 339369458 280125060 423618760 906939936 549313592 821426657 221230188 377825527 708839247 753713661 218517540 716128493 119979411 298123171 510186084 974955392 423006138 660931380 271431074 751628261 951022905 397680964 207505758 212096453 686242892 443554502 100949111 586947405 520202682 94470342 522798506 134820200 873245273 524004367 747178474 968411998 332395236 214848950 54436800 756824342 850503305 157192812 591774146 583126185 795713560 321547135 56999346 450094815 873010790 376236698 149015001 467372674 957863945 352912399 603446447 301498726 534732899 84520104 505627888 46690832 291019638 563653419 700555540 77303157 957131911 414779609 515860015 272819810 375175839 341187490 82580686 949705316 958226332 813523783 352761276 614918020 959031571 375179505 84218859 233153207 894892615 440043183 874137316 111196059 431779702 577808056 939644644 780487497 713456586 787543912 970631485 653787425 577184263 426929895 349647617 695040169 160005402 471797009 712625325 536086213 465158976 68408808 713389882 463833862 598517989 444757237 9439784 902675247 431923195 908249447 768050851 432620 911207514 524620745 841873084 559289500 34755801 907961311 390697180 414135224 413492569 101553865 470391318 161521030 101277183 788640495 561452016 777140571 93585386 228977934 598641193 137033683 325481661 450261905 954170269 3688158 815040506 420686410 410690653 545902127 685437492 65361121 180431604 461997641 778147493 288143833 143235147 875978650 591933694 431731025 811336852 842132645 288486094 857015109 799094907 5404630 804094523 366495186 584859326 558476342 280075258 19670036 403963882 389553876 567983098 719940169 677630956 472757990 629220554 565793154 311898293 401173370 530024890 366574993 272841123 615242962 987380688 781122395 52336507 133316380 765763775 415603748 447868958 941815287 985517719 19866617 993741961 728448222 631428541 882764247 241278928 145140779 380657900 551957523 695655760 108538431 266998905 359635869 594600361 266443796 176736278 54381219 983658420 889645166 678257384 589246376 548465506 502364440 403861753 679943880 222321353 798931872 997087500 758352691 895250628 324328427 181634138 603091347 757726158 627777026 848281956 450428414 827374190 104200947 509719032 793148284 427142330 429089996 595617809 115686097 448412834 295488538 767887726 298122872 946286839 679003127 539755253 473659678 752540456 926844734 950193030 961091941 47087646 724554988 241576350 714327143 689968837 263710694 376297530 962147228 166059345 331291784 648483969 334627111 998353341 512122487 624231477 924516001 186414426 865327098 781506681 495379153 482091262 261668570 806304085 531885177 627185881 608352935 58124943 706431161 380249869 784671640 304664427 435612771 903237101 293137976 870830014 551801528 401167368 522071886 761663377 270946494 87854245 887804115 165788772 271339811 814949523 824563024 391886912 903467091 404232111 733068637 432247977 695994942 689870971 712166101 858538948 645369398 878797007 665730957 629177197 344300455 86015230 483936354 132282510 526666308 514452700 870558104 927852481 959111603 947754559 858505835 616810942 415238317 397448364 883398069 10654403 32682947 82681628 429975474 857548092 120384876 134840372 265633428 902460230 392630837 85651114 171656929 613290508 843128585 407048042 403915166 547407280 364394323 653932038 142450118 996257957 689837457 707735988 164702274 571970877 39877465 942359280 335451151 13419261 327247472 436879550 938015724 28378392 770754999 768610964 197603255 699006346 973141783 659501573 543472826 311293919 109895098 408770323 222737360 937685057 343747060 852792785 695766710 882278593 148854975 820008990 695170853 903459642 505566198 327375485 95688272 617943470 103587785 236149960 513421521 705700444 260006049 755181760 933626683 180796828 100337180 769403444 60137986 437238193 62060358 869537854 756050406 723335947 878770760 962451457 162278915 700927917 960426618 912300139 46153773 929394193 918522420 638103604 963585088 929748110 982739550 183371603 681527582 449457585 722623945 777024142 774423684 580330606 842657818 239755460 950262290 428716746 441474573 555181747 665778004 850881500 692734706 803386801 451138889 890302742 947854524 811086879 506388049 961216959 95172404 27896439 630535336 948987014 284688656 246347484 861747800 834036362 141275316 294945925 291060200 858233684 325493444 376003262 103497690 343368552 55501490 89564299 47072080 679449513 502107927 642540510 149461262 332609876 170789095 125832558 687401991 797382997 714330663 122818526 486489663 244028951 407689204 30190436 95018113 875996279 428020213 459284349 628065769 4366030 808647600 928598799 484076395 623548332 551396393 623472543 867486223 832794493 369083990 336886439 101543093 353550918 130771045 776178472 617776928 760951440 241625059 381752168 553166680 356987753 241006115 976545454 789532578 107119844 189793152 255474949 124742427 57399121 528312549 53732129 14326367 671925960 129686852 236160165 928420718 695965483 423491595 595948782 176574817 616522555 829214055 352345784 867584075 732812022 162474829 514886558 508550376 277285280 343433446 823418838 880938896 925092921 930277618 595509991 270625197 146025512 847949746 561247290 619201392 999593870 490278624 433808618 121243011 367906760 585531694 466052211 924769182 178040087 556206134 262059497 193706572 393176840 642081523 344186514 827043069 441777065 803123595 305279467 673411188 185500670 61751222 788562548 618372260 819802478 204659895 724855845 986072410 18121776 656194864 49252010 827859747 967615415 916241213 948115617 742782915 768717933 635915176 554565586 994347923 673608519 432373960 949393763 135824679 279604562 30729189 226225249 844148931 411635248 265481844 416977963 525605080 366649840 746215723 59138159 894505164 400020903 809197497 126339341 795346330 116155448 336151534 766464733 226928922 155248719 409677298 180953830 958497257 576922087 588131144 760736791 680562959 628331144 147178380 427686988 934626074 817537047 700870041 445748806 510738568 954754592 802565764 141759906 98676598 384732961 57441310 593950468 973299118 891236528 280772012 249350776 456457029 988621029 33256464 925157612 945744509 931070827 497196354 60805638 767451444 610444657 176635442 762947304 410864925 333083851 945651267 868744982 791103952 852389310 396466226 13607186 51495294 150309002 464842228 228705764 753658845 242677660 548511665 501019656 441306729 194483374 622353247 849472822 245802814 949588299 31866932 483159006 539273978 308551213 25901551 764002418 355669256 307301288 93630497 477167127 319487367 769377887 284800457 400858771 590855645 592857908 665945504 319380617 305075285 167335173 828165606 153346955 556080291 922057609 536059792 9578083 819224352 615183702 707427739 350474385 723667204 821607253 127627920 851148530 625570099 23002421 505925882 940943801 335412396 518012407 198065116 237787660 701246639 201598566 635493821 550258567 882329393 831922043 778051352 126006531 311964489 310229863 185092508 737863865 466814683 22137878 259645410 277658026 749244521 392752709 592487756 592442081 706286698 259385164 195798607 337681993 743751633 24056496 55914144 230748034 416605564 439551414 693904547 711157271 677245587 497084018 53315593 635793409 579242766 626555838 616110938 888580831 417495413 304835133 410998521 524931923 699023387 319011974 95151589 751730327 829379936 951609572 276771888 154761376 110087490 240319580 965285181 544659717 314020969 795286226 604991901 949619895 721239545 47358600 489432990 443590208 616751072 405056463 67864169 839066484 769645257 738588212 253635944 976676455 268338314 242884859 626709792 623310573 986389440 361164534 43222134 803534066 737773710 742671114 484671400 58704448 627281648 730242528 545344351 475159826 91009894 234950825 118421358 425758130 991926300 603688288 68070769 942905023 110597198 216092115 430869226 226418668 8065961 486621300 237757143 69765490 980981999 674954636 702486175 693925843 234261646 812950595 907177517 254175731 98058455 636439353 622397720 664877201 212653183 768439066 488258313 529749745 935069348 270002512 937261428 172984048 885752836 996657675 1325813 559915501 529074135 998304042 498565125 838480073 256905176 65620436 362041398 698253821 909729127 405424384 464120841 589258612 750759327 633298751 651303769 282228555 548723497 372481982 103020396 147813777 221379836 219134613 356756589 86470355 661999813 610646527 199823778 997642151 240988959 167484057 146789214 219679203 901836494 795329299 851475012 908249612 723122123 711334973 307885876 328180524 669710894 685890905 126851043 897026337 612177931 601049050 982554494 851230912 136915658 671376280 339738124 485424416 709388807 39782526 684760900 63771055 354748534 175327254 160772290 364849064 274540149 955403245 845478962 939426432 63754036 268179395 318424570 111783557 806298927 504297938 575428628 111689385 741615778 512191785 472831208 863526161 619542035 495217022 531965345 730362348 626855127 340530213 28824325 173879694 215564969 951603102 845470164 828812076 351870216 663966360 907363830 339494118 234391511 939425921 872166429 333600132 517743396 445908165 111464090 96235739 477774361 691235458 829854950 705811598 322507262 608831211 223544075 299994695 223472112 474662877 650802139 720155722 131769966 711046410 958991297 772944732 454738564 119685108 101187006 858500408 575866462 651317905 914260976 482326539 294846164 456658454 398349158 333325259 855159044 925356836 311337358 192260661 422479138 766043544 781326362 421086436 470987782 485172260 708223111 214555657 331246303 922493152 635650337 470052775 908146514 779475717 332605288 782271756 681677305 858938361 950780240 40296337 93966474 161172439 974670065 28761890 442268399 957112388 349082496 994293069 918376784 173460467 637593823 119122056 322350886 875794656 1988102 782322845 945568242 327621479 688284101 869465369 690133664 425045368 745410810 601224887 392325914 338477439 543998315 564979718 442157192 987159297 436567644 810540709 876832381 608800094 693767851 611217699 579165631 403066359 185854894 393816508 60822687 608089442 768943241 110028330 949882479 629508393 650647736 743725169 79538171 873745083 592475682 546372101 550600405 20999526 789681583 474174254 223511717 928279417 53840104 240080609 288032103 876186155 97682343 924661441 259403812 226756787 530153957 282188586 392058505 680851667 950443040 483580172 592488854 456082260 927144096 7785003 792095197 708462035 779379515 589715059 331362170 531055565 19387371 755148214 468325916 852376127 989915828 721229044 695724515 987883137 57515481 88412934 812687909 886755156 411704890 377883594 287627867 495021149 488399549 951531811 692926428 179737856 255899941 723791553 726715622 696960629 483665220 697290451 764489774 710755595 863925069 244905483 936325414 754822098 341576464 621319321 686398969 685749157 752261365 679247829 283157778 588329016 398690596 988700362 277419132 932291588 870813706 135048175 609089522 413892477 725671228 474891485 305344728 331547383 684957847 331761636 856666097 649690733 744055339 565352078 555646523 510246031 317550602 772848104 422950549 832676879 707619798 845038633 44405643 285971112 530554337 139026987 632558088 597027335 244974628 479868492 871400353 394673569 129290617 247832202 438533922 122263101 984634130 503999263 944921797 74478167 478801118 166290741 213999236 495419305 243023009 575232839 444278525 966249454 964126085 315228338 456571956 979975743 252959735 723920641 130454841 91550968 840340816 790107412 974391682 731115077 310902536 470676832 133214274 888086674 938854243 897125604 920803577 222375507 724838464 970783595 523673294 351689865 86511276 504901969 646142682 309407157 346505529 370483643 166078569 676443483 719298237 734056364 67019195 175266805 101519849 630166467 490983862 586792341 177037990 813458135 540935092 153459461 574474675 53450784 279946811 97037215 287450912 961325934 717789702 501185013 267074683 211271406 385595939 502975788 440721509 386449426 649661903 838412466 910023423 882924910 508137515 136518730 595073478 790686797 445368388 745617209 544768259 430529947 196145303 860031279 188054484 636014423 296837692 111072815 505010915 649836305 86009024 633876166 932727733 181392872 840660255 150274229 907258947 286362046 663184158 785291574 181918525 907339550 785872234 95481907 83094356 529074615 607406375 125779889 722002292 383568377 135650624 894269787 574488763 899190588 261627044 698563619 812517845 932227991 120080095 853513305 728649274 105296944 547420355 814971477 405476221 677089529 529633983 342405001 267997614 171317038 829606942 292149415 904298488 133941298 88578058 374690906 173910480 355995445 480511921 790864584 412985114 667498756 355681954 34443992 454885002 803386881 135733834 464727391 881047758 349431392 280507126 304914378 981434482 82983110 404696080 895907613 299211482 353431461 397366230 464287850 353967150 587884517 976139046 416146208 775701629 123961218 630246748 177929492 913169996 438197626 65613385 553253625 516118418 723130044 417594026 544940395 996161464 124340957 885716993 55428831 360635728 335301321 747905178 83991567 135607158 396748829 370802290 177384606 351576703 749907593 720706306 406547957 731896169 775879395 623413337 126741715 930614146 813676972 114442500 86018709 569034554 770614054 728542275 420459738 295129200 152791320 772289431 221938924 488077284 24510144 328111669 987852502 640486861 144516149 56290230 918162826 791872050 466502293 497272995 104903603 407905106 964300761 89895475 191645109 480339730 789175649 719454402 407103146 729415905 625986516 459087207 272694104 898866960 657138324 180243530 706040692 224374945 995231555 719375017 947072834 488564766 782825918 295657185 40564125 259200773 160068188 341240610 814040389 259629065 414937576 981411282 214046771 175888975 510704165 220999120 312315343 300665822 738778126 494335776 44477341 255252815 23334232 847081204 176469565 828702091 176018175 874567643 466837521 851714321 175818814 679963332 437147341 208678434 556188705 629091364 841019583 375041730 312290376 515161735 760507881 154996792 789409834 288724423 56061831 397337698 156267576 963633541 799954312 461914172 751287801 891727967 402837985 117226713 248561003 47483059 321626060 259098227 277409884 894751566 327498034 107896148 780897750 293492203 182161213 481387826 281128190 386254669 144068207 20611568 59292223 936824485 7170970 147813743 416956071 709775276 418288700 859200684 206378080 938309301 99868483 659326178 728053297 700298886 521521925 776797306 25822742 182786076 708595054 90028639 238229029 276692201 977401885 33359215 672048489 708495864 504289356 793945248 925050550 859005328 827698328 439198036 306412690 380844803 974536869 969016473 13918203 925878377 490360545 786097077 227002933 152782073 289158344 678757238 135213582 716909691 871378145 593311850 529596782 648031599 822384041 560137949 593773286 81935577 581688916 527266476 135161364 509716590 216223216 461864033 795651656 896356623 347726420 391256396 900857707 118351145 599365838 266607601 484373271 839173313 500092999 50904239 90055427 563818473 360440533 163824406 618694054 708080533 134516534 153345407 553089247 125441166 436692414 353053245 680515587 402988706 472734329 750070253 995997538 155389734 669173661 340949601 348628652 242471194 444283449 697994988 878363315 973676883 147170064 812138181 222779428 742377295 919544392 552543079 4692921 814810762 847523926 515204014 949725589 546043588 320569474 360862272 252698466 522465692 656794497 36445201 110632643 979379024 544192868 128096016 57769588 695555141 393231019 140203611 532284554 247086225 410711347 18794913 240730429 800634409 545541160 286009536 283193599 433297820 214401720 530556431 269159698 65844222 905487226 52091463 178956806 738990561 581342498 538485271 966024969 500109792 225388907 939664288 863453610 524097082 667392112 9825179 556789859 688204168 262581672 403658471 70486216 46670971 245049041 658000489 824087931 436325546 685544184 195896179 191736649 438457731 373771906 729442517 165126826 561980770 199376777 498550084 712394611 582830896 4375007 56359855 71289681 901637948 966626887 589292554 833744936 473915282 721416164 289775459 803016479 293857329 2581061 455028570 895043422 377939539 575002502 546838970 280892035 232407039 661572585 94238025 165544217 815986293 961410676 23916098 798432003 989544939 451037047 292506808 403206651 320727390 265146923 689059099 798061672 50977449 605186141 146047159 128334583 450304464 74176224 615917472 952227483 471993713 870906013 935315897 25092355 251493431 628724060 944848386 628493248 36141986 658701289 847721059 404417548 204602202 598811925 563967349 26194883 55537831 522521726 735085719 490537681 265654487 591436352 545404908 305762489 304720529 843528340 95322991 961817177 906898424 260686871 319271061 511479044 839641130 891162427 965526105 770244792 628915187 841534498 999687698 930478535 316282998 392403420 889955305 2776091 379296797 569560529 155317624 749417353 354999679 518257709 582112658 812678244 569949297 880643348 25440515 141197901 587890778 229115319 804450122 706722429 132267130 791535543 643656207 654550063 46395386 908458937 4915715 424967372 707876167 33084524 144511004 174428409 379089502 553425478 779123893 207357622 632520643 849088850 987226054 362212569 991487063 17152952 325838041 608951016 134101999 778061785 690618701 474310504 760440323 571063594 379841734 203371502 380055273 889675470 149891154 848198958 743306966 288743081 501509966 74627249 375816814 355507970 692800255 174033531 294355594 813281177 635650322 748331191 423904039 763301348 547603976 121847552 880911725 933437539 763806267 378963601 348027448 805027613 804194638 927199290 840480572 553827005 404820510 945076552 146494188 45994181 380275434 558688126 710877541 417606324 251048111 782560490 798339707 292282533 580822672 440528465 786365827 806510551 924498785 124254048 582185498 794456221 536347554 963256294 96226888 3413254 273294444 715493580 869118288 569709163 136747473 505261244 375621776 43402347 441958789 945907739 249317186 295363188 573861357 984972401 758049780 557930919 705699031 926974863 181305205 991204149 182754350 835385416 841929585 164269501 273155626 412450568 752264985 435343959 467558323 676048567 821850661 401611073 426099215 899708913 902937710 130488290 702737252 772382081 576100816 86327437 140029137 211198927 130391808 601969583 705176411 918896712 162586667 841842662 180459688 749250129 847610382 832617208 832474119 226360987 30243003 867962221 107732387 841382238 901819114 590195461 815117002 184278707 903547655 970914747 760960256 500559002 853463888 311567578 690184216 467073218 195500807 964773061 416623114 787694599 164272147 638536652 204687745 122520406 717047526 925907965 349141134 976039822 16118241 312949108 482644203 764307561 239979741 987533572 42802927 665986619 754652897 567401109 792168769 925275240 370270704 567340216 960219737 978066761 636214876 489589307 30428130 763680619 422814017 874689991 268530979 2058882 827673729 204080360 352209 946382016 210641876 30546135 226273740 302093795 484125241 666434238 362604124 809130420 307191160 945834302 110913237 582856957 604693968 73549515 19766210 266298090 775996331 644460170 379998857 923224358 764269385 390369708 777082911 460753917 34292842 24827646 788165508 316945481 916785282 138358413 328500193 170740102 188600425 487861191 606167634 12464139 367324710 991324226 811211721 401770468 664917961 821771361 792492925 591699286 462541979 476213901 666924166 542437597 535298105 739292104 45295552 378608492 564235570 349611940 540862830 229599540 874614504 401483450 115692151 197201254 678731727 799311850 444994844 102787417 205342109 439670149 526302999 410990454 791784009 816805851 170851710 509975448 125454832 985818548 613636493 319221090 185887867 22078410 838167473 575411996 467282252 889247162 484622530 287884582 241576090 305043734 276188890 478876415 451814157 698923646 661799891 15044098 738742765 343747361 227596812 742375735 200968629 304316293 20709628 925182199 897932554 100375811 701746636 742518727 914606349 385665923 464242569 830973697 824150581 176473894 980231254 859470768 317962282 279370336 122581999 407040946 45016299 337993484 711971473 904800205 219954805 875853639 133283084 519140321 708725880 22252618 306849668 149385975 2495197 722867225 757189509 330325827 802888197 898511646 398993303 680855060 962438069 432174035 382590728 357488203 927315036 80624892 201758537 896884505 36711480 730308902 994618735 664282521 635011867 661996298 91141377 97175534 468998600 631188177 669356168 384464380 313090428 759635556 659645660 399724773 335604653 917580343 502863839 297950531 812367513 110207842 72702940 388150206 125939748 440844141 188254750 780631149 484976681 476905902 120200169 743090801 368663764 706217459 839947678 173681922 996151364 781251045 94127680 293597045 529793690 606653585 247139631 631667316 999910289 210405873 467446188 436322076 483094080 247205772 975647684 742628395 16953690 412723841 123365760 629191021 606494353 848688444 513254027 541714971 445556663 22057139 899284304 861913448 842657216 85686506 568022251 504627641 225222590 535555731 386788774 99706472 805027492 640793072 286651766 470136093 141972585 526329254 277473725 757926289 735986289 122845091 427190223 191162287 326377629 123809778 291974141 222516232 509108114 47698438 304647390 633842123 789176047 542130281 500158490 92800066 151966754 183395001 754555534 617410288 809527060 660298462 273233323 815380143 24687114 320484766 38955424 625503660 314068816 109467983 636913895 163045132 408621320 958277684 293958463 992039881 484407198 693718372 596414066 834362512 343463822 436144163 860909870 295926659 758695146 850427637 337785342 685061965 714476415 428416200 361799681 603817848 290414701 215471187 873125614 548907701 84733568 841023351 524797576 606862733 89199251 86024379 977700589 755155157 403318059 746566651 87777827 295784470 222490005 275758779 595376624 293247027 657671591 871149975 382929423 852778970 968816602 855456923 927850822 873146016 894651724 827802972 126580317 519318368 867851543 218616489 477814996 709408285 954071449 597490388 943221559 847359263 617569522 19117536 113636192 245956216 260415672 149580114 368113782 636178399 644873901 48718004 797690391 779033851 219816142 746995399 773479123 250045647 727415074 696267508 906314322 660187398 576577640 729684740 924146885 681787961 152887089 360865983 424597755 675137336 13951593 397102723 399205102 955891906 317020855 743895560 329827646 315201568 151489711 392029441 869544771 87571325 99767055 318463702 640940944 468724718 639748325 766920074 898967478 482177369 67198055 72201876 427640697 738215005 585453798 389970568 962725448 611440666 765533914 141496478 530957373 628190797 643354480 939269255 306049425 801457343 819673707 511892642 427100077 759032593 740749713 106564253 239707493 697347887 318641144 295439849 504827233 118423431 894274690 736839730 971623780 287075714 29224195 242744817 828871554 408765718 516027976 421807125 368567325 857707173 750679684 276673053 426853265 354626101 837462514 409322315 12051624 324010248 174350477 452714972 190474061 615147796 29621239 623461346 418776684 97181279 249825946 726747414 309682960 992377503 62264715 928051370 526559298 88867768 617346187 648810833 125096448 983990274 253759639 58335197 582610027 720125466 650951002 225184673 645799121 229781742 511854955 321371664 617614718 16995624 971679290 534084930 45318537 344545223 91204529 155422669 234769248 28511908 267701272 925855958 146119412 887211788 369554928 971739307 476624619 470650595 781816512 906882373 539395196 322992196 565266293 909508974 345506613 421050084 898532761 2314459 193599079 996929341 220264163 414861862 234318503 665500225 63193789 315480774 584588335 777186700 394614616 827723174 21803782 244463054 278088215 949551626 876413363 852607763 231080090 13388562 836943067 513578650 473280525 329114062 874587165 269762969 29226240 397356640 265597306 537376715 988996002 376564307 296390091 18677800 933408951 303134782 894392315 388517145 780007692 367348445 819662137 295007187 665012310 287166730 143139760 399184524 973056320 897141178 756393907 53886194 8284303 631437176 497676793 756628269 755314106 997377403 402070955 259541125 200705597 481284410 449739118 421925076 645330080 582020657 590139952 662226999 803048685 375117871 720981658 451014330 26180003 227908790 511935761 246404440 167637318 675329029 15510336 102071840 200005484 272923133 928745088 753401249 613716267 298896589 938263181 744043712 371445463 113805201 949672520 357516752 944195176 471590806 278996420 63748119 929436395 44808273 497541547 510417899 485517075 76346789 123887365 588509384 532657307 920982540 566516534 924419776 605847278 524634059 147284687 147607960 831914239 835713965 229088677 785922507 958479411 67609918 835371339 980014733 245975144 108013503 370230596 12396460 117940584 923156497 392872 559899358 474182450 767286044 290693738 534169967 676050497 193046229 651422341 706806595 190408617 194090687 891672503 269024676 62695023 962339593 890594553 947507954 538010668 173170827 99920799 217460935 269009990 552899298 647033539 947443568 592836969 690999330 766425614 962492678 514519370 283050585 927905684 116679127 69134620 708709291 840540041 130537504 788406172 788632683 387105210 43831792 4674728 415662048 604171709 233616581 477285885 112443574 984997250 265442732 251762798 804681861 847435210 748881914 880318605 552345848 614760258 775855505 838787129 724517413 688889079 625558911 726481542 692407366 760012041 389927804 39822901 147180898 894853745 360002385 388535414 734060783 807501179 725332435 5350626 31928929 28579717 888736618 290113713 362121245 737533362 326558423 291382179 3165668 323117061 98117107 50096821 233257639 386143255 290571765 380186992 337945263 565475312 55961828 814597058 370370179 401626381 578049141 768300240 275691172 262544384 814418927 864195895 220183801 826394928 309385725 608722468 195438837 746465890 93983642 758568469 312250380 433776050 441876419 836141599 176353168 742267038 728964585 823309078 560922617 133091948 704681070 399616881 603756519 795679101 508411227 381369015 728137880 26612419 857842635 529728520 435827081 485458804 144253366 241441398 350517744 428968891 510915460 494792184 484684861 788141846 696929021 299918093 521333323 499270062 164459639 219836107 845833376 888679328 267551410 336277906 511485698 561714376 149130359 939465659 122636335 226823171 646429226 655690914 562521295 409779686 298217711 802958419 604025170 136321209 595044568 487634226 493603195 65198889 788637263 254963267 628341699 613766990 649336141 47410128 97710830 159878444 423630968 820032994 511646901 961804024 25918267 185870755 487143742 867963956 371014398 902805696 699244717 527102876 520052107 371375222 232070526 39610699 665176732 56585024 142711577 136839976 907026498 774816899 362345542 645132458 269230142 12966906 260308458 955814698 150634352 676157238 540509643 553098653 5261738 464013252 919664645 921646487 219784159 975276830 723118767 832977982 767649420 816063 449434715 595464496 978261692 385451128 747517400 707365170 987608292 411754776 630766783 466270664 842135127 140808748 890571201 945503211 354980721 185410123 81447279 365313279 294568377 347653691 7556285 659781434 555350290 587801090 192875058 182396767 107321080 47076534 920331025 353259053 501696026 790088152 294238441 118024519 986555036 9479898 781656877 587863775 536851785 727845013 358508234 181649848 583260583 844055598 131900902 711418260 149590822 696664480 906795021 467860970 114541150 40526645 65307572 157384907 342771852 63011845 32731000 593944961 426942941 921683540 836447428 210872958 800395001 903710176 688087727 688502324 733766367 713753148 395013412 756273423 952926171 714819581 220442537 731633242 549738981 391955282 49857856 626886166 928838201 289232939 207721801 194531638 961070072 462960192 573205501 809964133 189877365 125963435 911147719 891937064 740995820 233198857 744630821 784172243 789836818 664822899 332122101 668479745 586054043 809267015 917244401 914898347 158879050 697935920 866420704 258639964 627690552 48078366 496921157 128891949 413262457 101851521 747271836 983845620 923883154 325396102 234130673 163102964 789129931 501542893 473497417 684883421 292547145 506821223 355734971 541471230 641723373 845104112 494180035 627777180 403830666 308094355 586494820 590248198 303244933 713712059 369366208 768791022 389759624 557322174 493895650 139715501 541276735 185774569 638115864 368658583 590647915 52374462 974465430 596813379 828269477 340706299 846737790 215322586 693753549 417374854 748743565 407075954 465157052 588978187 943755351 336470024 270891515 834533026 264316559 146892858 749649245 147971851 688141676 205497609 404521581 634130454 816705924 430279465 210535328 675697708 645126482 167399219 121560948 184824030 852619287 624679065 337647171 830725259 554841154 965330370 457623 421211990 472361643 842932415 407042419 141200343 2911002 992004534 254113620 208602528 785411141 666697327 213034133 607051614 68610559 104646061 765082669 291650091 954086806 796250538 723735331 500559716 888405037 427382574 987487422 79547358 421984127 676661296 265287646 623970074 380714216 6266406 48144491 733249052 109776366 27339955 915500157 346262164 81260786 157497950 464270425 887311589 937109827 501929488 905546816 486552362 59254826 529292207 940254288 198957459 963654428 442319275 272103710 373509365 997573003 669209133 269059459 836750710 10118165 418779359 83479074 214288107 690924262 105311815 482531299 887409028 121020142 5509203 245407388 915988026 245343250 593428556 862533270 703429031 87390274 904120423 38368760 351157493 578337435 21991339 184078050 324315122 775412967 653045053 414935056 810061483 52381186 635800303 176000838 210485941 743523583 133158194 165771400 717131050 901056770 454243103 761664601 33989465 247469966 44905298 677698848 40322272 949570632 750480793 525429626 371849980 309924370 420103102 214264337 420671572 226401748 528671571 614711579 84757282 889899263 758969012 301083950 428853361 607078268 68296707 81457681 61261723 650903915 138842956 63750252 253166584 478914695 952910258 710184642 127359098 966031482 336401892 815558259 253249790 695009127 519189229 357135220 971506464 504467971 31431525 286940323 890477210 337046021 241784761 938074001 573404215 695898065 109076255 830969009 91299494 198391110 265405036 775249509 694417978 334883268 864201489 593155615 806214804 640593474 444419417 833093794 179319150 94360157 549596537 764117108 874261766 937360672 969835439 299400678 914873326 282408729 154898642 781326586 426550768 785031299 976111953 178894908 375421522 892027754 59244860 944181801 532791140 326946997 10889275 832598512 137725527 834728814 83974894 368062096 786022122 364114156 801590718 663471844 75587686 829372914 219312513 957740514 546174922 571790075 471613651 903391011 163304171 679319312 634309900 221151019 251011085 14266283 785164529 531977245 843490274 920593152 977173386 203754065 28278246 67284754 28959692 99487090 672445887 656530533 767212450 93749828 374637769 244749799 435665166 538589731 664472379 629986518 817544858 20392580 619436555 740331287 949797069 574896229 691052653 515587963 179435451 558591189 677354260 538611531 198597406 525690068 681251198 466922508 26117457 906427945 332114961 297221662 390279928 488581957 37520512 463042643 947156828 411321002 255040705 33046258 539244577 809471117 327477545 815044700 273143859 184514218 688722138 226192175 965620956 438071797 495923883 830021364 421497026 250653060 447127298 771428379 416468892 932483403 153189050 555702983 355586658 920833475 217808726 18254088 953457012 863347855 213919932 746342071 155530621 4345292 635311269 179321982 316860099 368568883 307825054 771230276 300281001 805966505 542443915 913409762 381645551 283991215 19427486 927288428 845812270 875868129 231662277 429919571 583198212 773240670 71718821 30124010 488736137 105067360 95664465 980428211 547285192 510512749 663250471 622240858 315715557 954620477 937365018 623758080 999595216 38165514 25271386 428610353 585377581 472634502 530114045 791622788 212890965 305526500 291661760 447754817 843082395 445427520 242868428 889809806 757994339 83620450 264187348 370058716 561092564 437389022 434116165 754092695 35501034 997911631 166263891 281264943 226128108 469456147 224617037 185603907 224007952 116767884 287873842 168910908 203236369 570335826 173463823 209942941 267383531 199203232 945972548 244666602 175731551 346360296 13744804 365092973 981263089 721878580 295250628 18885136 869144576 60659016 103943011 459539641 418938124 404448126 347580264 602335374 679248132 982247323 987359805 291211843 894888372 528953405 56086285 60925597 361680226 299896895 420836052 847616768 698903545 443747205 129933376 68870538 299694300 106741098 159671725 49041802 540106204 58192158 53741224 532719255 645500281 234632108 664005344 978521279 33893664 605690527 219668431 786573926 651340018 278880068 852038097 528967814 721306927 63992611 97984082 638149941 183859465 284336613 777213618 979861319 416560458 861448600 835944706 80769191 712109370 911392534 798611563 935222471 689382499 502342604 337352411 89198334 158823339 254968232 682935865 468184463 427385426 358746769 645071281 700060744 644373212 528534827 200655828 260686225 369846221 943592059 749771789 611650592 83277936 335314650 657644983 146655795 173032664 926694841 693272989 350334496 191411889 253471017 899433295 392621062 523556680 305788274 601514315 671400132 262019501 352566399 728935389 151521583 584153839 583734326 70329544 663548285 179572791 679260777 709615073 212571899 54721364 244043185 104163857 808995743 618863364 288436613 969333231 257571353 646653861 382802235 182180049 399929513 307411701 2009385 683647273 304798443 875379894 399417490 14120386 74067534 149451795 940063317 92952948 830313702 896955757 35216765 792013011 870217151 94075418 864263529 532313426 854357993 176886108 130789657 138642145 564516878 281136512 500402612 231645705 491757834 890986757 502436767 364245854 391921739 382626558 713586181 805002536 975476474 546661426 741492549 927700909 954301210 242741717 337978655 593066372 685656477 595793225 682454346 337372447 778188408 489086271 834551229 876397167 524385142 909283917 310038948 491130489 553222392 261268916 822039062 355138927 383523961 24374468 249129167 536108303 514438349 977902542 446708794 585337604 555118716 600970958 529656608 372382920 336073465 967531493 562581078 781913176 231238436 471350692 403173929 538449834 337156734 686014282 286329501 170056680 809603229 622938402 238005592 918355996 944105473 966144122 141558612 218612925 267137111 390855568 790580814 155977804 861018037 59751826 611627891 77499548 775268822 970055724 191819964 968817143 447124104 566088722 167287105 560045471 221428889 420063189 960961579 475397829 102152200 96889278 625948231 568683346 756923442 400691991 193511761 793606807 684993869 892566833 744864822 73495644 611546649 881702832 414552344 658556278 14741578 811055688 371343100 716857918 768459747 683483064 487245046 939460780 209470011 709715973 73777745 901617216 805142984 909649636 816190862 129350598 374011415 263339921 310860267 870379152 718222979 560433927 968373196 949015271 452476496 750295149 177544320 768794285 231487287 702672867 408426140 25727682 810900067 160391295 491545653 914180067 138672615 240554758 503345649 614459803 109425733 502575167 315369512 962401014 197359001 706412660 704495010 563137268 717098407 154593554 558614615 512983385 729997514 450936383 773021509 165436531 710680859 273535177 952649394 505134745 240144775 744648082 698752456 449725223 744513510 280423151 461616541 834074868 226879045 482988400 120249048 919829647 163618 432398505 803918411 508343274 9576206 903766802 260666116 267800344 656053121 308407196 549680931 452766868 884400606 971964896 107284290 902963754 827211481 855567213 9230322 495587284 848494705 658783715 637304488 704271757 439316972 672337281 57436849 474822056 26360410 982305184 149392772 27950303 713758388 145797972 390129522 850875127 872924660 218012565 354845889 421169472 424235333 410452085 214564183 880551100 767793779 275147584 430231231 915237366 638530356 706312342 983648663 149648159 940862186 118187305 183212611 791989165 64947010 116344087 642283364 682583504 813623323 552901196 308753470 407449061 940029243 626013194 554597895 226606797 492678471 300682740 782074755 231585915 517994704 503016621 850348570 921565898 880173666 488512371 494789957 236197600 847657554 208662444 602872552 994278166 696816790 20476795 208120585 54607741 48548538 516472903 575362303 485675298 283438857 636971492 262434734 44194394 104344438 664578023 847636646 890879372 657592250 915506919 304654313 431615077 874398025 112001524 769490668 589552470 899741476 262447106 739583066 344218738 32084166 149601453 881987699 59253051 210230666 460426104 383818603 891151448 282077891 337874256 707224030 81020128 276254657 159752476 656784230 833483111 215245172 321361657 126408083 496204709 322679600 409308149 86223732 475836349 848524182 434786006 558903702 551760324 798460710 847370932 351171512 172595615 723018194 307212478 171011483 296334400 34269069 405054395 916864671 529839117 371672252 422453328 284559177 165553835 728328614 226811519 319748967 426533665 831112354 238141311 444995045 890243150 861015631 977332326 393644920 752974908 127768388 956933371 226956809 261755532 621690272 304109926 727675071 880991253 35055020 322590612 797877400 758253199 493495201 630742615 863144920 105254337 416550146 431889898 548475920 77326167 378697424 407503130 785783697 358825189 173318367 384421960 4537314 199751742 139634686 883433269 765651829 869532550 533533558 401363844 445259607 555416144 770049091 565647943 678171773 194267997 985977364 817627022 274788094 470128452 765460293 17805702 103400195 92555972 697333864 598435493 200002350 369815918 245417877 880955467 775982926 356761738 553930020 44168072 524082360 211913686 178375687 144006051 263907951 936886279 193846462 993489698 544463497 80242074 586562933 829276146 790289755 484717994 719464672 772581215 5863708 114969022 364840358 608615363 740335305 379468019 587290292 998113745 258099239 79055015 617898325 623311110 359118098 748527338 203634912 279506400 756520798 506221271 780375542 117297771 821928117 205052661 666749679 154569094 946609684 106015646 800704868 555428610 610284896 189591611 713817600 526942377 859145110 591681872 466792727 751380681 138927931 22263583 116518482 630587273 715113090 431761698 794723500 647529824 840348568 178746674 330105357 525298595 477464241 56782843 393067086 255213019 660492646 237682087 135691403 604263350 705004360 267941717 10575437 886965652 333888670 16529613 639424606 381122850 15804067 845646513 269380565 13581850 987843735 490486722 790474154 804423713 851289254 930334488 173236520 382077547 752966508 660334100 862926615 195060125 293081694 186493897 308894016 619184659 608736799 892664083 704164343 159004782 963705855 335662193 391866874 288250590 284593785 666521651 705359282 52929549 136557633 94409611 730731962 715386742 960114042 812940697 461963207 740096768 800233172 695375575 15243552 541921035 440791819 712576903 853797592 429811832 812029887 216320761 553360368 175395883 132756652 537655844 161094853 465970500 215336524 840261076 991567370 840437058 107559183 385169395 758482069 352231362 469028739 919968350 290862753 375802790 451439695 420707753 866114796 781611542 282908445 367754930 792007904 901235687 535889194 603930718 447898451 439725541 581405381 868265035 897350509 85747375 661322445 536815360 729697225 919754458 605078724 466866014 272222215 482805220 31575319 127057136 507346341 58187940 744782861 608896842 649860251 587182996 35768243 258646323 819015732 802479333 112956722 496480885 331704465 812260821 460597752 176843285 45892583 771475286 711815112 94665907 103613991 606463383 309317339 972153507 508820231 14798556 504368543 426090646 170382831 427198189 775350501 609824405 884168355 101779546 239435523 587776628 128647246 146753642 55065633 166171383 740082498 589511938 115823385 547147969 168609509 459602975 357728416 537049631 753432675 678958933 291719770 253132734 745079182 517799259 139117591 986812950 174231581 600802859 886846773 190926258 405849213 111714010 575564823 560725238 655687531 692452190 909585307 287414513 749402459 599192347 480701528 594746814 366645698 798347766 933713524 623576213 146609615 49555197 26505496 675376441 120030341 493407396 115997817 204355007 246401968 469827315 86880535 284429026 672835874 370669467 733036840 874794409 98832333 133633927 445622855 232317451 703460904 366623877 26513469 512440284 576549215 359551590 957895116 922931035 302122283 206384991 94051 127966090 122039512 165480488 463953447 631111853 845452324 599343580 390312515 432469103 693507661 537522525 577655577 760484680 947238419 176514720 899010982 521782774 367345550 537913295 372991443 430556162 662806826 831677898 714674708 716823313 832587407 657274620 478752290 25862138 592214508 750188065 882484263 824354457 920716490 865015719 424513298 871729886 308164202 902274446 192778312 351656206 925522529 597591989 999191170 406538742 144825881 276394522 354076881 901907845 614749999 879408244 157253646 139690663 953667877 408595380 742152911 194144722 98586316 274174287 106906721 597456641 165919912 743963756 421136621 975113732 552002138 316324959 676407056 562747855 250522385 496056467 970685358 897739757 172262507 447817331 58033590 93592771 784558380 650117852 915335265 26333234 981995266 769751950 104005859 997017700 536389880 511059811 981859734 747762710 118954003 424853292 100694339 568224834 949926822 172460325 909920376 627295966 410338651 408290964 92829222 332576152 281246933 400276632 179613749 210216006 291500823 16129574 144159692 384783255 538253811 10321894 534291072 600915698 854062238 800008288 462886222 728214622 794122535 204253897 954305531 538341630 572945192 675786308 370355667 102028858 74494544 733044649 722582403 559757883 550651173 540598639 178438309 951727781 590356456 533552717 536920448 238223510 199810642 275897315 405613806 666005209 648192771 385058527 636198074 348627017 251915984 83593216 17725762 441219765 765977920 827379836 137817099 208916271 642782759 111037849 621474290 455562395 587989894 414195669 70951415 827709426 687725685 168880000 833401893 214958673 960843076 281815667 731500266 650340016 571814537 865181203 674664226 921666768 401030247 685542349 752318116 147176386 654065208 308450470 379302170 848276597 42634100 93167639 324439093 58022545 38949551 341512829 704839259 413076614 568169460 491922240 651945386 408217010 147642462 793794850 306569752 307535481 873976094 137237401 615187612 132083426 227700320 452431092 182151573 131486664 44550573 103254546 365857631 260868294 700854466 926394683 712406809 942798475 255915574 856987422 844386359 55065993 128195679 103416201 853100544 997097811 763128591 355982627 37841751 824646744 367879412 155081944 147198888 364095082 544644293 655584573 320299931 731833997 442899737 468214361 163627250 736318793 206543846 754680970 333230326 95445771 826447476 748281387 80428758 878607208 808483466 879649850 706307395 407342801 846775371 346275055 778112566 372015477 544387345 860841853 990892068 80338583 999931401 416278869 690348726 78080252 99912080 142295456 59253479 511551953 434821462 549792789 949537604 539756221 932211467 82347581 427769605 265219141 622751780 733985839 131315122 249691177 941209179 58499450 639046974 397008398 145850131 372214415 108120046 103167632 385931286 869871259 835544404 656609877 608172697 910420691 89395456 716366652 750866562 154663226 98373361 868216037 287655123 297838857 90180404 576165138 991276995 35581673 695114093 815842207 72223431 39468281 543046912 652030699 152616148 333907304 691168811 79509099 61325835 669235351 720334218 884011904 553530461 401591990 284831297 979771833 215218491 916155218 64673407 853787363 512545892 955633362 202632122 840212114 572679199 219192005 550863357 911787505 220989912 417116245 642280695 509379872 455955132 435627102 187264917 159358153 944705057 725308458 617954218 937569230 691802038 165289340 705382381 246258549 308534769 290062279 258963280 82381487 764473231 314628945 345179319 553795356 352557651 206439285 257987106 964931536 181516482 898844302 401800064 57547326 676992029 117907120 513320129 841848181 645840298 900668273 835856610 581737473 411921249 338965777 58742431 209728080 928022972 358758000 694490992 519515380 497987242 80488163 247216708 447292874 753248827 835153229 352271827 12021839 867670097 79033811 713038509 832155318 40596597 146169025 797919401 903001982 459818389 13055546 887072253 352478901 261202155 884544223 492820929 560706085 685905728 632874352 553442560 475555676 21261518 724332222 359920385 336204406 222015359 905777718 936808665 835911521 919681405 99474055 783218674 516914634 500757475 565022797 72402293 596629035 757836630 176961419 937670769 616748972 528294855 346777940 682856179 911911501 531496067 195771890 646749201 905312802 358235172 743928519 40406277 643146108 86403466 978663097 599317161 392229636 309697492 780811976 14462502 685854800 371136554 918644398 149015800 507064741 545432834 824027263 857221764 51612758 1207933 90555579 378007912 180701417 344120914 524865580 360355383 372848641 722680951 756326047 963532982 160762195 253081267 415141950 33831970 826843633 751153183 929542643 559739674 46173433 491474250 989184069 409056135 777647981 499163203 419976778 426586282 490223032 149463167 951404116 322492272 800750930 31117646 696822757 747844361 374387486 808446665 844806973 639097614 44606371 875657843 271847705 398086466 62588026 125151830 113864054 824098549 62645226 564553718 692575010 209082706 649091516 713058861 341744084 257877477 274909125 164932569 571883115 959910302 300228345 701264921 739435412 288452843 650506312 864987399 740307160 23197071 935725455 195830352 347705321 113588941 357052501 679532197 913971125 44365073 112870565 274948547 56533868 114032891 360891034 489425078 653262281 226985917 864057942 719615810 850133823 760673941 354171843 802786658 899702049 324934830 327743208 171479052 9704744 176110880 2464357 573025936 752806286 812429450 644642536 701385603 725628229 292529320 455443021 26928204 484222029 88025202 483476496 764681950 490105541 34819865 253008796 365813993 556676894 764117681 544417744 521546035 632826702 539838538 647260986 692724564 794407069 581424401 485308286 225314404 594828618 54356765 458116001 120786528 270876185 643620154 663893926 933224772 980736497 25421303 541771532 424488427 724444793 194129211 768836990 27030938 679689612 172607177 176494058 309118264 292168662 408430142 70685294 208568599 701983083 287261146 144639834 163447389 269127823 233094325 359707926 167845625 330064086 996770936 514202481 190283802 274397591 346913218 108614507 170516968 915724136 123154099 77531432 153437831 128099497 798005712 838213311 194793699 964460349 886863469 630297503 902382583 262680572 963039110 492095257 155395130 403485224 869676798 557945381 372039804 709125224 759443290 918527124 75280060 539831628 911460623 716651310 411760722 36625799 64142442 606442048 536806474 358621466 898802268 837113384 969827986 171865685 356790522 771630643 865649442 863653752 115545718 156071289 808986479 983136259 174983945 404381329 32240857 26650144 793033731 198053357 166595804 455272457 774223653 367583993 882021125 939727329 156147591 636658712 35805915 584571020 943022862 865294054 399363754 377373968 512818972 688575673 649879260 577371662 155393019 161227307 965563471 943228562 151972905 825100248 56437207 826024977 506357526 176194345 342753759 976036340 414388754 938850025 692385317 979413198 885346179 818674655 857004008 778135392 366319046 805946243 558157425 377445708 65618672 725386058 462357247 511654129 720438924 1808914 880549189 916717802 98296267 685430562 13698260 343123212 163256211 156002673 975144753 720518155 841094306 58420258 631519416 7890991 62497822 976897776 581800613 387053836 193167453 976323629 958775013 555921848 361147394 579226361 455310976 144179452 378598004 150755485 646048121 875730280 306835807 9902024 314720211 281833209 802985163 972910547 350986831 532543314 675250397 787639800 750159110 599704339 498918217 413499718 392655607 680831786 58062028 619068956 960815538 367428403 594713202 268533661 389478844 729521787 896865138 32697288 318724705 891823116 153738126 479542013 614739975 901056288 214456411 433594610 842834356 92098785 308850415 843774173 593415208 541745645 364116185 893564684 347494833 256967437 838178518 659582456 736183437 837341929 741714010 354226796 530334768 369760081 875818192 123547746 145748991 352231859 867533393 117249832 404774098 122818955 15980660 985402560 120026770 180764446 606187534 808082185 622830411 308541790 698764048 861961623 805696062 591670948 923153558 217243387 331714353 188208562 694016803 936158203 627762933 205468303 330490083 419507802 895559582 726323405 418511843 420719302 201185523 655160655 805588792 816372478 337337924 976301099 825143881 573975880 491295841 806687282 921876478 109038787 970125526 627670995 335332341 7847745 573125718 324187448 310956323 975924208 570650988 803748399 743556263 791741859 763980899 106345698 837003034 454164608 500346419 148222110 490320616 137781235 384249983 952896612 536429305 841402871 219639415 943965857 242848441 472840121 494347481 430418880 123786586 689991466 354897037 559056088 84201713 685284368 860066350 625499148 193099079 35348833 223088128 291135676 395016436 158855931 967269089 650597765 440935022 729559120 43778074 749309528 378507790 84987777 96184789 814051541 119678290 152276238 541538029 224632179 148749468 77801208 135409062 108159877 527408910 35884615 443852035 754897815 844877198 995220270 415127383 870964069 784741007 119600988 362519302 864205379 413663445 740781553 535658210 35883311 691092753 85807062 974577014 914308290 395257027 411304451 424256126 790191914 679898940 632138627 687418487 112078477 85261714 937938062 164642194 453754864 840166803 976907714 595195923 684275038 837712046 123456063 904877289 147117930 369545756 953259170 461937009 973682560 9058233 502647116 529169241 189498093 141605401 635028938 548978079 310157272 508579578 371986966 857290860 765115325 521365331 82634319 209772028 330383646 771858510 748869938 355343504 763911093 763509820 54084524 199418716 358890253 651466139 752904898 793324831 501078053 871151677 506664603 578886970 701965047 598263689 66327259 926008235 154401829 888758208 223288593 389848246 548292484 923640732 781577589 415147740 663061655 312616426 967443999 418685831 129047718 289324227 248789199 653350514 909663661 891778741 725539429 835044229 118438756 609476052 241507890 996784621 941868658 877899432 600031809 665310594 699396025 581943396 157277360 167960699 451248011 30481337 551129500 276499476 732387864 766440642 882742035 971438704 571213425 77313814 210487609 572919689 784974939 923411397 859235115 594313629 528985619 237891644 728694613 476589731 205511542 853340289 299715010 42477931 429561027 27622688 811167938 866550085 226728918 687220223 637765644 378481788 452604248 624940458 477755125 859834699 693371709 115123597 7012073 312881152 240315145 928885014 770576030 459069406 132054692 851815267 411712737 884152148 205012308 52024748 524365958 965046905 157712051 624595168 405938087 800690510 274722135 658622029 260074284 408432232 70171440 454496122 667612923 873211357 582144916 815285481 11952415 526975743 437967492 169568738 161304339 289307319 686149996 683380867 379853443 170735064 207669768 243492890 180691982 563766181 912034370 404555872 822492959 410435472 863363972 409227630 507240170 918130258 662559160 601257615 816670747 521893043 738890431 919633515 698247960 483036113 808022936 115261461 595672120 988681046 239940023 390612046 113935773 810316146 662442499 617990010 382541280 803880576 433849267 540796213 262749013 710707489 617711290 315510023 323989269 101493523 571593340 222898014 684688450 645928278 425375734 384319972 188879294 668002297 723301866 529140137 447852224 7499367 764579214 196743662 616601767 768085580 369578995 724236212 201377887 326849758 706679621 937807016 368318590 903920923 986155453 720312446 433329054 913492080 138665192 294664234 573715845 75637812 634125834 616580148 576473450 503863297 115736 329314062 940973962 833139083 932917526 152228449 757593751 261723928 865926653 660729947 174899381 82387519 234323911 930055615 178873179 34947833 657271123 741137643 220671775 697532705 246738751 854832443 809606811 105723495 770956246 454027750 876410920 501163005 630801941 765011445 163090354 379773216 29797798 165463415 6352063 920408843 609239150 757899126 238276080 286127361 10153095 155704251 299713755 167159937 516871298 423356865 357842128 569300517 478255890 919960462 902315191 156997564 275737916 636927302 69845079 685106675 220597884 622601620 400766810 469981618 791104365 78321956 723309440 40402630 690953033 307020058 245517670 37118626 716209673 999370343 438352139 516975337 37606572 975173072 875395927 332400064 176561120 941128031 775745036 42035202 826189906 73968797 489324622 748615847 886013648 436611061 838354750 226189580 530562779 420838099 684573015 977677998 150220021 727348681 410718969 608963628 88850024 206388112 205364951 815563552 260059139 736535672 548129795 690283875 353476367 492056529 499577788 52148302 988658409 904684520 933993935 961160536 534974621 212372728 122224800 625627046 556488371 591221226 447794564 613694441 869049140 324244190 287028815 976374984 23510544 894347010 646824773 660794255 406574972 832449694 24959775 489429467 658913110 61173624 110830432 222158880 776804802 865599202 966859249 640775491 589437743 419186198 429729814 51664806 74424299 656413495 107718777 409281655 782163729 790370136 850578625 977680825 910380401 734317258 931101830 710425946 509510954 848470291 757337101 250430349 917213826 746298706 934624837 996653488 323076258 165936424 643776490 613034446 337105004 496013479 235652604 992292003 788776588 87704184 347647634 396359123 638852331 911509273 378753792 182225281 132397201 742606321 163894503 916375009 168830975 56735860 654602274 3026405 339685106 585962082 79856067 396277048 54371108 665540966 306628666 18559131 451125644 534137554 47243068 829650298 229091116 380401973 146038240 221393643 891058433 557764683 315970441 280839875 270750527 440611770 47769725 450398945 717351570 353313053 277137238 193137929 214317351 94745056 530205455 142043633 448490601 495141841 73285026 732776026 410807763 627825728 739888663 480547914 713235159 235088505 288441192 786180191 490044522 726023078 599407542 297521441 66190660 656821361 979688994 303043789 723933601 938547722 220138862 686596360 413054166 655240144 254987387 95300407 674971043 255327568 54159844 724762555 908629557 415191297 502870378 784208025 330002152 62078343 835959107 700851368 443546978 608019754 424718405 319161855 779475514 612679532 964858562 486855952 956550976 560387523 981648295 822145312 563047230 927489248 650268473 455576761 942968060 66018387 339800717 861297659 579193370 714687742 475430670 622652207 730467652 941963366 564277062 519702343 282519166 301269616 836072835 741843743 953751937 149549541 421793128 875875466 849151517 114932131 628638274 320926976 910182152 489853212 342120493 71314850 35100050 48211609 952963105 303220445 494281382 974146361 726090225 776722201 198666585 683485056 450059999 67061079 160365490 435920188 198420978 300724399 451679131 420603762 191622047 108757111 835590050 611598428 283337180 741699211 83262388 212762583 868306746 583588238 509824161 923211187 279359378 102102653 355941217 577294179 398734149 283650842 215358229 192121796 984896401 59322977 951196590 876439908 562492788 644923125 807325953 693968618 918237227 136913148 275281038 665312501 158359437 745735014 604974839 395206270 400499803 535358597 276660950 842500947 372260839 448599576 976392151 91766812 298425593 926610640 377810452 393468513 631425506 652475807 445910043 744284462 916147599 617494426 980990642 834023742 294366110 5872434 691888416 477051818 745390587 444383965 181175254 12582188 508536036 235354881 981683546 936350215 416339511 558572433 774534512 735990961 91634741 430350859 605332172 310899633 922315558 132367613 75496161 178788181 434382922 236365352 155001252 247734888 373630111 320724273 181871298 741368729 353341332 41805550 933789462 739004922 212979893 65742102 620911479 537737715 464409915 779070833 392367858 450017402 400099315 897871897 192516835 613612929 363010905 468680875 322243390 388212165 731082351 307203311 715150258 721628628 486677364 577471838 298169063 693594899 464790026 437932742 684309194 478426651 221014330 583359507 966489847 532387580 820027067 636438564 954487278 66403746 929692242 706063049 325188170 824732858 878596286 15855263 624505017 223239643 891450427 3972244 433390131 635625476 12836939 53994403 278985914 558305421 341097689 716656455 617576035 623136616 748779715 701441328 938895144 173637241 450549757 730309795 276305071 964185250 615586969 588098954 25300306 792781501 941405525 639101313 530377112 538983040 744100473 549661350 37587534 740899946 731365303 545157624 758872874 661063826 840318570 205392780 326682950 800470384 452967543 763461270 550733265 849544717 774793266 980223835 727363470 117439037 764752845 294979437 313404497 641777381 310670945 495189788 668029949 110975071 497772061 722179868 212390468 989819560 558938096 704581789 148116338 571387663 373920390 653827873 229072027 738509 303630939 153611407 879103441 719785691 372611272 324862813 153280495 470113879 476885964 759751877 890087991 210931974 184277993 781682595 997266188 409159288 780019075 214440999 136504489 224730283 675395409 423440561 683477437 481578957 661056667 903582646 691289111 430192970 203056595 210813962 565546347 96212858 419533090 104593516 647575691 802570027 158902383 207840335 159323754 36578578 744715081 775541474 845644197 238299627 283475175 949027890 614671361 109630726 610913585 689461010 629589516 841713368 637352015 752015102 554016289 877436731 484764039 489681570 416757850 411949628 472757448 388666786 699951436 687365218 314095520 740807855 794418662 525473524 883217214 716538963 30054402 830846735 767111681 543304940 282668648 780076635 715859116 493896054 429277333 185278967 993598302 822347792 467835670 314206988 581539447 816480055 203133292 113868412 45831512 239159839 47822769 434927301 771216258 802965802 563444804 352153532 393404063 672140655 861813130 201150604 30298951 406688708 768763020 178670298 322032407 204607915 917930799 835675618 835873350 934414297 270574712 687206785 508040140 876562285 582748148 400336476 478802311 224768537 979986251 581092782 474214642 397378928 646567141 983151592 207891352 421921531 791767837 168262871 156667641 919964314 189906436 429302457 29392592 684774332 232718379 116383717 520378877 518622501 635097495 113925188 101919370 331489552 354735706 464985349 539725051 99329195 584094236 136988283 755157964 426872307 72776407 415273728 154703786 718359763 74263720 448112384 333937356 429532246 739423978 837622450 841850678 518410260 196217877 611560331 368505607 284186281 470551594 85480525 765949678 747525056 317050518 613376385 462173651 785911369 349168548 325576717 748820769 344793401 451092006 926396320 87376165 349985373 390914598 843988515 62438725 956163615 164297692 817138984 501718324 380301258 169290346 845438349 30126075 655923107 615750663 302579119 329942918 404509831 73348543 553716200 750589792 35621559 250258929 636365744 385218754 502689705 62162535 894372132 27477059 978110278 544152252 271768933 590880318 740806647 794936279 291981127 537697267 974159855 116257137 886953395 902443014 611220337 883118678 884580425 393341652 633333071 14536951 440605113 850013670 824143476 218756480 778657405 856114631 638129395 168942777 206325403 137741420 885223782 835077475 744495984 420246409 358401893 372167217 293788097 322646768 980685064 850664887 337687037 802663942 92115637 286918907 151784362 403412557 622723864 460707317 61079533 115767486 921582696 487292883 132876507 495374193 316062683 246191149 674694149 896333294 716625142 815275699 88434260 743660625 846960680 492695755 818599218 49109300 249669561 727124928 2650739 367197699 647345459 564996019 961249532 127843560 143036875 695586283 135679360 908560719 675284697 855439261 989911240 596569614 395850781 401176226 772578970 640424157 773325338 991565254 598747746 931541344 703853396 895722275 581963300 887128212 270000003 510526997 627652722 770446828 544133662 93460246 924637729 584918334 907854300 772190808 163246067 382621017 317775581 715641353 506093015 284698121 371124516 99725383 87077895 355295108 199404839 403543657 335016664 129735433 930388454 85567190 582707564 519649418 760182654 436670900 717589170 974530908 409093221 134765527 72911241 918366456 957010926 968317156 464330064 585393008 16009813 272592344 37973886 256206714 647634284 177556189 483908451 278533556 9540191 191921345 957377760 95405563 433848622 182510629 507430703 626684300 322013179 370198261 272771112 947180199 634326029 342059829 709704068 17966988 774041353 314740337 432658605 912110583 351289582 60777797 288893629 161954437 448650662 781176929 174967795 702624568 292827420 904406861 684042175 836149316 220437946 284539396 602101225 237657253 179895312 129063388 400967659 331275896 751624440 133345866 226120207 793759190 213999809 518183743 934445245 339076559 465203448 692972650 390472643 44345154 541525572 302910375 592250781 308155165 559959178 950278715 304562351 166366415 938116321 103480179 772710732 984349521 433858403 812008854 314560313 97666096 931681116 168879122 959597903 107862250 841264003 806953601 163173951 439228628 422310740 266746642 5596179 798711600 33334237 472382430 587674539 69121782 578924829 204376941 716778070 794009232 412041583 793455766 733919980 452436091 410057035 353169903 317681933 754523502 666057868 476698722 513948991 384047036 269326366 12273306 873015461 598686621 248726349 441355969 294561057 904549724 218963046 132585827 761543583 939600017 493829843 605630309 578148552 114203716 614412875 117197417 908393791 383408426 108723024 224821431 106773394 77615479 823333259 299000278 543439819 719252615 901841642 868448691 93234844 491530860 269135588 184631868 112029564 246081884 875372063 997640625 475712796 630057342 404157381 878905296 914754198 498037028 696624270 688076374 158191694 849796646 883637526 39723927 96817232 240177422 459502076 695788747 169638200 665093219 286787663 268621174 860898770 392439424 820030826 214511632 502858797 94151621 152057557 965207331 375913050 255773774 768583225 972769525 589549990 921636244 128234630 813474966 955214855 668127287 79675395 786097492 162028895 331387798 916483286 487808957 989168775 480661517 98054952 768536448 9499147 341524029 547550201 352450926 658963786 319125739 148541353 437680661 690812595 759395762 832110969 381413828 632747415 239903836 696985612 449787352 576199250 293981362 348111739 259757157 186542913 179427015 853346563 594634642 151080250 840012299 979495076 776537165 686914032 768193361 509864080 789638818 7457546 186337003 382115166 717224861 452192231 884608579 354426403 187574316 733193602 168637399 562507255 523423345 657019495 310293821 812547165 3467262 274758022 571520359 690291594 729251883 518154927 946983103 888576817 457864198 541058921 173977841 259540618 575613131 195977561 652778386 257249455 667276680 510376482 989571476 653509373 457904395 604519162 532535176 989517199 698201071 192113277 175081430 775706903 345810602 785809191 44691212 963640996 779145134 337147071 981013190 328456953 100278749 738194399 226592270 995760496 820851160 311394357 580599593 724712863 591336718 710582772 818697139 484708045 529981872 73396501 964476091 660358719 210810637 703956014 259496681 891402380 119061137 24931634 254755087 320123088 620274382 9945244 249323365 562134775 624118806 37225688 157034826 290202197 432084723 751698661 665173019 849042833 808008726 714212680 917146644 512356681 699041294 739635412 329750917 781728766 591569459 123877073 531681252 383916750 859332010 774312744 632149343 866843002 335280467 256545551 100480323 75814177 989353283 76776285 133694745 277463279 600658549 971471677 767215926 381534893 802098344 67563566 58676 261382400 237185734 402533769 704210641 356459288 314604884 259652501 551119088 54898984 935251509 671290428 326782573 889574302 517710956 183397627 481451998 36923254 517419498 119598674 218813801 860869115 715784469 690512766 495051607 715558348 722696036 611780335 804020801 113877343 730876029 181446630 344941266 883699279 155113418 49992592 111676925 270256460 904171755 575618000 188600426 658744974 939066760 666393966 319659129 503467604 488293306 741812602 112641894 198929567 544390284 951945331 573236124 334484147 200896075 332014870 15520137 713594193 225212952 280944197 807684913 510001143 462870170 210855650 884785375 484921489 115877124 915420376 221422285 323131393 940886795 103562874 345765405 450698949 771715534 454353972 413984899 729350056 502562022 454200832 439904040 943502982 828922962 735073457 216387569 750520988 155000112 398653515 688836258 586179906 811496280 775422666 211235852 583050437 170489393 621713268 218115279 721546134 640536366 538138093 495872474 346253146 485124607 446409653 760608026 328950024 907646567 713002381 246729136 204534789 964509856 292688036 276780681 464171483 616192308 794757940 918229494 253408474 356647065 667170852 750070150 804652679 445486515 472836941 168577409 506612112 998155956 623024660 764784862 916029521 76397789 607379871 134900801 501835051 883705107 734106521 805515513 532818752 221451445 448187368 461773272 199259752 281811952 568735821 407056012 97782901 724876362 198748483 409683304 899187332 463556818 368007841 839357043 518869026 147459313 388887282 816963840 887646757 943243836 123403725 379318146 848105053 630783030 898636813 27084555 771154862 607634041 899516530 814312781 558263686 110804495 60124655 143028706 100183570 849830752 135246827 262305317 336294073 89974157 67673810 623617496 483712022 180927782 343662670 91310178 508632686 693870967 196810260 966571369 215744888 212591099 220267092 266984305 163260855 199356802 273744105 270497218 958392785 793307229 105317254 212530374 602002730 318609492 862406423 312013941 499702502 460496262 710268539 59567480 177742254 210385758 690419554 172237895 766622925 229284211 714413757 832930362 95307304 271317981 586939203 498234413 477929095 861369618 638116454 84809173 511440557 295977577 415354566 629723321 939396960 180549799 645894252 707808482 520405270 260057985 507182344 260759860 941489735 196428787 839612092 84959513 425288400 287598581 164244037 785940919 535333219 453926349 795964693 466499657 272710081 308163851 587728488 771670988 427175707 567544968 828342235 663813991 975944901 486757635 482912936 763387284 791321651 425489810 719481498 823624240 332351707 208813758 400630658 456495296 611016105 263035588 157666438 383074253 469549296 850305843 838210355 627392739 277171960 817999907 794996082 639757687 801155068 185597366 873702482 215602766 5535899 227098524 405726949 597135935 172624198 101952780 557580610 48242832 95665265 188639693 894749127 935227498 281155216 383686153 442582987 909708915 15247752 366973878 318999583 68053789 499869473 89838584 632057035 690978311 766388498 215176444 808254059 183130816 292812376 559229919 915021593 686940960 578860870 343813156 196105636 839671884 17350069 458259135 115592886 299372691 684844614 991486023 798717924 262570549 798365737 135185052 370349232 472590354 306942286 394528195 702964287 317891268 482975274 882983864 738916730 725674290 74253154 857276232 994049783 181880696 570804749 635524908 295983408 421514287 798194373 59235273 814995317 645165394 636990320 130389457 852406094 988255060 465187064 211735724 815568772 604234211 133060093 807018693 521779948 414941616 757412916 939406252 329557032 967303696 941054666 371256287 980431680 471219186 582469614 741221829 1344100 59051124 283638249 477544751 196716706 540364262 710701320 573876645 738061651 160413348 888356033 328684434 181568821 229838416 307237542 265640365 805969965 540615947 701798663 944904042 662463455 58419099 641853705 923404867 723079929 118932176 832956352 51908849 695462253 955562022 601413859 163536168 32654426 535448839 383571016 30062416 658482160 582414748 225532318 230358880 950237489 821306878 304640787 305334437 429957055 551420007 246261676 180732585 978353537 542742332 20409598 634040516 928777002 29630324 733790572 135395997 190435853 986649278 554689357 539508544 938551470 28356386 175435122 702420613 971319953 710339013 226280336 666584182 95580633 730081116 200462408 379896336 766731269 988049329 803160261 156149540 45601547 64727461 4941790 251427516 888023395 209881056 941820365 536199814 100965313 528349157 316169851 43227059 111560183 70948818 861642936 16285284 288125586 611456915 355264091 639347286 957830065 740295717 831447849 545622158 177982787 960799656 758611824 97515830 423226156 837187804 705045307 904716392 380355372 338611293 44035265 725076846 62186400 533934179 126014438 855981700 946146006 593575455 379742246 252280893 273006532 619196808 58832660 579463112 718633511 965118572 203885742 479826961 406459784 598649108 92375094 167077092 909180075 148812040 299158010 68873917 781995878 474947127 795889563 946905700 85292667 164472335 472131566 606633061 181098082 13200553 149619463 371537558 111032545 898967808 445850731 190589193 57411896 599134395 182165620 623033734 661181069 264377366 76480385 907853288 356506579 699101356 212931966 411350814 872336887 78877632 533575139 123478934 993115277 27441066 692967405 474566562 868075846 419593215 359409023 447400644 110470149 217247871 878944415 385851798 354002411 915627789 120800521 178152441 145908950 226292009 297889779 118282000 636382682 706773159 255538591 766147647 717141482 534261251 383029204 384009119 504077112 320269768 536559590 691035848 513972576 200548388 834344467 867923670 217457227 261598259 462054868 414826200 222763672 763451617 806871869 27832802 739148151 304238405 340331617 168517629 272384071 898077192 988835387 45309829 700609374 606282933 799095476 417531027 624549901 619146490 402257439 965208363 977940062 414647146 70572044 639029380 575476564 317668745 440613646 424157476 524446515 104401826 59087807 889736525 78969280 387129128 540471235 264521855 212825729 333323570 448792880 613037833 629407797 487893162 754513222 523342754 43980155 426853015 738016770 81710913 30128908 949233332 380827078 963769852 361753460 498911134 230175118 362533386 319528400 333164947 903011339 549221574 610507098 594619673 625090032 648827959 933486643 35403976 121529764 595529006 742498514 515880118 2950785 250502560 969809030 417542974 626790046 787492370 692488704 194309242 849293366 125598298 262005362 918816098 581149368 35895025 254289742 201474503 959533308 978604509 25236780 689650984 40495725 445626644 425618404 731423339 538901668 939290240 41598137 260571736 59821870 827959931 636573308 260068131 242503907 847405124 552851683 850091802 187549386 855926202 616334482 717900399 869628911 119232673 175038439 103585840 908986633 561454321 77222769 492471369 784832613 284255621 854791331 497377067 640331110 780546014 778074530 531941622 850345179 880906080 589133326 441254114 131859133 40164583 298701742 404798364 720009384 996717831 88611237 660522461 325900787 689517548 234135105 421091274 472471229 564596424 907787755 204480502 744662203 877099610 390835853 271307992 90439689 107629521 375835591 840589205 791820278 978969360 999704211 197491103 800643238 670309896 654538250 575375782 771126277 181321041 325178602 489187599 796946506 176388189 628485507 183664979 387336974 394180432 852534084 181388121 724792240 795187204 199419488 235096237 385351441 351002188 242021234 629165126 282923172 477458800 454829767 723055413 547564942 153616509 414305847 699173467 790721696 213548841 118385062 892336643 1428851 377084492 629646832 406884143 178858911 620938162 483700176 424439870 683219127 278938988 576140982 612964295 593058053 80516409 556005719 27407537 755598757 644420960 637793550 680994326 831126426 718086639 230966925 721156298 879037361 52289245 202608433 851374059 986551825 538423983 21438709 801722504 660665100 917257407 627560207 794367928 158811474 781800887 696684758 54045781 817932765 535786782 238160549 574292270 127944376 261108417 504727478 784612851 343613445 764631664 760093115 856426901 156566903 804742665 12588452 949375958 892651240 180637952 639385209 509768574 416566212 531208445 145605766 706872379 713123714 554375364 814531170 498665836 373170805 828653981 314781088 874391537 275565444 511103500 97045227 795148833 823782999 945402492 500978628 827398809 287919017 182756787 323384334 815994598 396980140 704278195 342899618 85482848 598240164 246295733 37480599 246022201 407909449 259651622 530736139 764166788 318750086 270550697 584222489 312112463 462598334 35530319 305121282 315789938 752744424 451371351 795989067 535809533 39246985 808776939 193708066 230566750 253304748 54193849 950186206 166289013 284152727 158169743 940150310 432236622 144912916 38648204 82373649 706141648 7249200 891649137 812848762 204826891 736631309 60101513 646007623 646529234 530914107 122066349 779609703 412340256 887694786 581363736 64506917 250005358 758278939 122946337 367243733 516082491 969501398 970606160 745983218 817540951 798594960 792424400 951237062 169357164 43645611 728077848 367794033 564627081 888842258 461170115 360809346 571884676 731445297 503532417 314129445 919706971 857518097 36748287 304461859 356372071 154355905 895085797 684017980 252239644 289770077 338602143 322697843 848970134 40584941 585313644 21036998 94760727 705817204 276352883 968876614 793489643 148080377 843392695 209569586 951372612 335194605 559388067 845715728 322961800 851571882 840377395 718793058 110278098 615756576 634631564 393475603 124891299 202743684 538564824 841023147 241753171 943247075 12910035 73032222 720701314 693368435 613270928 282172775 272485386 760629130 798133888 523096527 447354755 410073181 952024790 866368746 240939157 986716805 881726218 667067760 481688941 475813130 99569451 765120606 834494473 744431801 950788921 478385145 745370653 838125904 216119680 713945093 218865756 267093835 300851265 902313658 632063506 144686610 837717796 44762472 887013130 189169900 891476459 947471407 335657289 500334397 690177421 202444735 600342851 456072585 641499285 831672506 471625325 103390290 783671421 744013937 454687661 431384099 306186724 32639239 618210182 249155277 904469941 111259861 301496542 833603827 446172671 961007127 736327859 753135051 325407351 532471305 320807016 685942494 726508962 598751131 654811007 950623972 46631408 162954548 334281785 996617579 995768760 981113480 410521296 226412921 81195968 913535782 972853907 891234207 840068600 305021390 431339095 409760629 563341236 807952054 61474453 333963734 298578014 198263160 685199654 485291371 141166518 318847073 690181911 330533026 4632024 541327613 616172659 470122018 864137430 854348314 72254659 71326139 893823744 119682471 899200725 983052194 696332233 185584121 665072650 197875457 950167773 432158849 353557197 632571126 677359975 270310729 236504656 964772396 247156064 869841428 242620410 511015812 164484977 670908752 90499327 981388310 612377434 348553909 597166769 121059279 470413287 244613863 859142924 364664923 153531417 329754570 443186941 184121176 216357229 191843369 308072024 113852501 511881381 517360021 248333327 554317547 88269137 118097211 470683969 818687797 938411416 160531904 497069943 187587212 612933465 105857362 695765445 200050741 730947661 770525680 907291256 470019416 952557630 757993105 785320239 606357727 955479635 314439456 68152328 310134073 902091186 566917666 996397474 482687449 710900094 602045977 96056574 890842363 774097497 240824254 445328520 879751594 528970813 300662188 900041224 534771809 972741356 469376541 761124148 16809686 186126211 553006999 731595050 301439422 674746360 906996818 452331240 496970762 749101015 335979907 347295463 565362628 806745528 550241573 114369729 816696743 852134177 180880602 832417403 597796395 535453360 611173268 877840696 167705641 985908697 673546490 91653614 661024858 501048165 28490959 870604505 224774381 165898965 120678793 371459895 636441066 154149385 859858976 883508098 259873735 279653307 76621073 6192724 401578538 59528756 755379891 424887294 87767268 907244435 914940924 998262061 861875184 435943121 731855054 396675562 718429678 158133635 426176735 424798306 656350234 488145341 724900279 773704720 242420638 128398201 462960789 628169149 143998191 237630629 24288092 626168553 995501192 651811796 309280538 38196684 67871392 663079272 624033705 214651441 809895190 334052871 222484033 117573296 788308060 383836192 99191539 740011554 281891485 243322926 199976261 423272902 472900281 640914936 247482131 870910572 194413107 361533889 203924742 585422168 995867342 21492969 734901350 908692204 730586215 70065426 559946663 324575475 843649029 581052088 1301697 74128983 547906077 616181523 587445654 320472127 667005048 510048127 566509122 178273082 428601409 474053356 944009570 773273800 258645998 207360028 522907550 988407358 462547704 400665695 527506990 690002143 879956859 451402162 316269895 779923519 571465775 772863070 852761353 583322080 967577303 84760780 381481760 890887504 815608454 408273543 598914287 310162505 351778756 586370885 836765918 466645539 13866763 281930343 223603758 886332352 227773650 21791827 898769547 143091385 218887795 518461550 921931438 37511860 447935982 186245893 285387497 301793003 798576135 838219365 119377181 428233014 862981100 206042974 798924529 803839052 896720657 214523800 98550854 860487409 90712855 18164863 788755397 672998458 743571068 337263621 816554303 217598226 454175353 499510698 92548283 122940186 233821291 994827573 627534408 451342147 307332546 297133798 456586019 180778999 64219234 492251568 52682114 872189386 646290971 866014744 141708537 931808103 711789584 330898567 226609556 508839637 380461627 205564926 139544772 166964965 214121624 906770148 152733888 251315220 110842814 995280217 889010467 573416053 831866979 872890896 836503593 637146289 277710964 649005630 686666296 790717840 44218699 148498813 330603458 563501508 561496066 773349406 528515060 132634090 638185728 383788169 774533399 626161920 554200650 482860183 47994553 650564048 497387893 254579730 75092181 458542441 658185491 58907283 175955271 633140615 550647069 806380948 621364718 839693756 250123756 446015376 908487429 400791389 266415819 70837130 357879103 384953803 418677397 97814763 346350826 300310940 156694748 539321765 129625605 92488752 493123074 47927956 554310708 292793125 101970606 877349935 228712521 120337508 399941066 764782336 164100497 510732363 267623671 492648651 79035456 832441831 632650381 409937832 388778315 291687908 232111239 363021722 546189502 100364832 302495176 723726414 138023871 44159701 972357883 263035601 248252064 218339962 680295401 963384459 689844446 263206630 685040388 450082345 256440007 556867184 428777664 705368025 957154136 521075448 296959148 67405601 476408902 772039240 955670194 474191539 846893533 233761439 767110904 282184347 436416091 231131068 831731212 91637994 127495510 796012245 758383150 45352475 931426142 778321934 984789989 851918139 292111232 732610309 901459779 845588810 233196218 273730370 252185380 16423826 814177964 608143283 698147830 306661332 444360910 118326411 766363972 973889941 350861599 925772143 946871546 369293148 166894029 954068745 319900553 18666434 219870707 686745867 625821526 514434475 120878405 635774914 158002417 255922424 751406886 86997668 898063618 377852223 742915599 666200202 858986723 716928075 829479248 415527391 798920517 852689710 537385690 75724456 203770753 350948330 74356762 723896810 802472453 574967873 504855528 126784980 696629238 202890406 299455932 539425996 826570381 821438520 133182588 167018881 8971167 455878214 877116622 667611354 739087048 192211962 78025532 148191594 267006422 80462158 538725750 475433611 343982425 961996170 943448056 64234774 514897449 176710425 580931249 317462645 590069819 1668284 992069360 104432283 108005044 748320592 177471501 540682923 174243258 71920459 432944534 651015179 494939841 778594946 196136239 920025517 234218776 434536338 319241574 469689879 376395078 162141960 41179389 662987831 276507333 408531664 567746916 12101422 9651297 56211583 488187208 969759370 725095515 629929259 966396738 408301775 81648609 635925250 312088724 830004913 187000251 737057817 481967633 692967192 151949877 302794627 450413383 528466128 726578110 230187776 945729609 377967027 971625757 826376977 147392482 652108390 868922819 350175870 702104109 81019841 471054246 994882749 843155104 219037476 807356013 472732010 381072687 398839837 97161444 946888705 88109383 541425779 955182071 297001051 873319806 835899733 546321696 769833071 634920905 97351598 870885141 283690337 114380022 682329048 73165563 181933159 415852744 910336656 882503258 190781167 865093559 444778262 645161902 546610888 715299000 593834809 815482484 990375891 860331405 699375161 208251696 149979488 969854084 422151660 695580186 5357284 910170835 41816596 134672146 860965122 441648607 438311494 315850285 885235445 339603781 857488387 818864483 691268596 554948029 734780205 605403325 285382709 168852938 628150333 41235863 46282805 260029002 263536613 498407592 937032703 745178127 437609873 730600396 42160108 270791284 633125343 827473713 751564152 119230780 64032118 826520792 948603532 946852354 520149371 817851531 941829745 338936237 577102633 400263530 13627501 45644149 687459554 261596552 93002069 93491336 359974914 931218043 27875347 697389711 190748803 469464775 881105170 983998773 896839734 231612589 623811909 824457804 12076347 803442998 300875684 424216823 268274613 34967468 451175859 41441081 325706968 142848471 176458187 764371626 923767617 806470558 208945403 137234509 263778015 498715703 401344530 386066916 450262824 145457292 128292806 830456626 890063328 982728959 333175944 454024212 990813142 497857811 241112238 135642309 487034289 883426617 352623959 563807708 191321408 192331697 928479629 645629154 622257780 905351506 952294475 800847652 786062834 595334082 90599088 351423638 442865134 604049799 247464132 339974161 58726239 5943555 870540029 967812469 938123964 82947950 376097850 448269614 861475289 340983562 228320100 97644045 819967933 21760932 895863260 245649779 693652163 453498205 223530965 110397285 305468808 481945792 950188042 129231409 542080304 375572332 520326011 179222346 8645302 866010087 126553935 609097769 248478383 188856661 679675546 300185018 716528341 209196477 42108655 399054785 7717650 928443956 112457102 224697308 968683152 627705624 506551261 517742204 880619612 898575257 94743068 328868981 698536672 928132000 220044912 97490517 265414773 324443345 117695012 321768211 542905969 679107377 288054424 425390572 213384653 657970672 83348646 638321206 171273365 307361617 195900339 755646792 750093021 366096190 235893772 689335739 752731203 247370821 347783911 620886590 11500914 220216770 962809111 581074975 54736422 624697633 720055006 181205851 207553611 868613080 107998937 369200411 420078621 166824132 471980892 335777090 287746177 985036774 694388936 780430013 299432610 659650080 689559144 646336630 613167793 170361155 367539777 252390080 746122877 722896023 138448486 946090581 909533517 220044025 276253030 845654782 619739860 793204493 763835824 338753861 963008693 409737816 162974848 809876140 400627208 17608395 975071756 498291601 997947203 369804525 534051713 485539389 503707034 785945534 651014801 666456608 717636654 341568986 853894164 402691389 47814657 429400456 714924763 981610639 704252370 667620404 84413830 856716941 860432441 288126839 393580200 161747653 930411885 312396645 687278092 151287732 890751612 306942316 661328796 727827350 722324152 684509903 557922781 124389297 279426852 971570002 83521335 262215532 930421248 16773643 148875842 182845059 718343886 987452364 706968792 167803989 577135985 853694526 826579159 55821212 811873961 594832099 964517660 719971505 525970676 885211914 256705276 339326199 793669333 119381757 954393690 847531859 199819762 32102695 138912214 950067224 925154209 161099184 649070184 141533507 650523107 564714201 518140661 476796168 638716111 653966728 124674374 797797454 21108537 303205293 324930168 357999966 322178493 666584579 461434210 65700884 399084196 178201996 476155536 840286245 909581098 530449525 553473036 426534193 216593459 783390842 496877268 448947280 235869941 747037989 368002257 586409494 244006371 341408354 455884253 258513056 36429359 640192967 915332400 626093189 939928274 585530142 484280755 979792391 266523334 34047943 532901456 892967250 476414630 494853182 43171230 226805847 68829504 130318296 801558482 212323624 137950278 508865149 414095322 421230810 126874572 572257397 381313953 421291589 335723910 521887845 456862748 809100880 671977227 85200212 589115348 481037416 51731049 449567047 547380651 523323266 636515187 546086451 329091386 71636481 674142300 248102008 524851139 839131395 208315571 26821591 70067007 929896526 971383904 217535395 76261212 842527767 34322219 483866488 409580216 867988926 283456001 59298519 167956523 701691962 593409989 460255098 568944952 394509558 846885256 985742329 89566666 578834153 355475960 374921 20764519 191465523 718753015 391624627 230791460 238188253 519733069 278184010 504034274 231492609 968784639 74915874 659770659 296843026 63612739 529438841 965120466 3826619 645658106 220947849 563952882 53138447 105704233 313682828 513788936 271303521 239788955 622979350 553431440 71141685 380166966 608097379 75081729 169327043 817176651 510915990 828807222 794087422 748993063 650546529 310440601 169980181 887580398 146663078 845651852 278535654 502936116 576026789 434504320 608278345 970494045 349280868 507894500 999375412 608039603 198772554 815833847 397071793 201879909 554121451 720871980 894507769 341723927 648415771 237086029 219578077 913975391 79873053 550014181 177896713 94518930 506368041 954302560 843611702 289409608 986133904 428804754 417396447 797048998 299393167 611719117 326018829 763849696 624291249 31729968 400756104 260839274 701824686 943594669 20692949 200580601 60378169 215889636 478660901 747663338 561243697 10872541 980422233 231183338 778585109 614905969 748865045 219234986 703964819 426152490 256060909 654890355 355117748 808691203 336903128 714621137 793080711 159681315 842247441 780707704 432859179 992734182 559208883 289621990 130814142 37730315 176210002 789035741 750770477 532738485 341706096 644902887 864778557 186837904 176186878 836249761 710431947 19512680 60881564 972829781 238219737 510744829 588193738 841198708 262237164 776190833 176800305 214927335 205920212 150298030 616200495 490300174 12263869 56144498 546401853 745907397 451982187 81950297 460599069 633734460 151317051 991015668 471999053 727309351 391878864 444681198 347542226 53011066 78775000 447592163 355432537 39898505 981462646 761503355 752374313 792598804 721154837 450248974 334856674 176719853 17060653 444478300 251466323 885196817 859831689 723387276 945313475 199785771 579166501 843906929 840444081 125849040 220238474 355403868 782210000 984988606 576381443 320798680 472607622 531564924 821399433 169891706 975636307 257865673 285683821 828233881 839795759 484167319 863660120 635750210 414900625 788676795 392398457 720541970 144440393 379610840 511706385 436897057 5694013 457329162 985186517 531192685 352608288 114865448 838092072 385517122 97664570 772367680 926822628 43173504 658145920 23033100 93869921 447849924 148486981 658969697 549677489 560541696 896051597 495268508 879861109 572334568 595248694 855456582 785118699 954103534 111698940 853181978 586275607 525316575 975617412 211581304 401273920 912864889 209277618 516019969 725923431 548313985 349414541 912695176 879469418 254604534 973963924 480732839 545569577 935464143 671026328 777953075 712030866 905915813 68993731 490489938 613460507 252691713 866937471 280133890 841208238 485647587 461186652 957779922 762535949 975296268 197354548 585680919 276300339 434764231 306508123 400172700 662858744 904802524 703489238 718715383 475633912 640797477 23506903 222908939 395822360 442274028 404135098 939082110 458376584 561575825 365371547 742781860 950084839 688095823 699368475 236972722 305595936 448458536 608973186 216242288 782221088 789718268 643468661 528431852 690275707 635122664 522535249 538439409 940533845 623062016 873807304 500180128 630828878 361636027 317205059 836354567 548945686 50157020 899222350 651840795 190010158 682242174 225303736 416496192 62864210 640772291 85110617 345093899 467844959 949865714 679754000 901441660 740740060 609228234 11576596 455527513 239620377 627893771 159975989 604954011 389354373 552548725 490249861 149485308 716185125 532202534 473660132 898087932 766144242 924947307 12842654 514702653 842581684 675597321 252479197 423442346 129083326 404739408 516317029 808148339 275066213 891501533 25519590 990278982 958962139 149116115 61606768 96867075 796736794 284950939 733018084 155409666 942696161 207898196 812302429 138483942 157926925 697854340 611743752 279616029 122028353 70668468 97156668 979661664 137995630 868450657 989690381 351457192 610245427 447561572 904225572 562589513 593927091 509940921 679209565 309747607 666951448 141612077 900516607 846291622 115008398 102392575 526454526 838371909 884935352 315641847 867736498 522962468 746314210 707411220 892929531 938272255 607921086 726033848 474199446 857010455 498055555 640739242 278747431 865974855 89019142 798067588 855236425 445315172 840086198 162851114 604772162 188606467 555291937 714343439 935230252 942773716 31382450 713128421 852835857 163378394 709229516 425610200 957394693 443457534 542385739 902420741 92393756 387105855 757143631 395001536 413913939 688139760 591208167 306767664 201022898 960279501 969035910 83057002 848148661 267415643 88726688 453774515 72681786 378622675 453556778 991414125 77718122 491884863 541348858 659579622 747131439 963612898 110694361 142441565 233087856 598772722 540285619 239033020 922324068 945440845 399414000 172545087 1355121 40945242 360078312 706262986 299577059 847950309 590464621 585692342 703224130 204588913 262894914 425714630 47505213 857790187 25911700 703024420 724287046 607990059 932037829 494444060 392418549 203391466 292725921 865360620 146679250 588351031 127342817 979262791 681083999 58291251 303623790 579519487 222286149 553023829 664642508 274844901 841029935 718844073 852718517 680223911 673341852 832104848 579042572 766772839 118919272 635137232 170481144 725773472 641323576 382964326 98351216 825767805 149273049 760737177 926623356 508278093 513615599 801436404 760543155 523485486 271936993 534407907 881603070 463668350 819665478 902951784 998267907 876088696 669231640 976831871 233785682 324877454 397652564 12039355 654891680 733563485 321614285 989454517 827208648 78724564 681886065 189516995 913835303 740046887 535494614 108271713 754579812 804804751 968059402 639225680 855662201 469160984 41278025 851671831 969879449 283204173 3383982 488114909 352110793 615261987 124022001 393294043 796721589 69985117 40310808 801146594 812044872 125577342 504146531 864767524 959821300 241106338 853934052 351593517 982394130 436006259 898035040 696593783 839997572 411817393 701851472 521726690 303037607 194577269 3361780 696701973 276752426 832346143 439274685 885577957 235883411 617807048 968792524 941585319 754977134 668889307 692877589 689139398 307205709 227329528 804374881 624476044 402161525 392783881 401257746 791433048 526048502 135612126 423598174 112199322 942840261 182914196 259145062 162002317 142378564 684608618 365456962 998862959 545546852 919156481 548417447 354182777 422654103 953870339 461479588 440424574 622547675 137111459 418595537 973614556 326529446 200519434 69339547 246021933 647180396 906708057 83419816 925240846 344281991 590932567 599500232 681415440 404493301 923647579 659942852 295650010 205928021 649785269 132736190 632950685 672131647 858524303 132690465 176695024 491860597 127247355 547061552 881233755 528384796 107222742 952918089 505249116 796583718 133009356 53532516 695622443 262729322 187587639 854886175 139573335 112582015 159464655 477639574 803410389 29667394 90480071 897111755 593418601 714806625 638633127 435760422 543706572 170406936 549522587 858340397 112271594 616074166 402199342 756134082 266520393 950481579 669442287 261114071 880578359 635403584 559804306 43224933 841873017 711116832 818074161 45492573 977273853 129448972 287670945 259901134 701248030 9376525 365415475 185313806 79221449 264809905 357233856 265577165 783001690 293509335 834682907 949591768 770914504 828396503 187330941 65002915 851239124 684686787 110348311 697474927 986889719 917912108 40304192 211073049 361578115 231894733 911536470 786098655 114698163 321096776 569960549 934539526 54274846 13713286 909603264 963431849 492864397 962645122 328943867 557936333 991699353 212045060 617743688 88407776 69951407 915186243 930472472 401155844 145179681 125796420 117329208 539177741 151697601 37331796 691915449 12600976 576836766 989515187 616893862 653317751 745328961 29929719 851379000 657702975 726763437 563350792 702822601 723726998 128453579 807516445 469403434 493289280 927842623 188827584 523213640 455688784 313891658 696547605 684646320 935605327 961477816 866446360 140839680 513493082 893193276 695801401 270381512 16669790 859438213 84306392 906859387 603645033 101288767 85489801 582199345 442452108 669410726 578579060 442818114 376940626 552948544 298107240 70700894 213723575 538015775 946246408 590167876 822998000 719136453 717749104 238913795 928838006 615378070 988114647 661730292 600507524 50808556 455734011 933661251 586604170 232058875 676345488 776074966 45090687 679867067 938201525 472940918 912269014 58654941 508094420 873340940 751475794 435228810 997272766 200626589 5965791 477098813 494638663 246522759 382253511 365039604 363648933 729977380 889426362 866748195 701154688 499993121 631097768 678436096 787811190 381076745 20010455 627389731 302505902 342201165 789479855 691894111 381754796 28643911 974143620 835850991 877601723 236153563 824411341 271579901 449575363 332906924 215871978 729686728 337557609 524939427 992486583 274598264 687504700 966185234 438870134 515777247 630103029 335483544 46304062 797968361 127287963 17378066 549277809 213096314 878814597 230213436 473534962 573655101 632482359 696802509 344164127 702955390 130325096 34555821 558392595 182192187 469439707 63191748 868212023 799448470 695069938 36897692 290423412 841793734 272562767 665390573 382412643 96825125 100680848 809272076 669458496 687600756 721817901 340722942 6438908 185052682 336868251 832366157 516505747 686647815 201976558 938544788 673170006 802151242 46324310 688632492 511389435 827482650 924211962 394496403 967769740 834742160 212606683 437872029 900867860 469011283 541716100 477960293 954481668 624423920 532061782 589712337 645164206 450434876 165399241 805248748 11790576 499822704 187174128 230416364 755453835 287481637 390089892 286532894 711400634 132932513 525149672 6966635 379265232 348039470 125395590 99507499 541858843 196113245 416324043 660976339 245353298 451381104 908333078 216662724 669556485 610207897 342699298 973659741 674384744 820803643 198912411 132140421 125363954 292573815 892289236 254278029 696153494 528254047 467084144 87050983 225312512 509030468 806871521 626330305 452585471 76931803 883543961 288900792 604345064 619326994 135412494 961498969 796396351 355016286 451094020 204752985 322240371 457666325 741368290 240353600 564563756 525458627 777196464 480345536 308704894 286427152 471091362 503377558 426877041 306616772 225880994 62022210 409677866 457611969 732266157 270133657 926929988 309738999 148444712 772260368 842432509 917859797 734775763 641795224 813233768 131701024 516305663 446792990 118189245 444844918 720682232 796671120 511890262 830322030 289333882 91433508 446481622 132509691 686452506 834392125 35985784 811736313 422346230 215425415 272564423 441165448 543937811 934294352 145481172 931169488 86750747 356430226 915348149 817596471 673625921 827302291 378165535 729590858 287728035 347958467 690693187 43358283 501339015 919717280 111825042 605126701 40577055 589729941 89062700 413844643 819675260 454866315 335741221 660433788 681888313 817074822 66296970 86835599 822199978 183991876 408661429 491065803 615754226 442011244 972491411 142395882 242065192 4369548 285871408 728723225 41655164 376317540 705458833 963601292 358410503 488101485 944453305 47064428 939379149 160856264 898775448 538277900 278757272 364493814 138771610 937530388 898764532 603425594 400457851 557001639 835737536 702968795 706845754 946774517 512695915 120528320 431972291 36389554 471238733 50779752 346568663 379846123 249440509 824217965 829848745 909734494 391202158 353287070 951040094 829543455 844961522 167586968 216019978 338120703 330625998 715059556 809228883 272051532 289920982 250693082 897591056 109647969 758311705 520353851 583553994 668009730 953594424 686811820 868046277 594139763 498107344 565452740 819495773 72604919 942108055 703920198 961076575 368833140 81568095 116186562 895385093 245383753 708141371 470193546 590371626 549552721 429873314 563108608 4183888 214237925 153976026 742580857 83325677 48894102 41756034 699030974 241023976 807730618 23771793 519447501 795786785 131974758 498620427 759969633 449506947 997788248 408727138 236162112 716094958 35284863 999805094 157208626 974058458 28285989 85484935 344246304 552950571 332220546 885695994 783681988 622557040 920965595 791031435 950426479 44890580 207425233 800892301 683486408 681195141 902795844 658553977 288273130 656766199 561041182 291109754 496728776 847231394 748783935 987843321 881080638 480508237 653834163 680370707 463852751 235591113 279038621 254588335 926688415 581030835 239479549 219388886 176336264 3954338 481180266 573812830 945019385 319225710 245945017 917388149 399436834 480699885 2070993 576065204 597686907 576747172 942160470 67949383 913482491 215229149 45660003 248842016 646354100 277496092 435634891 118686845 412413036 81607817 818843944 161279593 100261627 940322731 826516 784568898 445725502 7225874 889041882 943053084 738115540 993633516 982892412 963112931 883784344 218779989 465916123 547735100 33413045 55621381 805803793 600632405 225499799 734002878 825797966 898207030 793060193 169086465 265603574 285124281 937337371 584544430 309854343 13057152 287974386 877765694 656674329 313324944 647563188 78842856 851678897 82129917 229579398 732236458 782426695 88715802 847777882 99063669 11381549 377618384 317523440 17242939 560953188 659885 168304702 559998894 709914714 437185780 124525305 863565512 532344972 763181434 734299708 314515789 887550682 19203773 326304183 631202573 284702508 849723470 690063120 651710211 522345482 362714230 317021951 241596115 947286582 691413203 586366938 609612117 356767175 72665256 930617642 776189460 69319037 167533337 275971080 862565045 979158864 294884845 360036117 341658235 605850709 987553289 622484296 209017686 171904991 463110877 723272955 902949332 661911454 268042482 81690862 74806920 557730572 933191320 849926849 305335578 261098623 83543870 933871169 218709650 719529008 751583039 352303505 661729310 16235703 698876179 913576892 812959937 345247998 905837688 14482374 17676931 495989319 104852820 296504738 746863615 932412733 17334285 599921626 749090030 111994210 948961639 607553384 72125196 660155035 329882671 191498312 479367703 477858861 242334564 827579461 470193312 566747964 68209395 467334510 766047697 787599408 177677785 356839185 760425109 935270005 782972024 271164330 262390637 427343582 959268405 392189304 397329988 242992393 761416224 850151325 647925679 383282363 851732446 393484149 647899957 846086970 826036521 816393680 480026590 412439746 920558306 318032698 298883959 487187618 217137445 186066343 791269956 237029633 671471680 947526911 479865029 251649159 791797885 157628196 840470804 546066552 522973981 540741551 438893745 211936004 878603180 76939220 215256534 855479823 492813509 311444504 46424982 85843027 7014622 401614165 973266783 420950899 935768037 233785966 464224890 597036164 634529505 430678641 7642504 574479874 817356356 939990979 154906620 469384744 434518072 883048240 515151233 498065688 185962335 254555100 36671125 144249272 523118393 746820130 261342757 732164568 48056145 400039563 601724362 212374905 698865610 197318387 140136441 638040898 280858644 438626715 634383222 391926988 457819804 263670647 143453242 128220089 997366710 366818171 356160195 9433662 377356355 412837110 135252440 342917278 133696513 440702913 403534669 389984000 673303464 395082161 190973692 567106222 798638978 806771688 458562052 111872629 515510471 610935489 832283171 307459665 834312796 277790575 294748274 820827033 724354552 566127452 223180412 709533907 807578666 12415837 673552676 113327207 925482394 347706860 870320436 887091169 731778574 775989215 546057542 239661530 928313068 541679874 511599506 348794772 810219217 746406464 35126880 337244599 215777206 357794095 196648172 588591436 890348831 914132346 67341043 118750339 425983204 82874667 925498117 766139335 36314349 146791679 842630172 82123201 129033542 460936712 631870917 803641569 987946003 818087936 505998208 317773237 124917353 481799198 84082757 429435107 949417673 347352848 719301853 22213408 742272828 749609267 322039554 830977935 594405168 952210388 760619884 24667025 87732347 913331514 756916443 669147163 12417155 282000826 290988388 339226810 984551398 741137438 196542700 373035819 837902031 743257571 231816451 524267749 81800500 20138777 408522060 473584875 65314394 291710500 718160468 732147564 828158855 498544090 262544929 83182152 565265796 689207649 730774959 977674445 616554573 516348944 657244120 395739398 287436772 53478218 311122222 774409297 321883330 332293611 561425972 242310688 785941925 927406139 205023281 577874166 60897616 672946812 637205258 759681014 929095547 351172 64171297 261118457 262372996 988383147 412808919 717445556 78569504 151261610 89107908 534722150 473401358 462502192 560179920 311844845 732064853 270256618 421502926 81685322 669739547 410427616 512462050 158155030 118815501 262071643 113104435 248328765 897842490 331197328 401396282 384699918 471390488 622375266 683088582 113814954 419810559 316895266 260657141 467412024 398106773 974158324 528746273 926306659 640760992 635588385 646934111 398276310 199290199 33267981 480817813 53469471 984630855 265664733 83978685 254510965 218827606 497723187 47141283 194029945 824176858 327279952 297054870 807806744 959385384 879547299 460548263 995334135 764565478 63980859 389867107 395707825 851109241 389248372 457306967 612906550 208922059 97268808 360359044 62985263 975243045 62540932 459563665 312920793 854242993 961061804 462510809 123608052 678992198 467376782 454544370 593929759 898768454 859501349 817355176 262470048 557534559 456647649 266851219 671121143 44580073 572502323 103957623 306053065 970867199 105345895 820452972 161829153 881410474 421113209 192002087 881114766 928926865 500889784 584085399 647616978 169852958 739598837 893811979 578926812 284224645 8684059 461141748 150739352 392497485 270852371 360315192 55488087 818185821 175855241 902609132 237121831 416237966 991232361 168022705 157303732 539376288 527015781 892389502 206030229 904825884 649189777 60130253 999337617 952501017 588706661 281464632 44289492 439637428 581477690 229871276 543392749 135305081 825976665 543291644 87681157 280386116 58842669 195038524 68664050 18211062 29102913 691413988 536695326 729857371 430445760 4993959 597523280 37478159 845526648 104688720 629336659 280285962 664256295 254196816 288399067 183436117 598543299 286537955 640269166 430827059 463395944 742996881 959409511 311663758 94046976 601693975 871624658 734946608 382234776 384728392 458837565 431193477 613075739 378705775 545166702 466471766 67051835 767684391 711778109 291260720 88436815 981258426 271894328 247082480 515752193 239674966 930781788 348676565 142884547 453091089 994932065 759188091 957770725 885279237 500375851 382979445 391527818 810628558 562507023 555858079 376229645 306380978 950264641 287497305 179574052 471429466 406285352 343324260 941953511 53097985 239523744 214388776 99183088 899030967 807505794 424391858 833871661 8550995 241503241 39711124 505768991 445293832 563490575 758716534 70848749 750261025 34862719 509644696 697907640 56706050 683765559 738501911 222109770 973103296 361368888 368654010 498612191 125307491 710065607 316602955 606623939 349258755 833239724 819163647 71686243 577210436 520165164 411208874 146612047 246867621 699798026 222095358 214615488 388031694 820908763 827171467 922606879 693519922 714883031 453226605 935146616 70928298 421664601 591253420 905292950 896086081 740361847 468037951 514018698 441474411 58550176 41362813 942008615 965244474 280628650 749239405 785631696 406930971 31182380 735628104 461964028 598269691 449160297 693441380 246378939 772758396 154096112 900948834 584339184 423097411 522014415 479306236 64104758 843669268 257351730 195590628 556369528 895815793 456635599 504868429 700934332 889772380 273544769 710146500 553712650 351146354 34454853 450311848 875302690 315847165 487555024 224154008 118825985 653020750 601978552 510109195 936360699 776782923 222501784 667509562 576307253 643614170 579606094 862314079 355894506 146662853 449009604 74106566 216181515 63961109 875720928 670775158 184338036 188567122 61450075 579885913 628302042 366345092 182173889 935113044 368091798 166433877 251620777 129397566 622825257 32826772 546133883 961810809 353553944 985907604 918987474 590082252 157153819 947514602 885625403 273739739 91734629 236277944 291794227 8923168 145690536 367886070 125425783 184081157 991613538 470643523 382364020 738890939 822857892 784077069 618752997 798891656 306314358 733457647 660888917 557481232 407671940 931901004 695963247 151097850 183863744 667334943 965458755 384996032 397908054 71555588 484247108 955708515 85137263 933454344 831067743 189314558 311058794 811281554 763878274 854879363 229450527 446250336 344839964 865254731 92718090 28944763 396080779 578334081 845847568 814527415 377266412 569547888 740833938 35184892 578647158 796705381 887361113 775277707 825479297 984632549 739160721 68621019 84064615 69508891 92071663 794473793 562906672 176232703 27649628 968431479 30247210 791990830 14744660 906287086 867693312 662162520 106199483 487126508 663809067 336576380 574312422 390057470 253420902 587476703 624426487 292192327 787297236 911497660 107633275 500843374 301107450 892186071 959019565 199976178 467678100 654562095 759791950 678599658 998835374 727393839 119973135 867077241 595694750 169914525 682381294 293021671 628980796 541279646 676207601 458574888 35234373 695030315 684046402 72261422 201224687 38003259 993716900 408135230 113480171 400958822 843529002 805604437 279528581 749523003 223738374 794260180 781553847 899825625 771129366 853487519 391959764 818133862 896784807 497617857 178871635 557406200 815315951 244640068 744390947 16934009 267092705 613484373 523839815 999499147 78562439 13828930 597160492 614673752 933334508 96388776 845079747 844477583 558111494 585771879 317235959 367545052 36017945 511605078 161808432 820013916 520167868 696387035 294930958 367088179 9296849 231216233 308811832 476559891 830913813 196412337 958589408 404993942 521256160 172628087 951087334 284362219 361872604 524033225 789058642 286909880 594874437 327093987 259436422 341091046 243182596 126171912 737724266 913761496 875894562 980325795 745698153 79009879 6056355 306943501 571592647 505848681 626706378 134018861 255856883 685640128 563376018 910126358 518936899 681688675 352764720 209066710 534703820 452656812 389165803 999595737 489891913 73413742 250863663 680803693 706682058 16790627 552524444 472451873 806182338 20160175 829566678 19885351 143124508 130288330 400568192 850543307 55240040 247146109 537789760 483072188 193108746 673739729 614952675 145871349 692443505 617006651 93465900 246204938 905084905 607461866 613289191 525832431 959892313 100842460 803143904 106406729 698219303 572503052 331207889 843381724 311941495 906833478 820308918 53361214 678043045 205250914 170605249 648984306 314285916 991909705 792434176 247462066 313531077 13011605 804322984 683457016 531063206 126785024 54367909 472642140 807253135 503363951 327356408 39642695 952049071 805262531 652247000 570428783 21382264 236534398 153848073 821400922 898862447 36925430 725145048 98574820 862466846 362320333 672396994 74562791 501407673 535016427 791902739 142228716 915208342 437944250 342230761 416531996 503674198 748985391 309173068 694168505 640848714 320003908 99450055 5865601 753604865 611214973 409816388 70902846 813439099 573019364 513209732 668794120 424582853 5154767 118018951 431316169 660576695 752272854 871960520 393982424 913838393 930516799 516146701 974880635 291080271 383009099 633075147 598556801 728875275 646264722 371512034 714501313 736374327 178395623 218924103 490794622 515086510 431023729 246706333 229387771 927066943 856889485 930000075 965931401 214847656 289708210 214505544 399425295 785091693 944328175 497338730 843697033 549566727 618399956 587671439 74418936 171669152 219769261 653616039 682437460 742288930 43257476 332666030 861291316 505787293 806584484 689007028 738714619 514592536 763549785 818916951 223513495 301526962 189975958 392325483 315198865 311846442 173286521 302142993 246539745 95663024 1610424 233872443 478817514 102759167 471859612 82739774 179003079 359904985 754949636 22650439 5278536 414712693 9126035 17421325 167375511 643989805 618722380 43705394 364308655 14148051 621305392 719765269 800713378 234289278 93692840 786910010 323257586 552508600 754413057 874011507 710558228 409693592 827941204 784955379 377107747 943217599 633281563 46173159 977605503 214088724 269141047 233385919 159506794 484834482 901542367 461264765 738627839 136120074 772459350 200878746 150174135 793159418 46502959 375522706 675760858 428337734 364981965 79642842 332038187 248741838 761237288 59848528 547732584 176729551 83438495 160972684 505928097 335524141 558845842 978643882 397958169 314255097 64947338 40775020 835351009 838545797 321291501 599935057 750176053 293169490 791188694 879161735 132317864 712676833 248788288 407233714 968282780 365026116 294975739 468933328 399050432 593331104 500412353 530342020 656151142 427518224 753670948 694497104 956692566 348854046 866936029 316061548 454308054 399686247 345598105 21474156 862664861 49429019 841714817 663335384 221193296 784307075 212567892 290910157 94723342 748965026 644471827 172226391 86395257 546396812 806936345 40129131 542470804 476088653 366130209 182929649 94252141 540835585 262163480 451742711 161135648 351829496 775561180 722001824 722575681 21949506 376839862 97295745 56353577 731022639 646117836 480296682 583665850 584784144 474069586 92589622 927413174 653479156 920417455 178265958 636611479 122169466 414239652 464777666 610916813 574529129 507807448 848218402 456786327 229935149 137431103 570937717 99064979 324906379 912647295 132268171 950657044 584385644 570649005 67073361 96174037 587210571 798495690 81802306 225891233 46147306 508515297 31551558 775697912 189137060 422435131 686294822 677176161 891714267 220481339 739377006 278452148 290140586 37457174 784438702 363194388 964897839 864865204 70490310 644387850 965525914 348419453 473070586 128563701 806363933 251474134 448303744 435114493 427143035 7667287 860961935 309785160 263389759 580281713 393815381 95224 78637000 970412649 37856488 334533097 255923934 522811317 528739263 305595869 742602566 866819126 787224053 945207608 415622322 345461813 22874917 857283812 518400489 843383786 164033066 461821089 614164721 390297799 264068053 616472472 737575934 934685288 412882079 380115851 54725103 521762309 793038484 229063634 537135542 409727966 405120280 38430072 681903225 479314806 765079539 284886103 832748672 775535799 912588585 137308753 314613422 52566289 415633868 19229738 934702726 402228918 206985414 737203584 716494433 661728941 364123536 178360675 350295108 469385698 911118324 876283344 372635783 43008257 478098627 123588030 886387745 568417028 383586983 881730347 408898482 125779850 743236051 992781313 450983304 459682136 739565836 651406376 522202236 9441312 23479444 213811752 620336783 709929561 380421939 891145418 396603011 375004093 60327803 321066751 608507333 196557310 753380944 52186823 407569862 407588121 258831744 445168569 7946122 971835067 902095237 980669660 322326210 140600255 211854186 821979493 839858549 122718450 445654332 393958599 316787813 321831238 389374577 43759359 761038115 437620925 418322324 470339244 572455266 591551543 652038423 184211804 234962537 27431922 175380816 845965648 299311775 304082555 46722010 129033940 416580365 986279944 665940241 987182614 316563125 593902655 56823065 753151338 312665020 670774540 803235378 422876790 143346510 306207273 107553301 767943615 935740661 701566138 109154931 739067377 771307981 247341679 413495885 551369535 308868269 506432478 30152581 773857049 411624404 250066491 1495471 811450752 187519135 402585809 589371845 434668318 258687254 740281111 623410181 224528521 866246890 761056072 912670167 203462645 161957246 437867830 378008155 874360433 144668115 898200216 436911844 268150700 649791122 928829165 537754465 95812094 533428377 851559984 785905221 398109563 571752783 260238802 31456249 832688946 637775774 612628437 603333536 783057198 345193099 893752288 397771750 902664089 63744772 50536874 657810318 325389731 174781139 611268375 199829812 493619066 117371980 771170937 434695509 540350813 681095819 67739753 881806739 397109416 257286721 739293961 43427455 695187159 19990204 192791179 677784488 997407033 282111095 558529168 654115394 267638993 659076288 770612398 565800275 942967126 363762655 776761823 590777133 917467896 19603659 124880954 508873619 222962382 409503227 518992238 573176793 278817024 658583942 963408836 159619480 379005390 430478594 886136611 653532220 465584806 827693245 861339146 839977085 710717524 424705401 733614706 532062494 450811569 58540301 581046639 618883130 15962971 939683228 727627271 664415394 231614812 506861131 728971214 900438497 212294416 851383068 239423407 250708233 464541824 852121679 339770793 701728059 604469004 280352243 483274445 863497091 974037529 279344820 228589238 346493359 591307571 724117604 854582513 768287443 469684913 435796222 13109188 435942755 604626971 80595430 209939448 430939548 461867663 576669133 899598774 838386594 431387143 212993786 812087648 724309873 175786618 864170541 546955618 847134364 634084128 16246355 375300413 598207363 595852364 697551647 223049060 823895666 329832389 106817218 477989633 260834548 486012929 406713486 284978469 346010860 309346364 62431539 225668524 103257390 959932231 332775806 892405311 806341012 855647358 241584060 295900522 531510559 180887539 661107874 86949097 701180270 185565968 126025641 206211675 859856911 741165849 540844163 157722255 561225653 948704904 110494034 75358879 57348556 589239314 488358708 161333750 306397876 339725476 299703025 390884301 830462553 331524657 29706144 164977065 452732796 506656657 663376791 969012179 204239272 942985393 368713219 128312681 74993048 949901187 170342488 588295063 317494434 748363327 298839230 915005979 311748363 69330359 208679629 560018251 294910597 136088026 68350434 775365533 846607744 866200845 22455063 340877806 391778328 379729803 991272524 377164549 246889375 551620464 567308320 278935754 948498997 639266828 356731646 980030719 264327471 721198094 850483643 996674026 870415671 63925891 994975151 190844984 259554393 860403774 742120012 715667529 124720822 658118598 814673018 100883373 847446747 625881208 549663134 376798909 828786881 760903313 867286642 967751587 568870980 606827723 851884887 805398156 137240449 890840955 702159631 963720701 710646364 700356073 195615930 997738358 803409927 171293514 581519275 956715064 221102232 302531715 368421998 301359762 449987862 14077425 595097158 933067534 161704794 429360477 950069971 851966990 185246786 583824211 189832114 791756593 973713015 656548620 344121910 777157593 309234344 795080266 256608098 253888295 113217314 973683604 89477917 495861494 202262441 459390258 21849609 582475251 891446323 174304567 257201625 213367745 666013959 789799867 326424571 778921871 260307945 230256924 923018458 442381730 860067820 549092499 798848801 18538621 284557037 496268684 724669003 202518625 869560384 461438218 372759281 851211886 96396853 307196148 334806766 731727426 933765468 429829307 873337498 734307824 646464760 369059510 632257070 469690316 115718739 654635616 139965830 172334531 780915089 529964110 857136586 804722211 472151374 294699241 714475147 947825181 381241622 716794816 834878664 745697144 971250750 521237812 640074532 602156494 996181355 540182774 185174734 795617587 864260686 560993691 795045236 824739303 111118009 998275074 62708986 421106977 334935795 856424773 148345083 119953234 296422416 365742059 575536240 833368445 71037588 957163685 732261420 380716913 302682227 978861112 25041398 566641105 540962437 658146206 660930388 160718566 122199032 553148042 215407793 630564760 111629179 618329414 180773449 703275723 222143426 77261337 943551661 978422223 643112290 372297109 368582701 229246074 995149033 726200101 318790135 152423756 405771927 672285376 632233061 581932549 640899415 924567602 630758688 76421441 860734933 119253215 677755748 439935794 763214763 836730881 953888303 531940269 470085171 555222766 33361112 260924030 911320180 708597561 872861814 133406777 971975492 520101437 126973905 456799008 877009202 720025248 516545610 213583307 912980364 214346069 188538882 295460087 889961388 227055532 832490157 771189350 715826019 891533584 151923044 449618687 528904579 711248844 341740498 34966609 251630566 591656288 77002213 623826644 451516413 3951948 157926140 949830629 580155538 224877905 932606974 160789492 240620215 300322915 695121188 28660901 824766034 517161006 316793483 114653430 984027326 58780214 406521885 552325492 915496014 98831327 190010032 675064889 841880722 572965985 637951283 623603576 934668990 923522825 793548042 322757752 299742155 411020592 743821502 848822963 595319670 351698238 243436818 598161435 818855087 14161468 789564842 485792571 54188512 875248600 821337725 613083785 439867504 835497951 267650622 219498689 235877177 987381089 40961171 220611676 834504158 942941594 86492551 296460092 438199608 710516957 723507838 902846931 184533670 593964359 968386434 370413004 183189319 449340993 779021570 97041060 920681697 73551754 359587650 83025756 868124224 356735895 952861010 10142007 914683421 658911859 710152407 673536428 765678877 358611979 268609985 636181686 298824888 849683911 464350298 9951964 671785205 131769741 768178203 351988551 547093128 170241756 493710477 946818843 780735993 629716096 261794078 693256112 830239084 111262826 306998916 946093062 11882974 377853846 132673467 467514268 9642429 527164974 266997513 719134333 222551099 390414207 965226114 688308949 546653144 206866740 811806204 788799942 576829386 579833928 232124876 619371277 932956029 779955139 348668667 121033825 527897066 324713858 681112900 111768863 3172094 607531672 789529717 351667062 125745613 29856497 95424763 488632741 252095861 902658560 999353959 230225119 831889224 369557829 897944951 279884994 913100790 515208284 233634358 201409731 244834636 558254301 85251364 490416502 52787301 901033779 299554546 626794569 678102729 874545415 772817071 16238954 798060578 712112044 497279435 825123676 888307145 828946841 21582753 318592503 413952274 941410657 117889038 956516026 179604208 344760629 612614144 976212261 783174908 668550138 545131269 511228027 709923001 331080143 656343680 601691584 63149383 846357585 976845683 400535023 85003177 893384795 784000876 535867830 906412558 822349940 651465260 930541532 942641714 453910564 568285325 441871487 80580698 177231786 251391107 288423972 81003690 96153159 566087554 741550881 642689188 620494761 14549552 770065525 546290766 128684083 229282675 364653740 373502975 949417218 90066296 85344816 391704678 308063159 552375460 439899684 192341077 757085994 990028498 624519593 213494380 126280419 966667322 150914857 904222440 450309691 150255214 919501582 969983391 488747835 973227616 743505944 562933242 888600756 182713906 732612600 266041698 778269239 388827839 183941017 783653463 640928293 703396753 350463823 653092098 230115798 675364399 148978444 93023495 181036954 919370774 367119637 140403032 717074979 796610339 368494139 335399698 839272176 746516388 518541199 737903549 19826583 901523195 270238384 333488530 287526315 713211515 22762054 103668678 93480532 169427649 167475527 793623571 106546084 654305283 612822738 154876167 681482745 120418447 718067042 259739309 792264534 54357047 840065371 92531616 298719075 553289783 717832317 535951010 708093720 119595223 88696075 88395403 57700893 62184292 288977189 479019065 979866465 679459914 446895739 902900686 346230435 863893845 11781893 264904999 487371489 289469675 888463235 806284534 56942925 17758941 181556708 885353640 799439280 803203018 790415632 50883109 42901246 921328717 449365589 606837832 492788430 240588358 984573843 205958326 534982065 569232737 447938874 286853110 595806651 686342540 268154563 341771619 541826310 130566215 974224821 402961732 449227471 313972429 882322407 61742335 106093440 666629225 817969874 596888985 109496434 88555030 57405714 607846043 548816600 533635667 891502938 890753226 403500620 600458872 472431275 785474440 836490069 413381459 525722004 489681942 388069032 102362269 502487212 242220913 990513919 604195480 164489171 839712369 663301750 447523606 251980792 499610327 319746638 1014469 626008706 520575840 884236276 575158514 831981734 10450141 921232772 258310983 416370103 224346035 297036058 144931319 631970349 546922365 539757472 33710672 170240069 258354614 760940164 711532466 246463985 832019591 433145459 581702872 978122127 825722649 350297467 343707731 275781205 254574107 709456403 55266727 401267858 75231520 211842883 831589147 524187289 728164609 678648210 817793165 308861139 208333684 567814069 495685649 369295282 252681719 790143861 513010843 324741299 167485376 718912589 819537181 933773175 10862753 837002782 302056671 998675908 500147741 678680227 713999686 579722216 288501493 4609136 741865546 76247890 153674386 408212318 928517602 754150045 50208864 717036377 902322349 915570399 508373398 27589072 302937658 145234150 278448759 131595923 165249556 340527962 632631359 665875328 157835474 433209193 173926692 181659897 538323256 944233625 590404406 326542944 862487233 356313622 235709182 147772975 57890177 843812178 459071 644780911 979031178 153368465 384672184 582262393 94451172 592947923 90232729 890331999 585375085 603642525 381885123 597764184 108801984 759101497 152204547 836649312 540918466 23509887 171684284 785578881 962622482 372526014 586910654 585683537 22345859 89095909 134569725 753875686 242266253 423532328 989031001 844279395 176818002 407330460 224890923 625745954 370417949 491748614 140082041 404178475 873130364 873436531 537575955 601086434 187043667 115159799 352606457 709856388 54550773 296482610 106014489 143888494 426005122 333555503 158686961 125890535 777919911 318766600 37547945 206410898 26009181 380712093 671671453 45454529 309608222 872473250 41520736 866831660 414172454 344161570 894691447 672069790 823610047 296043665 606142457 851876777 304016483 812486342 262567528 246133658 738849007 814161699 389793898 441724313 620580242 977478628 593550995 557772811 589189284 178967469 190448920 839791735 638874510 286759070 572032301 20733980 20639405 970040323 99661690 549692377 214486454 278121079 825578687 174690770 441418195 536371772 592478279 212259072 514954201 260147746 909668158 444061911 412506297 640104469 922143772 404066755 968354387 742480434 220281991 215253855 282220738 837957724 455755902 349547369 556315058 690754536 287561987 134336868 217026578 156584683 207891044 517964058 655682071 957492923 426749923 850294331 351149196 940339721 957615349 530828301 769782549 939949916 769325002 103828966 389324891 675202101 787068667 446384766 94135122 702692309 835928328 547974985 983015473 767836483 868308758 232322469 71992792 793864860 846680136 454827414 919092036 103711746 512712326 961550163 761684339 922525031 689267268 444996685 809432724 275802303 671572754 836945237 493818845 300643398 703599079 64433818 319298657 13977754 55066514 517711577 218128029 215586205 910908884 302072542 507544329 53735615 9584053 577205641 785270349 61369694 339155418 496727050 539000264 398099495 804178489 767477357 924520050 774858795 67448629 742596714 679295735 480628263 518115706 677848903 5385621 435300686 84409234 750382669 272526674 691767919 180033726 903819625 947251093 516233991 609777518 258873127 75294649 390659046 840794077 798550366 698036898 241581077 911809948 208749657 369322930 197326718 978911991 842174744 823458183 299940766 740811407 711497711 266936120 748201010 253389848 996819808 146043889 231430976 918952451 285094264 588001154 82489664 356957264 971382532 165251844 218329031 360290590 749901922 74650767 882458733 959270617 39411767 755853267 818211490 872043089 744853742 374193948 63573255 245237930 137383623 981994491 463191436 898234784 883011198 828931076 169611680 575154783 486813864 687411771 963895970 611454381 919949832 449870433 817507203 868770612 171271068 422829165 695657779 818885311 959521518 477607342 304639422 646945239 395763915 45068213 707457988 764065700 137672939 825307828 705813573 932739057 410758307 673535416 417046599 571860176 383660977 321732916 80940300 584730064 353217551 501239146 162756511 453557097 91109773 932031360 286052695 199152477 220245887 16804185 105077937 921862992 699281787 79558501 66049625 948698714 614957118 202946014 996074295 314554341 512785255 501950019 560524812 636898171 461309113 554981323 477201073 144057316 637455429 368563519 133621818 2341069 938509780 355032396 423498827 363996776 380984244 804551450 961459072 726229579 128033119 922179433 377950573 810894200 23089975 987636212 185666135 991817500 107342441 402100663 197131543 997821280 326906788 343131231 301533958 884186101 290048351 234761321 384165091 532037695 74639119 370790556 984104114 282322736 969304757 266230867 487020569 527982511 462031310 508487260 992647035 460302910 514157450 848760326 782811191 225788138 611507445 124676312 473510184 89494566 991587480 6916810 307266425 577884681 78911506 130624175 189897877 358862308 898628952 248830824 889788739 400676611 611126617 673880749 176119523 227682691 633744587 557049556 14462238 957337471 531680563 580108430 586145354 207603266 272277577 832882257 960523371 806596302 125164738 697556174 607990778 177245671 36748232 84450454 285788991 986682633 549589879 841421334 811093043 453946716 953469458 14034036 390356142 374632272 72301467 298960793 196673132 101113311 616217737 410979174 425099862 77106560 825836769 662232792 700091203 655150110 138721711 185852022 678661989 547459442 362882346 290900431 486698547 482725047 141698681 854805386 249908948 516345426 706070563 682236076 333168280 67735998 257658489 193914394 467422356 158980984 171698928 59568594 211315951 178210176 826506283 715381327 620029414 651203179 200780115 404396035 506303564 986789253 575134229 320823043 376341493 609681509 706185794 365293849 53885546 180619724 449012805 578938451 259683911 128944941 544385909 271740235 400970931 159218553 428631069 965169028 416282655 722863860 587169538 15156478 26718152 806936708 651566041 740880113 803862265 290823430 250688691 19261903 559599766 358118386 453128595 351760030 596970125 975618583 964943159 918304121 669279078 931097143 397574909 682073400 549572670 969621768 496762392 618709220 363085174 10965009 884379302 108286420 2339463 91024926 876670103 228564548 89828529 990922551 889034208 481742899 365255499 53188171 677444816 31964355 739285405 895671649 532693964 765098656 151406631 817277458 867786386 205700223 181949868 914452255 447170018 562179419 170020802 403149482 166854280 906821808 686951061 495352668 523313307 690774679 282161797 417168349 442969593 650762228 923727947 424141230 48798074 285954047 439215092 128349350 421038127 223658315 956065496 145966469 184484060 59413228 748983471 229333413 264126771 218389401 240663163 98904183 570976435 393394840 259845419 112467515 835714940 128582879 574307284 509638117 687102706 417714846 747091893 891842491 696145804 906107340 404475790 176308310 355939778 975121824 173237595 155015375 93967092 9198729 851406314 474750908 248682730 293682361 50298051 482433280 613919037 601464909 169586924 48235084 182895413 829767970 32422609 618211435 167979969 358726448 245554012 25490166 576054301 335479226 335973397 225527849 384461164 35946675 436395908 210291559 988480012 64044655 619282324 583175976 3407130 594065978 126530499 233307725 145128475 741158173 448950460 485203931 504846541 642759027 230174411 64073475 487318560 959354419 521755146 191783713 846340352 727274429 458955799 233271497 819682685 817858236 71071167 217131207 68714039 261433589 870038628 614560348 814140869 190449333 235332537 28102187 161168489 272837199 300178903 490948218 317787291 783949112 665411438 796030074 261958645 939025046 695132101 354497937 11157049 160474067 770739488 322259500 927151064 689157889 402057610 115251055 216888556 871495039 908164433 721066283 299785447 645221275 443077138 788228638 555021306 310925355 556360787 140127203 544855195 244912773 389554998 244945177 262678703 407890754 299927231 601350591 947396937 408832584 230429066 210594580 392421134 168212719 228450631 465491382 978890504 885684526 240943186 606597822 33443993 822142116 791622383 902963691 54290513 865353672 230436737 733151058 204037791 937853056 676040662 190587451 342090799 536938232 1082365 286000840 995187211 353102678 955430886 992690177 663962756 952204865 19464931 389118974 646532265 445947756 616823775 868364212 216711407 441178545 459383621 208143540 184063283 753286174 90634091 132128065 373452815 109090224 604154064 305971860 853063701 369480536 192361634 803089288 859519729 932924374 879860178 489456020 957620189 312289694 941741611 975372678 983054949 120119075 647647927 415162011 589050174 746750819 51645382 337292689 98978127 875115276 956037977 815293436 221769056 938860296 983075100 951523705 669710705 882946484 434666907 970921056 419539712 496546222 731382748 607094562 609044407 105134142 795152790 385461940 26201034 840653297 668423781 480508421 666373612 990586386 833799783 302407042 348757027 503999059 602657255 662855211 257682776 118925273 778148424 300356611 391586661 56816995 195003812 284865312 242893385 517904014 875068776 45152083 667990855 92998774 38095970 519867772 282895181 763928539 579617153 97822360 959506821 330195458 960333865 40807314 863096673 391831896 192703010 160009317 612178611 797275848 155282797 238768395 396706524 454112396 320321915 726321648 631345119 314077282 884387278 908316100 213456709 831867017 565651610 993568699 679380038 327921107 512787869 895133143 839038008 617071027 350246890 718086403 355748555 998884001 75590886 909819577 55988416 950024291 820407311 348519167 657803609 84109355 574541931 253857064 389002665 769340112 595758810 418710406 241099661 195358111 540878698 248965915 726579938 683069968 359635185 939867290 432582546 700791084 370028428 899718919 210072193 194043403 233712044 309493834 547643993 971417842 324831200 258476685 972963032 671986551 628288227 477646124 978582499 79119911 112433178 229969583 100737308 960525428 272432395 711887692 422999800 135533824 256314284 588251697 135680933 331282162 323107419 538214461 270113557 811241332 612415206 83399150 776576416 538847808 516189121 866797902 927803629 436917147 111220630 943420230 159883164 179209912 762892612 709633926 339626932 437899865 165749758 759172666 108754824 366666336 471813232 810673468 795615831 754665485 751657837 170819639 345260305 561120993 657383320 219871922 535943721 834410296 929717199 673551434 678746800 315117658 870605631 263833610 424563444 427838557 453555174 908608463 402778083 199709723 374035618 574648447 496517208 211127108 597775798 121155549 129981112 69351999 105445490 150059912 208209156 311351331 339997238 413068072 119510991 821838414 861814982 504635462 154862741 710179411 213645329 341217237 128148677 84367668 275313251 24809848 154266679 265217061 347175693 759383054 663819870 61403060 646588477 540488201 968812471 64703437 181258799 858426739 18000160 56749605 565044392 256458662 318060680 682341190 595041226 308315103 697637384 878115053 433783384 269519506 76376659 894507151 921437660 758204096 812247814 970385024 755139558 334020384 355236240 148156079 998109832 477103910 828218180 777744482 961970594 932620834 575813179 257243905 771532760 142352820 558989489 29681146 613837451 105549417 934829173 133848477 574951343 484260343 182407615 655401465 247387131 624751198 709768348 329103576 57038692 355159539 652015472 663802207 731405763 651928099 717223495 823513527 536292324 613756757 313202763 737108562 886864580 213036746 912647559 479487141 850475148 539503242 226775075 444809546 598199991 420082746 988009529 149339881 478349535 396466840 203747263 32818721 633812996 674480240 925312429 638039732 636452468 173777158 826902381 746431375 234272771 287860155 901180371 377944046 979464529 895812233 139286602 852969858 550205099 58368423 320911387 334495853 127720170 709680216 350234588 747770766 114167302 841127526 302414005 538891348 105256201 57149576 174699597 940128786 310178764 538373272 50075864 209620261 596188013 8530105 12447613 303461145 507058629 15506708 9163128 317321593 147373798 543798108 185142416 958111394 793409864 459307341 855244553 263025835 143390860 316395977 695541608 623754561 132979285 916805940 235320729 85447753 462093313 102509241 57050837 6862431 613726253 572850465 718922411 928294338 87536025 945189977 698729965 129712829 705027120 972695015 282660948 958200819 17408052 252967027 207947530 178038468 37122557 574356972 572944031 443508449 815100150 609663984 305874799 230810336 632420488 267207830 397643490 976539979 515008833 384113711 788439921 118306104 648843321 817980187 103723979 364505033 535572691 700637781 18781369 725097223 266139333 718515539 789213098 914121838 449957221 695165620 935427925 978337402 808332926 280035327 709123056 163353880 615014157 196129511 470280539 34626667 771585542 988388548 941898542 558595103 899843145 588065456 778107423 614954851 883522729 546810773 765406583 473595623 149994919 138268343 984434634 982166219 674344929 743877943 979388127 902076890 176678392 404528904 982980576 243576030 352144496 966006361 981972169 736339877 308780745 357505607 576937797 580843291 13678473 306946759 608054758 939082913 401346497 964580456 682691534 156848794 340579155 601064169 725999232 22851540 730087827 496201118 456013510 882460160 997667296 974345604 518010761 71540403 399715922 502268086 746510940 522642127 630976040 197177374 378195898 198823058 360104498 841444602 250795080 973749956 953614666 680319645 327363056 780780191 25544886 339048394 710848881 376672021 617944323 377902002 515552168 22017063 838924412 329928571 12189305 770319627 632472864 213996332 575488583 625076445 377362300 867720553 41719947 279062948 156549458 300243304 61543375 114983836 865197959 902489261 96966169 82544809 496307298 180711425 351187603 379933246 114359508 524391673 383827325 739421315 991248494 366089332 557980795 845604377 255778481 250504019 730716164 64741564 179687133 657368619 494439551 613837894 927423674 910742128 179907819 837754913 703890952 66497482 831716167 745411456 687764631 286450811 396319286 285140376 507219360 734568122 673135753 875681315 986429737 339473271 829988362 148755966 34525858 605533731 924845810 555056002 25297278 926270354 645477642 582379804 725445050 65138373 964831836 13795627 730822872 381832003 905112017 227790380 44049667 856203255 494315136 322540593 302672615 579678216 70583698 593522780 278599397 459245228 729541823 597806093 749113158 625950497 247506740 611293300 824470275 51825835 138463388 578681735 299216151 399585428 534511465 837168728 517708235 279342203 113954331 403300756 733837694 948874805 241017197 500481768 9382448 369847796 883951077 249507227 635313024 941902079 833331192 516556265 519409201 642311698 216025481 690756593 426401426 49380031 101443690 322901737 308935139 734185625 582065405 628343995 27873540 38116762 427930104 754756467 954986392 36165447 163739649 109444850 14656988 299159185 823456497 556024352 605271539 123579484 21741175 372546927 649282552 3924560 122461201 71921681 850052893 35726166 481773383 444666544 24540776 977195853 208724741 711287616 428568612 231489805 327966462 758997970 50301498 561614220 558934832 725903848 271672809 935984819 701417554 850500721 339649279 481525982 193976029 725244052 29315744 687321835 598391210 437207054 651090776 963834995 99277646 741913367 380219130 483646994 474750004 135516652 520621999 903668155 796131067 679975884 319207061 924990097 140445005 396203349 596351039 747276263 424777075 419099641 629432027 819420658 862620795 469118729 10422110 708702735 2776930 19926854 579731812 937052805 238754766 552015442 353282784 783395437 132999948 177355379 648412508 366242863 180559921 167953686 748455754 355407916 425906842 697390587 610128472 49594397 320911664 665439815 287254706 824932989 310488388 796313348 364182694 791813569 768151116 179562520 646950392 153466904 487000840 955469648 486282446 399499529 371471194 615072010 978532834 510349085 204275775 252912082 37487423 557111982 472795332 573697314 679226883 287357009 262096673 770231102 637257161 15384793 974222758 458446605 829955076 95139648 185193907 635721147 207470177 471411467 984833097 646486658 45036585 139902721 930821716 418156964 299412794 368781671 428722393 122266656 344143714 958228131 841062752 585249903 704615365 160051180 438458213 728249049 533154302 992814025 488008567 900304108 91787332 788329777 456089109 110089836 429713059 711767453 236716725 960077858 332369490 110503623 179722271 928553462 172077749 669456669 263891365 7257021 641662228 182619824 5058381 850357759 607648383 880498263 718254195 672341013 595202628 846182521 141176103 140225806 427672740 568112475 672730919 388133442 230524784 813732352 135720633 259730159 769798951 700847015 899535592 498915697 655128730 730658603 837174979 529458390 857943342 921988585 369685572 751116569 221068021 500270608 692559727 777272824 463365161 342136216 186904541 285928378 948465104 145513131 600227374 404226205 991065080 216216971 403298560 776056625 722344650 636708494 220129641 144811850 854945842 581060143 920976948 895148413 426301083 277317560 418365037 238944719 622210415 958167172 374905284 360860635 372350972 966352167 2215473 634220832 412243164 93911520 844758619 515087567 438636608 377161198 666129671 54926092 292477365 187676261 710427312 499076001 171262771 421839323 269027627 130569142 688080076 171438922 243527091 190204820 457970117 118226388 800802844 636405226 221760784 39508599 50298052 818494744 959412424 452597160 714805767 816921469 845568162 560202432 118620907 134590860 238542933 894124956 708826167 793463505 159039091 660802668 343002206 173048421 276052347 444470789 458754217 437014872 920537588 61310511 748163695 330965618 979459550 931297855 320374808 553428583 626311563 74537481 540786529 860874675 488492164 198248682 978992369 206002538 764798206 133337155 773765559 579465040 936711575 860852461 329778129 152849916 371341674 710442896 398648456 458018332 601389454 175368923 509896908 180332618 917205209 666825581 975313512 447595189 67945558 560486889 187997946 536478199 340990905 757191285 530536107 176294038 9902326 220770668 804562490 425680467 141227970 648501038 85103736 408251266 992509946 733275161 790566968 736918845 761755667 403339655 747366221 38300950 31439523 312149080 452783493 844907560 579471048 873392492 337863949 749864260 475729799 708729967 926829188 29329803 463286980 106801111 34991846 763621690 640115197 427222698 158502949 391890099 409000644 391153502 750181131 2249995 118816157 960974307 255392129 92971032 622390698 723986291 732181452 3953391 250476791 476077505 293442447 97299553 50939850 894222570 328846981 442966311 227210406 307779273 271968030 448582576 317512363 457478046 209093013 765287291 323023032 171148102 560195721 201829035 772161551 841450976 155248023 732139231 147907794 67757282 797892649 732429402 428254413 37225090 987524865 165967223 857846982 422117894 841403661 736979789 800558568 414308360 296127306 669013695 486428461 796499342 821380736 266321955 366215394 906132591 77764339 13675159 797452656 916716634 716781902 710786133 273051729 795912764 443412124 854486077 439022851 183723326 411735535 636020535 156009953 897498789 178001367 723142670 294374577 276598183 449199537 114974829 747701197 29791050 924005346 206109507 928567756 313791211 827130518 510938411 241983652 747648715 952171602 170914048 149522228 89329984 178946146 667169552 377223696 456061254 629587730 521043885 424285873 602727274 573578553 68699197 9420067 667255261 316694195 946178893 290115698 468290553 799195117 304975164 722963647 762685689 75546924 535356114 481279491 716052249 385015038 778125477 522926548 859301326 978544171 398275940 511556575 244297482 329145228 185120638 932194870 267521597 809331930 19828295 320019844 29051217 970068194 695181018 796831337 638564486 577630737 558812929 178426055 68859086 431771397 932973824 681253065 276181749 562250466 170232728 152718211 166745376 621933008 809462952 520980418 719879451 230410881 715438492 496283036 768277988 146873511 517384290 9493348 910865018 972794541 817745204 958291368 841027769 938836325 801612483 297152764 614989689 954232355 924843594 713706781 860235761 163767172 935282386 289093483 104125917 208823096 780664972 519889832 272161798 826413445 446739526 931898281 492457950 987810042 765262170 182299712 365520068 671477576 739023369 81161375 433188282 823741207 679424656 313155836 831358342 332899927 296009554 94290777 982743126 555606117 384471456 949832695 686731988 925819307 321636829 55281295 567498164 636078806 177849043 494641971 108818474 195034323 924113162 573564060 897690886 837968935 296500347 55066943 600187143 217575524 420985777 296400081 367432225 247739700 668297864 952353523 47270104 67094265 346120451 885183763 184683108 949778790 868508176 596580292 340666649 554688897 849075224 52183292 941935001 430191717 593881467 147901388 948203143 59168981 54539492 401161739 436725224 64806587 626126470 703731740 318458772 650319310 268815972 382336978 774941531 569934976 233992395 397475304 563122521 745206056 193126195 455966632 667574565 464686991 301426429 793110266 181395940 710642491 958394904 851265936 464534093 746799460 643659727 710531655 655418129 539543686 455823454 56528671 452123109 374589754 180617777 94060137 994080671 292763141 224808711 54286719 545548342 302514411 148151 369113387 647775293 746937631 663534399 250224163 413031077 961117749 974326365 499257359 630569912 655156182 672907262 278157786 557779199 32987921 702317444 44013319 445425527 487458998 86574151 215919168 514493053 650729934 74948724 355316912 467597952 942875333 691137679 986577993 220462648 120498650 721164934 725497316 720051719 741701358 926542079 321805335 4754295 135710874 885339890 708290163 962573737 519430452 548577052 124344341 127784659 925859663 965265850 767475524 685462420 629456546 823508415 975070104 264222486 393615880 396479196 636369792 14434319 319876131 944698163 882656124 134366515 750331674 696287057 273789997 477027605 142243816 830342653 105062281 226224728 158526738 341588558 757969808 706938614 684636228 759470597 393123594 424595301 460587122 260247407 357088951 101899067 834137296 694409119 8072982 187496964 484629959 686782734 156400934 632323515 764614551 738893731 551037426 944859967 456738941 561060095 637721848 464022175 101369197 589159861 261998757 202375487 240356587 583542259 346741781 552272276 331840733 859886519 8149841 785185499 681781951 687466029 992534824 769286223 621545387 417548246 575169039 317214547 722087366 266179831 337056471 513797939 468485700 686987919 293654253 631990880 252260218 233861929 335743331 917606257 848617407 326552056 129953807 12068848 410177683 254906823 419451709 164840381 999421340 511826201 529044782 188502758 20166599 413310540 132929024 601402867 799290604 842301563 747456688 583768960 187251065 373788149 15657124 455542936 857577087 592418697 153324184 652451262 180458667 885924194 50511035 548551647 43400664 556526147 273264960 411502361 406696940 174758502 653788378 277808418 341945201 267369987 30242708 203232517 13395746 54391045 564807081 823211756 784158225 315430829 294310566 173806771 111212591 104388055 413394863 388368686 509526904 62374197 121858174 776479253 462994484 493168564 25462663 975284124 186964198 503122287 551998237 823656351 699510473 96698657 137423604 184665171 144727701 776049003 503885357 336639606 595236927 225500693 99697957 240650871 97632146 509770146 667648516 26283868 698863127 531039437 771207559 139544469 215718246 664653302 778611381 546064352 302628271 187302232 872132322 689536097 891568858 396815581 699177077 995363080 572277166 810638901 865844905 494828207 868672473 251889322 974507130 295506788 936433106 244469998 236598815 213326149 227430891 945491341 783731116 94305324 652296117 74228505 574878660 847509196 648204000 249593399 277288998 106130404 997470604 424049233 199490668 213443071 786119315 562085300 679537168 587669897 598053457 127332719 790938838 361159883 342063763 324105222 218720655 300862399 512484883 517024692 401158596 801862758 347124060 137176142 128780122 141994627 110225512 262259118 64779567 503994865 150881459 370737145 105258784 710713226 674248082 571562928 42267165 759842090 360966786 740424965 157965775 570014128 688669547 776132096 553144772 827848472 197977007 681876449 8034700 245834044 82962708 740456553 83304062 980331657 934514252 72245599 354062201 749246271 492565054 474827556 437711599 771735770 422645042 773201881 827041769 269785981 636814000 963154866 527736830 198053476 845942579 862546668 741161438 402348570 669072548 396049418 402255454 818001420 914581119 292248670 724069041 851173435 238822393 604122462 940665353 608448610 316624777 187741396 744357760 661805870 97387642 667164573 111285666 545218131 676266617 285630399 841658719 712643 454532667 343378162 71520884 470779984 973680368 718893308 265263507 612002426 598712390 306420453 908581819 388596643 492726158 209955385 899532978 125861372 548050316 947691130 774508087 191140881 372049427 690849705 445047114 109602037 926355738 846144160 747044363 593922971 707283712 652861636 675714101 418158485 911251762 523746849 921792519 18239575 746342929 122659217 801118873 184849746 383935057 235549937 676847518 506308439 796608846 31419941 791629214 966702619 343031244 836654627 479062926 929245268 189691006 427621112 297319485 56742959 992397766 94533951 447873410 268509373 53185370 47496317 514316779 259290048 887563700 295088252 125497569 778366898 2815210 585802263 441927422 15889170 112471999 616661093 80960949 545671425 79339840 86709703 878476440 71104299 613710769 210601165 908033900 517901606 267660698 884134875 155069204 196786077 865724679 117315651 336477503 52063261 268041892 611367004 834759791 503832082 116754057 170768635 383371501 813422326 333660973 347675484 452358787 648035371 900914285 539628551 878697146 599466591 264396040 492022029 587344022 146247341 42993479 380017948 150828324 515514489 468679174 50196519 52123168 375203216 720073122 617127722 242906089 859762118 271467303 505856774 625568331 680325615 647182276 378048133 465347130 400894979 472790743 544606930 503899224 103156140 581191316 450104612 690772348 808204563 150724430 661901951 179229371 198316621 992692232 690972829 44473955 149508984 139962492 94899497 934648416 570663973 553176677 564694698 305699943 920565130 85267671 218211330 638854518 936051622 83912627 919816618 559742552 846979240 23070029 153284163 150822199 416501490 433792511 827474143 492625662 479983885 153912788 34425962 598857186 344061863 280818517 76277414 205357474 859085429 770302454 893342765 723816487 430488003 966815627 60949184 804115099 808213497 827416450 757409832 49358065 954438466 471936109 522990955 794116906 668469897 253006916 578529955 749779267 844790841 233938277 798266627 308436579 442023772 439888326 66250761 352492973 646717235 278087217 887624725 335216619 414069283 597181077 888068741 372454947 657944500 584977509 419019357 686746689 821533317 634565638 305169390 796417544 854150230 487751004 470171750 46602726 908928172 910088173 119218465 304588320 583858545 882974170 604043668 436731723 601897334 211648574 984531349 136126540 150811821 786928702 159818047 807169420 880019075 138869753 582896095 599296457 62875429 174850034 292775309 517207552 668712639 519016200 6539487 887835377 144729428 32745236 763588271 369978859 720347784 730723163 549204343 283326402 777019852 207729034 866678833 723318668 301127508 530772432 946674394 6211308 80872854 982584346 106564752 113598228 890703001 872725764 53907656 651029557 983945122 860361300 271899942 174789084 291007657 129314427 695830912 925465924 620415036 981873674 697423749 158899254 974542351 75485559 333904486 761810082 704757773 978088616 473997256 830115506 27528867 92101919 823317689 994190986 653920777 590406554 572696811 761250107 262077897 994193295 932954106 935738511 182130201 618954220 932583840 706855598 627882145 784724873 694001092 499029008 822366522 586153998 534710864 461040887 917356759 892145042 822678891 891065991 159753235 494085750 245752039 675702357 115969046 74772901 928480195 130747232 912524984 191372311 494720688 757527265 439037923 297803693 475638212 789847011 522609507 629552380 623884120 832517163 497669328 152031541 525048400 931786291 672830517 462216602 326306712 792652775 909968991 25672379 261302664 569821196 78180410 548713565 244076182 863558638 122973031 420747525 86379088 928523711 104486457 570541834 999980772 315337876 59587526 803612320 924069208 626757551 298585222 700160677 110509959 590318757 141626721 749896271 109494406 998734873 111607979 558550274 31009007 909884547 298537102 556870826 544452977 302626693 649287416 835336273 218534344 977316609 880951328 326754837 900980190 356204151 480954846 563295275 864391221 203043574 398190442 968329982 192405628 600115884 149653839 379845116 250086663 163636064 550935786 682433868 805612984 561354217 469922935 87663398 40014058 107628524 510774626 908991807 447484010 984534450 97883506 933112853 863731488 399117997 544525618 208506364 142501140 515073432 65967450 205294743 23993120 246415044 554702936 860428567 931152717 759960681 853905394 181895147 741892745 17832805 366483078 891440077 583439563 326852861 13037662 918744350 360446906 881218894 680995422 632415876 163289831 914939351 797260324 319329150 117875299 100581426 838581471 632177948 143423444 943956698 589710668 694861696 572615696 536493950 404765526 166712702 890523540 905955451 746228336 42028339 717524909 641680714 597158570 315956493 249999720 837617621 667026138 143528040 980409099 289137026 38736690 509625254 40614949 778699140 833320964 630918776 86901565 72245870 357927928 935086734 957369177 32113175 571783549 475097111 113312790 411920432 330592549 862580395 438370337 214251467 419929090 664726292 636819832 567940678 721834917 47974187 943321892 709107382 938674849 754640003 733823864 143513717 122761929 700514224 607166473 212107363 353839034 442648082 3148798 311407785 20040210 548364589 711493944 893754253 526001005 333260657 948908632 83781225 993968129 749216108 397849525 86814640 505644406 300973687 587196104 734401947 222541407 968378503 863749786 300465009 854135735 411377923 304168794 732818598 585684170 220482564 574074150 145902895 669821677 663112793 148235349 707837137 288218496 299353656 961082549 421392565 677896234 92433167 729584579 675746672 470219748 963397668 489337828 696031730 501897126 960215156 328722984 9998273 785800841 513530848 166672834 951782810 608385771 248586214 204063202 511517979 154416894 354434482 193348360 1352466 466377447 326002436 775461646 606419594 688803799 721005585 800577859 921210447 192308153 811821552 334058913 771873503 293378806 591840022 85167966 262437984 710897277 243476316 74242659 576852538 902409268 899233113 334017441 287983394 90263933 847855827 719970901 679179083 482327069 100960354 633869035 817036739 299850365 687630209 551106414 500364543 304523714 667638865 573925947 585661858 971813795 641228253 317061143 506620478 17688703 533553566 972394686 444488543 47729544 858175968 680111425 752881346 297272506 31274532 229251470 928023038 974386329 80440510 18239585 140734461 53266820 730984503 325343620 559361838 175433145 836609502 729796755 722690830 883810036 460309980 638006031 286017597 556327641 767002284 242979049 743119531 927929063 123932217 755415167 195952901 483185756 773927321 830419821 158651593 295742944 79065068 691399192 62246333 48972784 987493710 129830221 774917924 457950652 39518258 306856479 474951708 791101711 895880625 284721005 722939266 269869522 357135497 774132564 530776595 810450694 813403257 540043357 296476826 465004109 587164336 286748184 668106472 605532401 375852362 247409663 822557344 354678588 177126678 903699064 764260263 272031460 375322234 248089771 472759777 253795969 716243171 372064076 350960648 657261011 314719273 74168877 605550298 126553847 995623221 255189500 885064295 681876831 494553375 929291035 520651311 256562001 149361187 2425379 813266256 688470042 662685311 798218517 841708083 554323178 689275300 245407062 520216951 250925550 248997028 535671194 440505190 611635032 253547295 57318279 908171327 974367111 403296198 383300225 468490191 952453490 253952019 836735432 620618546 9015061 451556396 269790906 433192992 734195874 919719424 977176483 791483694 491339850 445426232 217959575 248555636 853921582 467980389 553630368 615813357 910189263 235934861 440413246 191604704 554890888 462960821 539718116 466989005 120464044 377407737 143800907 162159615 343786983 174242107 811015591 628922563 89220998 692303612 378854902 825988085 113569024 379399467 719432411 598476630 597357110 631218320 411623659 896054478 383921991 692989551 402943399 524377970 209336303 420119940 41732020 645152208 117392258 94233614 851426327 778198056 902302019 856468044 164660712 521097936 851762811 251056223 146519393 451733211 175790425 419844648 685805093 647687279 497873509 922732493 667331623 545812788 517545183 108330051 554572069 198844178 311609028 85985962 36046166 388006870 174856632 391573937 16207536 615099911 956839498 298837875 509502008 829447333 305591936 411224143 593069130 348188405 239816088 112157061 33928297 7521290 609808588 694688663 726882351 148488099 216214572 889745452 592766748 972060150 964349133 970418970 106025203 661073648 30756195 562981002 227411524 522706398 640418617 500429219 977784386 349676415 51193492 145101934 293407113 411843254 117604541 247969381 795203708 597902522 691471907 256879810 734859651 888559507 961736328 795639038 791457680 723877725 454644605 800244630 138416154 82502042 871101538 316092989 747793013 632412406 59506893 385964333 22188477 859831799 507420445 505264227 334942425 282682514 404246648 755784633 973735550 427134103 748845728 29188703 992687123 876916929 522461983 32520619 304209001 397309309 831197512 355093945 865952706 923982464 329906825 425504610 26349848 212234542 166413014 804009147 188895960 391575854 97865147 138218575 700364536 366163671 354965998 136126819 827702351 731927547 332211795 668803843 207225347 984236983 20892528 824532368 558688512 760435636 225652646 932045749 681130009 810333866 986925282 839753935 757365803 425081769 169539012 75564594 587300149 169066038 617490903 309818618 627018846 843571630 436063218 909895509 47843045 947400002 620992699 63917642 875491437 870058981 225923589 520075633 434047097 663081594 216239383 891088634 352014943 953884554 873786836 361526710 662771315 661575831 865897964 44934207 920514070 571606374 700100473 744779586 185254626 990081128 296304585 873403434 427037650 885991221 922596411 332700083 498992686 915900268 601523386 937073642 781972032 802001917 961420637 587588462 20858782 679706957 675392846 927823 476025535 130314478 665774420 211372949 338871464 952988136 351851592 647608004 251730242 889452019 733474896 587681226 353079705 684289287 257461514 266294750 810128583 863264220 72116181 12319189 629407141 548354175 410975435 260951166 441100520 733276959 101411821 12938433 416856592 982309647 80390941 483173416 840915004 610513612 181430151 221294621 814492390 704266258 460033360 298256200 63673595 968928716 583776892 74974900 398364653 978358084 562773362 512269508 212859508 247275584 141432747 189402805 561030202 325062431 379240722 33104494 461463379 242915172 465730821 814275358 767276921 512982024 401452487 475321214 313880089 516781348 940967708 954906185 170467716 984912116 762531827 755690301 638522625 252749939 385005322 503248942 238793124 126728180 83642499 280142804 722519535 931221806 538351188 567456054 919441475 706841469 591522478 397497011 806292629 674088098 542905063 465177918 419746719 965324787 268680530 493710565 641689171 238235579 975489752 850655957 855262116 176810929 223234345 874719515 200624839 373185578 417567969 981793256 532522998 836525918 673498557 386843315 542134486 80463257 316258902 726830846 820845674 684989226 713666444 23984948 860867435 406640880 630752366 322762482 676880193 442076269 374817780 317507070 270123116 928346126 550453682 77303311 540403660 966166068 145134461 194920543 8316475 534596479 247456297 308214974 940531789 392343229 981798634 746765061 340652921 47704387 50720222 976029909 914866921 170953876 609710981 382687782 416493918 892544658 491615303 557755250 275015780 500980632 569939441 622865657 193686000 145590045 431057300 696644041 223938133 367904205 999172695 193111326 673869178 838778403 753611420 594079087 931379888 579277107 115635586 772551225 466984731 97468620 445053603 963697640 513229955 413417415 266974693 447512067 393914795 406823100 288553619 780192637 426823999 288996484 410888466 316009515 729963986 117415066 682820403 175929926 672761762 548750307 712146226 288456579 325871656 958621986 766069592 652431611 102124014 20691655 821535881 479578510 313980171 203098528 786730292 514778485 866470412 36028717 287013989 798697973 48323112 714589714 556193521 619708447 364457085 640688123 110379757 842588195 102151653 221510958 970182443 7036023 777659142 567579141 855170218 115433795 762259101 485398952 790887234 62525575 938796259 56363608 384465387 353175078 148686420 613752287 453605105 550837569 540982377 889333873 883057619 809984430 229513915 594663399 197971496 751391379 992379939 771042657 798822236 294097209 244609486 605070804 317004026 48894517 491654612 137107589 33358492 3618908 534344578 55017064 91604829 85498921 857970697 956264188 228726123 569090531 956961926 293705679 486886007 709996461 652326070 358026952 321605065 674878876 835161826 295289795 866960831 40863332 309846051 681046149 393968897 893280603 481856321 807537761 905135946 210003650 138685260 268721066 534118527 660104748 88311348 652359520 14079612 698081232 264891347 471676750 809473703 421621114 845089751 763326733 5210129 796366508 723299147 845212354 96644903 659356450 249561939 614966375 892690722 832815468 238867791 240646292 491177848 99281443 780033915 326216815 490109711 894826638 361761986 332663614 12304338 430399394 190182168 602203218 42259286 752776085 313838744 694527980 660493465 130381009 259838037 173193474 478079245 618318124 664949519 647471174 403663477 121131906 578245573 948555842 327031618 440877294 365693983 281688636 309280090 353580210 406524468 75195651 380763533 701935279 73513549 542551512 269522546 287081277 705254389 44248303 376007376 901903830 754668581 641596994 990064465 772877254 261438615 595845515 15074460 199688886 555149456 253008000 435103824 946510031 523096291 802895573 10814458 544967169 315267436 616759108 522960898 470279228 256770110 520179439 967199613 478519895 583166858 424050913 772965557 844319373 238181522 894806947 201637841 726285456 737693853 18675837 158834251 855262353 726208977 942030082 25163417 384867862 323001665 815990442 262355347 116397973 262712127 121788049 279353824 197943706 648220429 723970409 31669078 291890202 753329556 856841511 306374967 382698325 460804587 624436844 38884832 216047120 860463119 26940725 370047438 829608207 94112674 758367947 752476866 259952629 140689764 518371391 240474492 657832411 744908736 246970360 40182066 91751918 675478173 976779039 132099175 599687389 868523263 665089616 983101649 643916763 117216040 151183035 477756348 870172601 326140225 458836892 886710074 236496682 538518729 647075507 137606684 763871188 574979670 146216818 922588345 642545740 926838334 895294939 56658607 119242333 192971181 874700196 849464285 755739304 632128365 869089555 628177105 971846918 526218103 107966874 505401549 785862807 763943942 333645262 492413000 194635261 293031608 859090557 879194999 138593387 549405094 989278031 615284818 734125499 25148994 889001600 246671916 465703486 698301766 705242025 216311680 213397074 946541653 269638795 547617046 245323358 465034295 795752157 695154328 256210520 272681417 581700720 987742351 971704664 54291616 164578780 79586987 31577013 109792630 480172774 851941729 916007073 79629378 612976358 287954488 174625242 473344576 584084939 644029070 816794657 34418164 869876605 679380916 658667317 28133648 764150091 686846208 575945111 538273293 361260602 740549814 459941264 418912081 743303516 909288248 117498785 269419119 11302790 779390856 754441640 765823193 216370384 833058598 178527246 130146053 612787374 91846839 279288972 988720026 544691096 784333695 843144897 875597740 296576358 836333920 871211113 158622561 534429461 110877111 444067140 737033413 333600145 641872037 287414922 615012584 4317428 538736745 949567817 164327847 732211724 615588947 215926773 527736961 785343226 465141386 9454216 155663227 225450690 760477410 758662069 48060566 573572432 797946217 16077732 333633195 256099455 168181732 630173508 415495661 875882740 917976748 678400525 57984431 43445802 899281302 758737549 421814242 422654189 211853200 864253357 913084498 604688350 637614456 122350137 544467843 467202145 34912856 476895173 613309514 83779135 745179801 775078479 787499872 116056929 454377755 984893652 611939171 541927241 623754272 459372545 351288518 187807326 639453422 517052962 481103016 929910095 844831822 915801589 800286963 83175736 169400437 286721940 416012991 98567010 623038406 891117245 830201674 766686722 829587603 47789451 215171108 566565857 421759697 925720362 276887 339574384 650798001 815657446 127944186 832962127 67313923 513216529 584560468 593325145 366896883 872401652 562934454 354016612 695706429 719634616 2532879 678907238 931642083 217649128 801152121 965486604 668278483 689817012 82812245 127045994 803746338 506539174 676136185 908529284 604669625 72772235 36546810 255388100 664248778 156275913 678023674 717906476 366995469 534072531 522195405 370833121 481617657 278195247 149776045 148826488 585385498 38500704 15381596 177939588 12601084 51034903 61295059 26925587 724852621 700415816 852192759 316692833 433873522 559264689 431063115 585423766 814195159 210090965 934332109 680744512 572842286 249787898 247534543 764304701 123568141 100018197 781855201 505197850 85118491 866578024 564658010 186571354 188612946 932530626 672814663 933452550 214986763 758946740 385826045 334501026 283002918 70207635 910613905 599877978 536909972 318449427 693401740 243225221 46786075 89723551 246545766 709178994 513768499 330972696 999143443 104493233 980066326 920440606 91581413 879142880 225232756 855509421 965271445 164078637 708438835 668386487 370680819 134160743 481793987 969134518 239891134 732971486 214664291 726469056 586383819 771723716 691763691 118726227 321155330 938295559 166381668 330468850 690608028 330649074 330957759 630313940 509649345 890742344 351931990 357972552 566721130 386911805 191058220 853271271 554547630 384258533 431615783 767257932 571842479 942724612 213968437 917639856 827541306 464108697 120405260 410079279 976730384 422650159 887940237 469037719 802081165 166036725 54098850 880889089 369907554 604539756 136114990 935538611 621640313 963026412 46823379 469766806 176155761 136313549 572656244 830232600 745931601 738461311 53474060 95554326 287846041 149195670 13223000 844072558 80029018 199498379 980274435 2671250 843751253 174964268 338040777 658727290 765261034 866600569 181450566 971383097 258855240 1709062 797697612 950370753 393937248 940995099 177735575 428333525 331744791 913690025 194155425 96719243 969493954 501344126 148430703 2059883 716735515 450215039 628791 982959838 652916311 551349345 972814362 855884596 487930166 299897491 486163771 861356210 707675241 695443917 492029257 33139359 662974808 864652687 335159466 330282153 52219358 721297675 328789589 546929840 932492357 939878001 170193278 852804826 186815480 967113895 665519388 913642917 835980706 283945018 66638666 370242685 573525099 509371764 444890736 638453077 941571091 683402254 432957734 448158043 354406262 851585741 673295746 159116971 445229944 133511501 161337186 365281178 529786907 719972277 63130802 854137730 831177765 603027073 789643445 821906147 762367513 486940780 176128496 386067342 673133669 151356540 137514852 892450105 342226822 112481288 415362315 1420165 430483027 759198605 572637222 764237849 787287440 473729144 628706385 351226208 497391066 832816271 919758514 251195342 312848464 973757653 74640121 890214918 952227478 742700282 713250102 706701075 81411401 75165 640357928 603990326 964441308 628269200 243321704 656001220 869345305 732047500 263224576 391085634 862819723 76598588 242848592 857312080 221359837 383310183 815763192 76673730 940384836 720168742 492738392 142058332 320845543 880693709 109294554 62089846 501912093 529661993 230038051 626963161 22530474 727301250 447915869 700480674 816079478 958615074 100457285 59659165 109936776 924192264 713849085 628824635 833894708 769614847 308637165 876763182 258982144 54884107 215319045 31816567 240786462 581163737 611231585 251990222 423815310 810902459 748016844 21801462 961255042 901932845 841680580 14191594 473227597 679812327 628509779 840805009 196559418 30231928 810887974 721350204 387865127 496397245 414836458 543135569 283145078 466900570 624893251 834385302 238207776 766523532 802355439 246615749 285606141 481269475 130604502 235623982 188771283 970743398 845348614 451781368 190598298 347633913 101808123 997501017 588008537 452503123 150431937 741003057 211386498 272036228 999322755 363835639 610091077 137626550 960388290 349012251 410981033 74832477 792364341 709622928 178699028 630244966 287818594 827774875 53885396 193198850 472992053 244555073 321402493 637689642 302710510 39294138 814365595 844634262 626132660 758309676 660133030 474115575 300404329 99972840 773002659 722954116 934203054 884302425 318142726 573834918 756624667 738905790 631732775 364353102 404299228 434049806 162791330 762093590 586120032 320546374 898111789 711940001 398170542 394602787 445975445 951065457 708386280 126700970 902219951 20385442 401082417 729857451 28410320 160016286 566686220 154466980 859825091 286174396 913952195 470870975 672866869 295111910 447978855 772703710 616569285 147467951 934487816 884552263 995588841 343146023 267852133 672217139 3215370 5833317 314885071 132241139 463657009 137063097 278564468 647996302 10526057 404978247 540864605 658461174 529906779 406160758 667670823 781128489 777216624 844955377 432369737 935476263 476273848 205163499 375704616 509561831 261644215 536836148 997176131 500515000 434608780 208536142 681288401 426684406 232360878 827387924 271807294 389720487 626416843 520122620 564688868 704079137 673135973 354157426 882296936 432648949 721423465 772709819 614994166 862608855 932990210 208726081 71334068 57312187 123770403 824558806 677003089 685900341 737944094 463526375 211642222 373389960 195698701 619942776 268722076 553820206 291774652 464711425 304852273 338434769 686160435 796911617 427658196 690566349 992250683 900237060 685231390 594007948 836123584 228220194 102492827 458040806 418806614 402036084 553829928 447438313 486284215 869664950 110765281 455321703 870654119 60953120 859134757 608529983 180650627 892127457 322617180 24382641 416423462 840370817 823633201 637351167 26861581 520492701 757848097 97991717 859587911 55960053 792885678 203965859 632552648 985813117 350076688 613826276 257135552 482077754 542385913 717190810 958375074 602974261 485791519 136835224 210239074 975750203 709938952 755195447 287230820 949268079 323291780 870570322 179283221 465072521 286137248 609565730 819395754 968389777 582278674 213246167 801279034 654062287 181142584 639559668 767776157 170037058 296497565 754981773 920483655 862402826 183382306 155301414 645020560 859799487 46074821 351236626 149721416 479730305 145696734 345037067 595152874 54297913 763563399 871440395 987787109 147512911 767936527 699974625 518250498 389451229 250294893 200289364 20654364 171782751 644027454 354968379 54921974 166761411 544877077 403370854 709164745 979381501 205969027 378332049 882319691 53245964 116660730 296614361 608695046 437988768 125788867 1101327 953233506 184530258 20723731 244269646 2954871 890248328 558457934 827742016 887733531 615421597 386202431 166007039 921590974 658023932 915399978 845099708 28579578 770248128 351801931 256259430 455471517 932265447 451918975 493737723 578438181 947338642 68167345 672877454 625864787 810020796 189496641 722038089 676838622 20872111 293776334 521291055 42878962 382338154 463422283 228770888 638048078 537233331 698100570 141236359 30158039 87335914 29919961 220602837 845848683 503067447 877139290 851658528 332058313 525824965 252393488 639268846 196647683 441462746 814375078 189410444 244659022 154659901 326499476 862563037 758481089 115670221 752748194 326597559 475647715 890840328 503807752 281482694 90107439 978314072 859865794 970384440 186996582 53814639 808730483 699789851 334504147 816978914 133703878 140260866 778684517 487075855 414131177 904002555 770504890 388674110 281853351 103086322 232380168 91155964 928010045 562112541 652175686 42204533 577278162 767925178 927484075 542163333 594149700 73324191 240080289 190372241 920576464 793391646 761463611 652683206 784738277 355648854 572977416 780106080 912602645 138240885 945660826 802414829 553937911 30883798 597668809 458424909 868789675 481650537 395724910 649582158 649930941 433061294 928348792 96130089 203917270 628988718 129264510 413100198 417685494 251636543 983600748 110595792 336582748 622948094 587410029 770231777 134573754 604602132 582652608 212350086 66104255 682597953 513368741 471536565 690516968 450770366 358660625 394831691 576684577 464290035 881282069 673030659 186436288 413869065 252391235 257404642 43985618 443521097 383679002 29508239 498249738 194041709 707123952 620105614 214119278 68663401 502946944 401463973 20299986 807110589 608341422 756603517 622704357 789620527 124080097 648318426 381559135 723678839 522651770 903323280 374788895 98377680 398891821 983857821 976773089 321333916 433543177 118723644 390441539 158182566 681258356 161659547 901110055 394123400 624387268 649625832 222069755 430223161 391819540 202347790 707879153 36431508 760268544 460534797 812826240 918396568 585429235 754258715 495853695 176639144 107166808 373151974 79905631 936247914 173545490 685972204 553434305 320422008 883292738 542884692 21964445 803253588 222298325 153791792 913446916 436018684 310437242 595436452 219026313 818768288 660257690 135596479 577339787 161772537 353747746 4306180 267097471 998483583 362115491 678204010 94863118 177951373 899137588 652735269 312611540 848419873 499233951 200729924 131383280 848690021 442982045 238327896 129960430 727793089 215534772 886590827 387367563 701315461 226634190 417434597 444227352 5814136 800048628 435330736 656002126 500046542 430425356 202346276 72503306 203695814 610492000 398701217 195825518 808945384 223106693 852677830 283609572 729171146 299648406 742981561 260257951 585407120 279369505 173112022 355494713 635745619 327414150 523780480 764944255 557309984 649413706 908609421 969219087 245232717 88100046 778566304 333706687 742444056 295442646 899982083 268703616 852096255 255008240 956423953 277571043 944840523 9919071 214471635 909948150 779493876 647725149 151292772 531756360 973723828 729305336 722328939 521246527 983738623 527123845 263792815 370915031 768616156 528329062 814911571 873864249 131983824 677726216 17333993 904460414 840314086 486007519 889050416 917913611 895079913 789376291 61946351 903095681 616489758 693469653 776186601 580502083 7468011 773792799 618271798 827706954 114549245 744241653 973387459 524374591 214060930 479789466 255532796 424119064 770773376 558091268 978814302 568929486 880993657 778323160 583055696 800521497 2691690 916614828 826551313 265526746 841398759 526069137 567654721 642936281 846041061 655632510 378979816 224501532 43765207 542036857 127368829 559753106 42397675 388862092 958037117 432082236 250412038 711267285 390255263 69587647 472887172 97483970 951982510 629267962 494776243 845554166 301589984 313718509 19877989 728485431 48027961 290037490 308243304 277482319 559382721 909057522 832562195 174691208 382193310 620479996 94249992 451750077 333357646 916435448 974232943 95920798 963768246 687745361 519199886 288635838 974028583 739823564 667940987 989425476 949151234 25062354 799580475 480179534 444239710 418724295 599759702 76256759 346902818 829966893 381980025 801581513 646411707 593227126 256916176 632827582 389760190 317228980 449679536 984846687 810289235 574322121 667045340 260675896 567455325 84609201 186090552 160518502 763815507 68602312 314457392 999281863 507151049 583498833 46742398 713193420 74594748 518802340 901574235 753642626 454480774 381587451 3432262 836734193 958012582 560175577 491775238 671862677 469786113 744940711 391364414 792613631 218694103 313400248 81750268 918806991 229835947 246810905 70755207 242574559 126044355 402025056 186973717 427451765 655189126 199116345 776472619 811206579 460089769 277748880 391350494 186434964 688494831 128092840 176249404 293951800 426038879 73888329 134424158 230492111 920092527 9133692 857507745 138860609 488012749 910848613 885395041 167698497 504886808 592346169 70761741 19415508 269390983 461790071 257930126 544558470 683679915 55616260 809084727 177119197 535940563 920461556 184096071 826699460 855402675 388226979 854884049 783162310 783035822 267820338 343428347 386968556 55537065 483329788 682397496 232263559 134030661 966594219 868914436 3965068 23715321 755348762 197322972 56600798 485571803 719755442 235194219 25601293 876367221 815207124 355537325 878447872 930746112 815457437 400501205 836059211 969031525 297986615 641733531 657042548 40313739 67589859 443367430 288263787 755147077 64452836 910134007 838880262 798707057 232519293 137161452 276554861 661549603 142582363 864547670 635085330 235641606 357918201 827493610 660523975 896129983 218638805 723805359 660873231 610935494 572479988 2647207 116624050 919616989 253361573 326177347 680058964 508649831 58160891 170765911 98010878 136135674 449135969 469346378 211772376 713199197 121000532 824659418 20085308 830874850 232598531 726724985 712799797 282381158 29815888 749396019 754555610 239958379 227665884 553033811 666796774 413043816 346285384 545626943 396438931 354883131 578831637 482271113 496918153 854966455 339746596 272437001 26506128 229210351 146846251 309083755 10889419 639040828 750411693 36569530 457410188 200295633 400636702 216924944 345678318 154324590 231953066 563386677 903314215 922917021 824464477 205804892 641887493 705527362 289271821 664454497 404586884 569569551 811115816 731428396 441134467 699872145 421993551 490280621 432205335 169832583 583762312 434394877 45814012 184754778 866532607 917726271 527196692 810784491 108528501 77965217 420245199 850501981 523437789 256703437 662633262 163904069 918112144 25664881 227355513 606901978 241592110 457474167 400789114 450162364 607883224 886065796 668303073 265827411 666387075 434162384 611495336 281469108 481253812 10163797 374145756 613145183 704682352 371208603 560562921 102015340 998126209 862651869 290050885 9513944 580678426 742970328 192821112 824712335 804589563 244994369 558162758 991550285 88552806 320036537 268269164 219867023 664424926 665720909 820353947 385927795 519108828 850429341 699485781 771913142 4491915 207871248 35626421 477759718 86832684 49754828 613323513 993930954 164657575 566116591 259864671 686397614 821057938 515929914 480755946 557672712 786236757 819072713 50579770 494760975 367920982 288207921 987291234 868532654 996826912 956417336 135734339 920622175 85500711 738473887 370588516 469526079 147641295 568166593 53990801 598357706 438544332 298658900 225146172 3850055 997299307 503614538 841891983 744428925 94820983 264255323 958213061 965809789 34282779 992790692 307377740 799604695 325339222 326331317 325477690 514293083 187963400 625252301 992447547 578799506 40145346 228165493 20562201 392835816 359221361 589254375 232897949 592054010 159996405 880607632 842924608 781916860 202886757 864200956 440844860 616441386 749026542 12576260 534377053 458005211 838699433 373108936 850633255 147595821 685686470 491503178 107495284 465276475 875460547 517025917 702766278 805454246 804357815 270126839 651982868 167763670 390947038 952625537 51137163 672264617 957451432 75978155 555428364 722057405 269124883 449274820 714271422 181942064 662927804 888656880 303849242 340826813 577989449 842079964 459560671 875371786 246481493 926486186 898098506 142997513 936164324 963543123 579483828 726736889 985058774 152490783 400396259 861722085 547400278 107119129 360704008 992919708 210561941 447814860 718841349 194286596 728535537 592076889 273405246 158391437 82346192 455518772 967754974 998640084 563771517 319988443 64116271 461023731 610317004 4035950 260434566 311377659 944214999 349464978 570724322 976850583 614798182 166744746 916559620 410567613 25872794 425879508 955836061 612637745 220116146 873707864 337584293 926191601 120689247 485523002 924722126 987206222 434621114 99220436 65526124 133393787 131586748 803304901 262033007 355470443 554756782 747000457 661230572 546709479 809366258 101110342 781871307 561510146 608635045 952401975 432155290 602613675 432975259 789764421 503901137 533198620 850923392 126324956 551915257 794780174 655247116 950065664 138564403 452929866 642461111 714288893 199667473 110945946 112694114 881561537 410299849 748295954 433152735 358666218 339330970 164355651 202937762 622025215 68218392 510757805 112367167 631870914 164415444 614219609 532861494 824448877 519471999 362931061 719319988 706357160 749274643 446044768 749259044 10727282 246536728 275420039 380534665 256614179 186316533 201104461 991819633 864040339 788221395 736372162 276444064 951074130 574446145 388381967 39452905 853229704 982358424 674958626 704567859 893910404 49699824 702352872 782203539 273675930 789840627 957252549 52367638 23785121 128210305 870481810 582060878 50383442 986459664 10889433 362259987 699695909 913574946 247959996 310443139 114062679 951764500 898892307 48470727 232476399 871667474 493379525 77643557 890278732 822617510 25704708 872509233 687007027 948099782 890289136 517743562 289330924 522449852 971460523 229119619 346899969 572066140 898475991 38008871 341988236 911171042 54973980 460454024 699877739 600442167 139570738 793044896 191509091 1913271 802557385 493435704 157745029 263152776 106919309 9803248 215756351 311336129 330124023 527074495 203005009 757165311 208450779 941535482 42127749 463274444 470958453 669546245 117540697 940959052 92755031 763902815 430621994 276346217 432997321 231265292 534108306 691705849 518302922 346636009 284609110 912541565 669974539 819966886 945519121 429921358 273495358 794743714 744787561 442632967 676320128 818390941 768145519 736935427 773796849 404346014 567266358 985704774 194676013 305172881 433425632 53541765 865774812 223039213 912818698 695001881 919928390 125104297 908128063 873311449 766182340 180159467 249218907 794223072 56698866 416835640 18956958 440327216 8231967 733725518 567344370 976673253 385465758 733532302 12265001 591758445 625989946 363482397 695632764 674812744 936093391 675212638 465009126 13145283 48048691 76821331 162100778 688431601 180248225 209496504 901126337 705823409 242422817 311602313 103645949 743777208 890606078 330296001 603316334 736960062 689216492 992137461 280190689 837105463 379348315 376391588 622202060 85390518 63949622 175902348 731220139 338220194 163740486 688621289 782826535 675640332 536864905 453375285 619172731 599031531 892382650 956038667 22528444 184292879 940517400 346571179 407498219 290786954 620805600 807564112 69332167 938580283 418685518 872114065 517423524 25240815 323276892 700679079 968510119 125927391 511709742 992649381 975634119 104550475 538282775 799390265 522273440 955672055 726630396 834478926 807371048 451873760 226794708 687473915 388739655 731396015 290875395 970484729 4899430 549959585 305016634 329990894 328953350 289440956 872611824 633646477 303268408 343674498 862171431 725737272 724828621 366139721 833690002 61828065 500749788 374310115 82570678 756535553 318417078 650291525 255241333 577510627 440634845 375098880 254985565 935326930 895993547 709325859 837872710 310508078 361802748 82380026 250093341 634391214 620950605 343820762 550748415 425096885 1982151 773902041 222941325 512470595 52734467 28383264 422473698 764866316 157528805 504260607 831708459 857226879 878442154 980313590 867201573 965569254 776491519 834675675 56583810 494423603 223238533 43078178 997307257 709147439 387303396 163539136 987493055 497833516 780517119 368277717 965117701 606401059 223651633 221294078 601735030 821052064 269780264 77984789 669846307 606742443 554004046 698427793 11751946 804084518 237238474 566486464 621169856 204045360 418961280 95958340 54881294 537777001 545674894 982522838 22635656 84454703 805186181 413275322 783192947 236388265 859845433 571048850 590967657 118126165 313545412 711984923 104926101 187248699 251605556 560408605 506811080 69536724 103513085 795955625 887126845 662522821 551459193 487602201 52704718 813355344 911342241 18868081 805682003 314187149 212599338 905584917 117413785 461485734 407980324 223449081 123137812 827951352 190114534 389537481 309740291 745693208 52962074 990828364 454827104 510401425 366142604 37531689 355675627 761190059 443719984 368832229 827901515 555272364 243181403 145617255 475329443 850818963 605543326 238619357 176701819 291847394 469104877 744657512 800093893 56531554 946966 137851296 837752494 22376526 783798748 559990227 993893666 485733766 407373288 918850236 571525812 984994127 678427307 311585490 946654377 658406859 936179993 333033766 29280317 782673014 809474351 921102482 435661954 581126211 977249825 792774599 896771728 552005014 18092826 788971455 135978647 464045291 672965095 886280813 851582805 882993603 285389517 562890214 611957810 270015551 63201225 163040957 194777078 396845782 340491327 128396806 977124779 758516890 182672281 44441133 689126806 725658005 659393363 2319059 540833656 54499156 151761723 793539706 47210004 759984077 105931947 381399069 647184585 11447635 645500214 546777043 345365817 870698478 282861881 548329904 759501358 811594403 887500474 56381914 825747020 792202475 287195222 899272657 244768076 591267568 682050719 662702491 464748303 150990140 298742589 420422923 423007015 457202209 530996279 433824599 603630033 289469629 236048870 656226080 964741117 579204578 187969960 446419325 255212398 610701383 354609933 791698939 881381622 464646383 181505771 587684352 593554817 745340270 110054361 213439864 464319270 554421956 225212973 689138398 94789837 790209764 448893358 731129052 973289075 708784512 457689637 374306374 69237551 437114574 535660443 922119635 516757730 923062879 534240968 177636733 122238747 993740821 500486558 538976754 826940720 188028008 904212248 264661502 256523470 230321702 144680842 611177575 690791269 842697862 400252462 197174403 745488615 236621605 382853288 249473186 559611828 609362159 128449296 666314930 51288684 772045673 633787726 993468131 346689107 127928758 319401312 747919935 983742085 923029285 421089223 615348260 95453785 981450418 826238766 982141366 940715284 262712771 468393035 372701734 948795530 795735310 606775022 648235324 749427057 167161123 159912873 110902271 405281166 303754724 220195984 665346845 320156591 312506255 829229009 22925657 260659715 964401361 717534225 525708153 261954403 83854768 450927334 461369333 309363619 395839009 167268375 894642044 981254740 279367336 393680897 607312352 55129274 183126087 779743339 841834105 415983594 928766337 230138476 672307736 946467064 202483386 576803743 907773937 711316624 886442600 699700613 787958222 193876763 88911057 576462741 998798252 160359194 647618091 258151531 259818447 595497786 934612409 616940748 403095773 115364017 893530969 530090512 3358395 878161760 592072703 737377329 607270498 876400722 507050415 758043819 997818649 950237181 946868150 163562821 769263680 775685415 792405397 234686168 122809191 882404005 598490719 179109240 409291108 451295734 890125787 281917442 332456030 824298796 83426672 325883148 614802338 437784732 138103067 59666176 575691672 905163802 738678562 737687683 89043620 694882421 749875172 983497602 656445291 265876778 320357771 714726994 374295667 379585984 954708492 566970877 732603517 807101507 359832583 405889337 422545210 708258772 427337201 87068075 540515053 436627605 645880147 749082671 805500434 423225906 19593172 588642238 539300025 640391765 728893242 649404953 376824543 517718460 277697140 595764121 177936233 455666915 650824867 468669449 739289777 848394106 70307350 547854148 208592839 912778439 771365776 376576541 592039870 901738062 806781066 797989958 184756005 382846990 768601358 978114976 704415323 56057090 266748579 717773905 526161229 708471273 473832323 906414414 344972891 238810977 688062342 615437670 281349450 52448781 217725976 252166523 941443113 211858339 439146226 172549235 774826891 895546034 189249772 308188513 566677004 752250587 189984391 122827557 156118294 136295293 42259748 742321018 879919274 585866829 500170718 445839825 655468446 131137267 686097934 337118003 355518111 272568944 851620064 432053277 768651452 420153671 938080250 446715972 748841475 921876220 204162335 411891639 59549780 555470739 244880166 384677360 807079447 436509258 658357424 963458372 120098813 505161354 840376754 669249671 193370950 384305273 584811396 470043406 246042134 646038630 276107489 50768624 257595720 681455260 430573084 418447607 894477082 293841544 858822919 527260319 147460038 786502464 256502678 917392594 163579638 140599015 681740585 144989607 960503359 963864092 421011975 189546061 976324567 830316771 668725458 67203675 675000571 751548418 795782298 841712707 175443247 666329994 115458301 586136790 540856525 397856950 422573284 338152823 859980290 243685714 85791523 838597025 711123896 782164189 345760683 279331473 451418733 33704134 808866185 157064637 5050662 371019524 980993705 946217071 358265344 624345462 537601380 433698551 222358284 344061058 426081400 871019247 449533367 148462907 525167232 723657778 631067134 41045077 82514444 151059575 911221533 454446749 903485719 153014047 735801516 239336632 93579488 619886795 545638769 195332349 435038722 740024434 39457028 100342808 472137099 406622464 500993744 913619325 561467764 503652672 470984477 828817939 445140512 899165853 343551720 577561779 410862261 505038231 185229840 443820277 461594279 4417166 594545698 939862818 406302784 231153514 933583152 273085652 446222664 829173099 311108437 273074449 950610945 839804995 8455689 35418568 313887415 265225137 431369024 771678757 892614477 753603624 283918279 739132325 742544589 348941070 10115031 503224841 45237445 506514250 78252450 216577230 720936094 794005982 711743797 822597528 780975236 180470731 783080023 382688003 176897342 735584112 184194780 617737529 971361708 209378214 446176682 625292862 342170304 809011622 19872305 352002229 60470558 842725898 598541781 833135924 892859650 145173199 196011158 742995383 215844101 542470153 224174300 433913382 168998957 442500661 385678752 490173820 506808300 657190157 376804980 670683919 332060429 693570463 837259945 379088853 467098372 631110160 581954203 553494259 2734364 332760606 764918362 9945564 854055803 496284318 464431413 627667865 969089502 140495607 250764040 589616766 27287839 333965862 848350233 682703058 365814502 340924934 120026584 645032929 776021319 248123464 54170332 582614782 56260711 61459370 44964820 211585602 58830980 890761125 355448628 376646451 186948926 378222859 801821339 877796535 139335617 239351261 292257828 224996907 567259231 733059311 917245722 580968725 81288811 271900320 773123741 615135750 405504438 836350121 137097247 66208222 207810302 841324802 780772795 809199394 222647979 116232456 169058499 257802994 252797868 629231600 117873442 952504977 361400057 58821411 257947162 935061482 212673312 694385521 836198515 15147829 561075023 427943428 586412849 899696614 423284184 163400627 28425597 976488904 991132339 565532242 640129174 313799933 819766802 437595474 428964175 181039173 824837360 279075148 379294232 262532438 31176018 580486794 178992429 510709923 657338951 201277411 208021313 345858586 280412465 204636131 853774437 936740112 218698450 866150983 259534421 158083851 470753083 752911611 750121517 682644991 769830493 575910150 307136558 104035735 358892431 763623947 381326627 204704739 935005112 75163811 214949988 736903894 665666308 574719241 444762060 954472068 509378578 594811704 269428307 542488302 274595961 968046836 738933207 153867540 454939160 354712137 830545494 763616667 954895928 915329544 382317096 656801203 778840519 568118149 998386571 632608744 856163684 857719132 885700409 17621311 478578335 74132392 615751694 768875100 201098574 91051070 674576293 221413808 740693355 476779437 903312891 355348561 283265343 491380540 799096259 173003550 938966772 5867051 769089181 349131079 736786721 141294259 420611355 187951825 97994838 598525189 428308102 907107228 640684696 554405035 519035169 801340440 605709561 169831906 722523739 966581288 511307417 474573884 184362496 711591767 41841733 760952519 264510113 306884758 114425842 113173502 636942996 994628716 365519071 554713044 39519028 443953023 357743258 853207648 573213101 137557735 778288918 532261908 509936152 450864463 113070837 917953969 202132725 361473628 170040620 575648010 771884457 467493659 29426749 105295963 331435456 413961119 511805236 381340484 100301113 362378648 28307367 289020964 866044155 113338885 946557788 167449945 876616047 98827939 216503719 794182427 911290644 953587257 201284661 463533246 653612304 902555220 843576798 103200148 828115453 914362330 130447571 471179495 245960038 740114420 203218415 998644286 909304002 741695716 211392566 985936437 448147438 566195583 704476391 772176628 931638905 463318330 557435934 333210297 709955598 472899030 389525777 891388430 282694707 488865625 597189648 961657331 963561055 387520474 715273126 212898939 529261033 454120725 907151252 55599403 177700477 440528749 615127385 583486350 759822810 344402856 917160581 728974084 648164993 476811941 428004560 824764214 422112491 699030551 379647382 900319026 432153912 242772475 800743504 608875222 394148416 291673089 422225136 348911471 695524893 178018970 529394864 416017334 963515118 150100157 777525308 21120689 129221795 198173195 379016146 539743883 974374213 762442257 472956960 552752935 834770852 889639017 552308684 146164689 164430427 733541471 405870198 157404017 464817788 929825503 82865415 241172448 607022059 139685155 712166205 389375043 280499856 898179100 63782897 937797377 704667338 736887478 555711582 562974559 449523140 642023055 431937693 971246970 280755379 964192254 520105779 336089151 888410732 460888947 272144793 961126491 85936563 543810242 98843599 347992800 451019092 766403543 821370796 853123114 363160836 566262740 515149052 168221528 834156856 797230649 477850504 486820980 511674012 79404452 315851209 69306766 210835096 651094784 219557025 674372068 643671028 640158327 27386288 833213647 312955210 212651085 694243477 894742721 387497947 595653589 367582176 306064599 673677457 490434981 526075446 822298317 33858723 629188478 601876539 496405186 584029843 560310067 353181944 977384819 985156635 102837539 525425694 244098560 592998369 660630459 550151179 990567952 39714394 192459170 363315302 851471661 9079694 357146861 91232991 34053692 994103395 106344790 931708376 162444101 806082676 321715845 142170715 653040206 394838490 299362523 978897165 787719643 361864483 230548603 170375921 710731795 327987227 459619974 428829716 810350487 755471154 934799308 367237789 671555846 266873784 117780314 215158660 462004946 480316214 44753081 199691490 691411406 225273210 810241886 13917495 14941361 470693221 420662396 327433940 246696411 733726894 417095889 259802674 963097288 281479118 697538859 986754876 960667847 373823552 809214851 894298376 543921121 439326859 627174676 154520618 634009820 653648654 395815898 786785030 416148771 631695067 208825195 207454234 50636543 717702445 982626760 116165063 689813678 288801580 852320809 303413482 116849276 898330775 374864813 342443593 181529444 791049647 562770606 130240044 179262124 501918391 71962767 734698058 733217081 439303548 125574733 944290460 484938000 377537626 34667907 83115113 246291403 226893121 507906591 239941066 609939548 74693653 834131346 100024355 592609593 16769614 310539089 167280411 153661510 883739316 15018688 57789135 910542093 689527243 472121365 154046581 4669813 417307722 274233193 403896288 41436789 882980800 66385185 600842455 936432894 433527641 822175394 840136877 748334087 36342169 17558946 631016882 217032928 901687683 810938122 649082224 709210715 92582676 787207177 884728988 550379643 884176082 966086725 890151500 498835165 321862596 179084444 762224395 169699426 743384411 446832123 310624434 145130600 523265146 359906663 399759018 765061607 740065594 600300513 99786767 546235050 77512665 127006311 514599507 976522418 715932075 118270998 140472781 995094801 299577664 263389777 644990416 723102174 272155082 111788274 117849407 158643688 549910521 250661216 606331328 138274624 815979427 934132261 497354508 210626283 834984269 448409636 922999269 879435355 626748176 507314689 488573196 955931512 866767852 83702637 280108968 818591516 355716350 383574937 525710339 265494397 574106987 359915369 893480084 150511994 896951892 102524166 293757244 163654819 243688888 349925178 700936084 776649638 38115129 752594695 107512076 683055243 395624153 385417417 805475416 83699625 728689916 214401523 900888785 727753990 444820021 691326200 162776682 249219554 685140264 893335875 622024312 319356098 492377639 392401352 195713577 875490187 646727846 959840489 533351792 910736593 725878291 203101020 652883655 291194029 630505771 684953495 427610193 962443951 186831305 135141131 399075635 604744154 284230177 746084622 172404969 52164288 976218854 575748744 309478110 737192021 606204635 410089744 833554947 269631512 326548854 745303331 783649793 576185222 848658742 596209929 337258459 649096682 620062073 342110537 353163121 803839007 533413207 940659289 184098030 307963847 954102806 745024945 592083963 319797996 190309878 145982648 901058230 8519227 64329833 444755975 444559569 341389570 177550549 813872192 832660458 862568182 190213546 287993205 778314553 853009239 971657425 945505694 705774105 20652868 529526248 597149359 550824317 54369709 879530963 937423485 404145473 196619444 882656359 282902398 632445935 741370411 750784077 615755269 397839021 420824605 957726171 308915015 145405370 434605137 21757447 887396783 452432947 298259391 800332017 11701719 863807678 615273948 950180095 772585849 988340359 78595555 438941320 238441184 170945631 520862571 904093565 279738045 219479899 97653764 32228681 709462971 885539522 564880259 975944510 106825888 537453987 790086672 32560002 824650705 263769522 642247828 490891696 652790694 557896953 742381126 638874236 946637118 565639632 481821982 48666977 806508937 614734080 770114629 815744896 616633528 225146917 518287966 801985936 35348616 472080729 324991225 496016789 379933867 657769287 381909690 263743829 430264306 658747889 705872059 863679807 465551188 194067814 213223739 914518863 654780210 634660428 168513440 316988495 354511753 283779432 803343105 66229413 247168303 118024834 458992713 290416992 956395652 583241281 985596962 298952381 131927993 1554314 222584153 306600455 312440259 243437051 553525043 8652564 778134690 242089402 295619849 178075938 960960508 97615946 493094523 276942933 622046129 694465739 465442478 764815461 409294127 784682248 974824402 573438609 56672167 502921721 848819068 609787912 490233180 796423455 339278010 575834899 886869756 461170806 499928724 140199368 564696311 87081488 546011448 975304394 18032437 812788427 842985199 369310690 368102623 327406677 331832725 40330720 9435945 911989864 170664562 108253503 965144723 684721956 980382894 397019492 23523648 816694092 35818572 549386404 598499319 111995148 811714998 383925148 391247833 697049624 254730641 564284649 520481617 889971165 405975937 34107668 756407877 218703543 335117208 709249160 488071126 952009916 661748473 639625845 534387172 620012985 542164589 935708168 314598908 36896753 608527992 839226879 452986059 2841770 904017471 874423528 163527164 521516242 877231955 684453745 289967962 710051539 947935996 11111988 816208988 184550034 618316531 682075378 317624437 114404114 183954016 307033224 49600970 907408411 103970262 456557782 575784983 671777824 43042373 277562549 320226109 106720913 615483238 83678508 374997291 304038150 446817273 37141448 816598832 9057368 205424678 769928174 910031472 558959896 994170827 765490875 409209906 122381755 429390994 955234394 319242612 343004182 342075062 122059303 502288110 858632600 373721688 179910670 150171210 812937415 168396756 210356977 500996993 338749108 424042265 879597102 83002936 879317495 407663249 675896175 54773488 259361488 559287545 907933559 45996183 58106758 994893838 112044475 600248581 135801092 179384763 621676996 190859650 672154878 954833642 570343838 871205351 241164163 430622986 492790639 627612961 880025448 974497995 643247479 816386045 471082772 920507872 276431258 246091215 594666597 353844487 603593124 255832423 646381393 203264165 54484701 279180107 866071309 722071896 918887536 919430804 882671049 177728559 780680044 864467291 181645296 4948091 46489857 8202841 164834708 408774577 6853979 776887795 40318845 726490901 157536879 546561004 635798093 402531839 706718290 371232200 238511050 190867394 115360645 554940269 689164127 649822800 467143302 796406889 163583412 724706069 383390522 845933952 194094078 52764953 895586031 804707096 823791018 261017251 774644272 7086684 435830282 799640088 638042099 907796717 414988174 905876083 821098032 596173305 365766542 548703277 997699052 855786864 322842331 70684495 857644783 597008994 460462186 401779773 546662831 864989405 370295973 853159657 457396678 388903705 394776645 403234495 212195526 222429379 256579781 534706245 347426213 895042439 148373700 161739889 7474354 494515148 865898979 42081902 996779613 869747318 771748853 525300504 898528750 3410089 563819183 135188649 709296612 393120861 564746422 655973021 206954028 176831964 955572273 594629799 661912557 802850872 279269325 800123383 673344496 856100938 526796341 193870858 187551932 269541296 844731750 228096316 84181942 693957205 839882307 564979651 545755807 882707700 77874721 139338768 317481139 692545317 723602880 914981166 552246908 966807067 402888306 302102697 789996858 581547034 769977646 133804302 881460900 15997182 967280366 167888772 108958443 604870028 922842988 592179083 228618307 988068781 179653561 829573018 450365843 357268976 419837184 223257430 704815961 631382778 452236532 349806938 761558171 588022302 247765987 670302648 562336376 889596036 449470639 901484420 239530262 231277485 889685649 532787453 720165572 457361760 477736850 925144060 379896586 731943795 10363727 580297341 835691289 890775758 736279859 925787868 154379385 935273864 674745294 83798547 199039259 248899939 421369193 545829444 8440806 686065876 413227181 180553483 701725948 354129569 315258578 744110473 475654492 987872499 82728143 675415301 984022610 448853698 719472764 939700249 975821270 291791049 670824555 134615476 441679940 948924795 972665549 180964362 942570005 489330586 548364411 596742476 175394374 216664446 406065268 708276783 440265743 193774959 316005568 447768909 487169828 59837302 700408254 111376510 119469411 903224881 747035920 349893082 509153506 724235983 297076085 719430750 636455613 504269438 879644967 466053325 202049108 581742297 65004482 99249179 501723716 688560905 856410369 825579956 986548883 225874938 927544361 520965259 328797590 980651941 959846133 3787311 704174567 544209923 789331832 262261775 213730687 848544784 330462528 91472214 908945056 388379668 264388396 33851792 160554527 911840564 895734966 764110392 285914167 400150899 90796304 937941107 203647115 34319803 705353416 107362666 701720101 898249591 553131211 217155601 599334859 387352049 528441789 60834285 417967741 351824890 697832509 588654845 838180340 96004088 162242210 8493282 881949776 633748321 669556290 318253944 990498715 202940186 615117468 190794772 929172429 746482209 891465883 427613210 727085947 804641551 691791847 702949500 185683313 165646466 617863081 349049144 326277361 802016419 236064421 341834667 220627216 526386863 579972140 160056064 586667680 796062008 701187308 8797327 263545377 118902721 612579931 919943876 13315248 575854500 263209597 730614955 312816346 156388448 16709724 441841557 912630649 420386878 451827190 366761331 975881842 698561196 564724025 453637522 342576439 353114158 37639520 126457224 878638603 821057968 369325352 816398056 676360957 586852398 664945482 683487135 822890625 629795428 717803618 228737898 18958648 565518834 618500504 509449119 39599698 818823713 432211040 329629892 580167779 941845644 390570816 494017625 217093670 129646504 728255417 218638395 278419778 830201611 399413370 23280247 253048601 89176331 801906560 57772645 291972582 68695752 251768266 363965575 897343802 170774591 455727145 757486287 760090585 637020378 884482514 143276584 605179309 905724147 915958178 229318071 988129874 866783216 521431133 150838122 197345729 666587163 569946357 742759128 148682577 386645057 29149856 460692778 725837826 672812597 830330493 531488656 2087150 62657857 660189564 952005274 745837228 789473678 776728225 818206266 281911789 67246837 769048252 334818503 115413907 396222522 92509155 555684908 968844169 436673860 516584110 444339153 932212229 359696400 383293629 20815122 62963718 951303777 684632071 778974751 883852603 84676768 234609961 843448430 952847543 682634097 539429694 68888202 152500382 155021361 561750903 590276412 862416157 4268531 704426959 943478341 822814093 154054063 709118467 847198151 355634401 190809557 370562766 338551650 840514803 320494275 11053065 260005278 806625225 361676840 93669727 251667674 781900602 544026872 515906866 729305339 889664916 336717388 860936564 746105912 480528928 267189760 100173389 909389884 891636136 568565123 591579402 877510689 449612221 109374169 974628858 690394574 420240617 211633137 670016818 867480844 770905206 743962669 378830550 229423846 189753621 106117367 824141577 70959371 746332488 71127420 140386004 624709600 391160215 740538287 142480989 313563665 329666914 301935678 74872510 834066362 694907502 828424010 702377455 299803120 271202701 292747253 11894084 901690305 451828871 68459543 183116736 677753751 763857781 712066275 428297300 158137391 874557531 278726218 258178635 339963506 359687785 536085201 276513576 310180105 258979953 234165873 845069118 926568622 447136989 684877292 341932131 705478229 342301515 760972067 854805466 453668654 118922749 22607408 522468013 350158275 59504423 482756280 621033521 836241068 296083273 54647508 683083318 760608611 107454869 581800087 476980062 876266439 508711291 11564495 67292367 719888629 333118805 807835390 152565326 125532946 451161047 633861822 850589962 264130366 903753595 374708589 395235621 444413698 967334676 389725989 730893133 841359596 250412287 942653875 38586230 405492884 821264763 334676684 186271291 134551773 934535541 104282764 469123906 945502838 602834688 205227824 701871765 982452556 292298318 577709011 142121112 807138981 852157898 336434164 564016964 778707328 600753228 72865570 283559365 648689868 601769418 55852705 945270041 147453787 784871171 499418490 519898487 357088614 982826171 607349175 363670171 287366674 830437888 825145887 633283655 18969476 56302560 511777473 194335036 788052540 613170127 716198479 810411782 145860070 405473001 153341390 834068994 334984971 535018467 462517880 845677123 189354357 684278218 307739228 311909570 393111983 969657834 59743483 914883542 82643 124634722 226951483 350016652 563516768 358251033 56215459 818172827 188825673 630415608 529804209 429174365 636185337 648227799 508052066 155617866 26087339 328511480 577814540 782085074 337658992 22474108 694783972 906265651 367727056 397397242 466993243 456828776 364563639 10019472 414864526 758609915 74752649 378976879 882093399 62849038 202122871 267348512 738872008 288957378 500995927 19347775 734695020 470881980 216127796 517252671 741768699 340985592 721224835 57649699 874752901 342242713 113602612 976462567 449598364 732238583 794938565 270465263 826628085 426995084 626041581 635591754 620363039 532400037 661366137 68956596 204549262 483824098 967496752 492658919 250417236 865429437 466830018 403307636 531165334 527800822 990262949 661072316 662778292 219324113 259921439 890483560 292137800 218803495 60033138 887240207 360920777 48033260 282132505 616606661 385209884 44407087 870990310 219549680 558377723 138778416 763445780 650980239 684901499 876975927 568856226 259348219 245952019 361758247 186509909 486252336 998876784 84224623 60675709 868911826 42042164 245952505 492404015 300386055 510540471 445985609 322025721 382867150 548500887 921761491 628942547 97798809 853083902 684782419 284371793 131176661 410389324 135048161 667517181 415177321 915725647 867994586 129042924 974322366 92444680 128315810 600599603 723028536 105083044 515688243 508394583 812309873 398049917 820723682 276826212 379994594 508636840 990002585 314731973 789676898 9378477 546185854 39429062 556832272 763754807 284332534 190797162 306160533 154968288 193843786 27949826 949856548 626562622 450480206 183949245 153491912 981892932 996880772 100599362 404234107 702137096 251879825 388456602 816754148 637721739 438281313 699200861 715579295 650185199 271689494 373300811 671907896 435481095 667898445 941442613 589408257 972802700 350263955 973272329 920696840 399118559 285769608 380201203 541093991 266494425 933921654 359603586 9024556 980649534 454416067 126635010 754837314 199490948 97247886 125387567 761481844 124649928 191046166 109048696 358166531 993253588 900231013 610712421 892347198 554372486 474369079 1295095 649093280 345631958 474188799 294814421 940220343 451402568 432954771 886018606 629929434 469144798 188046623 834963658 551446802 998729346 233229683 734654423 23104504 995656491 801691345 754871275 186768723 567836684 680226692 279934258 707414345 873184193 63900754 602724949 869804914 76842156 302920756 298369524 341765889 681493352 743719501 596799075 476074197 158181136 403869053 121569403 328042115 951787021 133467181 832447849 898142873 875858162 359180267 12320958 235292042 145431608 41609638 494571598 766271028 849415078 932091862 900692926 694014729 200261782 535379897 705993420 585779380 532168798 18647316 991762737 700024189 508826069 556042360 35339369 271812096 444856257 633925766 472171473 898586424 775338184 373355634 965380099 479661300 478413476 826567598 411900116 650988014 909684773 535185666 289358812 535945696 177660948 637100857 336230270 362576347 967204106 158231267 56221794 828053611 17398182 390104371 246186321 256233130 489961773 193436958 934652138 976300164 25255622 635615263 861230858 595833383 642459582 937466994 349370790 877946251 652888412 198454976 742550065 117160053 586305513 790798663 36056381 550823445 908395169 589846522 824009635 896518978 372259059 612070238 545421692 67308860 147776344 186530638 693050421 969312098 674616133 882987850 431357243 137009071 826611133 541150559 952697670 89972892 888775899 489844237 264572935 472032637 759604096 96310168 47906081 103054957 97432696 305433320 31284537 251374795 401954073 860094519 883213972 626928924 478035495 539434802 790533120 61354046 376642837 430559420 158544317 5678313 468369093 267642454 889520892 849448343 560828602 775609552 251672263 569996400 718802405 224495366 412383611 418290866 24310439 74938016 563162082 134152029 529989411 907277069 107691635 3602764 962694352 752155809 140826648 402348133 928987592 956437183 161767239 607752018 498072438 717001558 542289655 566467344 302282333 358337728 608895749 541863442 543122510 884244661 970383398 314369055 243213996 821070642 61543473 336700942 214817161 148496022 599872044 79679 328200740 104455607 19826148 769757360 791153908 280660866 883841 563446284 748868100 328883241 967884983 19288939 382634882 835997564 536322892 334452104 401009156 295740087 937097629 951399283 629258619 47451312 664915712 165781876 604458505 84054785 257251001 438095712 987099229 699494608 379467315 872673807 843781285 352761376 218704857 284527902 75524737 344812068 85171774 573473784 931412685 701019498 686511253 611065685 31844576 893901667 301102562 508470401 674748329 281011516 939476380 867892246 524098647 128274233 106692296 339542233 397595185 821365706 71007583 198781912 102721866 551460092 278036701 278270753 328349110 342081599 63828361 339289656 750071584 853065641 977005715 843654463 230633600 487710228 431622553 990707905 329924793 348288390 925845975 281581288 776081905 236490969 245347324 441831004 635876198 924614958 782073356 699492577 497534286 140825638 480345160 188303999 714427054 510060113 907937161 549310388 200135710 416415287 140337808 513342400 682859624 267685363 750655794 936337431 121506653 185092730 256894487 682858765 976828104 616510103 116852335 989969560 77018105 364608538 923467268 987030603 16569268 758963889 976331205 966524322 565733353 197777116 241149640 203994039 804268176 185258260 112502151 102268648 523325617 725034122 852865096 922754685 862597009 677395850 428346717 172472758 301853629 910898433 343773553 95891045 620236496 46359169 802739619 493459257 669275609 2749226 991414413 772960786 356003939 418568068 822040130 972273851 11219000 853376532 165784575 664853341 679905379 992947068 656637872 736030305 985210364 200782612 496681303 162131484 537464497 785254233 297257602 12846693 551402136 858557260 628674930 780724861 330324395 962340503 157581388 33490637 341241510 371390352 19491183 581795695 595048815 952384082 242231224 569742538 626676588 96475810 366627527 243021244 973395451 660816141 776624621 189931394 725868759 309713418 538007989 892729613 231895931 71505539 982881639 698901647 280019188 83549570 721029397 909957713 757651724 707273242 781034273 791126670 537238647 639029212 704374206 505314884 952909405 541125792 702756545 771853297 112309658 715681568 632216364 623442099 243603702 979087055 661976161 926201479 791687966 761351770 98908933 675433029 875131712 593610591 998258870 302159605 577018043 26422725 536166632 746744193 615955581 76750717 138613244 846615307 753299863 272199353 727084330 159906970 672845561 115078122 523089496 758742354 670142905 221048079 617851839 167588031 119872832 704899541 537092786 620527576 672297847 89745828 923290258 310152731 318696438 845607016 16152021 296235618 935331274 821046190 287603941 611690538 651721334 496788615 565171053 672086575 332446111 177924741 731182154 918466788 23520616 615041187 561417427 615607210 204811028 900625044 431750223 156639406 610183200 666271849 22139819 658105268 359510075 121996335 917421859 613676166 779486721 440679317 527914108 698131804 771512656 617003825 347400494 263231710 33059954 371105304 224165351 758301720 129331558 214295289 764271561 431991221 379086919 562556179 423428039 939098173 814876979 579604805 998483412 803202397 870206932 503338295 210440361 138221425 608809287 378269646 423840018 178066822 577979746 5129790 522261416 842460784 437685316 458430520 63452359 158558527 613113581 122382166 481890303 82094583 972084250 212304427 596760873 735251549 695330945 209737960 889286688 453422262 258624253 242541426 164537372 552472245 803658075 198435714 393497737 687252464 369663390 852422704 596206846 979269153 113945408 89505878 837341391 238950423 395612412 509485187 903425158 673151380 849285504 363310210 959167486 810329973 436408291 364213501 579221501 722844140 107835932 84171602 423578477 450903390 709402555 479118121 482186476 868417763 31059537 949670889 214977249 565032593 800273345 197660174 561767866 538792926 481333941 351893367 853066789 286099934 986815383 193552252 332136700 245555778 409021627 35921821 781018075 332112963 729986386 888647767 520720533 975173085 11999395 516846940 764934399 728106339 38714996 413253622 979927449 469547734 328112626 600342367 617918372 603999033 473083686 429406845 974050748 609493439 914883227 144806622 751387942 189864038 386171137 228333889 437381478 224669187 99157648 223178943 184914750 348888704 282646265 562843918 782666101 892914446 180000506 368757201 959618989 745845023 849735576 612557013 986492175 621698358 823164777 651650358 217962304 821143305 784926839 57125755 734091925 435436416 603542573 765859851 666108485 124562456 273076947 801997003 120776110 183003195 940145032 835414740 554026077 548794334 746390463 727910911 79195869 239000455 482989325 747033792 55591749 954465494 291976379 632805092 661339933 365258253 170369099 40899689 409666321 32909308 220215342 581767626 74783921 203568540 662500082 489477330 701689279 469871132 371029765 978633833 314861669 72715258 985938131 323745060 691258171 404035227 203585806 654873380 579420913 359313240 846023711 336401007 726804297 621172071 533698110 722091434 625063871 21517940 591703924 452860048 530512788 647726249 39233935 403590091 698024063 993318668 433293192 51719198 42834599 122731032 10496889 183942428 943985940 991449865 35876618 328210746 412871251 178521629 986051257 582427171 762274010 740999173 903159665 862668030 979515223 439598840 322454938 121591610 884821431 122060617 821642713 634715357 846687623 705605423 702225537 349992948 76566779 611179926 824685345 984654612 115075791 176157198 828820401 247766294 655655941 122058050 551775590 53909684 808526616 544247122 703268680 836597735 733838540 857969103 800048191 288889697 850184772 460845645 28254209 385405149 697515819 719203270 2757921 675039751 596348328 20964015 907598466 663450145 302802737 229634525 794796046 840297676 45845471 30827603 836876978 774912132 323365629 316014226 478380786 396632863 210363768 736508365 875167948 730452446 945821488 835823536 30006728 775193291 232237479 381655514 657412769 762854921 965034441 354799757 362696304 530940688 299682694 704009679 707517722 4079781 257967736 983397740 878949487 627725229 61183413 155576739 461441903 95324246 866092069 667578418 533916208 554193145 159914118 333668429 746458654 87858232 541427632 591277185 801475507 423620696 507109342 460122120 152242066 580110647 362381574 543812789 299970297 364566396 181627601 112622438 46718774 251109016 977562009 165527568 344325219 606099967 874015171 932909627 250838555 162770272 176523925 903069078 239877344 800932948 239010517 720361109 598668933 907382627 644173230 428041645 72235733 359296052 578109881 996149241 717879823 281913655 612327774 255615919 708926639 63747352 68698824 853003321 114008555 164624431 521390940 540926734 881677024 488473739 940012137 375709615 697917485 440426683 702857259 976830245 692190874 940892947 987607366 652964971 70570177 403557288 450738505 824891139 314495630 276355407 335762749 557563015 986499664 999600752 608205489 447434855 690403896 745900055 846234964 454823162 66395495 550835605 490014967 421702093 454573201 68476919 780338394 267375735 243601654 790665323 442558427 943284417 37255993 193366716 912810023 479481957 236460281 312262748 348980622 854284372 405769332 440748650 555715710 829589938 125514221 468804230 464918694 344635492 79626383 240044032 760631418 844478480 44422457 987940792 155888333 86407998 23748650 398169381 600954767 676808832 863482433 919631078 687722724 870004668 303406053 639875573 11999050 254765710 844453482 375025590 366370640 994347262 966016184 86781848 58131828 671507455 216119637 211422171 81555630 899645745 825048344 164055086 227203667 254104439 668501992 700731132 112123155 772682774 780194458 337295330 556758856 612523308 989515628 25179349 403077796 578080666 227500633 979848164 261222634 374476062 931032985 468030742 279219103 344616432 23947422 910485511 657748020 741451279 491092373 66642099 456932472 341579257 490869312 998964690 732758909 106126488 18528857 444796142 880144596 603870470 918503397 577174839 300440802 146377857 778099718 721678335 622743504 70407104 404556726 379027864 56668619 677778414 557901151 812232794 157989804 529609108 260395194 819141516 805443308 6417963 132602992 369697219 130612143 292518960 659698964 260919867 146525410 345179633 147363311 56334377 77538812 235811954 624872661 693778724 113137453 606427955 725565090 554683665 658420536 349833974 334551155 926416594 798817273 343766415 574752391 286014398 554746982 835872862 833804519 267953867 196553255 782377509 397167995 356445426 870239365 236912465 448420430 446019394 986765296 83881849 321931604 1238887 224188099 797478888 477871394 906011313 3894412 704121193 110180667 288995842 847757582 997122093 116490074 92823335 654352814 792420151 57342292 297236061 57158728 341185999 601304859 240032925 124010590 510937508 834707290 731492642 43623222 249745565 780763741 504185505 53195152 211793830 738651590 291893562 999623636 6785618 5677304 114884307 369042412 971138920 894094604 184682376 952000680 362761998 402885432 441493476 955829024 364901318 727726968 387491411 505401722 879804288 601591542 495392453 169591457 542347604 641859165 709819048 703645958 139032508 474622457 632239797 173772529 603411746 683597999 898339287 457854475 659058954 543582473 822509952 96803217 217210662 169858589 992267574 605562317 246960938 420532950 491845510 188113785 521401074 940861399 142734219 749516820 767365293 513401505 134479473 996835472 580449780 17625710 959913546 5785394 231299463 788589258 217150964 637830 43018462 362891523 860903146 854852951 498212723 111320784 189876689 678130752 691835147 698696290 422959435 635698878 589124653 687570096 349288464 681157192 993785699 99594250 629764522 144102038 843555021 118984925 41998783 264820373 957357989 325636955 616999748 456061395 489920299 612958329 211416078 770584923 863095404 507006743 51948243 194213040 980491138 640374388 826135593 878866033 792775594 667347876 557388563 445652134 987061512 649523061 244974246 813791807 255402613 657889677 434286585 308395383 745633253 414675595 487316322 849464505 773810228 739985654 197692607 61235 767053712 206652461 144777321 875443417 339558065 654757615 121960757 938675520 817141808 511506635 560735650 481185340 674553646 454444526 707204955 393707395 870640876 185802996 197247090 268708285 685519449 179336898 724569413 877277677 287672021 823950680 754033594 707138278 501353500 682954161 818146421 105026235 148377506 894569637 257224104 801504035 46032207 467435157 462895272 55331448 561283464 659300709 687470139 538798091 927009535 635049442 93592541 577303327 446043293 728234987 663530681 934202067 474470119 518937278 854020792 842438849 632953840 447768430 254975964 887077383 124546095 211875816 9544462 871992415 701957100 196151029 967669171 243307529 990284893 49024447 498291135 416905546 437855243 938720398 837793046 651964834 44250017 257870650 994032863 396496797 884524262 982678921 552063859 948587394 398385590 627983240 910460409 978699248 958625419 264105674 101415144 580140903 316303330 605066196 323841108 606740586 727610191 240891926 378481161 886937533 588839434 796381503 743468136 871152814 685834512 874996052 602796976 771797958 38109940 392141812 703414877 585965565 703316369 123430400 855060206 941353708 36891169 437038834 553704903 43344793 960164015 837353313 625069108 601152047 980511144 984585304 29050368 771331665 627295994 461753139 422915869 778929155 972966516 866761378 423108988 633078647 608296734 795073163 43393801 343827637 27200645 459287396 157595651 507731577 797762317 156527340 39747655 686063470 191425724 87746590 316456786 16920593 271381384 889554838 485100683 475342337 644640458 603105701 391574251 50326042 143684522 479051562 13916221 88929699 224515124 538208968 441871035 634151799 100610258 46943521 208732405 460554541 756966875 808480543 388154737 242501338 419529682 463959188 346783421 625742440 84772773 235767822 580055699 18612661 542332425 347300420 778359008 723369171 639354720 234089287 918300143 917998631 285083117 745237343 828031201 853773329 973119474 232703548 256647861 307521937 695447074 481013082 427121879 613692930 17904699 754642858 328737436 41273702 111606725 836070461 698725492 843550631 580045290 704773057 657938068 208433612 54976675 226423212 130497521 961524353 192015247 779201289 668396662 576776970 156020337 192302731 466083647 601152433 308602261 565877929 527207610 748533058 348831633 112346802 551707013 810478573 464549840 51932347 350637657 339712305 609076056 788424849 31323110 794009856 351050383 6725143 472831700 847312435 765503796 321893675 163103514 578807196 139765044 102136842 364827292 757909323 214752217 910838735 628532142 931909009 923325960 589376359 212930546 888682107 331697273 677711841 741288019 438318098 25564662 990178844 846233539 279908320 142298002 865328538 838515232 58489623 524687783 399833432 130700838 81079279 779989926 207120477 387466482 251877426 550413470 149413424 748977775 483786836 999203 392312594 257277470 427169079 390114770 304518535 390194605 203124615 673341406 871085530 228297670 715785471 343640054 873522733 178585082 482080930 696548409 445755508 644097171 988077855 899007525 341923345 690069254 676720105 372737999 799763756 283816294 562700270 429109190 100006852 705958530 222137780 606192995 522308260 71083072 517203865 949799965 952347609 371079308 670520293 561591747 639015408 788315364 391661832 798932578 678734615 748454680 637201963 92349439 469687811 313073930 334524078 432616538 101386256 778877661 998782678 440793603 748634632 915798437 273382801 244281527 746145768 912882368 76486271 719731024 115774274 114986959 154641314 257613298 813575071 924113601 715216722 618628303 689509528 943699971 425004697 264388763 475123778 502751239 275425923 335697526 829043215 556422299 736150273 854156477 117667633 85384213 271494828 330367855 914876597 845237184 841680671 471597294 246258692 816188254 926578143 289971040 950826515 860359696 719975053 490101788 994523587 164896355 613091438 255847607 610239459 88027744 543313839 366179968 971058896 895456998 128609320 729656170 537367901 61592625 562746967 361255941 320417110 186436602 760578727 838336101 778265218 816997795 435758733 325611259 122125100 682284037 492975313 296711592 612022723 800526672 256630986 556842751 70104811 570097258 197901099 554641734 359569129 577259100 207038917 225481909 36499575 913246990 434747458 814165084 658171763 947157107 874985971 38812906 166595439 105163014 518704818 887824579 240585738 758284736 371537828 432689642 481814806 445233494 736586977 270421925 894477845 405996299 768933336 652299727 962229873 318763073 113405581 157792671 388055589 543461960 463144491 273180113 152359354 15811469 896957926 186855345 816949036 872049789 225808302 845988315 408707754 160122064 287892001 818969632 324412791 448147454 26859235 396078889 339679938 672330041 630311023 31031577 800501230 338758441 197144938 673057668 695806451 835516255 930102706 791470760 343092725 810874081 470649075 487228162 804565987 812908201 366886071 191610837 441690715 810881129 117403810 671168964 620884126 172477554 386564800 865341880 46941323 497942571 440859166 855655325 359859658 711615447 104090955 483232640 741236097 360431606 419417746 862310718 657030909 114237282 129053529 524611733 396382910 898941877 817258624 727719524 684100640 828680054 331104028 180892343 114975859 856761935 365761673 705730036 239438306 946583780 645397843 960024292 543433672 946503943 133797597 40616587 271986041 735711673 141069697 503901960 412520644 825182285 815907473 186352764 787955248 962793365 201854666 710133158 239266827 999817897 263040068 116760115 415509625 847978253 527904701 906484686 45102372 24813817 383803206 196882501 641703835 300196087 35293906 850913535 803439543 403586016 882841633 152528096 543144864 110343211 540717963 899453277 279807608 510939911 663030839 956848225 222424223 138267337 518903175 663425446 672198525 147774974 446614098 665840956 159702385 437325331 37692471 470722647 654877371 284585188 406051607 191242732 110798467 215729205 567426974 991267144 387169485 538139858 256343492 151682859 795550730 855264717 480657466 667299834 655945566 812467041 624892983 352702130 223993456 2500522 385085531 672073402 94899913 767260340 858586357 831348733 837173231 391161975 520595384 681865856 629516576 187909078 351139447 408929497 106088860 260929340 348141321 61822206 205102434 124921063 927728175 137387624 837327710 510324431 228745770 134005168 504502055 806924333 694587493 848985377 78249804 624301529 631252630 596310474 507693941 199153247 934553425 756085031 94195809 806060980 688886620 690777832 94473172 781336387 534537118 621750057 369102870 863704913 236856968 160516062 365125823 839465730 88730584 224834376 170577421 888308812 348125687 275684557 238582822 343092759 510380749 655615078 738538877 816395204 302165204 379526305 391447175 710963950 472878488 562675324 427830856 517519269 789155386 695095513 395868864 928586844 574092789 132546872 718561289 474918863 378186949 880027927 287532656 962805321 756547698 148511819 940483966 78560322 912797916 794823085 475527612 133912745 937525968 827152540 676052284 529986879 917859066 124403270 564191979 105794866 790841335 693189789 680483284 242564677 429425668 608975945 459532085 141116687 374324035 255246104 696580043 786628393 864922397 96062573 699687830 210221517 234086034 296661593 265923115 294442820 499858490 813025143 799715681 70851712 663482134 770546017 272805104 131047814 594607496 187407703 921504812 763702949 185595503 632469299 490032903 842623956 892159474 836916955 881251525 717855675 988091405 680178374 735357592 290971698 953162543 734425850 976583838 122152661 533184668 486964027 575944427 961613346 403618293 395988102 65918331 510794843 505480773 245437964 497192463 645362706 620887576 472826855 270239391 954007872 715603295 659746482 37307599 734075721 963511586 667575033 340037828 415851484 40877970 792625343 355849296 501887698 234735125 68089285 309222614 616132605 87099816 248622213 978383614 33254835 275803524 724011316 112736708 544868951 369878465 681767521 183943012 96636136 643998134 648992198 511428509 950873620 661632186 892562829 222094749 868943770 424678407 59080929 847508954 799829989 390362643 541176109 839913905 926855460 383517194 267458322 94134381 24068954 553804679 960219570 729603061 681224147 469447639 141959733 291606043 34842752 557560514 330451382 285862726 746099078 540645428 176399841 333356486 733242727 4132311 417521978 56835341 814317987 887335756 429538434 794026627 395172656 14137391 128017444 434575397 131849739 918567535 157322396 21585722 591976324 549820907 308556468 804141662 216831132 223117937 775804462 139287180 354007940 805527390 926577319 448042697 884601349 535580403 50209595 268541313 542037916 61955323 485866224 595352999 340836069 796509910 697088488 27679346 653385029 755029641 888596079 766217069 17542994 544938999 736329748 190813389 594092220 971129970 386056934 553677190 319775684 365102190 996639891 981428070 461613601 620732286 85233603 980433792 551130350 42047453 281069233 686451294 684342735 138229487 575380454 296506335 309551896 103001919 35494370 384714298 278855732 946780238 973326919 521857375 355285488 200088824 346279550 42517919 548195721 786463832 322489309 170890190 286268101 589608331 985994149 290507293 65080489 742237232 360766598 424016421 298552847 898448086 712078644 444866815 913911323 659894808 159455248 163630905 889144994 962312939 742115787 271710043 221840734 484351330 619840455 821858722 692254066 761977838 573351342 701616946 988559564 892315261 453283646 904396792 890660916 366577403 767710821 109481539 94984506 882673127 626197112 206645825 818766347 905250087 251170275 466787759 634978823 566696821 688201572 786188362 51475571 458406602 472135529 324080188 127228289 70005647 545539142 708401571 516423326 948530947 789475159 19852961 382634880 555361742 755096619 449484391 436953451 880738462 143988314 484857300 798133725 359940679 258503028 201364842 82521524 330581580 56553248 673498179 225545408 151982722 801470631 888986810 94190704 159873712 451873289 746708072 747213417 820407603 321616278 974749052 886893458 97778555 684847798 720360110 262370977 919378258 430563416 676944488 574645420 254903230 335480770 447614479 58804589 898629743 479361490 269824853 575197321 452487230 28811676 262349664 849418319 914505583 441966746 259671055 713100792 266380326 729770275 827755827 935439761 709160265 767262653 665252741 716702035 487024746 797683111 564932015 615267219 193991689 642605179 555379909 289465709 989954178 38876634 333536593 144511965 902650979 706240789 491224032 624800285 356386806 839384419 275300572 258187696 375986404 616960628 448640588 582910066 11016744 628069113 293724453 104396637 658203838 416340953 683969707 36767183 623140900 978306203 9375133 148555063 949701874 89724952 719575077 369997667 593690050 912103409 711024928 840741953 144936139 593039614 621419556 194514059 976461253 307282569 615715644 386737319 616354557 914644455 851380830 284310342 870149755 175847154 757482370 818520758 533592407 592522066 35942899 845365266 12959071 816953842 392478529 684827118 958159482 151347648 357219424 917811177 694481065 794066345 898225038 427620396 142789359 791821610 526193630 331207296 856181669 984183210 268463506 469575231 140128228 206758253 479716323 451754395 675387230 264658026 327358777 300391571 13347421 378134677 359187781 508194399 611854926 766344363 480550839 293661883 123500027 139185882 162074212 284482687 271874643 889736789 88308446 95940375 666917979 196247624 724700653 146980578 244334824 499108445 645204504 708489072 935928336 28869393 439239785 601852457 648949764 282224067 798436518 858145177 104980870 935472640 526895522 207822437 79199325 745750380 997924861 124122365 710522284 446959714 86644822 346489936 852643535 34572663 501637950 625866192 777803359 746985957 345165323 337301930 947412868 956077781 724004882 955106718 264440670 896300406 421238796 178850568 78520040 528620037 615368386 186907950 646334799 633907245 867942734 526992557 607706696 79828284 492444262 361202873 194130545 654497982 183990258 416203414 429270448 485686270 737155276 157067541 353819230 97630627 291641543 73187134 699201102 307740222 298607581 864069051 693287290 634181634 727833454 667997959 381849282 183980697 695876893 584281597 36989146 111157347 988438250 455843932 730298015 799326595 84009090 588194039 248025468 832883874 94352151 467827168 458844829 213545222 527424698 166366732 816869551 164072884 717665814 719069744 457569403 127987093 896016971 747523375 331802749 346592682 897663333 925935052 230994104 353260142 135384150 158578521 911608785 119048479 696967300 401650583 856379848 611077070 660570149 505122177 108332224 648295921 53948175 641975325 418103448 852121393 850088934 699099790 6440026 591524409 590140871 170348157 109015012 967591411 826892513 65130426 85303992 398101165 199284252 261273245 658972574 489089584 398870217 890893370 35180466 222215981 612676149 135071669 689445889 173496095 566956265 24007931 180506056 204970678 60839882 911180972 539027223 625292662 675409351 264546688 596683178 416578379 518772807 213558086 767650867 623529975 821710111 136790053 864071769 626807412 62687623 84996180 148921766 244352492 62627499 708081019 107453210 219242206 886399056 302262595 453641117 844067811 251745869 504288523 203914620 371057677 297493819 651642781 160801311 986049225 654711412 980269768 307627648 47808650 89359783 150020292 12355891 423248217 916155474 239080067 10933802 444812363 660435544 782687144 891759909 846909103 367560443 509309596 70518496 114023584 603788019 265345137 873198256 694780386 394796836 112086797 494162343 324308163 430872515 936243464 567898619 633189214 259092100 197837263 233012369 436019497 137654207 742820201 655906653 802168189 807437800 899409233 529870434 260885938 990545159 742275340 595821550 339166222 120512765 562630637 351121003 657688496 508532570 282956278 296513268 455263810 680112763 472790083 774081127 242565200 336619174 536830784 371626878 689579868 101777890 889013926 485692707 70320708 978091164 342785216 506983376 253030306 481670822 492105162 45418934 956992335 743146203 592602246 58025193 611743103 612991007 129663783 571428921 141144149 670850446 248482189 825464643 534081460 127885172 837299979 911226461 922503243 51743363 783531491 640794326 936863852 617414232 305042274 550616182 87049651 694796588 525303295 679576826 613417273 956528402 442787065 275092532 534777887 376418875 267194616 122314742 986766005 78515676 222042788 654826137 284165678 784437482 80603126 283404172 127275180 968336528 259372990 467886897 473392148 622248332 462696405 686971754 814328273 328922574 102184015 949584959 884152504 426409138 873502644 166495433 613508175 534436838 997522882 646577703 653457826 297921438 602969378 89551415 869320685 855545854 262560312 460067918 122142176 39116998 986741394 803008392 648927809 45961965 612749312 526869251 768154098 518198975 43238719 582258882 135694555 497894395 575497033 232377669 390219903 79443674 317466898 925948462 306519660 645050755 50545925 250092738 231878286 531680638 508065918 871150797 752213977 804205876 448402568 805625575 793721281 713861779 896728974 244375869 129721943 684959151 267774596 451026695 40409481 183580172 104353253 259043692 178811361 128350523 723335210 574776318 447654788 30203339 70008528 290749077 287523931 392747385 319020869 559475067 728904970 311832920 307065875 331261741 698459728 318534965 179984245 28211878 251282914 912886975 303084210 506410035 369709915 315160508 295591587 280603538 465531564 746048867 243609922 426429410 159692929 475441179 86477047 674522645 862540910 485353709 701910738 303470334 555717226 232527131 207416326 387648507 942108893 99720663 980834320 208317517 504073069 786564628 192859348 779923898 922115313 36613699 480619389 574393862 104987371 569183196 331916858 301081835 72250703 718424946 418753844 604150601 86343634 581716763 744109181 843801735 482791890 29826367 196877188 152950094 379798892 636817388 751178539 894106001 315397031 478416895 130823912 707421675 905536060 335840486 659832008 857531366 682353143 816502985 330336606 636425043 955524250 564600586 432076301 943363200 604186595 203398944 203064073 593056417 550815590 483254640 748757508 247374949 395164855 527076476 780910004 398198661 650082062 425216179 21908353 289208055 954612337 95075678 132238161 764128428 518881495 965784366 432717215 966193856 220719272 514431062 494866792 674147640 606712630 918767955 507327287 260175649 422403640 278996780 382105950 577714948 655968540 530733715 817691249 408018303 632828428 785230262 89803946 756873365 765459338 183309697 329441348 349536651 719831363 126258303 141514933 984924616 532259490 297540962 652799766 402322572 65986463 152865165 121086948 670754271 251057832 341321674 277890624 581530906 525210671 381019353 415937005 638630126 357569179 910324240 337781541 807488478 73785831 802378737 47454985 496844413 852211398 647375223 470216390 287691676 394301873 438015520 476054219 627832654 141794714 815454119 179709336 249182988 261584119 634775971 229185090 631626225 232051223 943241492 868125589 534774187 859555793 98517724 665992690 262634839 850452315 526094506 127105053 92683645 928475610 128319899 463570425 799682366 740651456 889963050 183505680 401144189 560346993 805291336 576631299 421143451 810558041 46365729 856831178 24755263 343173250 817133168 160476386 905656313 640945375 213024025 489551531 225917192 417689754 703389190 105765444 945328497 786485510 497904796 124253605 525996548 613022371 343898779 772033012 270776563 876484156 738692580 392465613 315411069 541646390 633899925 682897954 110933103 903945243 696328559 73990757 970352299 938442923 605510516 458195676 957272598 744230280 205960719 991382336 255625010 436112415 171027392 114720119 701401869 840843304 861756622 824574765 591045796 792458851 750881633 186057215 262741624 30292075 968139009 608579738 265703676 707825178 502295709 573557306 910617505 169606024 608144443 672960925 847365206 914482000 862435554 32746596 139391851 425522999 205726192 491052557 279503039 654844837 748804602 214391026 889912914 629887994 343600310 644749950 349996807 684359258 801262822 637963326 967925528 318260416 155971059 532405172 268113221 863999969 294087505 578087407 308485518 348263055 597488285 793098086 391591347 795534063 534302077 839081178 276634604 808051801 560202997 673492529 796704582 174871358 235048882 219354241 343334639 675544733 866450293 299891237 587344720 689792454 396090313 704364486 184877943 231386817 513744374 632550645 390347857 694447720 515155805 431033937 607109858 478854429 514703981 988771855 538552757 869393645 446350019 713081123 411406673 221616894 263426197 411892912 893121407 849658777 811552586 884494528 11675553 781757471 173714069 926371120 383996559 986098100 550076920 736304759 311505203 380427424 675882791 848619351 405428310 313236527 565455372 596743567 605959520 154719310 369618071 54721324 460354727 602222742 1045032 930410896 224696163 960095490 382387025 942003169 959396605 997287286 332140467 474552507 26038075 377787094 686078503 931806727 705701133 771344035 798259723 562097894 440733801 818273802 935725163 335403759 951849434 434796379 553049884 230535387 813046909 582416964 872929634 827009442 972838783 910554275 894060517 126751119 63286546 477935626 316119755 779276914 592019908 322741175 30807894 132986678 98514933 423339704 541172773 630618221 314437939 942848111 473612783 365565508 941058518 282731685 6092088 231032514 937457790 445306763 366320495 210959027 560738192 630108401 300694485 238612164 752248765 83633703 645006990 668972278 319835950 841133053 679364474 209721915 679084503 362951818 954177922 458490976 537826681 689434740 791356168 187527745 908666950 87910583 138953540 667408413 117179733 55119632 670350476 320436307 825197833 340589636 921358397 210901653 866049204 355880753 2369292 449725313 325114954 204840163 340337616 336951416 645811745 614466254 795071109 23174451 863348578 788863212 759774640 187985012 644989241 783267849 164541518 565090186 191832449 345179083 809725663 126163389 984996926 407475160 171368702 796271739 682306296 15455559 127288086 377126248 462617882 551462189 902391472 600191913 690369067 466437457 543590689 466258283 451816171 973422700 746895573 889346018 938639254 435182405 501652998 990182263 386341367 715985500 773812251 264614088 126913807 982851417 729507296 837606510 689476906 886657774 464694482 943121988 753054535 58913393 336681042 183602057 417829953 639022995 242224648 441923620 558599431 420082559 568728298 393561520 588152810 366663573 477739390 190244035 42778173 645119013 284318060 913353678 141325302 122125576 391609136 893330023 367982364 956509713 536676335 726309279 749444973 11052583 72728385 683690463 468879509 461602443 201631984 398358468 416452338 41446444 128133320 480885119 299367616 157735741 529668121 517068010 571398659 503012693 366435437 780170649 932214018 900539157 388744581 520121564 982929810 531462911 537524661 750622910 589816623 914033683 992666943 961964587 428917546 361640737 547205038 708722031 945018150 99185290 42381855 466423692 123046392 117299828 315844156 428089469 427111307 111310708 444306999 856706003 952417318 727665720 183149717 915765016 405107672 337983683 450432888 247624757 737887870 588098018 163108250 688543214 534721643 214504600 74323594 250968912 743019986 37702239 289572354 941440591 633567747 279382356 549401350 197401961 39983980 960380561 107819382 679559784 907584283 285422792 335221643 603032288 529816946 857424237 628760366 100116143 268048074 746971137 795518552 850890706 826329378 817505063 495340434 743459217 310466267 580584861 319266041 716708836 628672701 631493285 371846176 157205777 932430210 359024644 974561236 121193465 729959288 293773673 440528431 56451263 43246457 185696024 831467282 874067330 983675665 500214187 166389293 603528105 556059286 442747445 372816675 973726789 867202194 248823344 647516204 409369194 320481307 194015526 93761353 262345770 364677624 334358671 572832344 868083020 304971032 160171959 877216322 175555783 392521513 878957780 739157764 320343671 156117352 411765156 394893862 858390256 228359349 977197784 138338983 380491152 691289829 977942444 508583625 212993414 910849813 422199859 787403307 845768708 604882004 341403516 859362340 512797620 291098966 842598564 61268110 207232312 938146108 993867289 446537830 894902793 432814774 747821374 450488277 963763972 807050457 743602316 242861825 80084803 670465859 696825920 710818038 220609097 593069508 429147027 168503148 571949370 783293193 233559010 326496163 263051084 868866362 719286533 807593083 431053558 400508144 811400191 231340225 120987795 406686258 865242053 513887386 43236435 455017678 289122693 596754374 233483704 176208373 729671025 298304228 232568951 519449467 476960424 404506678 802797640 943770086 186331065 473903927 791041590 333735453 34297640 115300377 110036680 949018531 966205962 341266950 421042022 27708612 578018052 457969592 409058095 25850143 761232786 169243232 331248850 490213856 788896081 433829810 170329959 242055033 185434574 632415568 824892278 671525025 830624730 431593586 128003000 504869357 404365568 553000344 855452155 194655166 985668298 840726918 151881540 746134540 164637654 21447731 832739915 906245277 466683918 907967914 473204554 647635742 973994932 803239587 256062191 389587212 782149279 195564190 288427736 415018660 879943144 889520032 171822054 856100139 561475076 38786111 551208827 76481708 778800602 90705191 986321368 162065775 460689226 71729205 296132310 970482313 171514424 647312021 63581842 58108465 361910604 864132467 93759403 274572387 709157088 376547068 697836820 710071153 57926958 33939346 830683187 408813048 652429291 246404882 132498518 352729530 540969952 537855183 91038300 382165256 943088339 957677620 964332462 834453567 252681826 402001305 609025670 904677536 86808230 762983096 600329849 386031683 518740007 862169278 592751225 910855561 64740773 564473906 925417268 910732746 998939898 409844340 217805850 39468959 488049269 913241420 547699194 905546236 818950055 995629227 764372504 777267977 496470208 793570745 18326319 945446863 717872695 653522333 291037573 46039579 54124093 794481098 174473896 427789386 365508275 985974651 94023586 189193197 57802570 746810873 45589964 265724257 243229118 265993507 521372610 355064630 133814683 995357650 216047525 517015564 155489969 660058263 731837961 865451339 802984028 423751395 415554105 219713900 811728430 419242298 441647470 543394215 530876215 785175614 512773638 479472652 132423603 961299419 948118241 761284734 908636919 107927079 374931643 115649149 102065925 456959218 448534354 906321253 17158025 814654497 514041972 573722514 946268231 738311720 588445264 965747573 354629926 231178900 295134529 697151142 717679723 458293539 25797709 143518830 711624350 764389007 672328260 807553908 953664125 955491904 26180354 268284689 678570621 147855234 545394830 445735269 610419726 84799494 196456237 572794922 69277028 301067972 644072601 580204845 502814585 313425306 863554217 484211861 882991738 42035399 850139034 785674497 143081939 395287320 7671389 217135369 905075033 342811756 367067738 30423873 166493915 256484909 470595889 634517533 704033014 233499310 453396584 352252623 283275141 272798423 493824800 638720139 180798242 380955619 419073123 931904387 52336032 386947887 202859976 110010025 210045505 147404626 365880059 773051405 758940709 506482216 621840676 343867944 241635036 861482664 716213341 76291810 513929762 49792492 484916063 13111520 892140263 759320723 629398190 440416429 47465819 865728780 574513021 628787086 639837997 29839718 329001484 424253212 535367224 261198780 882522119 145477654 448626666 968048911 541612122 870388312 833927312 54432039 565438296 999383438 421150908 206236672 93334566 868227327 877487619 774801147 978913867 961396842 286853363 420199262 584625604 744174083 363135609 242208691 393333519 933538735 635144391 475186222 735909490 595482642 650860875 286414410 187880746 550689642 49026806 32455319 633776003 162904184 347097886 317460071 515088625 564357309 462529818 551011160 82170764 785335793 125878970 161699789 398826191 850072447 918392873 511721831 44767638 419450651 240725474 800298004 175054153 786585872 544592470 343220377 683115134 608920115 636342651 880604931 192973470 469721837 195443515 636644413 435321114 111668296 225006498 652659910 256133240 13022750 850858390 297299870 245985104 741359628 207269489 712065061 850369605 985948027 139631758 442276425 956520613 822268352 441335864 212789755 987959095 414036215 744421767 690703674 378099947 251720088 263743107 294153345 855158134 991194568 982683789 677337937 943409763 800781409 444316124 263865740 341990861 118441254 288969314 827540151 836940479 963976557 121492749 778107714 674150529 491400035 216759747 746918041 482929401 375139621 414922666 158207363 297826954 262859813 224261608 973977081 431613829 931907742 590956946 489210366 891666335 393301672 232865597 583438144 567101458 879843342 206768681 291811046 316677838 637704788 368884504 304870901 411764882 654526348 570840250 350029102 171093328 923937348 23517611 124754225 771377330 269280291 744254780 152460841 152338569 328694119 965374548 94836003 918678674 784345082 634832238 49024694 762652682 642900785 174343122 668088269 11473911 455319305 777149017 814054668 272575572 692021845 796320414 288591110 238083355 393150580 533387142 261036987 365917240 222111789 193218339 741891048 16888266 846263189 447311837 432117655 433804582 182935593 833901724 292675901 315753083 17851798 865981329 663913925 245704531 352117499 733208684 152683600 49961186 950158551 698561109 224051579 697130802 193971343 719235620 831274470 628258836 557863278 188043169 242845543 431905765 900017610 812409078 438751535 208467384 712112475 847177818 376747840 736433119 69335594 190854330 251533105 641113438 731626182 85937575 134419115 388484283 195791265 280461710 990524980 117960631 476597123 119475664 517539892 487593467 100064556 823581340 49790147 25832175 854464506 954429677 913541599 821225034 979513544 318195878 479147989 252385871 686320086 679713252 763162084 514453654 628807586 588865942 857618444 363222289 390045871 778174287 604590314 304592225 83692804 519341566 872479497 681243512 136952759 5571843 912825107 318638686 14102915 464823632 111545178 424090644 563241771 423219909 710253115 449794176 482865241 365269379 370029485 348875411 734502692 908033576 300211431 668484070 56196537 186216677 599602394 649160929 371211832 851257038 154354597 144715328 801804286 758649194 167654657 265930860 616431016 33677660 137030622 922322682 101114780 502994420 375318918 48180970 736451731 296964065 667048587 706949287 921052920 303716319 344202535 242287803 206768765 202424734 457324455 780890575 492125977 461681323 945461780 293612640 695381392 511366486 143092641 486775821 31571699 453860082 339647583 153211464 162967605 575456768 281849548 389829284 230813817 732740810 925520909 617144296 509191236 686971566 191629334 499529563 408866187 63131207 78275859 139416442 709813996 451388607 611079530 965136435 226564134 604232594 421515722 849381948 240949055 870666876 738469624 915306623 630965343 254181799 361148458 843749854 666486895 31594842 863928401 471138054 107550119 652182510 319187732 347666740 578066142 244560211 704135045 5377707 339821067 764747360 635209274 172354992 458914688 681242967 195934028 385202874 991029728 528403157 284835205 966251834 6226993 122356984 796375179 496032373 677443600 18432528 164299247 354442301 651124498 122877613 420698701 341567767 260878498 272237986 682625650 113203438 643735220 953973500 433896437 871999965 217620110 437138778 858696157 456825848 275610005 40265292 896437970 462568578 769891994 648856790 33342794 711134076 758270724 316793609 270993986 604221575 412343631 716637579 378989018 831736481 955108966 41658130 113416701 229294451 887418654 585319736 95204606 43536 394141516 112621072 119817747 324584607 407296607 799260355 213251646 149003084 148540959 56639224 824679394 67742997 277248678 259222063 717638372 134354905 573493149 307905677 834077898 791358185 37844387 230393625 392688024 378636558 512623921 232441344 316858820 303451015 224689745 806594334 453222619 132097388 228628177 295565212 909259297 226864796 635364053 916802817 599121376 746068187 274417129 913387652 43488381 896173983 867755172 276262984 217926557 888307623 530728315 291434014 212941541 847637984 397946601 575826032 809365482 930506392 956055642 318004413 783260374 217021691 131676277 736802616 496920690 601586668 49700374 761465790 576545337 151731988 26076085 781716981 680316529 70256245 643023926 168668582 236302009 232574475 917930854 32591354 335792018 271572610 251557058 965735030 970314542 818636263 461086963 879091709 681919239 354544202 758093345 992634253 550676545 30505617 923613017 781109822 30295754 531034080 834736019 501039808 190052307 262217028 526305764 524022432 589219456 555637603 598030369 75123453 863964093 207396681 75807267 15072659 703384776 334615557 583554281 281432503 5150492 762882734 96738857 514102920 8998042 265486716 966301065 253259732 337531838 144597566 486832292 637577744 973836777 530429042 21013109 789704594 457584308 650960896 243854534 607862022 408921565 218963872 457428442 597773595 746224019 605862024 367283065 330835378 347825994 90223774 933958923 675467590 455365210 238550833 945498550 927168152 920451180 622378143 797585569 261444024 90870813 738443896 928285459 865129779 511485587 267152875 996243347 619002508 924166427 425857458 153100610 795478748 272539171 479693611 475977515 257623207 707163255 17918514 81155860 536438547 560049664 543825155 980721474 719858122 379144868 679702169 136223023 73855567 137129512 730930054 596274853 43515348 749943641 361278069 615895522 904345855 904058410 91152818 304924433 280565260 343651532 119689682 358797120 676367377 649047748 619731784 173439409 815163630 348376602 202897020 830784629 273100285 899599724 908328999 233170575 56812195 151345601 503568459 850160549 724585931 750904739 605777438 259078210 709236923 58630382 770477713 750504419 995494277 637032894 162056685 536612820 230438810 469939597 965860977 431997485 719469939 403453394 137799106 230909748 793504098 931408521 275607349 189425977 956484670 800932387 870323852 193386208 195042910 290107753 637561747 577470783 750137061 355742765 343553843 268484104 643308027 180904569 273431195 783930521 101279942 801683610 545420428 531962349 710312632 463132292 8214 855234661 272114774 554205185 451314010 518501453 268151887 893104376 454294415 763860715 519322017 783878404 978512827 360338094 920632299 130561658 959095171 72064461 115304477 282811374 206842239 877770207 822216261 276853610 773739290 864407881 633021225 324099865 84264956 812483077 279407978 477268535 808206701 235463806 928568837 244440787 176043257 585257615 244700296 562134276 789228925 378272831 799741725 995740173 250894840 210593167 333441769 470434030 621709948 195945019 722046491 754049430 314777441 897898603 750370714 930802972 247763538 839318689 40727738 333357163 8235737 850333057 615781800 808857544 523643889 684229312 537875843 790934385 253640932 504725574 425471387 287487082 301410962 863974727 646344511 23459928 329350452 772705405 9243226 469409202 443178321 941887551 500778620 150463989 592707273 64080693 113846781 285482328 467657874 480728543 969551348 180293064 558811925 540811514 174423536 308537877 272435734 192502540 196099518 969974074 409049023 648164257 697582368 377421719 146497119 314746647 373210873 903565951 175071122 462774414 111504635 973223816 807807096 100519193 274657284 326896707 517143989 345406352 568095120 862866331 37865422 300679653 72958911 418022965 806288717 374793653 760298878 659844007 914189603 397795445 275177575 22853524 810848517 342432490 776288040 57609241 921409922 827779264 765178263 762749836 845166248 861475229 241765425 248215781 755293058 375379830 859864952 883021260 820975282 886241819 134906853 295591576 499075277 447771868 577667652 174971461 94681261 809997354 864587088 815556269 696021461 766584601 679046149 756762244 626759730 242324666 567919026 951852458 2241196 327746020 148769201 943254462 519748981 145302196 248110180 374736232 695215498 468794591 705179912 634469957 587539276 897854383 406423353 5006454 672732915 396867632 298467234 415152323 302786269 565150855 960239890 510456138 727001911 655404051 232037215 244260877 57173593 432344302 856490408 506994939 651372456 631968990 795677406 123068836 817340416 288960781 422345736 897101886 183243719 47193054 123689242 968530339 49278396 560627957 282967728 848028458 446097006 864353058 102744864 766672511 774190514 201169628 264086168 928961153 998267997 544130523 92534573 450257519 815584364 625002672 543800094 282841300 308629556 489052368 780739887 954252540 437978362 961714227 348019405 728034263 539230002 66806363 354263472 608499822 758908196 840983348 423172381 864432733 864097128 942413053 762260357 666593170 665468996 646054317 684387125 362220465 483200836 131642351 733588041 834225263 325302268 313603848 619953257 832285170 81297828 908657032 463563019 176435440 577514897 745258870 333169168 334024503 397806957 202094306 193846592 852898420 563722396 279723324 124323601 339391623 37956583 848651289 893750810 226091911 73421947 725621896 957170444 15156891 548645811 904638336 247949956 9401031 366576921 946949821 242008583 458464949 262456429 443968499 573404517 659324916 275857349 930077981 953381870 209721958 327550859 226758859 4073411 731792485 269591173 545340236 685727806 594723219 170032750 931845405 208121063 519662189 539965662 766706591 794595180 240643861 688429214 376228259 731579192 175379460 909872951 196699810 369211209 227521594 864615803 208918078 476529066 329790657 288461489 168702873 842368937 596562214 653983885 376469265 127223175 830269473 575878654 746367702 310668657 180680268 70139802 540710301 147803284 67796861 807002737 802522648 359610742 966250804 919037561 263541648 889286591 328594891 326276795 412137974 529780865 298548390 302788586 117290558 10382943 732425579 53458486 998417079 448275763 840930106 204600327 568149524 129953679 616648764 764228026 275289004 866590654 271140471 422213241 97500505 289824828 969224294 396491894 662935370 37353062 119068354 318557985 261020389 42219269 850756698 915556708 571150897 45653336 592180649 997990620 420719022 222242529 786469379 502240923 634083253 687551174 427800094 34515906 851356040 765484652 324883267 93733952 236956983 85166191 96735957 593713190 430191615 520402964 765471626 941262223 440815454 958184333 33799348 445715967 340678293 348931525 484864671 325941318 247606367 425942070 507982314 433039292 618590463 721209927 574710273 990985773 69411199 846310380 704117584 333548259 104823798 639636506 936045026 798019049 94172890 755482787 754257029 928202750 960048934 926105421 948489938 816660044 575197150 184252438 830482560 251100914 440944424 72633095 834845544 49329128 387363451 919833080 125111618 378310277 199924154 836730808 178821333 819060405 377924876 108131632 354082742 735539986 866133415 489441405 672064121 968656862 831682811 660317383 892051386 142654568 380418850 361157511 472158173 511269947 884324636 264626432 983222764 30860948 288993882 447766386 939984486 277042278 936111463 151605811 260514455 30117439 642865598 1480473 850410481 393281538 357904235 91538830 311381603 732419383 651958831 567367950 415862484 620480755 706392612 729704554 89604469 221824247 439008497 348424677 743088766 997423079 895970931 408013975 422033694 851551128 392456821 44947125 208215765 272821588 469613606 469184897 254853102 307306624 498512522 337674662 753820523 880297037 729402488 783664898 930096372 567759767 86841532 993270714 50069443 907056062 631960573 117790892 708641837 865640271 551461024 549576915 475133700 326761942 950579180 760584191 31974655 856098418 73035655 107099976 394658484 700958637 17503671 248861486 564817001 691693242 451846160 382214334 298647702 228611070 304650716 418716452 453212304 722636835 193227273 347271669 358355218 777690929 313924750 339442960 345840014 21977662 263132048 189514351 986103291 431447724 195292636 391644745 205787131 984189571 796761423 212700771 310579643 84774236 714303980 110520285 354395055 794615601 900505248 734363231 877445503 111009236 845715473 484820308 684497256 855687613 918579245 15410263 24389186 586964259 901491091 850208699 373325714 408592781 51885373 932532375 393291957 80331948 313441347 980857029 448099435 641814007 654200818 511255058 467022099 593224153 691496216 258994937 106455168 344942397 752277400 763098556 942549766 947276033 267656551 949542781 212719374 896827596 978795463 15447571 392392698 489604435 763606392 646731812 228852259 170553756 901493824 929825813 64552482 810178971 147066611 448766247 995403623 203005716 652858332 545049689 827258203 467904625 136892808 948018273 740756870 402225689 516755229 45799531 238272114 146640694 530112847 555262175 125621380 782807870 72827584 779742088 289244691 234160157 413355755 695643762 883056986 326995740 724402833 800778459 111575431 397394368 169801018 293855032 791541474 186152928 389227941 626248372 38951291 497242273 151177564 213002706 827222949 215529635 678065769 918287183 945608345 608200729 354982438 984532304 164919987 316148251 493818264 438332219 673374067 837410863 688157823 807206964 593882773 640745747 5978416 986341514 914034497 693371741 92303367 367333912 708332952 7195417 206788586 726227448 858716634 178470441 16235959 282988972 977601726 465066923 307209856 632977734 847734963 465225389 868674280 353854977 9506704 28251630 491427554 163217655 917686810 784793 948420044 843725556 630152220 450563293 147754661 54104310 725414656 496614014 128977305 875821938 77708885 647794812 920693775 388101100 667281821 349284370 871314117 928112028 105640647 309822650 436810545 620946750 732530791 414936290 665596960 73919537 591959211 861537574 696347829 260807087 815290069 969736497 440805713 75799231 615264388 404351174 774342056 719676735 116623903 340619873 883680134 529338738 809412806 905361618 233926562 197303937 272413320 442905439 502949103 361574839 796772992 562663467 223136886 995898780 534244764 55954338 969369539 725983947 243042891 414969130 471878001 61479786 187130173 387222090 430226018 539164846 944121218 703025737 977694256 325708883 848007120 781521309 945571661 284580779 608509679 628486408 878182294 790179323 682605405 618224278 163059380 634160713 470974310 55469605 222751685 103747998 543662031 119499428 463829094 193366179 535520488 795226031 26828803 172522318 614332617 229936831 426778767 239315818 497744850 110947674 515120117 695059024 176156377 582308898 830865464 740272033 414382872 689413313 729811218 805094987 919404159 662272042 903396550 817465472 976544848 900485228 924161024 527793673 513123581 254033693 873061400 260534241 758148053 967793803 704004420 797625972 634661009 643383858 784781758 9133718 503968493 568390543 729583769 264545324 962453381 871600733 348720821 370733214 61198347 296312643 964041054 940046771 765937482 900109231 185418423 934005354 591990534 450489870 388063826 345019221 874946017 551909333 238402599 22528312 211703387 984831557 505431732 835536615 390005215 750051800 797041081 740363231 462079687 391587255 205188823 763198200 257186151 758116329 646510308 821895417 679079670 131626671 141955245 728100105 499705887 743079365 53895017 710518415 29128719 752707233 576909073 34303636 684896754 442657994 452417975 903181574 337141684 17718922 571878991 22543506 97133502 877486239 190972043 312376264 836491205 985541508 608961711 53045883 807923360 617863996 625062633 828567455 828819951 267994617 436103094 617624815 104537693 993792297 213093620 591318719 120227373 66365080 274728983 465577441 214358733 173510361 160604289 104823788 818454853 253418865 743284825 871799662 546680772 664030767 883779957 468289647 51790496 586715882 713612677 599302587 260195291 425704174 50267504 360147883 194466700 545522363 133035312 445424437 26222003 565737900 135684021 217644216 733970265 561722190 575080567 154759044 412364260 898192814 552066885 957121488 717597446 663590730 347669912 440558309 18481490 558207681 471026597 259049042 597299083 560675379 847613598 454212575 678996709 994099952 876867340 274120980 579174568 888958785 995277947 191572256 277965534 804258976 303203353 212756234 55379758 240174926 300168510 904655974 426487557 491431083 886944752 824120715 568507272 796438099 115013667 654436490 464616160 272827848 224476621 928385365 708454468 572921527 873460167 621322020 919094262 73910227 699509487 828943554 280375018 892383202 292902836 503313316 608372573 930028501 392490894 870931611 47515472 33410785 223150492 94553036 481150061 229978081 575884994 417222838 652778217 275271625 245552467 51367895 210067057 674593127 413964604 19357377 691825495 955529545 954291291 462370448 757522519 346785230 513215095 84469845 842566152 500880890 33589602 180786537 90162668 509335238 62481325 726558024 769081707 719333815 835417374 853624121 865608418 493536916 264359150 312188646 900904715 448309592 409390043 566263353 556967970 4139157 940273117 280766565 14188552 851912599 570752080 365419417 193902235 921839693 55333760 40939164 851043643 31778811 469178224 389380857 929819947 421235900 123084500 180932220 205886259 188328456 829125568 917625261 700470487 920330809 544845435 951479723 295504590 428407413 381818353 848598392 287961296 785342390 402644396 718991057 413859063 381446499 191353871 887894252 803516229 877449891 397023089 679328656 129470405 737824819 515253932 949646676 342115829 33198513 364079432 144498987 94795672 962491039 376623881 751099139 827299832 825787502 501481794 621192470 586848895 274089294 307203590 120834914 486322382 452417997 925036829 963588793 552044588 454424337 706084330 249835065 214058298 242493914 597931997 155751699 1927739 191482344 121413962 983823461 843994977 680477163 629448240 940534965 273897868 886938079 107339697 773629353 921604827 152396236 765064801 447329859 304373246 878101215 399094122 164281864 789720961 176979605 466391117 754012121 981664626 915320344 747234750 684265902 79233691 658973419 570453154 538412532 801485378 297449036 746901233 691965521 151761582 157475141 414527618 277303342 71099375 331864755 145576701 969103044 750999973 23929579 174681437 558793893 325987758 776087459 74114392 665171265 406243620 889834099 654934147 238850745 934685883 422470256 695361230 883854114 195748302 124334336 908412432 387136040 511928909 783057316 294894963 739583611 586388300 545335574 1670766 894707532 746563418 577665236 799103444 595552071 68499977 996075389 716534597 822014987 523932365 799457241 872171671 139601036 397835036 65231036 40024620 687134121 584764899 481816882 314922725 244049221 914162076 75831450 547121742 300167088 461808710 352874247 446077011 141038430 619130814 150483654 354901241 34307720 467719191 319951566 652185205 253865432 985444868 817948602 80458803 313081665 782306325 525280684 940344497 752738475 734796702 122101634 351905792 729229584 611861621 709704737 396459641 510417596 690140875 719055024 466251776 549352303 70258975 61996899 772261468 315268145 954811475 668645421 756021104 97941560 598586331 846892055 606229050 707078460 25039786 636755454 718114645 948869386 420574704 468021703 650136154 706289116 452974877 157206163 830600505 5507707 580955538 806909207 736854660 857470574 810809964 125269806 847565695 416214333 674238727 576795191 627871696 166584417 581870425 816656943 876596331 895844598 766358558 314262445 408743767 328253457 445441180 618965368 808128391 572915356 443016569 16884028 673667015 743780966 183361737 317211920 520588467 474747003 974014954 116839899 447484345 54178240 432711048 218528753 355460580 201337192 649129607 90126228 91323787 26314082 927380986 735996737 781151071 905414383 314841301 390488527 872569575 810959229 401823267 237954262 827132173 754044375 308129281 568144431 963551989 80676685 388698580 807201516 684514812 65518874 352151830 37372362 332664174 55838713 986222004 283721113 210082963 946996030 747808144 596198356 334305991 819229977 126308963 254848824 316005889 717315265 510730111 577687261 785160997 939309450 913081467 386572629 856264760 388996931 126934189 576700959 755179730 250420426 317772256 361283432 585851061 468755700 561184506 363962774 207005307 385622972 399166981 957126456 560501697 60619004 916686740 579934596 863214664 389388974 647549035 414689962 141703652 996339112 244329179 803437588 135672857 2207491 589139399 768894552 354394074 822381464 466700379 646345940 324691741 803596704 246569419 81137584 79740261 850926986 149598294 760551847 954993768 806657775 657803637 902211521 632783620 296442856 560797822 883708870 389740916 389787347 179387590 57280582 432283205 539898975 22071399 716322087 6594087 932345196 245048369 380527964 960331066 113988222 274230679 147427987 817935907 233494805 37002337 572506327 197573989 909578285 693962636 74080600 78585021 774875496 289535826 883060515 354820561 114007173 340204317 263635773 487790511 43328491 98640886 577398575 451449066 630917972 253446503 751445424 278621574 982338530 138889593 608126187 515612194 476795836 226817380 249490899 419558571 241254401 533175605 459163009 197451919 707109296 149922959 202997507 506643086 546897472 102320436 714106312 919214389 286780808 611386988 500850841 499184695 511319980 62683264 673058868 887444160 498731183 384420570 990857999 202209766 770047165 261199659 462780853 847593513 30151420 925346299 278911484 766051551 402953008 801657870 929653506 663249204 31082395 340051807 683975095 811777104 2047331 296622392 491142952 91440210 466895516 519787846 9289316 211804517 861314489 314343766 812439363 290626092 394955591 981917375 279396360 727661828 777180500 698152950 699243220 822498036 539053619 316053731 368647147 824324085 861794654 556951922 319135571 152277636 119018979 894812107 759780194 930910304 31081536 653024459 74596563 30292587 35258608 915648680 682181226 532495880 348578645 938709561 64700316 987581169 161208732 907284020 23485882 40469765 798901866 192625893 242234011 339936646 497390844 210323387 101424001 35189403 127808125 739931762 898327350 887584643 232057067 108138238 174281142 315854478 385381821 374173519 986657186 332714422 685688601 804535564 899909260 939218302 141188678 361521690 709985793 398428935 90628791 323712535 598963443 799429265 947930283 975097739 198894357 751948694 172712689 36011328 352259377 328238816 976624604 555061877 753795993 64155691 944750595 254704108 855127539 423324127 600010123 356249624 658574547 750770055 922296357 716315154 532114373 668442435 70836131 968048607 557165825 567191841 542191391 654110000 128576441 217830929 150580405 810122022 640236590 866728581 156907592 254137526 666410101 287474787 565265736 580251713 97032617 996465345 218307950 706725416 518485089 983763490 354075337 928683616 489971491 351041871 579648847 386549678 957225309 846741993 354709218 720117922 443628625 433935655 618468950 280816829 868423399 890044877 562620966 868145498 519028769 559735586 374781107 744126171 511116485 958498169 397743907 350909 339006567 717503346 98587866 957960031 727068833 473978508 269222297 580594592 61721079 479602812 279230425 405944714 531071710 371780041 263171393 979154580 411365357 816965253 453382973 778129606 269497383 172637299 83880835 855870666 513082006 742468129 185049838 191390050 890659211 536937387 949168510 70265073 806290213 347147417 659329059 679928367 774009436 433257607 1442057 194928441 304245020 609668112 41392621 559317645 887512449 395267928 643991709 227641458 565557054 988020146 712292351 369403760 181328301 896682659 722158039 632388947 834425399 731958388 803103601 684503679 578759425 604463873 461769065 535426484 917669730 111340079 652863509 554869389 974573309 898268150 396649624 627484714 485243529 607902851 466687166 936779557 454754126 515686606 448773886 865425669 322496355 547404470 965626876 110010386 669848917 495503185 651275847 252369806 631219332 688217475 241356579 654745266 859257138 153796547 893112572 394802671 3882781 88258423 612757658 762293730 473854880 331263255 606426049 234047687 885005223 731385288 880905757 307401164 774382397 793420699 730971691 100534481 449074400 886275918 377699677 347044742 751792773 37089301 282296860 46492002 641720057 503415022 111155355 397899202 99657206 287153379 24442774 764137712 71813940 697559227 977140275 678787427 131438863 697844602 351662635 162928008 949246132 117437647 303283185 524990006 177625441 77366513 185280488 277589555 991205544 536193930 680980418 658381793 525033564 119090350 640325119 390297167 330291055 797470657 860369361 464015750 170029365 523293079 197944008 69709388 703724982 4921893 572543620 897833538 668940346 642520273 273743333 85010100 237321304 290939836 848416389 787080302 132627872 398866437 935291828 882485809 857281455 21397090 242426822 582617991 692662530 554620377 36873169 779417099 981933034 680090183 922149266 547206373 579729628 31518656 853936929 365954348 583010346 67690842 603742733 140291852 481090630 214425596 735857561 241703868 272112194 280222510 827650182 62880087 515999628 583603143 238747804 799773613 685097016 94021396 638856313 230457078 8060048 550537913 715213285 836793058 125604451 923167842 636308474 938237550 29663999 999313638 81525700 841484175 930984613 649898641 433617016 102387117 786447764 121327325 135530837 650588636 663236249 105011696 307254912 983682053 84021548 672222990 512456784 887343999 694805941 237489630 872172032 230203132 88727957 305410758 638088227 467338161 821003826 942518074 835379794 855085698 80460158 931870942 735997228 69061379 189811620 834670054 741394541 922025961 423025267 404192615 174184888 856808535 645964055 732163676 866337462 789257074 404160118 781899407 276915277 427369216 907751559 387852691 255533805 483733421 371987325 61524214 962269636 934438204 908103839 497563448 531279269 307242913 323610027 988732347 343035321 901707979 513753566 527370662 859698281 880958255 40736015 371009525 274084658 958469936 813324636 483723211 424687730 984233545 838860766 841135656 245636962 227327881 387488893 1486214 109864062 220695884 647872588 857571274 644558395 845601155 523197420 549766914 45842430 126444663 506578304 756110105 274465822 868415609 833815149 992819037 936232469 447166310 762453543 265624052 77121262 841384536 253931727 256763871 782093163 399485174 313186251 15743464 759434089 191307500 386356203 900035705 980447993 505783171 163598550 118593613 751936240 636820375 13274234 218084991 49671951 840060444 380749854 727114790 933058522 981897091 482263081 653129698 210086180 140352999 588495701 391396523 925954826 152923370 553070596 211405092 491333491 980059901 380542933 398876479 426994334 552199163 363740922 995349863 948408695 958031162 137248556 923322871 973481278 370212270 610488963 662073881 169404888 393006121 264194084 652091566 806855249 887631649 120997376 88441393 15387303 887041172 674609787 695918417 685992384 609908651 418781304 983928471 105457346 198787286 94109204 195120884 453663526 837252415 891348505 645654649 473217049 28965597 189854529 729642589 637702416 689504432 412494970 848130933 678028844 774154794 723213209 501186799 650543548 417962998 414155399 152729399 424317535 502460666 348218475 557088024 17034898 630370454 312538355 95666508 823742858 420628702 170298851 294004743 95774643 602049785 828870701 184682156 786853441 916934028 919688311 878598224 862579010 758517407 126396196 442239710 761600299 619595244 410342457 396580068 11987976 121004810 375286122 118613196 365767505 822257587 911416926 263075425 736665350 202494764 407950419 752927648 491276050 278801335 837242545 865513715 564053173 464303773 625761425 754830662 550767633 410111807 492858127 969915861 375394462 54952257 957030182 768238939 526392760 815165066 426910591 787807295 242217627 951647315 793663291 196361807 859051453 32292272 224838792 370261107 211575603 811305134 625279405 151977328 148136291 363985863 595388813 285747864 203985228 183730929 381909963 510469040 369511737 318132543 17467682 955737357 480088712 288553376 503680378 444141546 847284926 674922051 609529422 534819810 792900563 959791455 268534594 741095529 262856837 778329539 141646143 544263498 310568113 24419889 144740142 952579703 209649867 594371455 364060528 483559735 146363662 911922273 127024499 340024603 401544012 148148127 173763839 153538358 346641086 16779011 53383137 128344224 461607141 675176384 835841085 789749296 948142345 736010163 577243541 790898572 275505047 722279782 761100253 819360277 463951082 202800245 670547435 997401914 921664181 966406898 345860999 383613126 976550123 317883206 624474197 553951782 479542008 646601365 282279512 852507810 564762692 891227198 512298971 839401610 107426522 209114642 987104353 440624617 855703989 604082558 8686325 612636256 149864425 389512276 340996701 52749182 998837697 843793019 361982727 41871930 449327903 179439790 682130934 993166653 374593104 50065246 844173228 8938566 458431199 869465617 179969739 463007577 316168573 422027839 500024560 282155645 164357110 638743952 88455705 738616064 662025926 452599468 884657815 372186329 433823628 639826961 471911563 884174155 462722475 2575604 777473474 215934423 418823294 438609452 538046404 591706037 664900570 659021956 986683064 413514480 948856961 814910119 405525987 905758152 382364414 124640976 281684296 772595912 14558593 133976677 472593101 568092710 660800665 631452246 408624264 722213583 934038154 474794798 480311383 123760394 951325466 611982484 876744096 913997943 224016295 121679083 589363655 485483164 492769321 735132215 597849471 478955238 536641242 93516413 128561937 314254020 904100393 57575254 172824701 902432844 684859358 326900974 919829135 958992719 651218334 734880230 906826277 642245646 436506578 209203811 872298166 596094059 124012721 755431549 109296732 642170255 301168078 65198494 432365075 570021237 942865025 908498762 109723586 632599963 503185855 839958790 432026982 232106225 343153984 286923867 351633742 789918721 456419826 733379728 573289795 516598275 490645932 557845512 999165500 942437192 584949619 645585311 465592913 107292105 740236521 851463993 654903501 556805615 870307122 906461321 856687087 546050113 603304946 137094011 539744600 545470745 331036715 498595866 749368689 708568692 289051623 90903428 738886581 913900739 475919506 908234688 136576881 54016040 481097826 652068486 760446419 368839909 267866943 275644594 46310263 384283645 355717205 638095688 914030172 325512586 550459964 464987581 980166163 161067591 800854467 505943138 192426514 342345401 519022050 49981767 82278328 292304486 200114422 972665501 325699627 807910864 34074677 782680628 109580020 435226924 132021469 731851452 289222606 514889973 188203816 208552582 526537537 924489757 363618349 137511636 99005357 828335969 729705614 429059028 937481061 580031922 859699191 642734189 844934540 19642245 785830856 611471514 440538683 500787739 629108334 513397980 69497204 748660339 779453032 743224931 690843449 998358180 295099828 885405703 463990478 800575692 51873889 202694028 651531966 940277271 391421448 464713523 617604910 718127449 145470379 956501807 682919072 42306037 167649028 298383232 838802271 415206871 112897801 833393493 907735667 87127659 602052370 557426503 256970468 616454159 840809469 702837174 695928727 700097448 559819788 954868366 151880901 889069480 189602150 511649425 490963824 994998926 414944049 459149726 535981310 99912864 743288440 844543762 986008838 210170475 971477063 734518723 732264787 640554259 925723705 676115527 255067566 126395533 1650346 98987018 552471406 518722759 599510112 436007117 340222061 286854848 867878313 192687513 371756787 840756982 804286162 571382310 570639700 805350950 904897141 296797271 541292068 348509854 392919793 451609732 256834551 831875815 592112040 743382657 269426607 862550428 194607258 375656379 14999903 183024278 418129514 637580714 976952944 43501712 122474142 800907 811920133 351996631 196190352 480179886 176322344 320780562 644090711 787634499 573360072 777603477 406295064 707228219 528607050 844498441 32597289 784922296 899798506 720123229 785467149 618703412 178130980 72192228 73126178 851422605 388980353 454089228 267405167 93003263 870497188 912441485 508743933 937972258 918356405 981915103 784816981 217634289 355112692 379065157 90563886 823871455 59018251 588110758 699449302 513953333 819579268 867235245 626914196 835190225 896927280 522883206 949136463 658888989 845622268 390429379 994418060 837668299 531083522 815245679 834452900 415290404 146533778 729837834 130857308 586262475 116579627 578757782 19090415 747478850 622118778 867495474 900503169 770408364 115770332 984472501 16259780 342865864 746686122 69935320 299851600 762506043 211448849 17328524 14985637 832257108 683211491 13262249 60161803 351409692 697700369 66095201 662896529 226156848 251316338 620472955 127626438 914191618 693284486 1326819 73800313 652124138 913973547 743204858 407738922 304605267 864446797 691243358 179617947 341878505 513304265 918490630 193415482 132472507 342166182 73144016 172594726 169824309 134720172 685321559 472408750 670817177 428240046 924634979 566887151 229498631 732685824 148675522 22312971 256912195 490537402 280647998 931220540 738732064 792024609 534575283 587595378 156918661 822711748 436959835 155198601 266917189 384704134 215891569 517468517 131330349 617397538 526534821 97585089 433832996 219266244 901408495 201928989 135648981 987320497 366716084 701239191 609954618 591983505 550036208 729134762 409736156 294572896 712668328 751706824 697461071 337073567 542866569 920289266 381764840 197988222 778347376 875953231 710549564 367250581 506900671 261412398 323718413 58608991 451010444 105303836 33180968 545356780 755391743 730506592 178377965 305729767 474728719 402685996 201085906 942748405 571544748 944948602 687972230 509446294 633964816 715724012 896553804 17036312 306300042 60983777 635268817 509301537 999783422 575291771 316504274 671950099 970552832 502966188 906063863 893199152 532023716 261927569 458406228 303106227 403162567 306753701 715413695 848408798 428150005 258951350 830135301 536364844 851060875 695090550 9799243 807742981 520829274 175270429 859943716 158461875 935277996 499100388 908427912 206766149 704016753 310282417 658095065 226844535 788298384 661754998 398833342 111795231 378608522 457385981 965195540 426777031 944402131 475709897 431839095 723822284 174979504 829663260 634478670 667343178 407173583 519711338 626128132 49039310 9473951 616696546 282839410 241510263 301029603 260801663 433976567 593915730 216895731 667313182 901100568 572585157 204396690 224446285 853440724 962359166 809356224 712865746 658913191 69623105 949498741 236107117 59857624 507788293 984019264 112552411 171785231 389189819 590464402 796902961 545171570 216175780 143075743 209854387 174794173 152949786 450020640 179837898 499597245 56906435 961562395 514262623 333801534 338173513 11425649 577461566 503080932 894848665 254788463 303926 95002683 82570954 437346909 414233846 313899853 561034492 700715345 239995013 704586219 553667533 304334692 543921466 366196448 117786072 28402379 468621119 28603374 56667889 184690556 873082772 285229053 602025176 845278529 362839845 71154121 853611943 726765855 776693018 830657217 551239720 475624906 932821510 825258891 992245144 404478266 788159441 745059736 224786720 562691818 131033977 208390943 205414886 36983272 741080395 23448145 465542438 293941257 290105095 411773845 499001982 866470292 858844510 808459076 346377426 404704537 15388930 776343905 739167809 83771363 203193395 477036905 418328572 391795696 271505475 354256824 819157035 354148928 783539820 364074405 793229784 983238201 542505811 500554932 229739377 816840137 600635504 159975690 633972454 576371790 900576487 517085268 962113559 690034350 705314245 840314295 344556341 138014305 464223354 381600748 746776173 737655815 911994195 820830696 164275525 214133866 88958635 506038397 357363025 454854651 847373579 557945007 199405986 323490831 622710957 887665752 974432615 892479651 396803363 635782300 194821197 412166430 256375589 987128514 565812966 518876806 400090115 552644123 617969690 407569971 429114760 350388986 321914027 964706157 807344859 813459556 925625707 228678064 236375228 305826084 547048497 732811338 242562629 241299908 937965751 861768096 753656754 98663407 406552608 111715698 545933864 959409590 300264758 645896233 90625809 922962863 386983818 705162309 157632257 563360402 592832508 235351785 653707571 849318904 815664754 880954534 620341572 50985088 844746577 380614341 12432551 719095165 709217770 812879832 812032876 149290198 684177940 125839575 937560724 290469126 471740916 211583631 323662970 666645602 912827048 71984734 893137558 322326267 240109926 91030804 392945528 146686589 905871926 347790630 186038654 607480349 47790229 631845162 908557188 886606258 772540789 355477046 354145186 173356946 191554432 751508499 60819327 534194264 199873385 496434768 26853920 950533090 243728615 142853974 799003916 183823051 85619088 903683693 402731048 428886031 945067891 654100477 535506902 561043901 744767224 345097471 172593317 477333732 919592327 971571441 564610835 235611207 1904137 691286103 258254957 597462279 597893251 897712291 3722071 873592565 72210896 120978965 147478941 603278581 426849276 165617743 158625567 30676538 683714931 409280144 852978046 721316026 780603649 124197867 117405063 532114618 822248550 112991274 351080628 551245781 834912685 172899139 269564228 823255502 947481314 319300492 129291827 30552752 662433195 973995412 336075402 830615694 312978944 936411133 908315000 865821094 300136841 700936659 941366520 612120072 799554916 965802100 953030326 955894703 397822214 837932087 234133811 231808360 210774898 927653368 568433834 577625027 90177595 987909385 807417703 408463880 304265601 383307544 574966790 514215568 921344283 774558647 269101142 454069909 511653077 333868758 69020553 319338231 81187378 194016970 711816838 368515097 872739293 518002796 843902950 635335848 987190665 259074764 847620141 212469844 207368827 8631712 853798853 584867158 875777241 587187850 453939149 418955204 476549740 387098977 478219070 56125033 664171655 118402757 884833239 261745745 584289286 908600075 942765822 237779958 938825672 567300824 574015658 311273459 274072344 456324903 738605068 306467276 98661526 363202861 676187248 601502980 521007667 900898827 208522459 438604001 961308785 683091622 775650122 234061852 98502283 955045050 550145684 623432084 863580197 219312218 727144247 278107510 137716881 380249071 262662865 339203402 508973870 688367849 299011238 748084441 632903120 250160894 797763045 417855862 191631882 683592498 591176709 51476150 832674243 258326976 243038493 284819713 114191706 769101516 902606582 993582334 183366162 93136331 625607240 249526307 499809228 425920316 648975961 319064797 98511487 178290591 141432822 409485315 484127831 496006227 72320868 339370508 753576030 181825611 306244690 371071936 312606967 750637466 182950791 841273196 933590907 321910739 179330241 15205417 440332001 714394395 950390358 176913500 994955778 666405918 877122305 472256379 307563479 897591832 248595034 424163377 527153659 229652950 75448338 939681195 67632224 769163759 290401025 389406977 345217006 507027273 389884016 330969200 488528989 700426999 623038350 48517000 970666266 995983842 169265236 541790248 73080909 284188158 38442775 869552830 890861990 757721188 15903048 249748987 914551750 39681362 781069968 854118420 186956660 845089544 456989674 474564665 29759231 493469585 282805849 982608379 352100670 68026543 662966723 858700724 819898199 652323892 121909744 480752099 593112990 993475578 333690410 955842975 54232899 819865447 824003695 677277623 824839227 959987563 901248116 34932318 777714217 264808798 360818020 908744712 461090566 608030587 95283302 476795100 802541762 986472125 633777611 22024482 319536760 664251953 477511036 124716953 815796511 94024636 890317345 609554859 924439667 768810960 787139654 815568179 633843974 220780738 768303063 500244564 92825396 697553387 785851203 313870271 175194703 202039563 635175613 648984780 187846593 522996964 196673323 205664500 726995352 156647263 920928405 216283140 52134210 329961955 906104698 475794067 385334154 156428571 717100060 433047757 292437671 557381526 639685840 907771780 187815946 341590175 699513100 410859804 347279426 617017392 150382905 851794268 376032228 668433028 393537044 769737457 207156745 397600210 610032380 172661464 657003917 43857910 619200578 77410357 222565293 946425871 159508933 248163126 758858609 98842972 242431137 663903250 953124111 300587036 837747249 544607069 768400924 243417259 35384071 290699038 715499087 54806562 774341882 804892475 114459637 370872752 33345061 561790252 190545814 174222531 82179560 122495612 903551820 273183528 837343271 834927369 337255834 767771748 847104826 170729266 223233882 450102549 40412299 782210051 786152641 624531591 288965144 28575424 389251986 860254266 645935930 370222790 671619215 426614487 665713712 591119079 392664557 660345606 725078066 294226861 477476586 504630244 630471099 286085658 394463174 658812517 936329027 959698782 465483125 806604359 157179904 96151409 626198853 330242394 837468099 893289117 869243790 753250077 397684329 823364587 208042207 385579588 976897779 665548489 692031908 853098552 222339724 328157910 319588216 984299852 203483163 345599538 516679628 767880633 845208350 64886683 870532632 533358627 839998213 609469474 64345241 453085741 252707775 731242800 67673838 460996304 582233954 777750930 512883103 301496004 279335646 682317607 95670146 503412213 578315329 345590533 654065137 779026120 879818950 767950292 351158845 223711854 133286239 746331849 524449419 688267565 937234095 935146520 632851564 389374399 348218593 562656688 268408647 122283134 907719803 85774501 729411787 254429197 991591167 94146429 119130459 429146078 606242164 119006536 844516109 822488348 672644068 698450047 77327735 155422670 788158068 281849957 236499789 246827141 589536104 154770726 120727164 801478125 31573326 603656825 718406677 583524126 830992232 219428393 74726694 907226848 186902842 427164717 875189485 302996932 471812256 256922170 276857747 895124621 180545327 849457303 828826208 997811014 685252716 561271013 37924170 757915396 850450236 173694433 613308410 632360415 704885616 98556682 775918791 888283974 248846128 625971537 320692377 343779301 770152274 250851377 500740322 520128729 629681660 840934817 685304720 265708560 402477767 544158999 984969884 460705171 937702732 168664525 569347715 806068161 143133603 632203857 33667347 249633294 997001283 254147878 479558820 677504416 302736194 744479810 248056186 546705661 136784206 753548861 895435371 261699932 862223515 313663798 101789495 373705822 114121049 948996824 14849216 593294708 516617971 897365952 78667299 357320625 321795346 870867448 844928256 651675406 156626551 258969887 754436634 400970732 525193228 157458131 641399609 6430537 954618709 300059784 315013050 655856256 167242496 722980579 505352265 848229486 699548650 386331037 632340073 241883568 832153742 683390881 159472495 35085548 907584162 732285767 155001467 524917153 879389387 520747470 928540023 123435823 756477864 409955682 508181127 392760116 333727431 246359842 146755488 322215951 492345289 332832206 29640212 576976417 126920421 790180792 7323981 700805741 139106642 397910391 623487663 454313121 666855943 731924656 545075538 493425366 364587356 733746953 930656287 661320529 192964717 574873231 798661345 137021514 615166988 279112352 379432212 302059124 615222321 577368679 489476691 718935410 742076137 567859671 790995466 737820210 55555421 95673440 284483137 92834211 708343048 674998149 329891025 295107362 506213302 871964396 988241647 459308600 28038822 217216963 914112179 325590307 199669650 638358201 312311216 671462262 93208539 986181104 91495894 662109624 953896398 457669000 86934372 353506492 930622825 474042652 370113400 535308946 207767424 3594520 95158549 173988401 69445797 357691716 773730963 531340663 395645321 412490663 12073358 859892587 530884476 112723288 805540194 647105275 931106940 735712027 387105438 685627843 318972446 461543819 701880095 248372370 932144946 540554605 795224813 935094484 580177121 730441974 770112662 797679547 776246907 299302633 143054040 408873467 54672836 460359029 529208587 968387634 568185060 105633025 597845384 566893278 37454568 193048803 389632978 963899308 363405706 681181420 570989479 243488521 804601754 257449375 446103567 630892769 898896848 329629674 530914613 73513510 143286819 319218605 943146555 295877782 950191369 292067204 297992488 155355793 144574720 407915266 617522946 107216599 605014146 505167773 771877357 140170226 496417727 938758 16090133 182052594 435553143 578547579 959621511 525468061 922779058 353756901 147009909 211512397 363266040 243725180 687666922 527346559 383846254 390484327 182047568 262218106 474577937 340732082 638677062 777204933 609989801 585488860 206469155 281126408 738293978 662099375 646695276 309242928 240869216 11397442 771791564 25735341 400897486 242297483 132122203 304574555 18115094 304310956 110676020 733258716 761952974 26559918 313106070 946460477 621309701 697848514 153478219 219423671 732881827 642389365 794465713 26742001 53893396 591007463 472046690 977032017 978665353 940948893 600510868 441758652 46417011 909635797 175333050 556405271 388599880 711094914 347128766 572651881 583296851 162479204 549700112 445754168 474442479 333717456 850761531 929180691 430909607 389365336 358743300 662385108 760542763 487446270 824123457 703563672 539715651 346966155 152477100 222228438 672190400 199666438 23978843 898027039 430934670 491077111 59416279 811071975 820645192 814967803 653862409 965514411 743196504 729396884 426883893 514997429 704589719 413560483 395817085 479362908 934811238 179250414 958232424 268652418 959645303 683532230 889979401 728945540 475167743 360271533 118320570 611194397 506747279 829415317 729186775 879318918 39672675 222806200 494687504 392166679 752558778 474208639 69437344 450375336 71953067 659047701 71430357 256867831 210014328 863769254 257194538 303089369 666374623 40082338 34501069 377525641 981727543 287115536 537018447 185258576 656629840 481797852 664059811 95127610 894561283 530312249 380007288 390521954 438939951 917913856 105133861 391550067 946647870 681261352 481190836 773768072 957856107 860456439 717095977 796418727 991255938 662745271 345306021 306607630 670796628 907540676 714130336 474350616 675956823 451154342 313164469 754499299 667209205 660775332 804728867 575533417 421605222 606922583 525357606 27409038 282915595 420762663 548715828 208737117 709445886 720696716 760766922 381157153 475232818 877709735 991249934 554733311 827982532 766084278 528905018 655824693 667110540 87743612 174064899 368909799 962180828 413693589 229043853 870637583 332307936 641314670 944978749 626959366 917191419 494516132 4575784 400155345 627226513 397522753 812980101 254487281 834354804 677704593 385936509 617698936 492724853 421683902 652944793 402842619 13412155 813235257 967162079 621046136 799340856 14221193 206684152 468311537 620342476 530633748 831737196 859379078 70732872 568348395 315642186 897676252 783957928 524158400 354812517 18204175 874775911 900279245 762686087 169852890 565990401 230792604 667871078 797550976 421697285 509796254 253534886 299393056 544066789 850172000 112247828 968468783 207832890 715515001 132833975 899995319 834070689 633227079 148062195 671002417 655954852 183859407 676000578 652573854 550580926 330626788 386503715 71864719 34132552 274482321 279547595 949576596 975939592 723686592 194078611 375332766 294303804 223069902 547280447 879221028 886073839 789530781 670668580 868487409 506089978 182631552 898509728 653362408 529271690 194511111 283550861 241925390 129240557 155484644 728186520 464994265 426114287 868960524 477835601 78491695 760315553 721677780 538754898 837294521 924018250 668529491 580600110 737007016 899917258 88087132 234789171 615519055 728833892 866189239 64760272 142107896 204642460 644334823 500405366 938376962 116378804 442455313 293702673 148264655 825481792 95770367 770963011 8108625 337994337 69977811 93144248 10679257 61820513 454035891 539668537 348211932 569174623 81757453 35998270 490547022 68465075 875057719 339676157 396899710 79438802 767562360 263290954 593863597 93005242 580447793 126773287 136038349 479721348 526898606 310771397 866295433 548001761 106767860 886582017 903841637 851637275 576843241 360451018 966556267 585094640 261719073 684844902 483288963 50434014 355502553 232430599 801940494 811132260 631257410 824969585 755400666 593974675 647568421 697220115 801125604 498703551 990057805 32290157 390024506 438295104 475154570 620738332 442435680 827299691 355359939 888178940 92304658 918482304 97462331 65062862 315328385 784374397 545675630 687459729 798214034 43215875 417545748 471931201 57699334 317393800 117092753 185100889 611425476 524601440 177886081 855709913 521921559 67093350 27859709 470566983 877743290 538603374 567221045 519858249 751644821 439283644 390929794 475055271 615460044 911226721 719734480 223477345 748824374 443424018 299771892 334568667 537084595 635085190 182337321 413892904 958583250 730976064 933647985 694558238 935171100 913176551 87381058 903070422 944195157 860137628 238239378 106406201 355911334 389282191 45576506 804964711 14523078 152093834 423112575 108846531 918047204 633085 362469847 80703981 481637026 528467733 502966637 341510225 115429749 301365153 841606823 425898855 906103476 226672162 274540989 964515503 995318167 57623573 628983244 469498826 358104419 757410414 17823371 632725016 596457162 195060274 711061369 201927371 698868348 421457933 890489260 343846030 114514674 686428301 416426146 983952345 148243637 273138522 233127776 811649063 289399061 590852045 540582804 494853415 876270953 282147406 860166952 928897297 894219570 140804904 395395748 359643134 267085621 632653350 428712376 539868187 483415280 284125548 959176921 489888800 195629168 881203912 259900509 351406912 863730305 524815697 95861307 168912356 175870758 652746157 163953449 707495154 41082549 562513929 154089101 499762243 730132692 844459747 65433595 623246804 426503418 511152601 491606593 695534482 219690787 513813520 708858306 914195341 264059901 279512453 544349835 804000532 130761734 731026894 136002176 961003928 209601030 117874780 596835831 50768967 855770106 367329679 461843416 965316667 809979771 302932719 341549113 509876007 248765157 545157593 449355530 981095089 372357119 234307642 20433114 624071888 879276387 625177208 775673337 570967923 795391470 234770735 431392172 399015962 86792481 450826956 554948932 120524463 15304378 98607537 947141600 479888066 953619328 644113934 255104079 393943663 685294395 12267960 128533257 694720525 793349693 249778122 46103697 862489474 933244670 924983259 242910861 988947481 217465387 421722430 488520674 872619607 94693519 611097184 191579554 855549206 730276496 871642876 371559370 607974173 883474411 586891742 632497487 503912848 299246339 998079198 578947507 1834630 522108578 636271623 933659214 126148307 455569719 224158305 484396272 922365515 109451409 116368701 922642126 89266241 919558400 525206103 953404911 456888808 138020406 248674352 702420269 723375616 520979246 402115865 788173127 883242720 680870410 752731003 774512449 510330358 237962690 885868178 307694192 681708678 285811428 643994779 204278421 253985923 782464356 614807703 596813311 379794421 952367501 221609226 836445477 437507351 308760052 264735889 546565601 352669557 862414992 644491325 48753875 121530061 973608964 876148627 978374336 491191208 944742277 702682812 30509631 891763140 815899946 724371606 469726377 136803722 221564474 8283517 205193598 317916213 285197436 708270284 762884427 702297403 457104222 213269617 188217518 283608928 906683758 932763911 90411985 904641497 216459624 349254406 250718588 193663732 832310969 906066161 254444759 106892772 317017228 483248087 967524931 987343833 703374896 895402072 680953507 898349642 689899556 603760039 779412208 572679634 704935376 419066810 709740936 115946442 424127080 516781907 693986512 205982112 794770518 719542607 335338028 331171272 252839218 652034781 39036930 842346474 851069737 54724868 558349192 540629799 402374156 12751428 636262257 564028948 707266031 310657392 543422476 877510709 694837496 641192617 260656265 851919014 730610289 342002822 912699033 325493503 639173646 69956441 580770217 301121193 557909156 242914549 540383680 862930182 704435845 262704398 435475445 634601528 372202201 590071296 129737505 941702964 184956417 144129758 602431727 619609750 163953229 869908673 795116770 621685005 283084656 770196548 310198667 841006351 249397235 287688000 850934312 224263219 134518005 113212277 779673660 413877037 395112277 479805632 809272891 762225074 514420145 924109376 808034023 71144203 229597015 463009814 1369881 892855139 223087798 138833406 576275738 777810361 914601043 100615145 732997318 813146435 341687324 358031056 361577716 585241927 647190127 193306783 236572968 630167970 529561689 36060593 874090878 523654001 542843057 146071053 634249462 133442440 80262811 50745267 345664618 965557551 567300352 876834167 928181968 839321937 99697020 416386056 786545396 400424214 944614115 264884422 428903344 162654785 185261077 930859895 266396239 523646669 567032307 346262311 161550917 124568014 161781123 828022330 988328466 821193480 198563125 469853354 611390127 415947632 397830517 476904096 590948609 299542144 946445354 963139208 615819654 683116135 192328198 317201974 27137896 750093590 498030985 772919406 724199043 89863987 651591091 279018807 857863634 488102701 885351715 324063883 848175773 562343980 546401838 450097066 755393290 251626456 966434456 720184650 443930225 480227894 35693659 866010636 789320168 252506039 315895389 486395116 730873501 528630621 253730912 840459186 244835030 389568972 933469724 561178743 406804062 351318844 370583824 604073325 303560810 263111262 666423853 235870315 538731017 842932390 23588236 29809386 1762162 514715929 378900058 355124446 176661218 64604986 577865909 399250684 298030361 999104746 249359341 420176136 227435522 255146987 644753684 155424909 239117267 535861457 969338417 808829162 490792477 275894891 690277695 421499531 51781009 526464889 473397918 935963799 506204387 872232854 246613966 7262992 179709706 973465289 103853665 210697486 534293687 42319619 33670110 488909049 758336559 948820694 573321283 882630180 623451564 218903090 421999897 33362569 790210276 344065075 301532585 112628932 605543490 27157660 676258092 27841621 100865437 114587126 699269052 51903452 407255499 664055859 811912085 226116119 108477746 639613430 988554706 849473399 52778248 319689846 683189405 998872210 981438340 471239517 924723158 172425046 439808509 797579175 334503160 315619841 3525863 419905635 974240701 969805989 359703371 654731911 98799147 275495160 510101799 186263178 922167292 496274060 127784095 116477016 31506728 672824861 733544936 148003893 818881640 734995370 891066011 836964618 428151377 79671897 505786127 354124742 609250533 406700447 267160693 589316112 141144589 540805891 313295414 259993915 730902791 374321627 460078167 524924780 225189481 502688099 597962459 890388543 42813318 372283656 316594335 297684956 620933286 847725832 516289890 947413470 574064503 639927199 499497942 513893727 342076929 388258098 356589019 609017734 498178842 788255948 954348065 258952406 211428834 150453125 995993491 472943572 52218976 182318632 90498821 263509745 351091219 60785611 675495240 53276034 609782930 915328436 916490644 638554847 675461288 332048328 995174911 27577167 883765387 99841283 521262410 221922131 731505629 980017020 631207647 508027061 756123047 849577270 95555090 171566056 604614563 838955811 634444458 621760027 201996704 47876295 412754300 399129993 187655007 51219526 242358491 792633000 289203582 885080509 769640100 142736576 747497640 976011436 709378055 305069979 466107431 902717012 789961649 262322708 836662638 638365037 690424738 816948331 895156797 952716834 867363125 640152420 684954795 760988355 231538431 914234276 587203807 301698636 290742910 952092053 282395356 732885314 227130921 730568456 893102751 365560399 514530513 699723319 454348005 490836684 160716034 810602878 981104040 496574498 841783840 659414727 175893207 590230712 724209101 272256706 650182378 821645087 296449727 34772662 960592745 140080741 959664159 143425168 378538623 200587643 97976469 330024190 891531443 257197176 633928155 375569164 763773714 564509255 137169735 407387157 276369971 383678027 62202736 305823517 247800885 394595596 695078374 554137138 689827626 577564681 546692899 598185415 203451898 808757491 608927841 109312262 183350959 606301121 288327888 687286550 499787097 42231218 897165699 415429996 504861925 867097694 517759308 590970472 959252331 742495349 995114117 743582572 164281452 716399230 71538203 198071048 1183247 574515678 51647492 360871838 119004628 298767747 136862408 203095252 887509192 307894487 862874193 385555358 89896751 355941968 113128259 138929151 904057208 838795565 243543478 831999422 129344720 838240094 996609084 286998293 543236499 988485733 689232390 70768085 176794867 723477159 560986726 969660989 643806812 533389828 592291765 506528754 335528328 347519150 860482498 409309752 575451197 849906286 497465678 915882507 207543111 660848222 860014570 154282736 553007802 606758796 507590470 435188298 172447920 967585180 502813558 781178011 157009911 582052663 283004030 150352444 123745712 344638837 99606162 412320852 716503510 420253205 215291688 707959549 536132038 319595000 858651161 800438789 243078792 662245673 69998157 610134637 173786512 15556819 439212172 36882007 653058066 72325075 444849299 377066476 803993524 706108233 85897579 636865766 323371314 601428449 411961517 479225032 738956333 724028039 272003679 684770863 135101618 505113693 292532133 40371800 649687322 412459545 635244935 960694345 204201822 348196137 119164147 508879575 833269008 453056555 144957816 47796265 873091724 564611881 21532407 726392288 665622963 103241828 673976411 1052104 607653393 527149985 624686967 172034533 99232 716260124 808256674 285334854 562763124 508937375 982485782 812686473 547964725 61403898 753104631 993774153 410170350 600984368 775458387 814255748 601378038 748387195 678250549 426053939 514698488 279597924 497567223 710936928 709888492 872707976 976235843 10218179 717343757 642433827 271847865 83959843 611268833 443952743 203628216 375521400 600311634 64328951 982857930 922631533 299042187 738310664 352070603 651888645 751350765 317440835 942795003 260273486 520431344 757610946 345250984 40459408 487784471 654455236 434198538 758689103 784282477 946113667 410467785 647328765 193828623 717251971 481178420 10087356 375808524 458387556 736482085 330868328 636021829 31951580 399673954 975243540 827190315 285843801 528548936 551117034 889032877 726900526 756995742 307942738 688345897 397399229 310789052 762045845 193219180 282728385 770523767 526107233 375045001 773059192 949826158 905965202 869849937 547216456 834401787 610775441 494196093 104809690 522561255 966541108 8894525 458674839 552382699 178123270 53279243 410039407 412793353 17507373 985459520 46965448 127093666 626947140 419249441 372802529 773283042 513828138 636154420 570739893 944457315 945310475 329457302 382406187 615066934 729537405 243481368 342441041 500608520 798247450 41424031 289130538 851832927 131590126 301138487 913634351 427451002 812428338 667259948 84707915 112661187 245383424 713898496 433513063 121256820 111815952 64488766 168203565 1085223 56320637 184012215 873229969 22608973 536258058 522228710 179849509 152785449 442937796 411518585 548891655 57606308 132099262 863589161 108337864 656895409 827310552 766613006 761034683 47593537 933779454 465364446 132581851 608373543 994632042 522242151 36567033 276638202 870104958 426222744 924733375 374279909 614421007 587972976 575700727 709762336 501000719 905801897 811319950 730909281 985208725 656807729 213498563 182866190 52160255 890707512 493364870 127038883 767719306 129079624 390465582 241257375 556702491 140188431 579926811 259469839 813199697 250752558 316300201 923519204 835610148 827940534 579363822 199780631 220105351 162125255 25947641 555002761 993895675 867816672 223061404 735878850 896230249 700223098 896029087 482215864 204599732 434494880 576233655 129656127 716568188 1299882 435343690 42155172 701408195 979026103 749123519 507044107 206583317 946252271 476549158 117194216 240534414 505099355 405583516 9357377 84123295 661315971 879734220 786009495 833509529 630429705 484535495 61399527 87328280 571941516 636503538 425677018 216075217 846433476 325592794 188286020 784465830 481406748 77171428 203778923 396713007 683686166 300147870 72900330 167473928 776204140 283092010 43692261 165082981 105200809 185645693 327956936 771099320 814876800 710435002 847617206 278252915 732603950 999918689 971544921 981769676 549629568 351173374 601231776 586285040 254352256 740272276 950719277 429962472 790444705 737329977 664413927 556204559 8153765 637670781 320546852 531245157 680107376 538696273 266219031 526268456 134626029 71700804 39114058 685102712 914378620 402900077 654684895 31579153 29289114 730793999 822281458 890185848 905694482 14183344 513703455 842349948 365510459 458007058 641162032 741459562 710992421 538290451 475439030 169631479 295306849 887651923 617870116 700636137 554994053 767531589 91744286 496706510 876757402 662031388 311353029 410934807 449271784 816507717 959003808 61152469 366090390 55157628 324491177 197485302 418794226 860425804 606079823 728628630 896767677 18521714 391939722 649626099 221488168 177633967 920171407 422335412 241392304 157157084 915001788 411885685 441747249 302743285 402720304 803727659 134466446 578333387 871941940 834929976 434794174 505901297 206701894 715231456 748893590 102215786 610525206 742387292 326423080 581901701 841625516 691499925 244349781 56663432 956379098 332462543 111093528 901554657 927398745 769343261 698135506 533102968 325964126 504984402 770544623 507443087 696390606 177087024 82963777 83563773 496509770 349184011 205400540 638302213 400279612 174647349 436070116 788876970 537978690 178817218 764453353 125725607 290588934 221980376 835028230 502783298 95223129 298204603 666169998 374925103 903569177 616598223 986097370 700854958 60509418 736511602 847226613 731284013 376735247 329132816 897525167 306615422 387773255 433875411 865677118 373802323 105129838 37088138 972608795 687092575 769784899 626505041 522669689 556183762 582752134 107032147 589155227 877273178 867315657 20370279 717047181 685611090 679342168 571933828 154374996 136729 386487935 806837039 12982999 54408291 951125210 941327072 556716361 882128635 417823609 737793557 696379543 495610009 783006643 213005891 637475234 56922918 267267727 476625445 199091851 544726468 360994090 912286192 554333889 990568823 593312096 107257690 203521519 40881879 177407915 581687543 106377249 96083923 329724017 349061812 294154230 212867183 280183360 315668155 576906334 568214529 982302837 505701291 111505655 262143325 153411542 20755117 411256988 476178824 41455284 76732010 56026557 956274437 208268926 231261889 692371425 806208400 332051859 479430273 96836144 140080329 742622920 164688890 723786363 507754543 218790443 606148935 265816814 701066786 174353633 272776009 14227402 786966900 413495108 825763892 15871056 556385624 168666514 742143658 966336083 540681551 131335360 852279452 40007488 624214151 674415260 820356595 780132091 940019831 505160787 154986670 435124522 173703377 99259529 894034804 324393666 573897801 347884549 889024799 720361935 43529190 739511916 238549345 332402786 332282688 525911860 539059949 44673288 822165156 656006905 670863806 941040212 113625675 395288414 984926727 409206331 330544748 16697203 985998327 357029234 760956256 343830869 106213005 721679718 277459728 820716670 146026660 741350629 382037807 956987918 488452170 474032997 330411984 537634120 431137282 59882841 176448279 747857818 645290683 876078921 78138494 743711407 842806091 558289585 589722298 946360051 755799024 809634645 293177568 236382086 598218213 159016064 293416199 767328626 335275594 332808853 462740278 793263696 38610974 745965106 938163112 465117058 575124666 751005663 541710833 422023850 490043540 390382276 234713078 318053365 913687241 271512824 239292644 575540760 11169252 584050081 748768099 313728815 321989968 260382921 976504797 871266982 521732391 98779348 784436049 448696209 401871357 135723070 546712161 477193496 781563096 157172550 213928600 897625024 384200522 726568007 840924923 114486381 681340435 423063784 21049847 936206409 584979360 116599611 44020404 381695968 124949719 642499261 712836855 283208096 964486001 48420273 639874040 322873875 710965426 188374034 170274440 669530996 327339808 576827747 266295679 48861989 632306619 221948935 974511528 66309263 18035800 389591902 751530650 93061612 127016571 329647959 946856673 489899553 463475879 495318210 523391864 495522799 793358562 237958658 42862887 381482900 648528604 355088619 900955676 929280868 733318940 299956925 31234624 666626670 24536281 736774960 528465543 578845869 668307743 26483824 976806934 440773090 766696452 142153284 706587211 744122076 371487974 993731409 828552585 568841099 588185921 907675539 964402251 17679119 507711723 868624042 75650314 91265012 500549695 180258539 443802744 223637342 386100678 62575548 948018572 105235561 438166436 104980741 753663306 336270222 37250610 827239622 187328208 962026196 22690547 718528285 614824554 129216909 185359364 218775089 332966746 935023956 699943569 968507144 93098241 256965138 799718999 971260134 912720439 888164447 671044365 386433144 698631188 940201261 848561800 755046035 63927312 578150376 753558265 776903098 754364557 361750483 270826525 168128402 379129722 357887727 490389170 696371712 734021411 961446848 353703696 933747953 38196971 417304553 304716607 10184443 881399982 302969851 912399458 944547360 256805105 439935093 337109784 611788552 304758081 929286273 147526822 791435206 714463348 669564402 835905159 590043953 112066698 575840587 807566957 458610396 815545333 398307135 343451784 462887053 254406618 887665543 315802028 428119169 88976767 838481077 420153597 988707712 72665863 282449759 2713659 626705935 990747617 896022893 395381530 191274991 930775696 831981263 661293111 340614117 897564631 758323323 927259503 735162401 405386081 941025350 883678450 381493459 572070969 213404377 385738489 911215699 462111219 809484584 744865257 36638913 710531910 75030597 285778613 60705037 285576444 183059895 776720775 787377527 18874184 628634557 877349332 852909566 473866649 200668764 653386300 260148240 287261842 213182905 906696016 345426713 648906914 580716455 110752324 274369062 337664299 456553801 149429529 907764598 768434366 245072847 723329805 907024864 198342425 16479971 564584203 615209246 939634288 352713759 315756698 694180113 6663175 176820002 711338711 601254820 723830861 253854507 196072550 889527511 858704789 285473087 508717971 406059774 421451729 650959234 901149851 555732059 836647455 251163312 680990674 182510067 878811951 487420489 473234161 411166848 150557943 706978804 658525098 630849721 127667461 755430507 501298759 134031496 20630734 919894665 850037674 14399851 432101577 876683874 405016176 946322042 694219283 793665549 420358549 247927251 688660139 199248367 711178711 681851060 605350461 383205783 66662469 117165213 955382173 798640512 797337552 875387169 729131044 84237154 789471472 872269500 450736376 806635327 446519225 4641708 942914110 527574025 907546222 969268925 323654409 274680676 723900708 402423209 125949692 356436983 15018020 215177026 764913500 415029311 948046145 529153977 186529904 494519321 962649489 536059256 221442797 830077916 928594548 764969182 213413892 573142269 924588573 432408647 329965312 643417644 797182155 856348356 466272041 713824983 657993848 996703450 342379658 400172998 134693348 461348475 413289159 571460316 344923816 146274278 309685873 994357455 852238578 376821183 800778273 418414861 826996113 711577955 898490946 572785106 918156097 614896696 426376445 623064266 263134134 141632574 149726056 103654160 828797660 58983424 343085561 62600950 140681826 586349208 691495864 359378383 495575535 512982004 69839861 862254803 812156231 694197008 751128716 411967903 218718361 557498416 392621397 176787594 569084692 814452030 224360028 730058855 720305832 308442828 541578452 201059781 866857207 408042816 593523655 623681597 856145550 935814103 207914160 558490536 13237460 266149426 579550007 446204619 8006882 744286795 330789127 901973995 267484725 968440843 264808647 299036852 560206870 499224706 252960310 549079270 524570547 296093874 511440435 310604157 499072568 317219377 977324732 941723876 129904099 775232899 43931989 781082081 361663825 131419170 961868837 598201811 948760049 988924914 997113646 167346557 76253619 571956143 589419719 224634634 24577287 86967403 696217842 601742819 179147633 231460929 54081244 334782716 855260303 67301317 275897517 347285219 399368695 219704895 704787667 287610453 527724645 411503277 558427098 623429750 747897941 344704203 52872054 596330559 633247281 660435629 520369872 470924437 264632831 631257623 57995319 291072713 831405147 892257174 410281438 950619438 750579237 830247777 935375127 640879680 591583446 936600174 16944781 787804914 286376658 47851717 501272205 235136976 397943799 522930961 21237729 994232924 850937077 382844690 587291777 112945780 661471176 736980097 702433654 968432192 479869010 857858967 615332859 883497075 767123140 507127469 191080301 671519278 800025795 347437371 306834185 400898329 696162615 993965141 586036279 5300742 997895472 748496516 483770328 769920686 690144524 193490362 906768673 837811852 808746909 597559799 713890895 507289180 684007882 972056535 300530147 761056034 914731486 582293579 528313875 232403261 876182213 215121057 426841059 81120377 266613706 360043102 731155644 846995098 476942236 248124985 310941076 970661010 446523504 91933319 82005882 30393201 155832528 909477713 507658379 295145630 959960078 260349455 142321533 644981256 33765247 146929742 765466729 831970813 618849896 684702795 66623775 760277682 985114727 656964889 65691464 415186583 185576358 843111602 497386046 543987423 696624109 423244767 243245899 743815710 236450439 585988309 792873062 835410170 204090216 123024956 648863786 682810626 380149340 546845540 526097860 575866754 905477364 647758225 520839920 743214713 397020321 284262661 964233289 597876048 37236162 654651166 462988942 120813643 692747425 775274322 882982516 28618224 187494086 593889805 724174696 364027822 820278435 314221332 442556658 447777710 133108172 125482091 995033902 687938135 595234173 246971155 927207273 896628299 951043450 58215970 202837101 798731 824970685 857526660 832176612 997014977 380267200 618508356 601751675 310760653 399286901 3847300 358512539 130945586 313475371 732494937 651540305 313856001 722135718 595811199 130459870 734495205 602687972 187705065 201613281 669138104 38898375 584734044 999607843 13212748 798478499 667077956 149293410 60577693 460920370 666900870 267465920 44476944 617827825 262727568 750135595 537432294 763953336 606007026 322297291 784676270 972266134 976751487 146156444 126745039 248726101 69073865 33102454 701438150 614826035 526593962 263181473 948317979 333624019 202083048 386489871 581770141 411366280 735776572 137398009 610440252 387457078 858137914 384684206 449968721 135314606 983622147 270851887 369758861 315666504 389030667 671960183 142216052 149389321 1758802 978808331 513374974 195169059 976449478 584940871 552150713 578070151 932322716 653448534 790039358 323513373 755692694 740128578 295374595 77558074 535669213 818598892 392043223 563698686 605174636 779710456 688948042 135689033 545946233 198756315 667418475 679942849 237006692 961598362 240703113 687181081 806038836 290181479 192628602 413901197 337950113 904624441 578644215 131585432 110772254 972190661 996516716 502817654 61015853 213193168 6873029 259252463 607070328 457065938 685508621 45526415 120240648 844510748 60116133 116231666 467317723 368965866 867720968 911402679 466610986 960277716 175719972 937923121 250264600 429392904 332991329 638102770 498059604 63354263 827225999 721126634 893324479 623956983 644080052 544549795 513111250 293243175 323087063 765583056 38570887 499883633 63369799 498014631 529291185 265607557 104298810 770248935 859786214 397072407 851002779 692552843 784128239 651933959 377079763 387375551 527104861 41222430 458559767 940444351 279960583 512182844 136916038 266957999 435742678 35130077 32160151 347658736 4722818 81713012 204719777 304880306 764468465 725567374 430181874 614432519 294234733 655102610 381533014 893905773 814267993 769579978 483548057 617901132 465917125 195925294 619556899 702445620 109077923 273468248 386597640 984508329 446210012 8253624 619035305 840683467 968939368 210979028 366827176 856544079 691555933 714363715 293417413 496129646 328157209 1324408 970567169 721979227 387985909 838626235 530246719 265121429 514591155 371946463 431746396 337735138 602112010 674270408 119121210 174839098 359161549 985267478 743990044 841805307 379561388 532429124 722986762 368489936 490371946 858672604 492608200 687297969 858984103 650278593 908703681 673642361 583071546 218723831 743140875 75758914 594037098 99421810 834030411 323512319 995562098 316249494 409334000 829983515 139168537 5756905 620780434 974273654 660689492 420862998 955797214 201722601 199207336 666169669 830609731 975210404 914108339 46165152 455183403 96814732 652635707 792118233 167858925 664706399 224489447 797627903 547495688 130697931 627222171 31224520 129711211 2366324 471639797 657335328 439702995 63377711 261365977 662214358 265399716 148575462 788724889 588495735 380108791 171220204 506197371 479845890 934652377 708816398 239011001 614836411 94140551 268840486 965723292 145146952 885433032 362364641 472389145 81620643 129936438 983624448 639498815 718988392 889959667 505027326 406270258 913866900 656256470 550869994 391939050 809276493 133278353 877585611 982891384 539108068 559948806 52921526 361198548 729117490 212067126 318339559 985901413 749673332 446828721 81440690 205531296 292187159 315378008 618323598 684968696 286131756 981828762 224685325 651366629 98572829 47518328 670179589 616941039 195187474 537611790 401952535 265697968 337801678 58745718 461268083 116964204 758904022 583148897 44088686 692644011 857593340 241901667 230768413 308690052 301297564 462379982 777590755 789666869 880311251 97673399 945223833 579874068 617130228 763689164 117519525 761769585 982674774 661049830 923651515 286363133 912559606 423289727 656376076 616368073 508026944 472533047 822500463 493436100 758598263 813661559 187390342 24180833 933794182 256571897 266468742 269841502 29835103 369314413 25906668 600989524 41353682 224737863 875406007 636472978 58984844 937520862 339123317 776808901 907115728 907668532 16629859 188743042 668289149 811100047 245904611 214307412 979236702 507887393 709826456 849822155 282717400 872584650 840122808 103005065 933549223 360368907 418678771 444384119 915480933 920896612 190636495 195467609 159898944 448704752 954654380 78760566 623850430 685411887 445600940 284545301 524038331 550088361 400037730 451600124 162309092 688038507 583004576 17676208 585439467 568018438 94546759 70532197 575961187 336246286 579921620 710153468 774513309 522211753 141015321 157595731 60718140 469119530 156758940 559185144 384653393 49772386 710570711 774848578 960806665 428044782 223389653 864013358 44112189 128891788 20721522 428524490 296534887 793542624 813464129 358467142 381687870 526913460 847679955 517616356 723632304 353293587 144374366 53134676 997624661 657054548 775169373 19154892 403785740 999663015 318646255 706550318 719266507 851430421 446954701 277334949 491670342 392206014 770932203 83468166 649174761 858169652 421664892 181058982 714603674 37740006 821886442 326801039 390961967 399556006 86335561 461725738 851631033 135661916 44977684 773033652 728607441 5796019 164025517 317825202 526827423 917023672 388526042 229782705 113673944 38552619 809503586 39969854 508722599 290992117 205887460 505492447 147666369 249344738 410915075 322530123 464531 464613830 63928131 217045203 80566524 489849909 437463017 920498358 593794161 899019021 28783129 231098386 603282822 701792436 880222787 612974718 831360503 683017090 21738403 86621679 648068557 993917062 281610072 971042424 158938094 557594108 961117797 69366675 552714334 495489181 780666948 345325288 475059608 390961206 561548108 702072044 250901476 808241628 250836494 270810594 824448796 283583837 910601898 406937711 560404310 424334838 701753190 980914380 990922149 153797301 980108440 359708203 569191521 198843516 457866052 524101100 101245636 167506727 311536985 105214082 112373326 930285516 280626141 573686893 727637676 652567181 679513523 270296314 156122522 800119643 489333016 595361077 994981485 634925271 530483651 627843730 468036301 938879898 383740973 987318833 660484544 769166054 466118387 145585034 70965052 362718670 528591961 720306466 914587857 179615081 1676084 421093883 803355100 7715630 812449324 427885667 798092441 111191418 219896529 634589032 444619772 939658880 313159284 64041057 387417135 245501253 686915604 578859720 280050988 456826010 105874300 513190747 166548308 397308520 423270746 547149197 728795342 747649757 178381043 177667164 902392839 979221463 495468435 155794025 924013278 776661041 458616025 853344490 283219692 670405446 760872215 885858621 405355196 567059552 252839696 516161022 654298586 118322910 985137005 725385144 256469119 435488419 648360455 687006991 170268941 35838685 149685636 164898562 487532056 178520924 969246791 437418009 920877821 469756054 794857693 406261230 13259659 464977966 262882001 737694118 620334129 78756697 79336165 834969258 140102882 268900457 321695536 554876277 451652897 198647175 107845454 565169954 659828065 364132240 225576597 165375558 508260053 27873200 930388560 304082465 632927429 295185338 775018612 751903724 470313734 166683949 416089569 216682513 654398944 639224744 900279956 89037011 569656156 173126831 342369669 403928020 43111465 823482065 995554593 296825651 858626806 264907020 353659698 814770777 318711351 616223862 419566783 916556701 482130830 187876360 772113706 408969338 904044608 856299595 238690922 185733838 710030759 38649450 315705347 164752798 767308409 575761255 300020325 72976550 4272916 402005482 42553809 338151103 404732573 781267608 733040719 82318404 531321027 775707709 371747782 495707889 263826519 834836995 372218148 919083026 167432245 54485319 878796309 78321581 63432381 395208414 83195734 554140957 982006896 902714718 934871107 634339971 862434646 254901306 761045221 96181585 572794559 550511670 157322747 529867179 848133345 387188261 332010048 625104295 464962547 813273233 234541550 153244067 719905915 729102106 855535300 324350190 701277501 166817357 303814361 668820981 570567541 98450938 651379164 520905699 862839331 134282676 851143005 917089927 934639361 271941045 917917916 566538361 899683117 977294420 355403424 722420735 60899017 417041346 630151443 20791898 547080961 803165113 589371805 956611815 69936521 765715593 281375176 332288369 982785312 603607641 111336741 79560835 993540211 858240498 952658371 207917148 237521765 898360115 853941980 412806 230558986 66502471 459683210 354571158 708658852 175863310 73112182 236810360 109107335 424157292 186116055 448303776 173413963 615206224 951872625 562447678 55090972 779793606 548292541 99717033 392319068 215910965 85818366 839345076 824590715 464245760 842244839 269821728 615705607 503464696 999266034 207494216 423420656 47394648 980700155 666505889 561400859 655514224 320711537 599620047 87389734 946763702 517948043 998838821 738108462 304100879 908257303 90937835 698779855 693942158 719383925 54880598 368739589 209335010 680558648 958461441 687070608 852980672 589356552 727186330 530704930 381938245 668916482 724177051 356302739 66872735 326219405 148472920 403887301 505424355 792532248 875605735 956417048 970681541 619766440 356595148 714109602 440087226 251700523 542335657 480251508 750059848 949149169 550215249 482168027 926134362 445790590 934583665 702402602 327809728 51921362 206243173 329722215 615081888 224301820 659558088 416282940 614266772 612562613 823613148 736444633 838816627 249107901 464792856 947472063 840906823 109929324 65192510 270326005 168677647 453559644 761156985 752275003 235756794 369145351 964539744 833323262 950295876 117800006 147913873 990278789 284899095 985753984 957703693 813039966 167431308 413823933 789009233 762322695 239219375 509591532 297772885 519350987 390010034 754040839 963587505 609710028 908503887 774812331 369325419 496585887 925308211 742304618 414474046 95959937 340420783 146262703 723812025 685903229 367628453 608906629 873492843 82027855 814763293 658930076 972293785 880379851 36845915 408591212 312357953 298858833 439550395 429988336 963337458 154028418 721236709 317415192 908454020 703668060 265811203 14998126 771185449 396191139 741428636 421224110 218207938 603435572 734588557 700843263 279514563 803420044 436005533 421534564 576987192 924642335 734361762 878081927 21890533 108164753 703701540 56858349 789007163 3040700 617945995 584518117 85957601 768568151 410384950 664659600 119068264 598463447 449664920 577154562 403399569 514871189 71408401 479170768 807806604 242582788 141872439 497714587 596373511 376266881 160375296 571731494 693378834 528781501 948172749 733146473 925722569 367158357 512922240 731343739 366276535 624733435 686249182 612234435 233015596 670118695 173564945 712743807 682267725 761099787 347649640 235153626 609208032 157845706 899465695 552151011 637555711 142087864 379898461 355602916 997374182 340066317 57603419 403147947 922069486 546858223 291066395 214676122 7414747 709379678 10945625 404647911 325665674 13456126 519873675 868399437 765820555 758542186 264059500 855795480 178373471 40442724 616644138 441865558 101992943 840560156 228171538 795714766 480668729 484677579 174231355 529666351 383153765 850405380 450003836 852672668 379049453 577721672 459495339 633979982 302427794 326517676 761359743 504742566 564995489 954756365 429256870 786308395 591797798 856241900 401714620 478116797 487241100 688084975 858063050 3976158 221864813 82129737 453787015 479125475 755721354 437092145 144296402 765214395 243160412 968784910 322649706 796542402 594752356 139066711 739998361 478762961 288248432 466065704 159326938 182782101 743442344 87819456 157681815 514391666 138375636 245532313 550087326 841571455 575714277 334186768 66695516 630882809 97659771 672621656 875676359 81301568 914677222 365690305 925905706 55768615 607253939 271829130 710363094 40715560 889455908 185491169 226301090 597410456 637991137 343563823 537187310 53854104 813694167 230512485 679900595 402625983 959812678 309279816 482363755 236677252 717164267 838001602 235356523 745959536 852793920 664116495 444244867 383740751 325504536 977327551 473794890 315997116 283799770 605161264 992568420 274708628 106529891 589510498 557960180 709988382 445035360 105444180 817665324 370393030 140891970 533626649 980994801 110592936 196002629 262895086 237541492 752629453 509295128 435608742 898438527 16564665 115802654 707300018 106685771 710221058 886384000 772231966 571465962 639235896 560367031 496601160 912245983 988329067 886452150 377221264 53763729 116447344 630206729 63809378 534837537 749697830 402402966 245671121 185603322 90418485 443293857 218601985 276127032 211005083 989806359 53216934 561796615 877758860 641543552 534543897 651725170 429812854 111879426 129121472 809916181 280536121 748780324 176065887 373639843 45169532 499328955 63723310 815279834 924667880 568373192 816836935 385474746 435729404 60912045 605152884 153076760 842496843 339902459 464211006 821091034 864157982 770108771 795701277 164522544 400055295 657583211 286627279 822846802 57858346 601230748 934796628 153517727 168790064 252239961 187740923 232994518 792466172 889127690 68595003 313863222 96779507 901730893 465026052 601673145 142250704 141240542 865219304 916284717 436357356 645868887 132204941 703712929 710995752 91294066 933709740 898590807 298924495 34701142 836284792 460624463 500441731 738854940 74756547 868345213 692721844 552597550 609548307 36356217 510480275 50548992 95791218 75208166 444431949 563605911 507903803 882839580 43954461 106448556 80130176 719634904 81935240 708904976 281569084 638619357 326121595 454065297 703570162 761352807 178322245 709863668 443829819 367093534 805504339 710457303 991459730 764995644 529656202 689898570 19206670 270105140 981794799 735671235 209826265 423746695 740940113 921900289 68058990 674697042 845187924 621238395 362924127 262178898 373134864 592975649 427588197 853573390 111770069 937375134 448500375 150773171 175616934 262125202 185394159 226163310 399421641 136434711 778821740 236328705 457285867 810317183 586809840 317619800 37887877 44433741 987662356 745324394 651486268 208956028 218623873 798253979 364059699 580662099 886815154 606534892 32079200 369986944 650490569 101289184 147950672 655158803 926689490 716139767 905683352 691944798 504450502 607351216 700099008 945002571 190870939 943563127 98205553 488006538 734764774 736196833 247038299 834461356 403710335 236757704 539769959 432434939 410424510 561771488 2765437 383044431 276146218 788429112 414132936 787295400 348207021 237044513 224452956 448104711 357127584 775311181 831466452 440637491 383671961 93714613 221748086 752966871 607046685 725069084 787018401 842022733 1333929 807516399 748726197 968779035 141199346 58987392 647255234 752049981 950486986 506369945 203570503 654181627 889007352 426276755 334200793 638773749 192009237 197981045 624612111 869746484 264400223 539387599 305274977 250200616 916907772 329254203 578314281 452033315 815711072 363565691 233656927 449897161 789635226 291541478 75371973 520248993 190132941 450385357 449667646 170781180 972276408 269399372 551194584 745547309 437046007 257008823 990630628 179750443 832116321 173850728 677407998 933067635 268018485 886308868 283237869 737148793 992353534 138008125 92717308 520316743 501619741 35737527 663518665 110170889 696426397 627649670 730293525 360946546 360294043 319887588 235004576 347672612 36550986 131153555 274327630 750968896 102117030 634077108 15357580 820572546 277710857 450162686 102926732 920734190 971588395 896147816 842856084 367412698 12897308 245397583 857237779 670801253 120999545 203094160 364497345 396325802 176984640 851929517 149827453 116109316 447693878 416281540 38033821 513637233 130147701 979570956 114197366 375699088 931747425 129304831 104921597 815145992 242383968 555722791 545817817 86670478 936258118 305030041 395596099 208459560 641977490 294422273 702581042 833306152 918971092 798174157 242169770 933472235 81106032 860354760 174612588 466035772 607960021 1599039 640151020 18207291 657325730 537917779 607341980 363723267 348502985 986507312 20076276 68009289 113903856 49515736 45387162 94074959 354190671 339207156 255294537 892600116 476778504 435103894 795642022 408141246 842512709 112423252 887516156 626228838 660977246 280040057 929328764 544904431 800291601 900918877 185158192 326133400 725850065 198610503 774639406 208760664 959936729 475742477 840046721 847125084 982196862 913235354 716545599 757653745 635763931 419032562 166247700 546146153 823342248 621212282 859262464 474396029 988684941 563241669 888900192 646795411 715296946 888309640 808709510 521659270 358033595 154379871 897076096 325145065 72308871 91416448 233242099 57192036 358487161 748390375 708109817 859709061 940393946 710298468 328652855 772253936 565063868 866312000 425276480 411647181 274735807 587061327 598548799 782258210 347021948 31795380 795598479 610726874 427744440 130183678 991837029 476604109 758382744 659073799 871779102 613863258 611911034 854228417 806292000 26451152 264588325 843511957 631386810 623550446 950577683 614820594 796079276 473564125 747995263 533120288 146429451 987486196 191646279 660137043 798122153 111288357 944952527 120857727 439331099 349711471 635349522 375093933 968729020 83388111 608601763 181752412 806018882 13747973 216139759 793952299 340593016 608749206 779380225 558003648 898700409 844262808 807768806 366065547 745069771 767333596 723001412 874975664 44339647 883123091 210655816 179870395 408547784 172640782 545200970 244270056 763060928 638245080 164325682 690253875 247209504 881717968 754058674 742000026 215430095 965905678 920926676 841321528 553917158 241809064 939056522 216676388 173655760 402845053 958968741 902443751 6745849 21091312 50569893 987924028 289374259 851620476 363418217 396292481 692500205 677068327 300954597 116104700 564438322 880770670 656385454 480556248 836676221 520799638 153545443 125574710 83524158 908638517 259536540 353455761 265717795 457496080 312306665 356219579 566068323 92204555 320997143 647165149 168470090 913834388 536112711 868631133 716018514 911681207 355437091 71335572 229153386 568852241 273902593 254427377 863556168 296126282 512156201 941231235 790212249 58068315 247453355 897251444 817407295 184075170 440263675 956841681 931397272 461002576 745217651 203230910 146128088 69829804 146999089 231832715 437498803 435655475 657801471 768931872 677414888 672417517 605588415 657254711 940364730 363385760 979252050 724675723 463664443 752176469 148654194 421004866 493380663 599350513 928998634 720227724 87509149 950532091 438591605 787596950 113710917 747919548 357629234 290237957 547563870 621008271 352027642 761102325 956852700 784259105 732505916 637871108 509385473 266220056 364939458 16620366 671612671 339209650 735282585 51610466 88229557 380353265 490938233 437016921 401876540 516957098 14809632 575235848 300523209 409399672 191329627 675801394 851761543 337808191 684387440 904521056 627110503 970548617 63668960 879885475 739423908 15077434 432684686 248753384 610585421 500660734 827149457 703604315 765440696 991885803 595371246 716888486 765494284 663646433 935666295 978737554 616630208 869290994 868050449 293215999 530853437 117513728 965372059 555690826 529207355 693062706 661988829 430518655 685017794 997040337 273005991 520108307 274488055 32718353 964320252 213192596 81867914 849845158 492118435 74798847 291359507 322446964 460707657 751787418 970850623 545477293 455820938 104300180 810101326 718185227 732434382 906806362 345927848 72091628 141704986 211063843 997195782 283834960 197742270 285007559 775104143 159123572 666269739 71773265 185733970 817802565 557982434 821234834 89005878 345082491 247577308 797661054 858590058 645659434 338510000 278368993 782943327 481400117 34425638 146772837 371201414 724285255 171586941 283605617 499807113 910305534 783113180 308945125 516855479 868530857 546356092 772436975 700684484 967844114 601093592 921034207 337770531 52696251 418098451 789916076 984117813 757043580 97165787 35933711 36834232 337331350 517937978 495364153 853814161 805456950 696298572 215790179 887712198 292456023 774442605 867068422 994828233 340312628 686655353 343556022 652340719 353124321 198633156 362543656 515897895 359250807 192880565 579742594 330859989 931879135 632751238 437507180 858079071 291098246 222990676 838037550 649847930 496793991 422335926 363301286 620487342 999297964 90544670 148745223 501500186 264841943 735743266 43435842 711195369 744497059 49453484 600314851 632766776 7479950 387785042 897158786 4167929 384457131 917051046 34367485 261315190 564707211 989922433 792851674 125679421 297343726 491261851 756718554 213953742 149884293 884728724 941960340 325154929 445456400 39937165 1649081 61259409 217983818 337266695 541082970 177221146 940377732 317746989 405195811 598347840 94178594 595228253 595052529 11435472 824121592 347344775 66988245 770849207 311116521 814872395 239208235 479115879 166002417 959504184 762165322 891850884 330673762 647832802 212694548 221021539 269412901 997120236 502212298 471277600 154095712 349312561 650897731 86184588 495283084 211953995 728579782 109647759 282947182 594477683 504447305 625598165 424104670 215363043 840429773 688043366 842754649 528131707 379060572 353387804 969581707 941855832 477652663 324595619 527211679 933646688 330218059 575309706 610440578 589692665 743412566 915314285 425853931 152540281 926063514 691973547 930862003 710883159 450273855 946485193 825719312 301989881 670386169 820961958 479052186 386590598 849227022 146039847 710946717 985233416 796450016 341166382 989482756 83126781 719439022 978624995 350977973 253203948 555580133 132010216 186556112 443041874 849821301 82692398 779831150 870673325 924816579 161799212 299010130 892252799 536863556 691410402 130061286 555854875 825638607 524589088 451726239 32036209 128208497 472535170 128895283 860115087 826145222 80430636 657351227 766298927 390726008 100234159 746046369 452029416 66707214 767303192 921624152 540030013 812111596 164361138 609918428 896924324 270735948 914850862 263704787 653985572 476250059 139119086 775217249 277837470 990597415 823488089 52540245 783797882 182787525 534800279 457915485 359389573 351322495 805941796 941614760 738164396 302356498 49111425 565063137 345780544 702510448 802313505 507605267 762421700 12842305 447346314 967988151 900878128 60002746 733151194 553302788 889455767 454413137 954676145 373717136 265608455 959602616 906628042 705235140 355552769 859678882 378645086 927625507 760622535 88605197 889506226 642185211 993843610 96402217 565949541 498678984 417481226 126846785 36143644 886997685 637322090 538576250 196882859 866298760 67918238 806713864 456770625 994957081 198261178 245784279 862435442 662087955 869343272 596103559 834846800 817847287 541662258 19447538 488263411 913181388 198414852 102126965 449698700 963805111 189464518 64918109 409170182 901786939 632849733 637480807 520439192 648569908 731072211 353267232 681466629 948741679 37871724 371442394 718030341 446064193 601181114 214359475 859395494 111016430 586215298 459384741 764709666 477458402 74120131 316252588 681625577 80846767 236563028 1298251 655681230 558180493 808999877 532923984 961997398 64189445 331869897 5090373 196827088 70056180 894839940 37883744 746033483 924085651 524247954 386752739 205724863 793262991 754295906 947634733 289276695 4735190 329429295 735547751 800529347 38960749 375871243 206329255 860725838 181623334 504321975 27972716 288193297 649648654 240227624 349477627 685984887 300839584 94831591 360617686 81425548 579403933 339504204 777814614 190278014 722525295 679612021 514719276 196809225 86324054 814862812 426469821 930121657 911285243 247080157 460560372 241213983 528451916 65880599 740910891 611706694 326978973 267775603 476716834 543186045 504747924 287214842 289753731 662863784 21386727 668406009 624508243 90139254 668730396 974628598 106279519 30588339 235132875 287969729 799644439 996530980 790528998 901368765 881419668 380582963 225496064 819243752 474478888 453417627 114651988 161615128 437268777 450406697 44588203 28364795 723618812 294432096 75840669 728149488 613329045 959624486 671153355 793940219 639059945 514828894 271907840 402872062 361469110 848919091 423674034 626288346 452555663 175065444 275864842 148069936 689816324 22669680 999439463 403289850 774751878 987950046 86569016 948538177 640424105 668264222 437488773 21236244 660347653 470947835 228507319 653568958 424045615 797042123 949053784 547206132 947563842 685382168 555024907 398602827 850575566 704669210 897928299 949721566 526205767 757113311 246138491 94882348 976809834 205399522 659992544 502510501 590287033 257794983 169199301 342625928 999084954 204768013 676720379 433833673 277413877 282466004 470099854 151518869 257755456 959320638 157869125 510176771 163874862 600743497 820250963 162340195 641262950 783692740 634676899 752079119 548192822 347343580 666962508 236350133 586420711 419749265 610455938 550983585 300296300 223207224 412531255 343629833 180529698 109410097 554729801 810766031 416950918 613652048 456529929 902523734 609960219 71695488 276182538 397542879 429808279 501486726 599366188 269044563 205258062 519210533 256083786 961655479 357196163 735178087 634506452 734583456 764102061 267247064 311171259 605222722 699085365 263885246 927140318 697787962 58439681 846584244 48914840 448985675 594200639 471344471 436463700 70780987 416555375 217463391 33874032 201180860 244281885 271911205 364774470 431563007 281618156 550179809 371016434 603186794 591893711 327263223 263205873 291316168 385460158 202175810 983743764 420131948 524994971 495229705 606706943 802842986 839256734 875973625 396608836 828683489 813125323 567498201 545178943 935578051 550268923 3042805 405217413 270089049 838980675 258934550 912954737 577380116 895514746 771480521 994104649 509194152 279271827 689588566 831914113 309531710 946458671 434566184 718654006 233019577 206175762 101853551 278159866 966240935 284381717 789634240 748018356 811261866 258254980 46174648 954773899 154114607 984925821 844786280 531741489 118736348 157367935 430121492 874778235 399728434 621658093 523925897 22519022 998358476 612630482 344045212 815470772 979856189 634961737 119345803 768244039 906844121 807127916 245365553 561401525 790569559 26881495 377137527 60350850 781516829 644039014 790118165 424881634 535450013 121305328 706549298 397102948 989976518 446871013 881581802 586747850 452450312 963959734 602383143 756702549 607845531 669388737 155425184 828297795 820593176 351163310 289417239 262156832 160262079 869393642 190709443 370211850 279343048 865425406 529356655 669892524 978060148 163708538 322537016 685965214 720731700 220457031 812326326 382050528 28004907 66658170 22658285 600240245 141489777 694047562 501970727 40042196 622514112 382635493 788720653 126854689 422867765 472448983 372460835 371849804 484590256 563837481 654637186 87110687 163169108 249056999 833450125 66185458 115289893 789246114 804381749 984396795 651768774 148814112 665520790 814567385 479591667 570248267 365938900 138545454 162978884 931362977 391945298 454367820 178406136 989118538 64515921 556161380 325728692 586107802 84208217 429530445 53020887 613459455 366914754 352896751 310064011 984814359 35291524 596783725 75973243 947639012 579241382 477452056 275677883 29905146 461344621 789923853 548066308 27498427 972530786 564359817 620706150 638515730 517217739 784657385 403084288 639882939 671095613 371263686 95793115 373358438 730805313 481793003 679750713 960032274 691694944 341660602 994126005 581307197 133164686 528600083 144930860 406907312 140752527 415950753 638492972 991497385 816962187 909679886 279447508 630492611 299593432 664079621 868738021 997989007 671646357 256117883 965527558 628656861 958350919 438365319 266410172 764524956 686466204 357267093 153057224 106597971 83333249 539847226 217839984 817244323 503557362 374052573 424103604 302688826 273118030 221279439 428019205 834689 749538145 760725287 318508315 956287476 334579838 64970072 469414726 442212214 530051668 834989381 148061089 975587894 619211756 182268298 302058151 908607888 475845937 655214183 82123350 847426015 513904592 950676643 579738566 181365561 559634613 217011766 249547340 598913171 76860269 782625322 443543820 184678489 86525966 875926505 112099086 508075009 266938568 913644092 768089285 986640383 782254319 556817427 138588426 856404758 342623427 724852311 335970135 857826807 954766697 207083408 561591779 845372596 580214468 588683477 994389717 846378289 696056724 751094302 736770721 102111004 587559953 49331667 535583391 637714986 784836999 108209292 216318252 609600539 572725325 441704965 152858813 455402469 298729067 828407086 526888021 408878859 577180664 913134124 880530456 219095952 787704794 186474353 261456590 341001192 592308719 398542064 872422829 716985389 101574894 386372169 493195770 822549570 298367541 332142812 937676943 750257432 571552893 251383489 572718082 273456873 532119154 831602806 677377428 663584530 430614002 430549402 706606981 924845395 104405533 8081210 405257743 713128459 190165157 109142991 375759998 813015319 290655688 57459788 879251390 398942108 309777167 551399209 924403726 292257663 284622835 296931295 424224683 451982148 643013577 193270730 797275974 117644487 155207009 590172969 157414267 487700027 223239717 424045417 918619139 475870618 568282402 451968025 294789238 725797896 409806514 853302307 796693553 313742777 426177611 317628842 603245553 366488591 127919662 249702836 591233147 481930537 908398333 20318066 9930359 284661626 340348981 952437500 542523815 419020580 2122433 349379083 808154629 64533889 626492988 931374440 393905064 18090000 700630231 208148200 473491115 675747315 605204504 278317558 771675236 709050950 237730310 229612902 302103879 626672768 85107607 523910928 815318902 597632470 408736833 524402153 235277081 362957734 883104441 137372715 121738396 741774898 919460104 12739231 168697853 287025705 30214193 664100315 984889021 765294227 316255639 62454577 163456281 755432023 359918069 33113258 294474648 196891965 813232866 647932366 72556591 463325168 336691395 784457218 829933100 521886655 81877908 190697738 919468391 717615111 381894358 543449141 509338728 23067599 227660055 593888750 290085347 347250824 810945319 726177414 50651749 165136523 130587803 251446739 73125578 990204731 935969732 212501615 573136393 730801337 336690513 737950983 267601698 885402614 313042718 858947658 443891410 738199721 341416979 590745 530191498 330618547 532423859 2828188 694254769 82470725 196708827 670485011 921827231 46360823 287596739 239508608 409423239 26045519 56895283 995864653 50860354 898864494 77821408 115192480 970942883 892849875 857334623 133449257 626732393 637106511 370085618 969782637 709806675 7609287 669526391 564149089 836963814 94943212 784636185 114058205 428122064 945650992 37168545 611087803 975971648 400580320 605363142 868274856 628327146 783052425 297138247 785812503 557756768 317641965 566500110 786985082 755186549 29272721 575428181 557691907 192351161 417292314 884734151 987125402 381933625 727734955 837160912 870497893 417110529 643089297 60375140 193092172 399337549 478911977 873812933 593940557 958956847 839083890 898670500 391592480 544761511 837155277 963707159 510156137 976675684 368053371 800461786 377588578 728599439 911869966 434364568 191335396 145832599 850779420 820852859 595585656 905902589 4118448 851423285 77732054 295805663 96016633 325619776 665351703 906726638 628810124 979408514 341178146 992610023 105553649 572699897 433051462 47792325 435481014 140639774 449983174 39188285 977990380 201642284 761635881 14179463 757237053 230857976 40043759 281885213 268555095 26758213 423902763 221152608 448634295 195656283 914291052 563428865 456693466 5473573 707768103 903537696 308198830 846770095 780652721 929778487 720266251 604080304 155180556 618039130 498383261 818712780 101042365 7466872 323577420 11622674 342492369 148603627 837761062 720568623 864049877 560189620 549272825 774161045 518632963 625646930 260024421 584325482 383584820 364781023 812258658 412460095 158234023 344581058 642000227 173606993 72982979 238308613 309277296 611359653 650270324 17593082 450458836 924753784 601539306 390041148 154629766 415383227 4478016 145844993 429128181 588117857 563087356 274429305 62826496 969337522 243474271 737824970 207351058 272559168 997964522 227414612 378711557 667009204 738105636 335884531 19868689 541960382 118523833 485682550 458579235 29249934 93251618 787044171 327868465 633857774 479947212 600721390 625892785 692963153 196999819 460237702 100232981 719077011 103916809 83324216 83319028 498190672 289367443 250897139 436682531 185222630 886374344 296165350 718493055 201889604 398006040 942561307 347564755 924040109 879797225 367815669 12140514 753620018 310201999 133754290 899149780 78387108 679648240 992285584 808409804 624576447 792717342 95922762 529481866 333160468 878018778 995361889 20670543 336924027 452585502 123043851 677673054 399004605 306427060 788030166 987525304 715067905 428462363 927741530 494381225 808100848 921101469 699896156 984068658 941412801 617922726 665375191 45830521 177664435 855290398 66205014 183669617 482134401 734673871 372575408 771158861 599840929 166415586 230374689 77920100 736128911 130087139 899737561 78485106 513346842 592009905 89843546 321727515 935292013 283832026 228357302 540494916 835557806 927254920 211209566 705593271 10168508 842641628 59762677 989659147 941960653 941937049 603910983 980238107 317809857 37828174 965383366 945807291 675688401 235865718 423839774 687624831 485024840 281722699 104405279 365432381 974412258 472959818 302504014 203579480 169155399 442321653 435785666 9956032 171833526 532832331 770920575 818749121 475211988 395295646 365532076 964862416 253379956 101235782 677290833 140658910 490608022 412618195 262017358 602740026 816957123 378584468 530965091 730612792 841706177 984839703 277110206 6484151 996500993 92334649 657793714 165510085 242210223 314516009 975409557 654366037 608571980 793677968 771355246 697569055 679355445 921756004 178771866 383676836 647604126 630790249 46256534 130121614 609633594 529323624 352857976 843048424 871346925 216607243 730238350 594035892 517679919 237230384 611975852 89979746 58667213 61873294 697448680 313014291 974936881 523783826 975888804 194986990 945428671 749305547 381032955 804148396 386083250 933424558 20382563 84773527 257231649 425455229 132443253 702282801 326960103 771400213 968669215 848966831 678725087 714217841 639483826 397075394 191012669 996645301 439863554 342532963 587697713 570622520 166527924 381218452 172926149 707674775 338739884 181233287 141303649 542427002 37682568 112444735 491144446 843660164 67512722 840654302 459831999 224489744 980050579 794803897 516797949 796761073 766589473 434339892 351766645 127046405 516166411 226836980 431428114 921025595 342481637 240257180 570794758 52147412 549124431 110584440 925339331 24476952 666427936 769100803 414623737 812693637 441819107 441688472 115601500 287509314 974057 321779879 32336644 736236309 211172831 590199292 538431099 902206823 945547687 303225591 392472112 166913963 718668367 745237268 980678804 99616657 941398604 685421913 91721475 816227376 861985234 296886696 427614942 313442544 21773657 953348424 478673451 278059239 655291092 738194673 368246156 818233931 846385465 205707567 552228619 338678073 446534925 937841512 454356423 382214981 709403361 541853667 486706023 174618592 215190764 501219839 326563621 897800946 904487787 919804713 338325009 144393952 163550568 227738417 340932077 959779344 447059271 833697651 570294151 956630167 325399449 534817874 911001210 102140179 914686927 284012813 9197307 992829274 223987844 260001558 423496847 822331596 351260459 673440822 497675661 422811627 819415623 601131472 722449413 932984960 116621411 55102893 197550128 381716688 493982256 822874535 983866598 53112093 435819095 326833923 584658664 678916358 697516301 894078267 369721258 400783861 865274205 279957797 643835302 993327826 509344053 438512586 543431439 11524872 190700877 874102425 309747965 566548175 91761991 127016789 890588682 982654176 200142572 343730347 896059709 777935118 674761951 865209281 381052605 113351843 133715117 138084004 323520145 271721828 179888232 680271156 26139479 218806288 747763378 720783738 385244419 61846803 697931997 560646986 334828581 532200338 653331316 619748348 138289047 254897888 900266259 814118579 623326266 672341204 775195164 475286030 324726684 506235910 602222833 830254106 34291870 721446152 218831054 476548361 205255104 967295861 801894052 774168527 303499862 736449970 861970375 386045147 438540835 694332604 466609838 992190428 59180623 309695670 19711658 697807134 896649194 780915818 582713841 943177820 497883345 816593718 49173014 948332192 571923243 951478478 484653896 56162012 227076107 185962566 498347298 885209752 419634018 162021950 188636959 36618108 625790715 817506526 249245948 142355671 568127401 889231519 830429665 23271969 199943963 885929165 703594519 61817625 825798841 80316442 912770038 816781628 193524394 537245175 609136389 343998222 149797721 409930174 539240983 19396978 576786075 747407034 365261328 390967506 663017594 155064134 911223370 222582260 536687897 987768689 616042516 166382165 890338492 566411026 55386313 744228108 843657708 23404696 997813117 918884824 334438240 167519299 273325464 432083526 864311031 186120431 900733310 467832499 68210697 63667700 271587968 590624425 864687556 914921392 76718926 737818150 907557163 633519031 68934224 118709593 106444833 563922000 538063038 594759521 584251484 554867284 197780070 992553020 915931238 739530638 763886541 234273482 448219968 323782198 421699087 121365230 535243937 509526718 464289570 762774766 518213252 672174284 631170640 296165959 80477264 827839386 326591723 383108598 131697302 623094611 130482638 277714961 641881207 732648661 800678090 741868634 634979748 898422951 867779434 566266848 130041197 757182714 816975126 766053863 118058040 915438820 85497081 530042081 116788019 624429688 707593292 310422034 622553309 960529971 595041673 331928808 217259276 457820069 118109664 434639581 989078395 50550680 18264461 202652044 66770225 596004116 239575423 942321329 562447141 963699443 246380971 885971457 979414714 16284162 529283754 293972190 931792290 933460311 239408596 874572988 573661854 691241559 43699944 909640112 68214515 895219242 448906299 799821842 459162160 200039488 198238220 865706776 280199818 84816294 489844273 328183672 383560461 140642812 809455046 503825908 357720159 542728931 610116803 409499616 713177805 413528070 574491073 137141317 960692140 221246823 678974715 872858282 317426837 687247502 181971083 941393864 559751571 728165837 636842524 537192981 180548631 640164137 76695299 749922846 804019726 448008548 798300451 188439524 731767358 730114324 716741914 526255755 51689577 904724862 751112289 45099642 265629146 619596774 868234957 227849538 430141332 474919598 287097051 311469121 405782845 832859724 251591402 399548550 484023851 175304907 806981726 304495299 6627955 277943808 772221741 595741981 325666173 465698115 540575556 39681875 357115714 254054364 865395913 379454402 974412347 757765082 597053598 775054112 580448329 316443277 80143045 216357990 73130448 401862039 83857325 409774403 653330138 959630525 429760157 699976374 832503271 218285641 698690044 57017245 230702941 676818484 812018084 908067694 694729819 157630223 346692405 806362061 739066681 424095229 764728507 439448903 5096126 224044287 426519731 33834403 24112626 957139494 73039485 696210976 461146337 332403667 497311942 126738890 974246752 212280955 379303735 56507364 36021164 274805955 687753183 716210492 926519974 431244809 336430987 820619098 820734446 712761530 805915283 588792104 665293482 433406248 3817006 366324992 842033948 992570135 625596532 236287052 773650547 693793793 595169060 446049667 786560781 608854202 255065031 775965363 385100951 11890700 205349729 284910528 604692497 900626456 90146446 808633389 313955717 946087441 434953119 882207663 285253434 74124327 174600824 491365705 450265160 498961160 492410896 828250322 713841463 623061317 483884004 631821943 955864869 645634663 497983626 944936694 673998348 553501105 414979692 788732871 121770327 884046761 561964892 348080707 29756572 111803080 516464672 20197079 495422668 508946019 382295459 158408605 964957222 768339543 4327970 457035031 957921474 531667449 984718580 520379838 39881750 464666425 688800943 190248642 26749505 729206641 63848491 306200581 754773519 809359547 927365973 229446438 925380467 536742319 539729074 507631323 576760440 106702690 254859711 334860561 929100556 56349685 527613582 406872106 130025988 895718872 48014740 357406450 885486558 617488045 144554302 752840541 495463904 867840231 857304452 672886535 729504041 287541578 934128237 697961141 187487270 364270197 61762309 863797521 491839407 552656277 259408660 87815704 597459913 318657191 450948432 69613928 155090429 688005051 655300188 29414113 702985001 50709813 614750400 468605465 211116273 394553965 798789879 951804328 926485531 484421289 201919767 884146306 344855325 143544660 974707346 394805202 574945230 536414141 950598031 606388178 380990711 98058576 656609140 982326806 86616701 704379368 185326874 753859698 993418764 347896359 54965856 946501153 269816045 359257978 579162308 691102979 397795160 459653676 173800072 648259164 740982190 693608016 589990988 95770060 947647521 146520554 226706110 931916183 59326688 863352474 654176499 229037546 97997189 478653734 876972842 637311549 584578781 987764742 665889287 627079761 56768614 824887936 109363756 553006471 323400664 919694527 516790956 664287263 617355805 415786300 927547210 248815218 474312981 100217469 929551500 555038702 836328293 931764495 635596886 589015355 989776299 314833630 444239506 306212849 178292084 636308234 999195831 102232834 381993444 870452840 611579217 680787289 405649483 577553581 331753165 343645686 521219649 452745329 328900706 770175607 795736149 230838054 766491048 615402811 831864684 963534687 405229006 83439852 391689902 68195723 130562706 688119949 925273290 47960271 13676732 135962104 573539636 112201697 994048111 12935620 713163187 747283840 508911817 397755866 251660344 825360816 93025203 305302996 153808454 647472992 992116128 630044491 603437521 185608008 644477291 899768005 301068552 4397276 810466724 577872720 239363307 783347507 391196162 133208024 991666956 292557777 985867205 771415038 408290813 174373669 835950914 583613081 162186232 448111762 772538346 505615867 134946888 492554366 110340885 337218202 473537631 582234858 268453934 829802042 544827060 915105396 618764290 79534681 854460994 127601575 982536045 206671244 846948688 651936473 136923545 207678518 845561849 196189591 354032046 139986881 694679711 205854999 467207737 14728856 94091600 311790190 554091360 842293777 407128528 160378068 40489085 42600166 164657060 870222078 378082403 343147042 249830748 137096900 343986867 814629906 396805071 780141988 220793333 233597680 604465524 355652157 604752902 698421856 365929005 711550766 661929531 946215882 888454424 396587453 32530561 351166291 299887619 788542630 804702682 487987223 459572949 325342573 198145068 998776972 375141721 452480082 889681882 342855281 209041146 107154589 404759309 380358265 309745278 164061349 924078013 399899200 314663776 832772508 287578662 756998485 134897042 318034673 859753752 418836995 804893469 611038595 322249638 110559449 12704028 470500955 954589541 36952286 161837105 31833045 890742723 684978608 100980301 126697548 955473845 13979580 128233672 424522424 817233010 908204733 482699615 171860821 474199987 575420410 633977700 613553963 916858563 356403975 531161929 877382312 451226054 62487893 470917800 291648115 344363111 628170357 585381343 450055067 927454934 174465750 912797014 406605495 164130201 677733764 180555547 868662916 945444928 835035708 540444097 818294854 948138114 336305147 34200371 799475591 66424973 125760688 900381843 942046712 882581466 261433877 299403457 75897495 271198776 161083641 496357166 723648390 966827471 513858439 659707345 165642476 768442553 292225691 404440229 413426231 28201945 808824048 635906244 204198140 201162057 386267424 250162638 427717585 538533873 748315995 13053644 319286797 802743712 436915079 196607699 421582027 789859939 808318061 81489451 139280776 351280445 251959141 960344109 454058534 546984431 699079504 34275331 423583191 932332070 279828490 972834908 413935730 706939887 317721133 870216690 947325749 250436539 413143588 730114947 407159555 86847707 29425677 681929233 233774214 880134165 700978467 330429415 738801442 546643862 559666683 171119175 800320574 575442611 281029351 874774732 189757015 313239663 815329513 555887630 402551885 207445158 245513099 771208859 286931692 154347690 17048500 282439551 198529321 379154857 135360663 279628236 59491278 409367127 239991111 349032903 534081150 690811681 642515437 689935849 106998974 585860198 820468380 539705427 269678830 112839228 769488784 745367960 992139985 151321830 127906969 23642774 814390588 672685386 376509895 370049403 582177800 592171542 98265126 466880858 259905211 397824748 926129178 297572975 535960056 916849141 550945074 792382689 716562797 360636292 357429843 895796584 274325659 997739339 608386857 307482493 809948825 736762540 171081481 980934659 808961670 640762861 196415158 242560886 938005571 303314109 11125983 200738641 606466481 299617315 811501950 167173688 278565953 456243105 247252562 650902381 512120296 592220498 573760920 549773045 998393635 544581870 348564146 176979924 337087304 664892728 825677086 544430835 345117725 836090192 170079398 799384639 838933860 25701178 266100765 472965448 135386661 253194063 52052550 44152745 942147851 759638731 893634314 688962158 739838035 879263804 937751162 792013217 346154534 907791906 530035106 696747055 88564600 737563575 819680929 420059779 1714966 954174715 469986890 38800961 722632728 312302385 186305 160543466 523093748 161422506 994862651 161380111 559951889 656190513 212192554 281663349 553718617 151586460 46565291 550709896 50011355 480276772 618295813 978259180 107626642 743451817 691957408 576291091 489397233 474310020 256261561 745449929 364492971 290916460 183137475 792943886 18204769 470826094 528830222 345416918 203437304 270696569 390523237 96726191 436241899 911822251 216892601 893763611 687501028 268590654 694183855 435457048 681992900 491797819 326175539 957433478 476187525 214398333 165389620 451795975 670819763 410990772 805523817 257115892 480868426 498195432 833171845 201644493 157627779 340009246 795853300 870941437 493055846 829127905 125835864 526391397 456697169 893562430 557291388 203761219 475287936 58980823 481101372 648563885 907657349 516288766 756400793 39362858 667527910 676439494 89817909 612248476 248088442 537590913 883076615 45224769 370753571 804464559 568953300 732341518 530977476 18350525 395624677 120213534 338045503 893995702 621685465 743731385 865808429 66540842 93283470 445864508 344621722 701606526 287666387 944920870 929096951 692734842 887234356 890599043 192789376 993508981 151243980 916867747 366208708 621436303 277267318 421137857 479424910 164644403 311990843 989390035 709918221 462889670 245447339 653766986 294109474 468339904 462235276 122158377 802188637 779886984 226390809 359708664 630777143 496121805 405837325 506455293 281695256 375934272 356177554 619546766 426744793 323208479 565741742 781760579 415191423 875325681 26327001 205897830 2066341 531555671 34404151 328421934 987028338 299416714 152158735 320630621 898722711 802003507 91211501 478721582 798620758 676145946 199209319 331006880 354865582 735623017 845031195 374210120 71277228 359493210 161315869 693891544 166536303 50607164 533006756 409082471 165959060 235505650 952273123 348566439 61048403 509002283 620181126 36320858 594161629 173214559 412981216 758585941 993201278 904418441 767704830 937704149 427637028 489344152 235209756 333960053 71023188 370905729 703152097 507704644 990071196 348932991 402534897 281660864 878108969 684087467 601015629 463476322 254847674 908015520 806001951 245434269 595593075 392058246 166025267 75323983 736240380 306550423 833346414 394886931 119093993 250597090 402560818 924944024 453066554 517440827 778685443 477972249 377527228 370363341 192866497 684598309 793795238 85042991 868928014 172520738 128339700 199674964 121032446 432454041 695057199 844381000 364170146 456024273 899701713 709802659 411169019 949824672 711405165 179479734 25506808 125871019 464519532 660350402 572043591 681855191 396502971 487022938 262724071 467637049 515635582 774182154 75541920 738235873 649412034 906755105 605489550 155038047 807243034 787512690 379107715 402434394 491048369 553109719 110863250 985395248 691998843 690180564 264789311 342390408 441694375 587465890 33216143 358444996 393181908 848587823 681414143 90803981 847856847 232747345 812494488 716182700 511147857 402360845 124768695 680546910 294879184 6872339 508730301 563389431 662776640 478432387 751167863 703503243 61549550 452140772 752403042 796160296 282072284 752859647 659272485 731645799 843242166 344200719 530660080 695096927 103540667 532712960 896116787 851823692 505555220 787861995 581797642 949089696 891234977 106091819 698866771 751369685 3059489 603862101 281121788 290680333 803248863 895687843 588138799 74555348 822779939 578761324 331380597 78819248 189283946 716552112 562340040 506337846 340975131 190490325 747418888 684683486 608308143 767956287 930398690 889836356 205998294 844173968 935204871 373312602 138315238 670843741 955929925 825647731 915181366 707964638 827679674 427583848 142834121 575083277 562636295 839709022 288393295 198657740 555643988 435213500 946013060 939560732 736483820 144373922 34718657 92681631 198803782 173778527 426506716 976943346 953658542 772528271 777760857 938467826 228842939 719716078 163610424 78612034 661184897 650292684 981611767 81269501 217971226 51303634 557789128 85674901 877190802 489252413 885583056 64329252 443723892 697164574 261848778 185732874 450498120 925824939 647786797 587349261 446695861 914829299 571700637 153517833 916235007 356159445 634520194 492264707 590747201 681706547 663435940 329807218 200039654 129006458 785061364 135631867 671768027 65271898 343867995 519618293 114434748 259566235 632629291 758494031 326007129 796158416 716051917 95472054 199016555 446692660 604801628 496020371 368095879 72749880 850431655 179973152 852573232 181482152 540900882 741862613 812470508 728410909 207885017 325113825 296232479 264597084 137696584 508752185 310450763 630767731 608299443 339195470 479096258 378023316 213549268 885416934 543111552 444324963 707592442 616015094 846833306 870109393 688794396 563676471 23851403 600854570 166314337 513305293 81629410 369765864 822409899 718447807 504766046 918483778 884706333 274065650 384000446 127539228 200163067 917081962 852936483 714892367 561054378 703023284 661762944 900613613 695720375 155190272 848552308 547801368 608102595 988432864 10011416 316712728 113994886 343587601 552733956 865730085 12043815 210614523 638483074 945877737 349714798 947248109 794265079 839194720 332273934 594543048 704574350 944266548 75780294 347009598 798989101 365949063 462740256 380472635 559125775 165224884 150726992 389412643 430268192 860990615 817817682 387961383 850677745 484659373 129397772 869086891 340808655 358557634 410201667 271385350 773891304 902404289 13248035 11344420 120160393 530278917 718539695 666125094 289664320 834660730 425061343 810071633 75253337 7385915 540179945 657115899 998393420 331604809 866469841 668102905 461115873 870550763 940475672 572053265 436130606 723268313 323231049 264024710 339512475 833614422 269581434 843317836 539177916 899409425 293156439 513635212 854124777 595892893 818646910 102223186 948322210 485718500 131467022 580315213 926013542 926456747 3864550 916755992 993195026 81638147 158871447 256092977 880792321 979189099 858034657 613776933 431470316 907343373 760987134 644183407 936131777 952493322 572448795 327751707 257239888 39647443 494764426 407057749 642032297 429428020 165835386 445711387 906668175 673266532 589818612 692270433 583691429 229554555 747300380 388492066 870403873 346682969 114377148 477607591 249368761 960321832 44425852 434746833 197702405 964531336 696911372 580434388 58924118 295080377 225079058 451671531 385849369 607669409 445590305 931845140 350352564 117035087 253893855 310486844 775715363 490049123 41163793 960393942 628974359 809117694 24185491 662154562 46542107 948893962 255830060 847612509 661050935 850379407 960184099 711129310 438353713 676455680 208902246 820291177 109656044 304824548 551786958 34282030 709040020 258299810 454564098 412813373 412565098 83438969 232241149 536132063 821640545 630571335 366227050 81618500 254289729 536675769 150785235 140889688 581541002 977245462 566617061 109408815 567271268 402823479 351350477 503510956 751585612 705850481 100481101 50966985 298313105 908097952 141852936 129705667 82633905 172599657 667848326 283824304 181798113 903827985 951789213 145752180 316629293 355963410 600027224 102092016 775017227 956040050 998405755 117962601 321552506 902686894 736414716 19479940 635719376 76501626 665881414 746044601 567263299 421675124 123937224 616478827 368561861 384364314 223892211 964338259 659645293 188406365 902484620 384265809 252347285 259458208 616062760 162466961 499808099 559811869 272373166 774013822 715057098 185412897 986567752 285513190 580068181 876709758 573835870 646044689 14462731 46245306 113608961 736325682 315285746 252713660 276881770 109019074 153939239 545124300 730912812 611435041 413607793 528918911 120965405 929843422 156123974 759491460 779321187 657723210 11767164 645073365 606014976 283681754 564060143 813260286 862346721 232809156 163246877 542045097 412248883 651732775 433959029 789882635 296830248 824462066 689963919 563100436 204018436 335956392 792831297 615667896 205947115 546787235 730970399 367241402 39227675 245935519 473174476 81958157 134164582 686767572 628692180 476272940 492987100 692378482 951302401 914774566 948611546 106964933 102850069 30840910 306759729 242653030 95584155 398275424 637848812 753656901 567212145 747992427 566861252 589600843 238867707 682986179 484890480 718983515 735721736 41370514 504177768 821652753 692464603 992689289 652194713 479492070 357143272 350828427 141474223 810035150 799822881 694186869 779261055 965794259 454254175 770622344 82454292 305058807 975850747 484839458 537812755 646830636 726070690 952753055 81353816 357029700 40610809 889521109 380425549 916823930 75712344 481102097 249015539 532114477 529555758 543268679 848912327 873754357 648220993 405948873 791540795 959914165 974822114 458687836 6529631 584575322 418439928 10793054 590009645 916033330 508169286 398902206 172247865 184329509 456795584 810761055 300975746 197604952 462920833 763640115 835312629 121100385 952804060 721125400 90275815 301654277 109735195 450263569 378658491 154873959 393825068 802923454 490052667 955470070 549634775 282023541 42860871 470995852 118260532 621275041 938032378 964808275 468338516 561491242 796700416 210246061 824756678 706705749 933537879 691527932 427347627 476631592 453816662 79107219 747668729 200028473 300715432 910976807 485015374 448441030 100799106 60044964 709400859 964368364 25653576 245061401 48191084 466834091 279675905 605575418 947144295 365675784 77874452 126787299 166442183 648484505 689928988 389367783 663258442 978829912 244908998 982464794 210475271 129114986 842154972 659919248 361629383 803683941 419523044 417337573 971748934 716735979 303678029 182311165 148071744 660561752 597750116 202134630 241130098 428793040 604883362 777699958 953380803 920755480 234360829 168293323 485545612 905674331 416181262 771600494 551084975 179296613 245810331 593247339 446027506 546480993 872767142 982793004 368797031 119056520 352500793 936209124 356526719 189243081 697787139 945491942 569785352 722940294 417713246 301774677 116289076 295708807 915196050 274279578 682709547 815354133 688866905 324317952 11398912 834550109 664074159 289671329 302866515 700100837 362075876 324607021 111190486 393006730 811350917 582513317 431830805 763216399 320925223 726406562 633814386 951634634 555779220 781509178 135427129 192949152 845254177 137724787 245103703 865213534 506367176 513436501 200990568 942562766 928096202 680050273 610104624 936852172 1080069 793642643 36075908 869490489 950936623 715480419 541765189 442685515 468136815 281484128 605355306 351824624 67174648 692933934 783060565 141688997 375959052 136128797 309514733 316204735 815384970 780619078 342564657 922956519 296083484 793982135 961631942 436626613 583666753 40410630 384143608 14312770 657653976 952200933 258885122 940164294 807199245 669704320 132767149 339644791 619309738 275392667 444360350 618380715 692695960 770585146 341019180 278119858 289044160 364766167 384793233 41622242 581303573 144800687 359659947 408579909 649335603 507675586 722524030 351976658 636100590 119582481 341097903 778077550 83775855 417826373 60916261 560076133 937945183 862379699 404840517 861367150 889255627 788724343 337122350 294759249 891291142 633462596 369387083 62208894 433617141 870856561 385806295 819863455 752566965 352704412 91186728 41443001 66942324 156459941 550824618 316137251 92057126 787652594 597899658 10420650 51779472 319678756 404159940 81645660 995211185 239514307 50626932 185781742 673520324 126718453 214013127 514498743 513058000 28374418 433143541 207739708 309580451 468261419 656071793 944012894 318532003 730674783 383815240 565483035 658672493 63067633 5211942 535873332 657453671 412117461 122484937 748190800 252139442 903969400 653965789 552120836 614105543 787616535 675233591 643161469 410421218 934192157 246477359 529179625 701088621 231048665 524122892 397001044 617032060 368903446 431616714 298622877 851178477 833666698 878984917 643539345 846794613 262832679 396080863 452252888 599757690 820703840 625213371 697336022 980952222 112605037 530368978 63140775 214596175 660747075 815953064 605581031 906652981 548857793 165269099 758389133 307478557 300763496 217596512 485705540 844775958 710141340 555094542 837603554 75965734 32486180 758551188 863497404 299829847 531234499 101486864 292412864 157993612 545674592 374822067 349559478 748588136 15565825 355013058 75065526 883525587 833308685 429157215 499547851 149050944 481751074 118829302 233332614 162047691 80185725 427755834 47168376 891422254 974357609 820334236 23026961 618143869 221091955 456684528 699709719 492260660 423391026 715552568 228568632 609315176 430209771 813633099 761897379 719689633 404627892 348178921 461444486 920341249 798372370 415806743 886480211 844830957 545398928 368975194 426510764 498712438 390458036 172228677 560437028 192738696 431659412 63868020 774487809 986466641 585059677 642952116 411710276 265520557 695870129 502850152 407039296 930490580 549436639 826555884 141453979 944492592 388103343 179440637 36546788 148146556 801119212 630450591 349492395 485990498 532758658 192421616 650320472 495100957 210569384 209972523 165278429 94237566 728504639 897213135 53688843 433327616 373375623 918711801 535077761 445940335 17809351 318130011 486609275 817794298 372775686 887597338 822287773 39255494 843169371 468108182 17524887 162583700 917795226 307420224 365599675 415061635 38333324 822483460 187901768 758231996 733119542 771504156 172914298 832812401 187468927 890678385 120704868 346941534 252524629 925441073 156946428 397020421 307975548 129704558 881132089 449337456 301979231 83700583 436215043 267211514 522207880 821490001 562034805 648734745 320883188 658394095 208671094 946501645 721187991 58398159 674518172 495075599 399591746 342131795 461883490 556363013 89287543 521692595 354671803 638933776 802585566 435484536 190395740 494311158 790233802 340568881 667307424 830334597 222640936 595359322 843838970 868157936 836018534 850495031 619071536 611630118 491999163 994540019 637923563 199341640 435238452 667933750 816656621 173689922 555250977 218082806 986348057 698208416 526786719 149423440 987444282 727971877 27916211 511408024 786475773 30979748 822549493 22933822 784400274 67359032 444731027 518660160 737770289 328238619 149893671 158698877 543982413 909755319 418095922 696101423 709739584 714321098 948922230 802769513 345962298 286426213 387047750 595334609 53789399 260298246 662138282 968659644 949497768 120375936 625385082 663234513 335969247 108932810 591925040 481659334 829401947 361487366 344871776 944233504 977187042 255158620 376475451 760450573 823749881 917677690 204488956 899022118 251539975 499000710 551774679 270819425 585608052 847086244 283666185 422095591 661889444 982152101 628593090 946714521 713776952 930184383 208626329 186220997 902603804 724688107 376125006 91105428 563602130 501786783 653439831 21732363 677140551 575588857 500316250 239293304 246070514 599981383 51184794 581980507 858376300 224258129 129698589 345350964 481175277 988327217 32615039 938053104 752464107 708076225 670535114 374000079 38091719 959061339 405472645 433885486 989327508 730391605 878957940 302031068 429793229 118571453 440285293 480196622 808729050 730863065 459707821 426467905 622212102 194359705 300474910 204122368 506912103 935786154 325368840 933975843 54652143 704593354 925494736 489401656 403051201 256180045 608821412 714461562 592701364 46887573 402772421 127311180 490979075 695021655 341630329 736955497 345551882 881194766 532042868 791664650 21959812 867847724 763230559 892502357 113413789 161115125 418113537 456680749 284002860 428496201 187073966 130047554 83817472 463266485 922450730 425778811 381890245 856294266 571058144 334013979 744623792 471214415 507618912 4550596 354945781 303756471 839693050 449644370 736837874 755367169 563198484 631386995 83228666 361632127 71536113 971928837 312400383 671877538 588857063 677185993 55831005 654927602 681003507 24330465 316277309 551380395 255314810 295343328 124609026 223904862 312038780 679089692 959473146 985525594 848664910 934631204 237918001 352570941 901493505 196263765 127756894 186389530 239621584 468170522 110212650 705844604 231976570 708186680 247205791 665325437 17676330 540902904 602170455 291011077 302334428 891813786 913281314 523800613 732283602 166050594 638499389 645845019 278087265 595638014 574173391 347763729 653543211 193036675 307027526 241484017 635147040 148613981 24907979 796367483 442487324 573972791 287763279 930328289 943191274 251285145 113130340 376007724 331678737 802292637 714660328 406397073 970579431 506066766 396098949 966262037 983917211 374635535 365700501 235452489 911290577 887683813 775771735 819925127 591297348 280404688 585893962 922087713 746700344 783026782 769512097 91649200 463346499 849408740 803217716 860351461 4241744 710209906 249607366 84030450 588530125 676977967 755694470 5789737 983503404 258630377 537535424 819763352 771531072 538966598 584932711 281796584 127692286 731509622 568346239 890077154 707701796 66402699 295939933 174652236 258450340 640015676 47702346 220973890 422477389 94160396 14020507 226825226 750614537 823920752 17870738 687542667 522736161 657237648 345790438 482710320 721593900 849961625 57390321 948710508 61137644 242391217 891588024 394518 341458760 422805835 762571473 353648602 218144384 637941791 178808352 55034292 496386849 808625811 613857827 595723379 278997906 386020868 674022232 823696113 937488968 552942778 677045691 945972130 921560417 388480475 409657700 90031368 66619695 122333790 232933929 761276637 982188687 185814962 353389782 896769296 881944418 717801818 810844363 308275516 386940002 580635381 823368163 974038474 649153209 420716566 334974595 292647003 830635650 846381053 92063187 817319229 227850298 600535708 607587703 989970149 13738003 39145650 406352950 254282838 964982616 299260312 125798908 783650472 204197258 378556215 458385411 570320490 623571856 480316047 484317451 758603942 952118118 256138170 430005729 252997764 787254415 500240989 764700490 624015844 38326709 290511342 113509125 512421979 104628868 197328327 577162110 108470291 148707452 153308870 201095167 919515053 653284508 966886779 875213226 736795314 512772273 5877400 778411487 325557202 274574597 429847793 2276497 585572489 336135629 735261165 787456342 49923825 829600324 671081397 534863681 314560748 589922974 217818255 720983282 142943763 960278603 882450417 453904666 318844279 249280333 524853014 979785166 79689711 264327481 674891403 774295996 795488452 844569038 799990511 339098122 610613163 727096081 129391498 526393831 978248144 609999761 784153164 562290172 886220266 227022417 825097455 654234920 161858753 154735620 951217017 902662321 408313639 525130017 104137761 592739249 615125908 861313518 426275003 904148508 272834567 273009972 704218375 135695049 768882155 476488889 358650650 555419927 518647354 626769312 233017655 231777331 125434188 259815217 688480212 83099423 428355330 789466305 18199520 691567137 615231325 76011879 81038605 100454246 806606883 265634166 468444119 602152283 873730829 512790007 634462237 690963212 547547101 711815533 678142753 629890192 737912751 493793748 581874344 542806402 407436549 978058184 910792389 188975798 250319450 110783473 402313239 51537527 227401176 683870145 892583415 40273767 796932438 36596242 208832318 704275237 94087957 472343478 362979482 620825625 15270573 163271550 984488271 79867630 561142800 492228347 73913160 215512385 104812652 147298135 880604057 418208191 228241350 819871509 851184831 498036658 264090833 620505511 436175017 323389072 419671325 903754378 416835691 700234489 669924832 761017155 386851383 593873767 77920531 218445285 220831999 932197532 334535910 860837180 199216045 242196814 5338015 739121257 476310278 707412753 759967171 456135939 879563268 831114726 605398531 56595199 632936003 979907881 668248672 870227472 105088171 316003521 737029833 739551788 54369635 949486716 567143073 790428688 88292455 592738194 280976772 274295586 582014373 505944553 614686676 141860939 671671701 870555085 40331180 309257943 696451518 914758919 95818105 507545135 204851831 993974771 608190799 674231729 282240308 583582459 266165748 634210059 325105596 15762016 309358082 497474254 170815597 691225971 119821543 459345872 652221203 715797330 905577777 197662982 950394636 753739697 909313174 727508584 35604335 95785810 55317281 517865595 809707875 473334713 45896957 660431832 623662529 637860625 847352862 931378520 765711393 210080562 949156750 234309931 796708544 999030171 268499278 842805336 472941606 60086457 459368582 756607117 778717551 794387875 187189116 927383947 479064042 750941396 783459919 434598656 920130458 451600551 446324727 314135494 234741132 146230018 965415135 211621536 121426577 4162955 391031771 700493868 954765498 710793341 990707190 499932682 582162043 827370446 317193567 874970934 957259944 297925429 548283969 315497169 797638586 585539472 822458930 648198090 102483606 382526635 816399691 895128851 971135003 430295674 899313048 256152508 11987779 979585645 400169444 370942586 527032165 371157844 797796761 133088787 889423729 624364133 940321358 588189071 688081350 152569952 947681493 133964492 604205475 157691657 981760324 749536085 514379033 706807256 646018047 87802839 933883343 972410115 264035244 504808340 263820148 707628960 704881670 756514463 729157155 391992542 13905304 220271908 595554516 262272738 48218389 732215620 315947689 745403449 434593896 825439230 354916974 401107879 514277727 636409661 348563535 762494377 586755655 547566021 255606587 163168942 968372985 442134183 408500772 786505247 971530228 786923238 796700812 399767448 86200483 805652113 892445107 845598913 311212011 397084275 578204361 473569725 532431417 695168221 332795103 825264534 798958391 943953596 556113121 129982388 70198909 15157240 436021811 666820926 535065207 7683037 93189554 414284812 496719506 794414145 798289473 961468727 825369729 610356609 356668650 738157806 406535766 989052094 708072097 814233096 980940923 910136275 26651754 96987882 128490900 733449434 49678834 92728346 751211736 664665753 438017040 199992878 190972560 478610601 652467398 536334784 746903618 885740560 475718913 358743231 836924802 27877298 39952964 273865990 115432471 449320585 19453979 114184834 445449537 561605908 777661524 227655855 982357475 555209867 999252723 735175305 293174695 8542408 774381295 833882817 832541917 443653429 411577650 901553956 895442033 709150170 709453373 269209788 780679745 39585457 693447538 597071264 957438812 736950728 446053554 896460467 901009197 142015412 924492814 551034775 716695870 243884722 882747874 920944485 831267016 101587122 405252218 417125859 926322689 332873868 79810380 373934673 997630308 974371223 515602917 202764970 202107491 257359834 320437651 662399511 542072214 608727612 166116963 98923041 233859853 642915 223046574 772917088 41052378 373275980 697188340 995825821 254889066 866773743 442160508 996837001 426423292 825808107 295852647 975381177 412590024 940855639 472630735 712311938 369355724 17345017 233935271 442509726 578456906 650466848 181943556 697558328 232340686 200782566 806235121 181431659 602542994 934231224 488664474 332008579 545776153 82602291 446822542 346979756 719040927 546925225 74193026 349597263 807068732 763049162 623102641 522199745 932444003 151004295 906327584 158285704 988886269 196411241 390678747 919266795 112776977 198465608 413465407 223408425 553470244 416894126 182715483 231410503 601739944 259093669 855533565 532014705 218477873 568308345 977876582 541725961 580147822 694852558 898617062 147927192 369115514 102415186 283689929 841328621 945530413 820056840 102695254 789786284 419499205 639035605 616399267 416043842 538398854 558569524 284182720 291821029 298075912 953458820 440850961 472055104 289400358 864787060 620198917 534095782 862434631 413004515 310977989 646397770 445309798 27662576 751818370 849299182 464862287 631137927 791464414 97316304 955355480 618104502 803140333 941995323 719293495 416061827 532866767 332471371 93099029 450776767 252729263 245652360 28569324 257587087 573702790 809982211 696643771 332248302 863601424 64239076 28183569 269562941 938735374 246990951 502833016 395843735 962111966 637221580 985738990 324405430 473282852 587999662 230932421 293261685 196812032 412104569 217919598 730551170 639192080 658752261 513277864 833753918 318050811 925518671 815236433 284002586 517372895 572360949 24257346 625117444 386788746 730814161 522161615 29263967 989270192 670905977 927982030 322781989 442540969 421194185 849245154 96959209 904045978 246179535 192027497 420721373 518939199 968535520 390394389 377877307 159133909 423701899 861008409 449207406 386471659 163151971 517233720 452007800 180541401 675448837 229876271 145288454 3142511 809973452 349328291 596315593 12460645 870781519 756915032 887653300 435780621 936921926 734363430 141755786 816488718 772379431 490408072 955048430 544152175 631238640 705044738 843793838 654060407 7634450 6410824 106282469 478082409 832812940 293572859 427606021 584598989 306652154 787787499 607861020 730091608 579575213 570827937 713629023 789080320 487302642 670443981 178866614 36131524 505079282 945763803 975183898 470463995 507184268 523083220 388512875 432106716 683097271 234414832 76016185 346562554 665271342 584994864 283487094 711835997 770610680 212852701 716515785 611403464 431339326 136596282 660980965 778251729 803343352 906295825 110962863 687203283 803409969 916676186 389574735 97003454 591896050 795997783 71350484 454470430 411535373 134412815 669570350 249467787 407114201 794938241 136939267 71199933 830469773 954362862 545288953 72513643 696366184 457484844 365273818 191687527 219307001 961565401 739376870 768521223 974227552 293615357 326356804 10414497 115831116 226957249 319260764 238675691 272349208 639317722 662211572 12024429 269286830 332315786 797997811 205545791 422690997 400546913 508409584 952317355 767514256 661457747 1501553 845058307 430930548 203538551 28922792 335981550 980195701 777669992 293450323 42618413 916211184 828977756 857427549 5115688 290872002 484958134 815512488 646559858 540057430 210320154 952116611 39789351 379564621 318801442 990971390 702589600 475289860 743318712 810183886 758834492 42598176 396770073 201888557 563095945 123130497 580714869 985747140 525888561 982143354 598415429 58146966 831169995 463300078 619678464 45334621 851256166 745840475 401837750 184023467 860072536 474707075 28330559 783859350 316215872 194258638 158302266 6528638 378640272 164654355 400156540 194023475 330305820 421205291 142921325 632847757 732374264 978806059 423282658 211118329 857733696 138164122 992373546 880355105 543179942 357278324 202410483 824316736 660342653 300660597 137971244 145615284 655659188 181709658 483304902 757494529 788376415 638814395 406918511 258111171 626252809 256462797 570774037 763719340 700831775 351980555 178463855 327938631 562019392 112292161 661431637 548672224 589730463 875351835 251005745 337312461 705808087 229596682 242609863 983763463 660607374 324175790 213215692 303691121 64232360 289840952 205486508 26245454 406639293 54483582 300824471 484360668 384803878 228668295 901010213 246893321 115109590 385966201 723728296 352685524 661616984 334913153 907160015 956409651 55233260 530100366 507133317 464758103 910186302 879945328 210511944 990228336 103489946 730636955 687469297 407833559 555349855 911968981 380913004 945004675 138486232 723095140 357572208 372671192 855930066 896086951 838213086 558465683 929923840 311322881 939247790 995818321 732235507 341004306 315253931 711271448 133504702 191781311 361869103 962186436 494113765 484325868 340073866 398430679 882357048 201940343 792309910 383235724 58274050 392087743 601575552 551701428 163667144 126525043 551944975 57437991 295756548 915234589 52950652 789017085 453463021 69605433 842026967 692589151 933207423 670462667 140983319 946266160 399834164 73039258 458013724 775765734 801964873 881001244 919307698 840626983 368450157 603053630 274167429 699465082 543240632 691038356 612896856 312603452 732722345 373721879 542714105 572998850 346330524 269904133 756325165 390988072 695215489 70099131 657784139 556343635 221684588 809786651 989809150 578255655 898125558 826179939 879867848 664851122 146315500 344807070 41083816 236666455 107872962 951736596 800701733 582979691 53184690 596958361 318145151 625344728 661137700 16500875 546551382 857015280 971051631 840202152 918536240 306818022 304741624 61922845 832952657 325206024 368454230 920359710 706730907 887520080 664981958 396134109 720665945 974552446 182205454 492553586 545852696 546108267 500629407 120463523 665654769 398681637 874698707 716625880 528072834 978982014 591742159 880175732 439628676 477331901 117556574 806434435 386613426 950154864 606190346 298681972 637069208 992403070 924349351 572645677 326255996 996618165 78110912 369247851 223560853 621343670 574567333 170291149 68521028 62241604 874106745 312518609 484802669 798862228 429253472 722170794 445368090 503147093 298360043 948694875 499997736 531130316 254575362 21263167 868338085 296177590 33417145 524828211 298817756 714704841 532741398 630903249 664103244 56188205 214307409 385519602 733412442 920717083 682038363 461927709 465690127 861981503 606818733 774490298 112810882 139424334 549691748 716020518 248180369 518549717 298493999 331356937 244876505 817160481 357808171 374544833 933012572 184111834 525247196 776268277 642236361 165428733 949810124 768414035 242417134 557030852 902298869 202575660 589105303 550722961 409535009 343505209 134898447 176188819 517388435 334592980 295132240 566720280 651463557 798766028 953233383 290379563 853517623 556507247 660037213 217763886 246542021 950693262 971427132 82436890 733322621 784669706 381791280 342875243 764001267 113944758 892028922 858824562 430421783 511430606 798541263 125661027 376859299 193007261 582746747 91391964 399364446 991197253 153316510 595060815 810563327 158185491 41443265 603344206 334567226 113990317 637778781 479089610 771608534 778207882 809677599 878055688 195823158 676624039 825235512 107444357 513022160 891949061 628414903 157776137 554238731 810979706 111341337 331542592 791434089 954450661 430441633 143501842 207109380 607760943 858830853 274921849 384446076 842795129 237519187 505497572 371406513 985704404 801153889 673253209 697565956 797017950 814915829 108192306 197388612 515429336 255963444 576347996 120974064 933988097 563900971 319055411 54345290 465050541 19579323 208872905 96821705 154331521 249684695 825295464 382365457 575596269 123364495 470065398 765079350 577282218 512695173 434015882 562005471 785841604 474365562 548278334 874418582 315855089 143402689 656492808 841047605 106320307 740327995 208058190 266112291 873228369 427162027 203516251 350131645 126411573 711655483 330156338 287821167 295117400 175346658 247924713 54760671 272132864 349577173 14598653 418021140 335218453 943171274 643645050 516838127 901814754 838633084 34769418 276677722 497827596 511853988 303093034 314539871 848249841 64981604 709561428 674438578 347091806 516604237 753256723 511703840 909254743 268283721 285663121 118940743 598279452 215053381 585631477 365115821 490494480 856974641 428541218 607178740 23452393 183856175 476185345 15006315 625707223 455572302 976924785 479600270 858307527 878932482 696493163 789807776 723071705 330342979 99832718 503372225 34847058 4088670 242122745 583192618 409369836 976987063 164908922 78151061 415366578 993448520 349596698 578893290 921437094 589141170 652245533 9943855 835127359 690530196 474424059 784806150 257390813 302243095 721834012 878324188 714191613 967212469 762059271 522262709 336270276 388728640 386607419 836232427 496364820 307530036 889637429 713884247 328729663 670469414 887391316 32006369 43291318 668013535 541442628 974603862 153807700 222135564 167566983 371248600 317533804 43675459 360896566 981504180 937230575 723717513 933679559 967279648 711005214 287602308 945528546 537443249 108378445 898275637 929854031 6345037 586158653 164596678 453067118 380150177 795984693 598946509 792557463 62048361 405014296 135475550 189138315 193444870 754782287 887448047 588256463 847871053 613104465 458131479 261635904 558814756 916261919 24648467 223112472 845542748 136874906 21463053 119461714 600174159 66011606 737285655 665544843 192937232 158365587 572440728 63318507 119569935 269962329 891146660 452148483 890592783 565100353 321767970 63575553 107623348 829096857 845166291 46849162 866686625 152356429 772282033 742028516 573563429 769360135 554621833 592352 457382398 674158208 848424357 876733086 416830521 588004336 729230670 590066143 851404528 234701401 949315235 223953808 567779504 647995875 55957066 6579638 351233851 286229575 232792221 383090569 189732530 200284927 165736489 162651709 868455603 77547006 228084952 642433024 23697077 167478199 311525124 641634139 209311791 349773937 907690892 104141537 564717054 23144268 160118710 357468350 413592547 20033202 661391594 859867551 376526041 392559352 92278938 93366926 322157646 695325793 653909232 584566874 933216038 373004069 741950052 831829912 845639414 612535941 807711416 906379420 777497387 355510082 844161923 417088221 115021003 821473766 937739687 534638005 702805603 781094689 436507678 917274179 604532599 337223258 346134087 688521876 72844944 152899522 915408013 829782627 307872792 713649688 45244891 924291719 379434401 675422857 614208490 386658087 751014894 334182376 681172306 665342442 223008483 358729615 215916053 282513412 510194133 193755037 970307856 333320903 876359290 955875904 215655907 918243502 583252700 193071837 443471617 579195423 392663776 391140974 930975486 457080796 865138103 637375667 682116297 902162196 951301293 176429705 528147506 987228040 861554352 502795400 659621869 340315584 171530271 9028946 747231564 442420081 483568735 532642229 26608797 964398193 538026461 764088716 463569808 220400060 218409212 546782611 177397737 939496751 423533848 670215440 462355773 603965545 857446802 243289958 186320116 676788071 546324025 324952729 885636473 607487057 905433882 371326322 369932781 992492468 305608147 617488121 484967719 30754242 721959151 922359119 126323047 496229747 311521900 831306479 971247791 625721698 777167311 968675173 538185735 564961712 494998994 368226118 259242856 771308551 568800701 510898549 2022722 177010821 737784425 153296978 612755803 736543747 627246562 720391916 343131870 137738180 931549919 274849116 878556675 107390489 988619750 9351152 806869881 195810865 154738746 688774679 786022033 906077072 884979880 170380044 288516136 434659769 968598514 902985131 349731173 932754367 986517432 628886106 614114145 723271382 350830790 845441339 924746161 727624457 635975109 788632095 553302833 20982365 397305960 815501137 881157214 667336404 176560526 485237401 484752248 76595800 669293947 955426662 445402034 589562154 967148252 832976557 165578179 39364018 457948839 266503236 77450461 575443065 34022242 87259333 781209603 674405984 740870390 954438837 697334616 9983421 775552675 763956631 920381611 578233039 378662548 480736117 438840528 761041203 333839894 943753806 931136027 772728855 534350175 567725562 952490879 591857352 973386913 874711475 211365941 559570341 673385500 270971602 357452270 860649468 616936581 801356743 864681987 35361869 3966554 419309664 373068759 16048117 463761525 786720316 604500880 356069458 240571819 658001211 399608868 460436202 705158073 741766540 585236829 457215393 842299577 451745892 395292970 284924304 909938822 479210994 541352272 82341941 959882515 509156465 994066478 911427955 662471947 299013536 914166505 959489363 459272528 460312749 91131784 863850853 810301105 598179995 77475978 335258462 843916532 411236146 154882025 947180097 791468220 285803059 27263524 690806287 781043532 285306311 430206172 772663245 75082034 858387486 702722483 223872603 378119596 217721510 454082766 109909230 922444583 928281891 136772909 913775710 985607800 961306432 884746042 547265009 597707466 900409114 400524082 448756665 673987766 211645010 2016178 415010407 641902771 251397332 202746543 416310405 328588018 853607640 163019010 54561400 75280246 386293294 843108159 560864839 96005130 495401779 257211324 195712306 413005081 88339339 635996594 437332692 107323496 569536829 405552819 670661116 256986767 712027722 524613749 63553951 243166377 181950973 717998544 206166353 618218144 985710096 714081008 428796832 594701864 531263346 332419877 624059115 405589004 965422837 579137525 124534769 460035707 708439845 926846780 542042735 514105340 577019204 618259225 689060173 145684132 591885355 785534345 982295822 949461911 490598357 335822806 78055600 525423475 68274232 735952271 886269231 302999419 664246676 482318959 83761576 213906189 359055402 43044457 888154232 805213657 457545300 304075418 474976789 410520635 700052063 758243638 134564617 827380039 331252440 547246224 347388267 692845957 377405473 389886973 252048468 2353867 438923739 810308583 17332098 882499211 398131006 664279142 811097189 454158463 771178802 844844370 770726486 668882807 341050673 942802793 795410662 877695119 812072876 347385819 427357153 345968245 755204305 772689969 747735552 575275496 345721345 405246729 714414744 239857062 901664376 227486796 568576424 735566004 845650426 373974486 196440189 755945060 884485803 603017704 660840310 419790846 499826547 526786717 64798169 692482910 875088514 517606752 620638429 118328030 417371274 695265977 709329722 509836094 737226952 416313341 215017018 745259962 536052467 45100180 964601716 19275 353495111 128201359 532509777 910407057 690422037 198472248 11032230 185873216 802081144 463104949 281665146 597859397 255649454 384618860 996046732 725429125 460778214 956837359 106738128 18201873 255544053 247675827 385352000 490353546 209507227 787901632 179955056 881482170 746290287 481840742 181589770 523688880 728480588 438272342 249533799 514786381 89775043 429945259 138222310 255307343 79633662 616028216 795122059 656157720 255343545 488501069 451589721 575216781 655894269 208212427 295915194 441299279 952039266 780783214 875722279 848289979 441196738 322857197 642370888 117184380 908763419 606410110 760606998 927438121 580420421 225374441 143689904 330032621 733336251 581498063 850024766 620046144 77649332 968297418 777243583 149709610 531440354 568719991 464881568 236928378 209316452 965081547 744273365 49807976 642527071 102310358 691511948 599799166 329544803 342102255 920397910 889005179 166995774 910366695 959557574 489889870 927144139 600668879 636599514 735893516 239770575 529027808 745529278 65579761 457923700 938372391 454799867 701864252 214422824 210068539 394380613 4000483 436486184 456038909 72987283 377064317 654239805 155003806 298353970 90568242 715372303 919487601 694745981 328346888 164297765 52204147 229881510 975114795 238268418 552686489 478464800 566278148 430354807 543166699 154810005 57846203 765007339 643472502 699850392 983532030 133453257 356027837 433347551 405022486 462843123 966487798 987253225 6611279 192418244 803693246 133145222 897227846 379894034 20355870 842168083 162327570 463912510 673094864 387780593 325707114 448006100 583817744 363193283 831846890 707480373 22197680 634902540 823273835 800747303 16231695 150123252 18040563 886372507 259173000 518322475 740042935 236210674 55477226 576733656 493108702 813817786 248789356 194755795 318337722 813336846 92358444 478990079 384195670 725244888 406855676 757664616 119840376 995055810 936071833 240805695 206437816 2549835 623546739 498280413 788289481 498777366 79223907 755964905 640458135 713032176 572773000 931212187 471916808 760682423 890814540 411511210 846933529 826159780 249270007 366140750 872362129 910506580 311702529 215048323 913242673 864370682 746952703 401564737 253792190 744962363 369073767 38995626 969426267 903562752 779522900 323226282 765766749 178456645 992648095 742472148 387552192 656401766 679413374 212473196 170183388 495758679 197604337 919206122 699075775 274589948 228970242 128862637 780789849 103296120 614362615 385471729 103333986 372325230 831871363 540360646 128797347 804369920 637032781 72856405 94215216 200285583 373318344 759105560 785550786 264936051 395166158 603569243 937193622 483017057 455167570 262083204 517548425 632493490 955380938 114009048 46353889 404450213 824948560 631103535 884128155 156233719 873819535 856294317 299769025 69257778 44336656 541458514 969440827 968914531 415855887 387132808 219146915 323399629 972578902 681455800 661871652 219842592 840494835 262269245 88563330 295387493 56543366 705661433 339913057 573125557 379707236 547255232 918220580 932943208 675125775 628560202 895334204 960222577 546188973 144214791 132694204 945704155 670968242 1645102 766802784 112484869 161289990 933980074 804757363 48919690 68972804 364999932 686918500 477028828 996203300 561686031 327370990 656288923 500739420 350964570 994494687 788672308 322976606 893811499 272157903 778289923 690603732 531285744 781836528 313455914 35920045 304701985 611076481 262719296 229985506 988373208 39365180 175809888 406702684 853353131 827222999 563274550 915492908 301642350 30666981 361528689 840821699 225794945 842127303 281935889 641422538 531645127 923885782 956068869 309797264 489638299 779589092 764910493 257435056 926756823 217249002 57217452 775323016 986508736 437180022 601068173 810717913 535231731 276488581 782481130 533982079 473746728 935709296 737172480 431501611 312006018 914259312 847629333 601970 176559823 930510824 651506084 596146807 950000874 350800154 303752226 921007448 256689012 253576974 793797168 197992682 398797972 647199690 526213254 859301289 549776486 260318288 170754954 240312497 156788909 90974839 542830435 418957146 710553751 592072351 434731829 725823405 372386484 3511156 195464503 157059563 965437888 872309952 505669946 484391486 701888905 750882897 637876194 926497695 491331803 70727404 885310571 811774988 774517676 445917434 433268185 822587069 298287595 403999944 761160220 191792540 233503360 865888174 560076819 875489733 555756572 323286417 380732207 921558909 611305924 225619531 456974667 531978717 319259179 231413225 264018701 597754465 233725939 826231528 411450284 903533687 758442456 931109412 847914477 133785971 348450528 413700918 409124044 119982125 578371477 981442668 782071970 354190965 760767612 408587903 286407719 839064687 903589154 381004588 528800743 986801142 460183519 300355334 364561653 219548083 379369457 660743390 194261696 711427198 416102559 240468918 503272686 70487631 759585672 440768045 254165224 434236933 402330243 710744971 152123572 914879396 691690329 161440494 739974955 820564027 559372313 851637732 952207068 729805069 716989637 14683279 865569532 348275085 405696839 770812221 904762955 472901381 591029590 436140395 837092915 177265241 199552911 74831818 857379173 586902992 290567610 175164449 12659461 595992950 923153745 476389033 226683625 899339842 109884958 583521307 900338957 619895390 363717751 185768955 686189867 811663330 518221045 628117122 468512563 111068329 531691503 214511538 879085995 482442723 574458399 703263020 956302546 719443244 289098341 650447435 868148815 770751819 273633935 602911889 407658865 907362745 844464154 858663792 143528477 603604901 939472991 12631348 110304300 208301139 384796340 294316297 511852493 409208452 779774541 516110604 942883429 839330354 580714648 926414709 390661165 180265128 339830247 774292623 758065643 602340576 985202721 313006532 232674757 928138267 240138473 879501631 167025662 46619750 564836008 644193632 373356778 869324148 927524962 852807354 302394652 797987979 565164508 492699664 496802027 989755754 947839778 706981745 2888510 101979554 529594993 112801798 451558662 968601303 791843379 423258672 129472669 656081715 518748516 752989006 763136803 571234291 403554893 670823690 190503802 661837592 555668697 539849892 499228607 608889238 470155559 400315261 238396445 187018852 979029309 579571441 744528043 980686149 180066501 85153005 174163764 945645982 712908128 606767697 545107328 538576278 335902203 624107047 351691891 697209243 669665444 94574924 186346247 844255550 932713522 709626816 10828236 612673354 850230317 271547580 683562610 621934512 929900771 339355219 130915763 666621009 138340987 235167336 532686705 587675075 873884204 29810398 984718923 42868768 814600999 689152222 617231587 646396705 364438698 414927802 749637588 781189064 834261855 177294333 488041343 281204655 305496654 869661132 128490565 547704042 764384940 995426538 340996946 497845698 159044104 465878036 148946580 955150429 594414043 27637952 591400316 750859205 162561871 768509404 823847796 454664032 200710561 536273695 784917843 279621937 225969773 741749303 882184071 644210833 564067631 118923164 707715901 71893741 621385551 456580010 267748283 91526692 870345996 485301705 40503373 296190363 500234871 444962231 976777482 937490293 5538165 956650811 73261258 634938990 237122925 395441698 604210196 257372005 452389267 622285109 462000534 415905863 987001153 416812783 367969762 638669507 387449409 874109981 426322297 434415650 539988641 580926044 405079086 173685009 183403982 643960956 326461339 99261773 88756962 829173724 291510175 971602762 301928448 161583524 57204318 111510146 815897090 814504881 754875596 177809653 892928488 714984044 760159437 57408634 606629841 176373912 246440229 174071750 150941668 72951908 762033809 787704461 878633336 792504974 372401894 47941930 587966784 619573269 732553345 120513352 14328570 129460729 975308749 349079610 88985784 654091669 712263461 500569059 645449938 917813131 186494232 772078910 387452200 579763466 36347561 191810861 18285338 829091853 225566325 209949612 353741952 221131766 734927746 347812992 581455718 81312 284044549 670606445 610295593 414547441 18914366 396242110 857014439 178894500 886715423 57294111 462800415 196158051 884990264 294930690 63899653 637669132 723632449 491208236 76167051 570053178 805497918 695957448 617061484 881666847 210527783 508240483 157536927 795994716 217594026 696297414 93792105 817005853 376413540 53054658 583992427 100128837 719069045 696815153 478527672 243026926 312301751 596203638 609766853 240150888 834531683 897696033 184009890 636331318 792356115 237508307 467364907 926524306 235562145 912795217 788477411 787617228 877305590 729123071 940537429 351137515 826339175 375934162 586916373 199640140 55346362 789648898 144635966 867495687 115241065 831967662 925319112 365364887 494797308 784345089 440761290 198164898 771691217 233286660 212529535 544963247 641409377 120133172 906415878 689753920 408943271 147655820 37987142 39229524 675303026 147713520 184180596 687359954 439546563 204613673 56968069 946973896 838589464 712307470 844163427 496188176 227795700 742010653 74462513 303504711 103950060 868277291 9284245 659465403 934119744 799402289 929546827 86343998 571008474 279265296 294758035 633108426 874815588 103191685 835089923 899723889 636891279 995909930 547916574 947654717 82808188 482502490 22099107 715513038 979893682 792274436 926317281 113866265 548441983 955956846 690081167 481671798 650067854 900910925 894473319 922008786 952243336 457360937 220671903 471514383 931302812 14192569 716096344 127270112 515701842 154825923 328881376 175229146 831416566 123946487 553068491 168124082 972643622 956109278 136008966 160305985 27103287 761396743 834375766 899381844 971571056 645368504 658268978 382584372 96442207 88820899 313925909 54143466 160929103 195554344 125034490 980016613 31974616 101339757 461363124 638034291 31113585 936306879 166539925 737998136 217980762 50363359 272364595 242455584 307131406 19318473 491281337 172734093 175218607 604444603 543394737 426721649 845936114 182858635 248063662 696873854 408133697 38166800 964919870 252435668 146938617 905390129 590195075 398705413 239758778 57121188 146865911 369024994 56538380 63827586 758001926 252986899 574271394 770972319 76090409 591384550 424090276 163049737 185802481 142317492 768268816 379701530 572768859 115463995 847100658 82471548 280763739 845287606 260807795 904456074 262552633 74826428 548607002 799261085 56185216 505791430 519294708 607664819 679049053 331451083 393116632 103249401 660223579 616514148 194101899 590172108 164766493 745091958 767308734 128907512 107480951 933009228 579033014 174917655 981481061 231840162 849380262 400594425 789826591 430468952 200779434 417260231 935501300 417215726 905829360 72454342 948717462 421295820 663113039 234638695 527295311 154173962 166124070 810398106 205970611 389537299 365909936 668312891 189640011 737534271 333961989 81975101 979427119 996566590 566504767 218653959 409260465 457372237 106221279 430223275 599139006 12247378 136313516 163009327 124809951 823686636 994305152 45095905 404986957 693462216 436229249 900805441 170404156 380991240 295832604 35896641 566550605 800400435 509001036 828696747 250302762 326727105 484622135 224576806 591866458 362628879 215914905 54794923 95614459 967676451 241603752 659492221 622983984 904373503 756773645 250855735 367067974 199431512 856193464 488735405 999090135 531185545 837185212 492302655 749812872 272271032 713600218 647478144 729011615 813882418 631113757 540787479 677107187 599197456 860148949 467547423 292248727 185439833 495837882 117518168 252765215 811239631 187927779 388121831 361157828 731760350 202673703 148152471 523166890 942475098 469532194 609032460 375925861 204369375 998788177 528068474 7024920 229815932 315520761 668439244 199137693 818961891 129354739 120525843 346508287 78516390 127891968 918321670 511664254 542129609 192435094 361440098 830773604 279825569 409193131 717726123 621692614 138789976 391426244 783559041 79408367 310703876 708512904 248406151 365449573 185668045 473409256 43214762 174594882 770427748 944050308 623024097 675888610 235469029 719619003 500363622 26088504 638040644 373900815 134457065 723740737 535236861 740446955 995335994 836094652 382082754 315293728 922641688 403806264 739639448 652497323 105113290 999499782 969034922 924353710 989966957 783606153 41296752 506129910 976178992 381659946 469498774 150501009 500140325 176356179 72626470 973078305 330847947 245507825 181672064 400006923 897635802 816110255 519918937 850611716 950553374 965027419 934937699 288659575 618099227 672046360 710587996 742995397 315795435 269469813 698111148 947429195 528499806 141107481 935321605 40866535 373680447 418154975 368017681 374218917 125781432 418049695 174963937 835167222 826220839 391052317 869710705 657244531 241357724 200287552 138120208 639839048 344301245 715185593 363984584 191981717 952974819 921550731 808776779 659052344 285643884 840715287 797380671 320863073 551258654 735498138 731522769 51217144 123754898 321748425 929297752 800327658 953838747 620597071 926665441 336881615 960391282 125891676 20382053 551755658 767958691 669007809 519009049 89850675 636136614 949427481 345192548 689254907 242946722 161508182 726579030 335160087 380144912 358812259 241365317 210606355 246869486 426027288 387176165 539700364 674074287 440878157 337225914 478168770 168877333 679899024 557312210 502796083 745583885 657991162 335602352 178365304 125088448 5723498 517157093 590537543 584330535 37871122 637160841 601029206 1948412 927565036 688564896 663208576 394873959 470081655 493984605 353495435 976889179 649974124 155313054 332865597 226051757 170877070 300838598 444141657 962631849 546532761 799755190 323034292 524781206 991461844 956368358 744894777 169738335 848775682 782516746 867545106 142059045 610974995 942842791 99044053 747284475 169754018 774621313 283447691 44617845 544888426 873331512 686294563 60629224 571382767 96461057 545135348 125760177 415558536 244840577 130560260 270163642 891492548 172516310 662560356 878881688 60771522 196393237 70012970 840110324 264873623 495458208 528874402 535414 124102933 325693624 472544679 22570987 304983671 337640127 3522443 64765432 313326442 599455603 614139896 502779707 932269414 599523340 202409755 882746437 410446314 26115093 721854400 624442177 130500150 811057408 974089580 442465928 649620796 504803181 95342540 638392692 822467060 131691499 281012888 376287073 898275091 490399751 767235751 922152685 306008384 39798982 365006373 172143159 832684221 237386923 95002254 716041670 439186575 732201587 639908208 841953963 286962859 542341225 312537780 426678475 886217210 706063063 72287386 179367838 970171575 593999118 394061134 711344930 620858629 188201507 277676713 594838795 100489504 157522780 266692368 158181043 962421707 196465356 532459081 78832155 867131887 542733561 154452691 988816168 258849884 444462509 345132860 382415510 305142675 841916831 871739082 755861724 504449889 484775721 425022690 341377063 481815392 188660298 129691424 377461300 941832587 443868517 381616365 429908014 376479459 987394009 313569266 698114251 98681837 206951286 489683736 22537311 197288488 138512786 539145039 511177825 903935477 843304859 360874662 324146168 615124828 214258653 676122036 327125433 489784825 491751484 916878573 8809151 137652485 241017130 858091275 96611275 549516539 184540864 533867992 579533839 817994533 713404359 124210861 682013272 659870053 595654082 660175550 124886481 120086251 125549255 615132054 555135803 806091961 101781149 454719567 337819558 601311914 153634072 654774669 750134003 868491366 372809013 960933410 350050176 860202004 89597128 61765048 225814947 793494628 712608708 143071468 942587155 565236226 215909471 348025318 615562063 865604846 404919159 917174883 367576015 701051410 33625096 262710684 7198838 127439887 626138679 781566886 624382713 494262026 403466756 503293583 344322270 508845739 236329465 110135479 383173389 326309029 460568707 148541682 883577965 606789978 574290670 749360887 719531436 32869756 910899710 548712676 60359055 410463090 126786888 576438114 540522914 981596301 558057957 495155397 258729086 782863590 208849131 21428794 898564576 915167730 378392769 336618467 664393447 844042605 118316636 715478826 122533399 639946251 252220784 941621382 194128363 590691790 248125195 853595592 866718267 394147294 145613063 375531888 988514900 837489666 756947600 748325998 710959503 86165521 225219853 668933719 856856693 31832742 439020301 447930732 416036782 229796860 971366245 684784707 731822270 122006838 540645412 760592170 686362928 473672909 46179585 850019082 391738343 367786465 279224862 179969041 479676928 832280698 537103419 258570800 964920898 418619379 228649248 167471482 849365025 763559973 311494747 816370710 794809469 143604527 986249390 853631315 90676383 904674329 313381604 160856949 358343407 384123599 499037711 627739346 853418571 209836276 725643602 308331254 814841025 760227951 789571851 666961652 615511552 470311872 120522474 774675312 865803511 835207667 163844157 630222624 481184558 86895113 800481665 886305473 840670383 945735619 789468427 680662885 66683238 299373737 129145151 559690130 697443346 526468445 923695970 870129772 602017040 575846122 542771814 807896963 199586507 575581572 100011612 222351615 230768859 803747048 703049382 758742889 94190993 431662295 229483397 172397500 348283424 215717859 189284443 160297366 126675120 209759356 507078674 860391325 293440809 15393151 592941522 158546044 944399060 998304121 303472009 578038891 327556829 828693138 529504055 335395769 61465526 899460047 899837117 75961714 736796756 815617679 439010967 98963539 116784718 923142906 281574147 691618444 792740061 351055040 181668119 281430363 789424741 325565971 797504632 641217687 520634657 800464079 299053420 995579409 587878041 953237025 268282394 261191001 808436194 816193687 389862313 210510729 489427658 767438413 15337391 340203776 250843235 571111306 874894936 265124953 254884662 767733475 697117573 784448518 322412472 371358887 917954366 482513173 596746004 635774481 962371276 882086734 356626294 316552537 650165138 35337385 918996457 841110316 929587414 461854892 924105284 531039598 35267339 335149648 392332753 84295572 808160833 643889000 571678533 288416305 181770094 398012671 969632979 362365222 19984734 207218377 579796481 598615193 300470857 991242282 40307634 35606592 1559137 561411665 201943549 2150889 558801694 405078162 490003816 115987122 83960690 218504779 847792524 968364450 817273030 803408061 608928995 942812358 22595858 381460058 174593310 100444741 345066544 13526931 804437161 461427348 895852879 647858547 35838974 70613698 810205707 992259155 65457776 171590267 206729426 809100069 905327542 371726447 548291401 738525064 468619171 470002832 416329576 126692908 644180472 858832342 283052756 632454797 642204264 817723147 204654164 160073216 801249824 64312070 179947608 312401764 469030964 199541671 650340829 710015487 84104597 770429898 383639718 991060241 179069794 640102676 180577588 260959821 265393711 844654577 455289620 114048854 978878850 596203911 866129713 566070198 329947007 748059566 534775979 195825146 23970457 474517201 601635425 48439686 99723504 70847243 663499998 327040735 450048056 240897700 996707361 548593041 736267062 668943626 638586879 707285958 190641334 504156237 355786824 464358748 55070908 504584851 839350508 787920036 870595334 411249263 279673400 567176517 539916647 60736807 501060704 214154214 24690352 573995946 446404774 898947604 420661742 616687104 81249345 505194748 9804890 72528737 707956385 235916266 86034840 788827585 197844401 489543567 737372333 837311535 697574641 707539418 339769795 724691314 91780476 259366508 267734342 771827360 365390470 486458732 516374439 808274552 650783291 329122088 859498834 73094013 635657099 479195207 620315171 59595346 546754797 454453203 54094186 923253796 174220286 536323266 892494465 148838710 94944616 483437591 460111750 413780653 739963268 241752457 196184175 704251260 426061309 185751978 590401812 326509580 458616492 102647722 321327770 721126542 273931509 387394552 960759860 895086033 46295082 881366509 937736762 141845853 334118799 764625032 135975096 563859301 563200592 19009587 466856808 452820805 386413001 778906118 462513253 511093505 440337204 556859320 724854869 673546062 435934672 216740170 208237807 779103775 449197851 867250316 932721079 709157244 767042446 155469642 16773974 548854542 940859501 710921604 716470647 419095473 760256174 149301785 527139455 251833793 454509872 786767123 56488383 207818610 353329984 798406786 447928236 328324975 677971750 663660197 666159764 277108028 710015988 659141286 137253383 849658060 31104063 260113171 240224868 687454472 818902741 76212028 33812948 572477765 946464136 714325943 417572669 405447312 966391536 844836136 810753693 391092453 812220618 236246651 385498200 489273058 905784744 75719602 838165019 974908372 617409572 804461077 832329745 823002642 655232837 835299213 271646590 968633793 248666567 99719506 213039676 579174769 493204395 331926637 5519292 68835998 609168640 409819403 894999627 55173199 832111045 615679129 284381289 332287778 785753257 439200552 345579767 540461537 432172856 516488246 151381260 842976114 611361113 711874105 337895934 132155342 686488863 529041731 911493206 738850676 189941047 261275772 579717157 54755997 702800355 753874516 372431593 567282803 401390879 229948382 61345802 277405733 141723960 178412928 765054119 551852800 127553420 12962926 317126852 592948870 230335261 529854223 191132302 45259163 979634147 681953369 930860945 271822455 314471696 590245130 952464597 18031006 480679427 640638754 14458818 178013300 155216387 155889039 884199051 81213371 280299048 113884698 745728381 121204078 124599667 815477585 324710873 372951581 532638959 650562681 17897905 867189071 466608302 141494235 146659633 482072269 736938831 961547794 368820096 485264959 94187414 940213161 101126234 200883061 288141721 33530518 485669123 157894962 835447437 689734387 146031791 792374908 210684264 458881624 597901469 804162704 483621667 72211500 842093095 893551049 650387096 634262220 892812970 602724204 458060380 326819364 131796444 536236380 236663890 971750052 61112869 19538239 708912793 882685429 80992104 10563306 100805762 752551373 38945750 162106013 380541247 59968051 579644880 25748579 428123830 48300185 37607306 366743245 184489081 999721003 119629286 564575946 959092653 399559453 628578184 790956127 571501708 613999694 874271495 975263243 168385062 82096556 513373223 961977273 502932297 578858651 574178752 962933531 744998192 293015756 320733595 699314438 835507718 215310317 897014696 750138495 21799365 681655411 757844646 818930146 864248817 959918779 199686976 848512453 763978265 38955628 207729902 36290902 355529966 678315787 303436518 122011007 783054306 465587291 475513926 829538664 263056775 681972320 990071682 70210337 892496684 162395036 571241346 547406812 227190639 611621379 334783936 165646407 494909104 179310689 13541204 882889045 332672762 703517301 146240742 842217318 121501341 50797240 589018978 219050653 572598 884065634 6240031 304637734 179762190 700030882 338758524 338158027 352844674 816831566 740292631 916849674 276501598 801959276 721234834 888637455 228817304 806018077 997767710 52312658 542265667 533936648 564906896 866444829 43484331 241053005 286062781 844444003 329214303 672869952 714264026 871683388 512916729 345255115 967517612 253313555 513771535 879732289 569953939 797613203 717771292 921811433 539917084 783225313 96743396 619018711 232368186 647516992 804826432 237412858 557121012 752942568 45539042 835048503 783325294 998820918 76971585 619302961 132674760 499925128 444656160 409684406 181844608 753129548 160764445 29452223 40681281 652669159 631382090 51898612 271602871 34433556 125079832 667173374 280780184 247500055 314456970 134042478 113033419 986118675 728394052 255305076 86632082 455475451 322584344 243838735 475936049 386834982 196896542 476782974 524006251 906795472 69408599 355856340 451184270 894836445 242872308 732865127 478603821 544636961 497125278 740674663 967090523 651802510 723394712 91269369 572401152 553798770 340718925 759535982 727450138 34450148 366296183 805982893 323441728 474387433 809984673 617054453 166310648 985000919 939424395 616865118 753156284 153025143 118572173 909964963 262198881 596729451 17863179 744239911 286862309 375188642 215222426 533705063 154760022 371705881 478408745 767151519 534507476 675448556 948821017 169045371 425425925 301483436 583749876 874917937 548649583 542737577 733850253 893496351 390953413 435038063 863308732 357784625 419985636 851021671 730938311 513070679 125942416 672140545 649637471 663048868 305216433 323919836 448332344 41227734 327515808 433560285 614575434 464098908 786192353 596760913 480785336 853543299 886332045 327666789 7853099 562913012 896291679 333460027 555819497 315763022 225027197 347184542 465914633 340274302 955370772 899270233 868412396 874298373 602990427 445238200 521830815 386968558 558225686 499351963 993974755 176437299 313503126 492692724 209836686 152810627 188115693 981738428 557630148 751169232 185282578 785133213 906468877 333679258 540404803 257449594 945903133 997289950 748614163 711366506 654257802 683990090 860682874 129450480 625314601 439374376 53207797 397197602 308974584 777035205 855478307 809476364 265409882 228267272 691457279 74942801 238353451 796299081 709612092 67140038 255757177 124936800 239412369 834348705 198485025 920249429 641418329 283007136 885539103 815692594 899664294 624393686 516125964 890406850 116173228 828907617 159427357 690515716 374668526 810813558 848119136 680692147 316892061 494812270 30982367 397217419 605649395 974962719 247792757 816535293 928614639 822413206 653268022 263315902 385135247 226045552 295034382 308673488 472518931 486716547 778845159 783571583 341253453 147424298 77291978 806695766 342896297 196695773 981778287 8094774 493027918 994556080 870799737 205998048 273116870 20730290 731169296 882629515 148686861 269682769 339407473 308506777 162818111 717681650 459253644 790125650 488948048 131385843 312667626 525975515 873679370 57261891 577733915 441800405 749333258 572788323 199737533 344174240 919420486 230708243 313780232 658615033 135317152 115125567 819805431 390400176 666809538 787654257 343737563 711158899 458594649 546009744 153349742 450859869 652134332 937302996 436127590 634651789 6023012 312678231 615408299 729623896 502041307 259798572 459156972 469265127 226234488 483052536 206988358 35187711 144363351 878158278 691876492 987856232 830391889 909983947 538175302 843564722 477104585 926519363 277040480 577874848 394931413 872149847 954706119 581916874 260234997 323189601 92393264 256558443 978295817 399595451 61231444 108691809 281208704 314116725 970416532 356604915 491983148 840678241 625189378 863280440 727855981 653573202 412470113 253031310 313938026 568014667 799505990 826564893 664970583 289296109 809139663 286872221 878327611 156237155 335894903 271869324 598331765 35121978 136646803 273944887 695348929 951525230 1834720 314669480 920042407 61776440 864441209 443151191 806270637 396611398 769935015 245414832 886317033 577490202 866853269 536450924 60120297 661257598 661454182 990138447 866413703 412328341 764821998 810525831 353992115 47234644 195296887 626069832 581990433 27325209 870899082 860290785 963509458 239029594 438064037 212952317 361184888 255758617 983405733 363701964 290631705 753285532 604610318 769082425 614990765 807450882 233255764 595483787 194393077 528861767 550343733 179111180 649560663 162328693 428771985 683115663 877678862 904938639 916855270 611216411 833055455 941968898 621974665 385766178 605501918 344648108 187625174 831699390 244336249 730041599 275311503 688977751 128936674 603107389 684238423 849930953 783643976 568300910 30441099 484359465 879102012 721279345 279668788 565148335 30880632 517790648 572546824 609153244 466657464 782557419 181709947 398746490 237196790 746672177 472256030 59386199 348518516 11762348 260049378 311988288 205940791 236577108 941435359 455737589 602768505 374777402 278741854 118305052 501094201 82737326 925396296 357122475 889338281 811515689 57551930 527816436 302139827 680990650 842918331 227010775 851460660 182525025 867272500 754252937 849734863 194283247 855036726 686894550 815910231 657651016 202519309 589047589 866161876 300943461 902334808 532355924 209910429 670479272 476554832 342286671 233226075 212905056 335099036 653048994 320424618 213989026 209489590 996858906 365204110 358265783 824640964 442983301 60165065 280895342 425515001 22657784 161830705 715158175 857114443 820046960 347427328 615842213 266504584 158156310 666536846 819887603 178243250 437705151 944661071 66975388 849612418 635168908 115671573 337020495 771265508 471382598 569719789 839128838 722158278 590979716 394143997 90630500 145100710 37630034 440558426 425053871 495345378 931067069 888011212 122069827 811113790 268787248 774393698 98878106 920046652 158148493 937657793 366894211 249668980 324813881 898058429 894864079 470558995 28588407 916995647 186766619 138045687 834975947 22217215 309623556 111610055 634149330 711850400 180428655 187583026 917347279 643638034 761651679 368763871 997983134 818655080 527101595 588815015 978648907 695264470 752384526 986849320 294753530 546407687 288556647 725654934 659393946 119928449 741807502 456851476 243634024 120307821 568715062 840968577 627885373 543755896 287064944 263910539 668297675 496278053 822882493 592780438 535250638 342617804 847998770 827624364 855919343 210126611 532940925 128309989 258822418 12655307 220584592 708196949 897291086 967429553 886774978 627696155 834683261 467536119 909092186 404612218 254788545 651845576 534266125 346061261 227755249 377273883 638242502 840594070 377443560 392104225 461687616 187704000 226481106 589593744 19364717 717643788 536245783 349364581 350647929 846743319 536705636 701222421 774331039 832250610 804835038 868376226 569318581 333227337 996220582 851088016 142258679 611044076 695503641 382512923 945120926 768833046 554684648 315046192 455961649 328351780 634813856 235262925 465179088 358893542 920590155 643949319 302603079 605178574 915263853 199668132 451987650 588177089 84736845 305924301 568886867 422544961 413283137 984840146 654473661 496311463 580260668 463823987 966159265 481261723 187866684 472976842 881603352 948516560 355149155 896581059 651274481 492719479 272079975 750811225 158670590 216607437 246170931 166677470 491215096 709162113 741148963 49415686 838205675 715533936 36862925 718768966 927300025 730654908 46919975 240776034 22189040 629126406 392351516 755311463 514802114 591780133 24252219 789018349 305855755 379817366 308190733 349409887 115538217 842404723 990549429 293823623 14513522 806685989 353540656 368278138 704842385 539394844 942383818 122455177 272123780 545851372 991458413 642795591 550737445 741278890 399621760 837735070 204788496 204685555 900805886 565412199 70636644 67869439 577905862 153480881 197485865 259554020 356033754 265214685 413130364 317250716 225846994 730556848 551671893 663498874 998739977 637015333 303266340 406448504 410814356 925965524 254374172 297143604 394850867 924337311 991795335 861886928 235847409 196615866 303616773 458927927 623972441 873435853 294802756 154082745 290081132 890767008 353931059 561578211 617104929 299040952 279432456 312436011 584824401 781276893 282910267 3100988 326827900 981056125 289682562 22256816 883472983 89376389 127502213 806726630 759760972 179583493 478718573 415748499 379333855 370846539 616356092 519404151 985211472 634027980 740095570 420588022 469294324 827634716 353129030 422643762 527351790 922537811 642925527 831120965 365334849 77156173 609598758 86642101 79296224 440544823 372825209 802716321 907826800 477035861 551611424 45025383 453221068 790077490 282900784 970854157 322182394 565219987 288845371 379149750 507355682 194626521 926082309 216040220 980784461 922839936 677504824 883634268 933083838 445821554 670269846 551438180 6363005 213274172 222405839 116187846 585660775 973006656 733748510 364102285 48258509 666893935 646170794 500754221 750706238 702265102 544010504 746090796 803474148 240306960 288726527 74917127 188561005 766574340 3130977 384748915 453721800 911775296 943536500 984709388 793518462 418241512 499723757 945447866 254131622 768904764 575279085 19354970 37226032 601663296 698909278 924353287 529359641 142549443 360438805 435813304 661927356 17887693 492898308 648010139 219273834 132420631 831930099 199289246 445618870 250201079 539514080 324675879 179972249 760394129 618795313 181891018 409148363 268940221 927851468 657471223 707740485 763099309 747966396 436625792 544221477 361552726 419358948 994342050 322310094 400100545 641942051 122258963 933156163 338573441 717499350 409347019 549663628 436965939 797389522 218857326 295283428 12896792 778191771 935202848 677412827 395058892 887975977 35797187 17537733 883981668 804842504 614486404 6876117 958224492 238840820 672801942 172064471 610965193 657045703 678724456 32479889 842523762 37701011 479298318 477966157 620396906 328274878 747326125 376796895 489091654 415663089 57538884 421831415 101578009 623451226 330884132 971433033 929693704 725998548 966151586 285198275 668625112 614006198 866706712 671570091 329532851 158371929 752437351 875300240 251760882 935841828 507339899 646137712 399341851 396776179 752299703 564232012 996343481 438764341 25101026 319175377 583191567 521416268 765978378 393823631 955301225 963379590 176948870 998915183 581702484 424929829 689742872 247253493 464159491 585501153 839817607 723639839 397097504 476669577 626258474 148796589 974837599 244099650 223434649 334904698 935651359 496383651 256932682 16063362 418806901 888998139 328237031 115823118 739519797 739014468 335483390 253634197 627515384 174565293 33161894 873840135 38576729 696761683 499309586 273745533 529665775 607948612 245112254 128500105 11310518 194481987 247863572 793663710 922380764 488402019 875029341 726982121 243098081 308496171 875174877 285356765 590702286 538190928 212009204 669085472 753898475 618777746 373543225 480225115 92794535 9720623 4721655 207591153 953607092 313270835 264212111 534008134 632527873 938291825 967835136 633694110 36692004 379112446 143903456 891992432 775714417 558913205 197314922 486227586 47668479 13170519 468314404 630327702 248436478 547109292 706218079 208520246 513200266 10431852 646345318 518935035 894102972 695851357 173125850 656328331 78076352 657393605 846686486 487880453 187112779 597822989 575988266 97985569 509535065 937126269 169911403 342477987 285739441 960198680 355123975 982886678 383184909 221275461 342692272 71617883 230289713 399184393 115469126 161287246 587855842 467463279 856932362 757874921 925894063 726640037 238455438 372075809 722391295 915729003 255555142 84578115 444230611 455631786 560240146 731828722 208824545 571171371 582949256 951183095 714068089 640053942 105177162 503229467 94515860 396288584 921610694 754586205 789635957 852896421 5755544 124039999 571467760 907005451 315662178 157947330 81560067 948846533 202460792 206811511 71649262 979590998 200444124 268069703 519492095 868918552 692480888 796578217 292216484 838084790 194861060 243821246 517679855 313802991 340787007 946891093 292198176 288542815 348632685 481270262 369660413 509337441 868277896 144440106 280214566 624596943 241044138 110863329 580431555 633429348 733915841 301388189 533153182 779670882 704680204 172267734 13717279 175148486 209434425 979532153 555682843 28867769 83713247 987396383 486108757 956602705 255545890 847313435 781625609 103382877 451471720 624680330 318676611 989804219 769140705 598171570 341618373 463399328 43467952 413483394 488384221 935712900 568755271 530734660 524088337 816418580 787909098 661036299 222052706 332078415 206218426 437377792 642857791 108731496 465254678 213693658 67059478 40964433 620670521 838571720 938497114 568915597 453182648 164817438 737917195 917312309 909425184 808801954 590511214 918620741 262927933 817445597 590566276 556285445 744980177 874843369 523664804 124482411 872022274 277460758 96334910 392128363 698084035 836422018 43991714 119077817 994324881 86006353 783209461 857785846 423256311 191024904 273443962 268674013 653421545 424623401 440313922 898983975 213530416 864674147 354769552 443911967 630597158 231693215 276337067 377864647 391539961 621823413 620414553 147812740 927124293 164694219 658375728 596239904 747603140 704518587 528042031 385741106 754778354 308436982 862876569 347930690 922280358 299119025 926846115 764018550 230741754 194691427 112267618 330849331 759753054 841501334 195828148 150290822 85705462 449988513 838178441 602039546 883984444 811931905 146973176 823525217 724180173 155792911 966309582 455712035 547884734 863197312 401330346 155415237 5348836 483003308 854108510 640202792 374308997 669137884 473583296 787104316 778371321 772222971 209387012 636698371 989709637 735720459 154193873 224308951 705507002 823686872 508639687 104745890 871274561 40092939 187944270 932304083 300633402 166390638 911296525 779710915 731959692 469420437 538741469 491979363 733504104 16958466 723313794 56326672 398158627 885061239 888890917 915590181 685759180 990101439 12811157 6832598 178427293 404869787 259289747 159922138 284661057 697589615 904314674 687031238 29838228 510092421 43767733 513434229 183092541 982317712 632506022 507801757 380359120 219151366 641712854 999190355 909266198 792512623 376648459 563925368 608051521 679384523 23410327 178739604 24004403 117721908 72483914 846968348 34108222 300032709 852413499 369381153 364833462 139380933 348377732 852890900 652480487 739760707 818721981 650720524 156424583 525840644 200804172 58609415 797478608 857898232 722511552 711185336 727526654 679668756 284768373 469864040 462083133 579232432 672178181 46442978 237980044 154769286 873234412 326979890 4288254 174338262 266476608 966384243 577940074 502106338 276538973 112859679 368183141 65523150 136686024 53420246 551150944 827191377 554071082 959958879 337028015 577642107 883014732 549902823 557476771 635838370 193835220 626587769 730344834 304703999 344906822 437420441 683663798 872109267 450561472 162442652 933415415 572309931 356136224 142642573 885163396 86204027 783642426 492542716 588111156 569301398 575369910 358348441 115173814 897831961 519144558 653568236 110210163 869535902 818390272 718883768 209675687 346397868 663411436 287857190 327611156 65560916 249173372 539635054 405973066 723334926 749177022 197729352 975583397 454499216 548588382 193434303 818446071 834711244 376828171 910352315 346048669 594180580 13631156 803014662 643169764 394573745 154826565 25365825 854364018 727978253 415703838 860202808 488249417 60324566 227135457 604195343 890960003 366428383 383513694 997703568 205889557 200621620 323901056 672531531 748366700 967029187 755048020 737760257 610263058 210120795 237116280 804464905 331349521 250077629 586727642 102011815 442652392 578767280 291453939 754886145 237205061 136589350 774010089 560988858 154434138 774176196 821477089 796164150 587642988 13905514 682713408 907486026 195128709 601719340 455209187 111787273 551931149 141204605 588925932 619349772 169663460 198710576 285988425 181031031 691757989 629304184 860212437 57062363 425128157 524814352 72246021 365328319 118770437 124981485 109774621 152671778 844666870 510611380 964453007 41193312 275612907 4408093 875180457 28192053 708900314 513025103 870276740 949674778 134684517 687490916 998790669 738296194 351217332 67913218 762501040 380528248 868102553 229210272 91944186 883391144 474346096 663217726 504036284 681001537 387447687 313695703 769443341 820107687 750420691 247231568 483327859 894127160 836600406 802004718 873988228 855906210 860270462 494566605 539128125 234302221 7370843 778101814 557181887 840582472 152512266 536799960 313161409 646573802 921231560 213057672 449529504 480293890 144877168 322964302 349055083 82919051 520501822 590665170 26978789 767071055 555983500 253776913 136257816 156704697 928171424 199562286 925636673 787183342 348505254 946926666 56328788 221571448 908166070 509041828 591911047 250564374 964633421 122438365 911366711 994061821 568759875 76129913 959453953 232331390 525502315 753175810 74468462 546590918 837257755 131011003 640979809 663996470 247717689 143768202 527331287 326780852 961779443 58449751 845499042 831648580 951618223 983729581 963708330 528389592 367597162 810656874 703553553 406904210 150851065 117404473 917265813 527836314 220141307 109785379 433883931 952609074 420304776 889515795 498847492 236338174 810366350 864085313 879154685 959259020 921334528 485925309 330747626 449053685 284016398 717414464 628326513 600649446 679841766 669716191 797428096 425726709 112922009 938845187 869615961 415213669 946564498 767820230 28134925 458154098 293960754 932872049 526904787 282974250 971080796 869445035 211778309 636842711 191239723 131096526 529816278 686286017 215957179 929476147 701573791 384131298 201399203 559407071 563030848 144944678 775856998 766903242 208040716 296388340 176622451 39132572 713166895 810047004 611020396 375827497 346799477 640316472 685045658 578834637 501314397 37593341 485766368 911337176 744526644 637021199 918942325 607783531 446218691 725948812 131383162 889370984 238513947 656068237 855781959 934904895 240781623 776326509 350429927 188261076 822922784 495493031 858409358 343298718 216433207 885323114 512139527 415478191 36698233 273267860 294902582 926749663 610829672 962367079 189644689 807960477 893690210 321814535 963537864 951462726 46951569 955785223 437532972 884500021 793217922 750265938 974836305 460066625 802920884 126841427 978538288 84141885 44882057 826753739 540503983 986011057 879162400 919438536 863997902 339606136 984661506 411296194 903343760 618178969 964033940 773385187 813330505 144535348 506779679 221254580 888474566 160918655 947685469 178518453 58757871 98582693 9384650 971418690 597170325 720169248 926543936 846438507 12156602 581370044 55604850 774231668 304876162 874421343 222641103 674835975 600396214 833397600 910682876 311985477 587815260 573488492 463995636 237037892 429915930 187546705 790063285 823952328 904477379 444549697 772192874 762036575 869664663 116172885 820684722 127419951 142051690 429466089 697977148 442084917 749062884 987610725 508890230 827993569 768161523 36244450 475850699 935567412 521430761 791849871 764776754 42441190 78888901 626821042 84484717 348555427 848603874 279372688 670129086 693350415 271404700 222786690 81132583 689066662 350253851 928775985 733081915 357883540 910404043 829969590 55777264 604276856 549414841 868205594 522696210 341030968 321736507 441238485 787341921 264184285 674538353 349249466 172972943 338426117 582349280 838806824 763240360 662268351 936627079 746369300 901852060 429151522 546500359 252316032 253494249 21490662 42019156 491226378 91714123 879787441 458868473 542104247 268491143 166712318 563236096 255431340 23169527 27675160 818012606 201266909 340158863 540159886 255406528 48155818 729421278 21797946 718108130 250086413 836140549 177434231 232824242 11079285 218859312 822119508 355969080 420274078 344961815 312672905 570063476 960183308 914952499 763812137 348483925 500989720 26503279 452642497 592044168 770785378 749656223 496361647 67998763 99492755 249459095 331311799 46929687 231360949 579276179 836524594 141775524 935934215 903301950 104647594 413737992 75148361 287515388 30234456 580688869 370923795 513297234 657500568 307827807 304941864 597379194 675727300 686493273 595909310 717110459 530614431 34725563 349376069 272456428 621681093 606808483 695668387 681860988 971946732 4637915 455935071 444980417 128721289 143521189 263916499 227783553 652894264 315148663 272539751 656033526 946533001 359756091 991555700 88119768 694493331 865090153 16008176 961529979 819689715 415585828 255387022 998845078 616478715 750100745 115599590 87211134 517468824 898016917 956893452 137063364 340619434 84201371 853679475 650605308 726549988 27611522 528173974 662650717 424379352 39939370 52185786 105615494 483459852 486565059 667986757 432419971 935576894 29436313 844315277 837971354 178804291 481780218 647290651 343791953 927966874 554499946 941017763 988407866 726694099 106622289 716151113 822087049 408336234 492212337 70789495 551633357 272828415 546913704 884158262 673035049 878137993 261141395 827547902 479952892 951240889 285555007 104565015 569782419 58814067 823386122 942123736 494426056 540063224 160083575 905677729 574208494 506668954 547447811 706647203 745667243 765453230 301156407 265157621 660915850 411778971 273845473 755843200 438422558 797556437 122377673 301013857 591014263 5920212 546654042 911216089 44605009 792723357 262163473 707905282 836618389 385061654 307325428 421389296 685620312 344361493 329050684 309646487 686488918 806729917 20696824 840349816 43294739 32332999 222495398 753686319 840891374 545251376 382593114 212415701 57069927 326733054 863400627 160057926 53464896 780884855 782068860 122861503 858324474 508823328 538811551 674457127 551000226 443250562 398541602 531440558 950848392 830371490 950030592 774391761 843637637 997042748 489421618 130359509 192660855 210018636 992712319 636423200 567165373 284696438 591050342 193621812 676845223 545246997 659592845 293684668 101964156 185854165 121471201 717612075 343899559 231358528 790349722 931746789 140941070 850962407 754746547 231645311 772760965 329059627 754674693 348923173 470695160 771809608 795212319 480255933 640762461 395950153 106498380 974318185 759756630 75406611 968386319 115777811 318304503 707390070 450348990 522332536 776955471 562141452 541265170 150762971 582706040 764390950 724563753 392408916 978873235 310866336 542392837 685816823 684718590 553731677 715812292 583850636 712791976 378865964 557376697 108502778 114093572 828670866 445352711 806744908 93855740 779525750 554023428 86617434 470723442 437728827 736509233 31728428 720450896 492697371 559057097 275517768 952458729 716327194 642127536 620168559 249462876 601143378 816160424 290798264 702566311 698683004 758053157 151689770 320532152 634815283 742951219 106813023 134390387 909086821 984663408 492874011 676020940 816570888 578927089 526948435 775979692 508685477 681912334 490335230 969155527 642334371 872951671 562860324 981833171 183610333 463901336 349339742 211848543 577165995 411248582 484597033 805642878 646527120 110545670 970943275 116956053 84119988 750779949 613507657 985544660 381888743 6264554 44814133 623492480 541887787 734662970 365278947 133247431 198256971 472384655 631052122 668595217 444431267 898636380 472516055 373389204 163709041 475221405 137073296 872279360 510574370 109025910 15713748 184291544 87159101 21581298 233564559 507462901 674904224 657591984 137209319 718409070 96213047 400589841 895218229 959480357 170485521 536183279 33612480 938613701 388583756 45257654 998933751 384164398 34762179 630870304 255073627 11119239 73839791 130398725 4290243 621382407 674088091 413250989 7043642 714930546 820691099 995097437 269300510 980635230 288392170 842688625 151666156 177049682 324503905 802377230 113050441 256980732 689703537 456577207 210740546 927339366 529301655 19237072 392216676 76638984 464238196 279531992 11882639 938652377 770963894 849511500 968173434 18555845 713766542 888301436 313756156 125624374 676417326 804776417 18660716 407247750 529512788 367124705 298130554 967727698 144757685 561109965 575352593 938413269 893599996 472720843 320832906 305172455 842970790 14824227 28429425 571996467 812675042 29332536 14165852 372158712 115484016 692293488 156524779 477240615 622546509 426669417 429908667 543892357 231606025 989134764 281907520 811883695 189668338 404835560 494313878 575112299 302809463 641059339 374964110 678574962 427520680 907217020 6741896 400087198 976128683 177546956 948201534 635478347 805724791 553394326 250566499 986878834 710465277 255396256 56699791 932765951 269216100 470945737 667093161 510188621 597339522 338400643 980870029 990371307 848723687 879553412 498644356 258850517 466301352 678090108 281795999 332800268 962992041 709746439 741277615 572259116 789515031 736896269 723553996 32149856 483078061 109140715 839228795 343252385 940037266 180063118 269118167 262104243 592312720 848318259 4679458 954065314 498432396 866545113 977446380 459509925 932222377 202685969 942409402 286424393 875461027 19845287 998322538 973123257 229317490 913729464 869657901 872149731 352805912 149715244 197235389 772551596 200055312 407597783 491959604 314277386 176207232 673912654 636981312 209130503 827366795 141989690 492392648 87510952 397741239 978834645 500209058 361745255 841260383 88191123 131278564 691304483 294179195 973402167 718905131 813287939 942332156 839169279 936178610 910094285 808758608 538127728 5727002 166367984 457857640 480833954 548951726 2583328 134296258 671461566 429506316 988929858 768216545 128345111 350996873 248217424 880792501 682521338 687116681 599562128 736881537 97964074 847365600 705592202 552667700 237786130 462537802 718239708 492552612 651688257 930456305 151073738 894727551 245114809 813691351 462566557 809821767 747458863 434167859 906062616 775137264 181870977 429890492 918871908 27019595 356198296 437138689 961496740 530887662 864171816 660032550 227519295 239934908 938291327 217500651 702745557 386213657 931510902 622425732 566743677 481170853 312239938 341288534 325165263 353476210 855611777 550493713 399379090 366203298 362145379 761282457 180427182 538060729 996353869 514045029 284746581 208698568 257404939 271134805 152264790 123096892 103002111 940726046 916610133 231319990 874929721 632140185 914511999 557579647 602405638 123656684 21864416 835225873 952262560 491787646 464174130 121936727 507367946 51409840 597097610 51154545 964064168 205144867 320443007 771657039 426487110 410587967 468736937 569252999 849184458 450290238 192629138 189802058 630128010 396342416 435414383 14704060 310143820 456803176 293607841 208728186 626705789 117842948 686000930 235847245 732346343 219811061 804517552 468731513 701159066 957926340 47020376 176656556 409723228 330181922 143904165 522523266 653731420 909045796 70450627 467875150 279561928 838443576 936557639 326123602 759072886 264371123 764820085 171767099 887883324 255205441 656499878 627861650 651093593 972193004 297301913 671303657 361016657 461913961 319233896 443082967 340440311 38780483 724844801 562848067 658218352 883184272 310016027 758409659 752068383 401775268 852748073 691208736 528496679 481181287 904537504 585804725 504579282 115699511 490751831 987120516 870455742 825993027 741196506 225848756 309873609 20059394 870323067 923976557 75950461 295518093 151084103 831549434 157647248 70134768 715901992 993365691 808491158 46506010 730012736 991997793 56397062 832658991 177451610 882811031 645307390 663692160 52143392 866432248 470445690 453211547 948208561 949310394 634764785 24632374 73547723 343752830 761837010 610045853 742973301 472563930 361786585 867081323 428390800 626750772 243865794 795151243 499158150 397813589 159191575 326729113 671920199 7150884 87853343 39995638 192932154 299631378 256691614 578442282 160492100 751330351 154100201 52929091 427760546 185912345 714207663 891681632 317283291 170254938 981780922 646543962 315897467 631627678 3447655 714949767 192938134 68485234 176077143 36421981 722733190 828022370 330851750 884199538 244311303 440255391 699745877 783883518 118075198 445245241 111810668 873738195 162462228 961649978 683697238 586668639 413593283 523501417 275300302 906523698 622854921 639425126 980602839 664159608 882777566 246987689 356676809 597300883 100254873 115415723 117750318 234708036 74930981 106956120 883048370 376971276 629691036 766729494 74675080 929180422 915904605 863953588 765941747 719746797 524343150 778270493 933560483 518430370 855515044 208080523 520239299 667555042 87926731 407288868 655468933 537821752 20169880 549222097 115117982 823347216 23913815 569205534 222225716 432947490 29630979 26046245 348253029 967376423 725981008 1360806 389754012 128623234 692954797 343590614 832631921 682991967 838519460 349498081 496470714 716450728 908065498 993302140 32466473 735881610 254290026 379570344 443651131 377602364 877516130 106244971 317215264 366790179 439580046 58473521 212413935 371004746 452344163 927595216 19341081 282978960 321136102 991497766 243307905 742945037 371022421 803253519 164925290 202784900 399507766 881574235 610478661 104968081 231740091 897872510 266638169 931860149 30714952 922104636 620812974 10669668 761140717 120129142 967847501 511382367 968893946 894322933 389207210 22246597 289325815 44254859 666241648 339506733 716054119 32931847 88722528 360801301 269257897 863028376 263130465 127582059 761951075 166091534 66448633 728650438 631970428 825112583 708873580 169028564 975319788 181867534 917287012 732303056 490592307 676568969 337123024 322475406 44560967 407397800 834710062 551578683 994794294 416030632 316487819 811052746 901823468 729512993 728365588 526911181 731586348 76883037 450827249 108715473 595953353 452474929 173203697 35834362 188440762 254582123 820418144 340684504 486223657 193518306 770072392 173964764 253658001 18947611 274256873 604511863 313512064 544591018 249924438 859287527 205003315 670095280 968009467 738746234 83879723 837280799 175626795 940192891 915951883 96020442 690392275 877424756 270179416 80039059 923282783 832200482 999331665 827997496 200549102 568582908 587604285 224290230 283397729 161830614 760642513 762173767 967464167 389202733 196428128 149513342 155397977 173060545 488075124 743921860 962418447 509495404 49771043 233407528 78492459 438114422 183951906 693204620 263544087 635786953 642045289 157096142 346735648 162509976 69435894 471683287 593334196 440740338 780886534 863264594 856142909 378739229 398787060 129966453 479338055 127406114 368858068 271691738 377817088 739964758 842468373 537515638 902750740 885466824 995276212 939857282 845648401 980453226 885644676 551671306 314019252 298948198 781577540 238049514 94981050 53646659 347250556 202819095 682838953 67621934 732069488 163442645 612359366 626900353 724772196 473690466 971592924 860679896 35539724 922164683 609869048 653037708 677395299 902564774 488966748 970749970 960749411 308022623 919336314 472162022 545799143 336185708 55755546 914547218 375361501 652593599 684092655 678475956 673042342 831763864 226444783 418317758 213495419 312622641 672364977 816278078 235834661 169435291 216818415 487487585 963736685 289159898 160541901 100216877 598312257 432739271 479222942 320930678 242738020 194590879 42636999 439149259 547969014 669235364 706623580 969148747 545026516 534272500 943325326 8442845 489933258 827373713 97170183 986102672 118155671 897280891 650916757 898966328 406124057 318987547 723038317 468615381 118123522 235859616 975446233 577067432 346714029 354444707 951222161 669039827 624804592 359753600 832368074 875575625 25915059 805841158 364013385 431376967 853714561 240827803 768659100 456533242 196384222 997163150 742680373 481424384 668850326 241126543 977345943 601839147 138988356 228099782 383998681 559106528 317192354 870707456 255150420 223654768 689609731 305975786 828306798 420220647 89185693 830829703 16696864 328321537 90496717 8640452 133119340 762276268 249175222 468826798 128163235 944092939 604550677 510234380 888701051 480778991 914468878 991443307 803504077 467726265 597967843 841886391 86943300 454857531 407735389 339838942 949870657 897228930 7034149 818334057 680780264 955309607 51686410 475148325 233338134 529759405 812516628 238217004 827932143 570820145 492614779 908226766 49394435 234494823 615727054 383954125 166334664 574595843 407361643 448816950 314996020 558871802 619581374 627199914 929799980 575382297 609559490 977534154 642351897 497568736 974190307 852857304 444078315 13498755 401942144 44207716 57880596 126482817 822157735 68086557 584446229 782829296 982037546 963835789 176232853 256266040 311465971 865004006 640037145 380064932 998761272 399715463 607394912 945216599 946916044 578943426 567487911 700271706 210384756 727585626 946516714 114687705 545693952 830823710 674153824 114659275 647344166 462057775 5392662 910962656 633814706 985594359 78559465 764605495 119775575 320198509 976335269 766713779 582942440 393999059 8395245 854460320 902043491 60882779 108541801 739752850 245651494 918588357 561737933 233822839 358467060 615103537 917434006 318495616 135604612 375545750 954597027 618962229 119262553 117938449 62711242 2291834 97289800 183984327 330413386 340062425 982693319 955552418 286874213 276915108 548938101 565568106 944786235 691815767 103294567 828762521 249644043 890285036 969374102 478714800 573946187 533443036 145855408 807911052 233053614 842831304 155937923 140844087 993236017 412415716 58545463 195219141 390747070 926470423 242573641 598254830 413021432 476911514 712098313 14012155 614204008 172240964 690019131 36264705 686284986 447491693 762465838 289111885 868578128 669186902 383331282 264467902 52889606 340163715 54086660 988853503 316976534 69773434 540838591 892038738 708967508 63775968 405425317 731815120 901199557 715147833 470359659 653116168 562429518 810565912 423612050 400494182 733498385 795401235 110751646 843107357 647389387 343807833 32310644 473781989 741601331 563352466 279350565 121013938 571027246 654420765 736985692 864476647 296406556 580315730 672210818 457619988 702842952 595619663 282761541 668511552 564831594 37295144 946446202 674131958 988302477 376710622 692835752 517240889 941511943 885442413 880201683 88556784 964491278 178164576 752148331 185179925 389807634 597564245 553475386 16287098 574081609 474713212 700674408 562086131 529206359 76665280 84284696 387349295 807010389 412516518 327345537 185994131 399758054 488452495 607339517 555120582 313749193 647084707 360702288 543552196 335359058 47290500 716164024 163553117 844976988 21052535 556407732 92293832 271570899 704796597 826187200 404887949 97363985 603949201 248564354 228466646 857192739 294470690 652760551 874530239 640765452 412341668 761707994 312784913 776292971 225036778 241589789 151376565 666354111 903632666 133966318 856779552 220650717 459831755 608891440 875208307 557017431 305187833 21016541 914856683 321135237 102327707 636009325 970588020 567405946 65520809 940773704 373156881 898701351 610712005 264365330 224440373 73990488 828174602 732333605 789104486 757313108 379135516 153035384 230281466 149960239 642065560 294995757 970534495 228097839 870460971 184440253 409954647 715368194 615953099 18767933 467631851 810635546 7917503 126210997 118095762 314962785 174077551 13333863 933639816 544352643 45812866 58612486 488038681 40167644 998254917 265092480 322279303 793798158 10729093 868036412 682293047 478089603 337938664 160732476 874833006 761409869 873005756 375848927 171122586 604797026 116551370 325873787 392457222 465216821 394215781 269052634 546519369 985525549 775766786 271659703 674569242 841855243 124309278 4505284 467457274 835423293 433299898 516457109 591014176 51476802 383630233 1653196 576759303 822147476 63225486 25879802 488742149 14717196 846884782 77261324 586154874 364088899 67350169 633968843 430285225 167806875 163490805 77500286 525221373 609912845 785011859 65063198 141313627 365301564 112949297 515107915 741539658 862969329 870212432 359844735 902247752 68934215 917356865 120017054 440415251 630332120 469329219 190897228 149899240 182294399 675509739 644042787 631863569 97332390 241179752 234925724 865683158 862063775 948364945 21853185 801024726 470655345 986770478 946875923 15933690 72765070 931150068 150837883 969092555 167237334 638680697 567260680 49104530 7642447 376809605 490816075 255504703 975431752 188872213 530243705 376499795 508973503 652465685 705952662 904230760 972523920 158893425 561197588 659064202 316217611 636627305 248310499 105832182 752900991 880856708 166696830 254173401 697412605 211870463 786616831 68733461 412342270 380656226 238165358 737749113 951470649 588240344 977264220 702160026 557482672 465929811 402586207 487192280 269812007 262920051 786160404 399055418 720351940 688591644 317861517 9443069 881808919 655224420 42889766 483265959 712093191 787544401 674517503 864357006 949230431 215613882 305342693 337801300 310253413 395737334 348095003 183982493 657011955 441006083 989706472 561842511 160524922 376175442 631206562 818853490 996951127 318842112 503401617 543087048 390294975 23461907 119585952 269522116 145132430 148552328 144145019 737384087 519983838 998957334 199998529 175454696 60624963 493923294 267554594 736320514 837306048 744758504 955171320 325416720 552572936 557141013 247549997 789849513 486075254 149720512 753135900 580951231 723351827 999528421 475816369 792899972 849459996 14036325 372713627 746457682 583656464 904945184 6023065 932018717 9691614 698299881 935931748 494682962 814944060 877821917 680201751 381398875 321215352 776772317 823557941 733643298 555958017 10283275 876069261 851312282 322470844 141346356 4423366 599446915 208084335 385629590 161537358 267516151 951081240 726132476 510123068 664511752 998616862 550168718 656025928 203380658 836404152 839474772 334606056 587322934 597646896 284754288 852765865 430254478 339252799 57661803 105121683 275054701 212168340 898031896 889969390 50052533 982644251 69873272 626564761 252868786 711672083 55268753 517583221 589440045 642624694 27019707 789809909 909020689 294447039 973468326 552486865 195182620 382877085 250991666 640326150 573259416 912645129 133359120 667261406 648595931 892594026 744918256 990788234 13938775 457663751 518641788 325553650 472492971 577626238 396253861 115763507 180126079 315136765 677928813 408441094 723599024 962534943 544021011 789089523 802085013 42463520 147236089 159271044 875174435 677498945 842008020 729889377 39403827 798561728 343418820 510759628 604707768 901514722 877064590 534879407 391135212 406736996 106500848 304353378 576820238 688727640 21424904 263945133 527631828 294679603 166311138 813558343 410242285 590054798 900999526 153115167 840379497 456567954 568673488 158581808 603043249 179215758 210817762 573724051 22965135 479554852 332437825 912115039 97303273 259931362 659874910 594591004 580916899 345700068 913305010 820401746 370129938 151390852 571992615 534757526 909810053 305471992 744104490 965373726 51657349 692067830 185045794 502327723 571653442 452042928 659111174 6170764 383774068 704903682 610623569 654347371 433136172 570512531 107028746 252516415 538041882 853209422 592416584 976303288 425961849 776759432 336194565 348183559 11842143 774296293 184975184 867487820 664606890 967972066 379106072 344393631 445617817 458941108 15562717 607659030 427515453 26425919 590559315 782561957 289474884 509368670 814936211 87007020 494765787 588559518 502738177 564699303 290842919 216750824 618682358 438683382 303069979 472040378 910715362 178426383 36606988 511058490 868700601 893265471 139284272 437758538 900203535 331184808 160118579 415476198 459955950 209384478 611828201 282122380 319411603 295760549 78427740 676507217 800884544 905351203 974621034 512591757 308689540 533769540 229734202 639297639 648433855 799315273 624753789 714969218 671166774 130386207 788384952 884902511 7397489 295223873 121870619 963020439 239585647 366285082 529079829 50432425 130193750 910534208 635751258 739218699 574722228 901290898 543965138 601407141 22962403 497511592 933462608 993008470 286959420 45033737 335407514 306209945 158878361 255463497 746075286 145902339 618278938 2621355 867895953 408783232 197315020 88003312 794571221 117966909 902782658 75708494 22536107 179908256 808006325 179307034 895709044 100507067 75546969 855688368 355329891 130691715 189533620 349850462 644976709 787708614 656128989 818955419 624807384 836780235 328745453 669186821 627237246 336038773 338838485 843746801 679599870 107954301 131003680 709221096 291122379 874645841 135640246 156749271 942104227 234732487 39179967 479076187 511617628 315968060 732581388 784068666 398968119 561510132 165256998 11758028 402999626 58928325 490345268 451980577 228591306 573773742 310370460 893971729 132354369 663737176 579910809 784853911 819412058 241442957 779409142 579065037 785710949 554221349 514695248 774799200 160386039 420967746 686490962 311752673 118109172 327965863 427570119 253743239 90800600 126609662 321578901 651160331 167297163 408147435 319602840 478038654 765871048 834951712 631784123 448334074 609845451 603258074 291688596 677036190 729805558 197601611 527682764 490334789 159218865 954330116 374141532 190499822 610219933 251607259 936086782 13809942 390154509 968151119 702348368 609783396 318983287 947256004 113847008 828271353 139828406 641691893 314718421 640167638 420501307 986867084 867572624 600768985 33808194 797350172 589490640 851776910 789767485 588951061 735360808 413651986 82780275 159153382 518721840 869132230 743602893 611897716 98254374 619848067 734561990 264915379 152687233 861551619 70202158 462055784 155043226 641647219 539891872 562048784 335776018 634795469 413445501 704440046 534853236 313868627 3531292 371460712 902012468 493584897 709908631 793023337 744849341 322063409 767898913 716610198 120028031 441203443 249204912 919789991 572816789 906502822 225922365 491094170 888928370 419977208 524114263 989742085 702366364 579157239 562048865 190872043 308905792 296916116 674321147 887948498 582633634 274150921 518014806 320958201 206208989 94380811 155792970 562631760 46193932 877307956 645548680 654837163 193078704 726702696 796717922 464068744 354711555 530306467 826929573 149003561 126574250 561570685 249242362 23241086 393235403 258531281 236457862 181332656 103257361 447593281 363037937 524393833 925196365 64435618 642565428 151994452 871905842 621433204 732334206 722551893 623236288 606447589 317282141 408231504 173942478 615575278 335362821 268307341 447389138 309462518 70591190 663705981 890304122 206587978 193727985 740701260 482972250 792615350 257294621 211736950 824339616 288847078 59001579 298281068 981920649 859866085 724705676 299921548 737095835 409375691 135833328 998815101 361728677 209023896 638323791 992355856 10002334 949581146 226977495 96095250 164843403 815711302 153675215 623278236 539480466 814063893 785101787 399983372 351729697 438928797 411050706 207884522 896580494 306384120 514438044 500172164 724298402 566703685 434271303 3320443 717714519 557221383 581291649 574629989 870115849 671254499 497868517 740425266 569292965 7571342 447528387 334300426 449680260 889827227 761421801 504855596 621341532 504569935 558371924 808347606 400932043 920522583 20346631 174542686 695293726 27959412 194622393 821757711 718956586 713196063 962974285 371494858 609486054 978149986 427768816 388823783 614919825 275318488 399762705 514328184 972751377 51104720 400398114 489062931 183667795 665435502 77764466 516359042 724226753 202244695 678025338 387012431 976504634 428153833 943854542 596610478 62040535 220123823 16606950 128777201 683534573 197316381 654594022 609988338 652699624 238534276 315118718 723295534 369945009 624421588 619945235 871554620 656591101 950342868 489071518 835571517 265238014 97361983 929802352 100628859 519258335 612544493 398813986 370560538 670575087 763578652 117726453 613687903 879784402 454235474 355873124 150048450 561782572 360093129 958594475 498053196 552639840 992731259 686879095 507427200 249377247 936678275 110879969 391009492 2747104 635953168 812775682 251705545 785348695 937254978 857096683 157297759 795613211 64602455 887036589 673084693 878641379 628125555 455879748 561344904 123334253 574964051 424750844 455150663 941183840 817564105 524776256 948107524 470545552 119003064 102147284 535111004 140774341 903449840 517001770 798535143 742502300 457798501 89779959 232955550 246404283 801100399 863919353 463647229 177999168 768164585 415828918 121278466 588176357 248820706 287317042 733464725 468935782 681519597 141170401 656392242 53720007 247990192 352668478 880675679 226889892 556426549 720897928 463961250 630648989 733769412 807430337 281479250 491772839 815861735 56888009 251037192 153406102 756839106 837398992 863599339 295240553 786360998 566604028 778838754 296666263 68159081 594624592 51125405 786636505 380571704 299030897 707886427 932711171 721524249 530158284 872468464 755123461 548023604 521054381 957767750 457942766 268225526 732168002 879567137 68344830 87081736 935671093 226229125 458401016 538553774 652988255 886044241 461737393 489931550 575741785 90985659 534570241 447736604 657034684 308861436 651514133 682109445 197402549 570760033 996278861 106528103 118277869 347073924 865911619 849114227 51589676 149339851 631985764 17550705 861514640 722579933 502643079 863273601 965301512 355598227 913422770 59873118 484117480 376751448 323317274 556999465 916156039 129203613 694863709 298961630 299108980 858101838 404253387 37500789 210103178 985530552 477934121 60808833 323694387 118301820 157734191 600443962 670385038 225231646 950055028 453715558 519550234 223190988 796427356 975616909 515044226 514008204 555730826 970179556 262986123 733365315 135209728 581747817 309593943 488843241 89768588 758088069 580768269 327902096 812628646 804237725 551502689 254478835 145970746 292288524 432203011 638288927 760762113 421134076 329207922 523745213 906801772 463720813 773245950 18130768 143202662 45141484 596426056 198086132 393294143 254042949 306308060 284249857 569525374 856519889 379489788 95669291 32232545 163651087 599346444 5465391 930226697 807797456 307096204 914322847 321157730 216758160 974315250 516809082 69980661 144539378 705893724 626623658 425174040 556320683 673893537 847031587 31097810 13991575 909689634 195999984 247500436 198808635 926907415 130685441 351706365 75977552 460654135 663823096 432052709 226180044 682209772 208785754 701831174 26618555 882165125 299640181 346637071 947728333 363546659 666204515 989035760 37825888 380524255 993394073 643756681 846462213 945515311 837305181 894664700 144477935 957787776 754047740 909589703 293227941 907897272 873454413 60977862 146220133 789761519 145504364 643384849 128626488 344851767 112286340 998266680 269115322 895608526 85739961 943332014 884022774 898281858 631014408 603982470 330184996 355519241 957417776 979396929 417283975 42782648 15848019 832999547 41107315 300043252 366214801 182127929 451580916 727678674 440532737 407589869 358071099 910713986 171844184 496252878 136901892 975863974 921321185 543986862 612049345 620690299 799690185 812557268 765936962 278721726 186359927 866120730 884641000 639001163 85667094 922838165 501810913 847511600 30233533 967058822 396968513 739171657 837475626 974709922 137000156 558755689 423524375 280182379 119279905 529523757 683747572 228467247 976785857 736951374 356857662 755504799 367639134 361603365 578382511 701696859 355220275 638243425 152570430 594907849 632727260 670000589 587805596 765174248 790060837 408597394 707649561 296375148 378616076 509047109 513373874 762437156 501286550 242204715 393074917 249501670 723189755 414147550 373120402 856617380 165566072 294786518 538863177 343810085 355061437 779157315 447057825 687409131 743349681 408238412 203869912 204278487 809209984 456234410 615532263 148378980 558838700 597357789 747776815 847369189 682746964 974974449 704905351 304832462 915755393 990879331 712901166 603231146 344168175 197457364 895564811 349471748 606181856 674127044 648374590 120069423 490317310 6101855 497425422 773452357 864567938 203541938 113257085 971922434 657760359 879688327 879864321 889006713 991048178 546697323 817306427 725691479 52686209 323041040 435386519 593992280 181815714 997699513 717164155 409480817 849476192 835218306 989031242 503599682 720793828 817721085 77820408 442425515 22878406 644925585 216754155 43559674 940945338 337213978 81621679 221410901 394592590 133357669 781065099 176659613 113100814 603031796 868065164 346960347 288726255 522628263 448427566 110101284 340420091 235902691 745587575 248876278 188169628 996410132 452074062 791106826 965336831 801787096 551317522 48042242 67721096 419648487 197075816 830978157 211199590 470916948 662151071 782206808 15108270 762368679 149663772 785250204 750040626 498000956 436446636 344000016 982707940 278172611 85762310 590796130 281565487 740007539 876779196 725679919 209596901 991869603 733312474 218179442 509832123 333112325 987856900 140873323 725060942 818886787 433010649 238136202 270007381 652322988 723296150 473013521 341127526 221284627 129555493 593792517 718357914 848452573 437956851 119949587 556574137 980234948 188563731 788318633 21522186 795585844 613481105 71049307 234027284 253047325 23939963 853869483 515340206 508094280 735967492 513720072 629763250 967999285 706774096 985269919 669642867 248405814 991956042 174512702 736456430 72829261 98646462 358805523 286238629 332969178 619184554 712386802 469796407 195659688 664880430 721558322 664590571 671193865 766888447 484134599 589421830 84586183 941256821 228075682 663183616 850224830 13608268 648883463 940659598 197045137 471211704 803272614 8377385 714694773 195682146 41377241 86285705 608981159 711112761 910966951 645533419 329873903 367441620 886896413 680593879 20008369 50940446 713234699 417854846 941119742 280546464 401521266 363472758 929748915 275964748 379685777 759125060 946588750 874988749 248305498 840777479 48114907 225628294 727070774 761415530 741790605 573277189 814893166 620903242 645957149 475828419 308267619 183481108 690516915 387750127 825530502 70124888 526449553 414076036 588223983 78588278 388807067 354612619 205583622 26991823 384399116 792946168 757638127 158949151 488874385 900929327 209474745 938081515 587815723 933014187 633837343 904821686 953121314 373974774 409520615 467887567 497152830 825841084 323294635 513719930 19793628 335424792 975054263 498687556 83652146 785128433 847581205 475128043 504875372 10486579 665283045 255177021 277758025 139584214 16546427 42201349 540983022 63345741 450238156 368795718 553917603 599847900 954571317 929800348 466332802 651021835 320063417 220205259 768078622 856008798 509163380 563597475 889734281 246747518 831360494 72290394 82835412 401547432 517125394 845629527 692733746 179998302 297655119 967373666 984916751 263589321 795499008 239249791 771325132 635946067 457537709 125828124 706475007 55458873 553951991 271753331 680893987 998756664 904773692 52973305 18312683 434442219 619289204 674150426 742192913 266857662 53456271 814956773 608429696 544506698 964206796 88228069 843196090 817189394 407572498 177123575 814519701 319922772 884460581 876043738 627717051 247097924 963537364 763582339 970099383 248911755 275059829 571083568 321582284 114837639 451884108 36636053 113001582 83108875 653822118 849577479 408587941 57916205 591632516 839601094 744152474 742296462 995417982 136868714 695826249 373078181 647497481 729735866 594724549 168395735 635014603 601365331 520919254 678110550 763310717 675126531 366808477 322174817 621769195 874585283 31314027 959699245 786362715 270786341 395873707 731210271 139547610 244455585 878673283 319753857 243325104 311419020 622403461 96187326 761073621 286135714 322344951 87355793 180906273 49529968 822463743 475219948 175392760 753083936 292305167 292058801 340058697 852759989 569690398 690718922 75647027 299023925 760754119 201865926 485616605 608887036 726839482 625996023 488934032 701492283 564695950 151997765 932442354 379654197 752150169 510600941 179627874 963940713 500181468 76488096 934089468 323850955 709320079 674372599 541441218 432677749 617551358 745946183 526782998 799987607 521446122 269932173 759201964 933402149 659337418 653581244 43364619 518560481 796237301 767858408 167125370 783287409 191818035 90868055 925137836 836929962 444115875 624152492 790420864 559711980 771959925 528141888 610718079 29290925 393279453 822254534 165453069 262464986 496875571 688839105 244012673 81138998 638592229 51794108 484561615 859668398 869872609 370466207 777956563 756504345 857024598 4238790 897377008 210546559 47582169 199958084 793716208 19608453 243768900 671821022 188013991 27907615 442670725 26828741 45997937 463900444 873238505 510923913 868726017 125731786 576168776 817386059 354455317 930274500 94420580 433161946 947729836 638861332 732647376 167067033 738182980 647977709 784415144 638087669 773809217 797810748 429887951 172790129 265860163 194129170 281331920 307871701 995638254 117940304 187149421 576239138 4945650 617717316 697604443 482137472 435621894 858626210 642549292 366407704 524098244 664554488 937593389 97241557 122367731 518246685 340800759 24983714 380712242 561816834 502669391 385472231 390860722 408523172 630146408 599685757 180654775 13661567 601115495 270883641 454184915 309203671 98456425 813889925 422674266 489551036 468565310 165701154 76756273 654475902 173117076 972177178 682686247 291781954 498277850 123634197 796832091 726837835 7726715 863531730 568672265 808627061 401103438 805251521 482389082 351334763 233341472 518791303 807969739 496455607 783462747 751090237 434597535 500655415 433958403 568867184 283752662 157346107 280674845 115648001 344426074 35321389 853533557 994717413 83943300 861383285 461068245 461489339 567532753 264311224 574321757 987774342 702692706 404972670 530314893 822712904 382933799 505268949 205701790 107540590 596128145 743866789 411571467 528948465 169502252 188357244 460920004 652408934 444137370 273731380 630843769 552675628 547460049 257004823 450306085 756208507 316850226 876232720 648926265 177638450 60389716 526866445 35632940 256150335 124520534 70175918 721739891 223471594 613925598 157336897 745237906 425509799 492153875 959691196 176926816 972422255 388561937 206811260 149678641 213165224 345735056 204991963 882415387 626697997 752701585 54903436 695164506 622669659 356460650 315572405 83910643 760046792 984359103 292264282 604784448 47654682 581092753 504225411 528820755 930129580 176321743 749426034 967274104 57018713 602102215 238038365 487975453 87990104 197129151 398204139 500266374 274283046 337154014 544818944 99651740 45960628 475651252 543896955 484868401 205782866 195182994 838930255 235297143 90541676 263289682 560474822 963534672 72897087 2799506 679612168 488914701 11869848 426421127 312132562 110070798 819133500 432903174 361791371 582235477 465415446 513076567 983348977 149864184 764709278 634435383 622093233 699341986 719359745 667375881 16259001 661721067 468760318 798945 484019303 986584196 993583318 529744576 552590636 919211260 412381205 55340968 376185185 96458165 382088237 380892447 996197101 865542042 594013450 767000520 103169856 565696300 645825234 76567234 82652983 923361672 971972394 849016714 159976997 686105708 469199423 43243691 14492177 96175926 989494406 552247444 836973708 466355584 664963287 917636153 428964282 144357546 923111481 604207521 77610892 798337107 979052226 136872639 267776579 423058221 82702065 510713260 260868977 993409147 537292420 785000124 833557602 408131189 499679573 425695474 692111934 399681224 494027995 726538438 51927588 382160634 300364491 112876184 588348095 495916103 693551925 982058972 610802654 817728753 563861405 706273583 48046108 908228620 340373633 931106215 595639317 960431063 49813820 658809658 843247066 720444723 654965020 759388099 933781515 122746151 311194738 449748803 135267578 482952003 996572862 296763958 268034735 829342189 192030501 828806783 753207746 994672303 561895126 428109131 970893852 742130043 756791837 850360742 793534163 585642844 74479438 5546867 209445823 840218325 516924067 370711848 840911588 811440763 806832700 465194268 668668784 600557483 814773238 471749242 81124868 55859030 49888832 390666530 310912257 472658183 841681618 184023374 917300534 35937874 599186101 18519498 93018978 494510962 564907706 314558115 586818083 727272867 496802324 859825573 164046037 444112902 727343897 64089106 530519911 600046131 40180256 320577706 410964095 662468509 42893 119614663 451764340 656228557 22374939 946258500 435906651 880437811 665321619 251603044 672889989 633599149 369148941 75514350 712839663 135514961 168059892 342797287 808505119 351252277 207643239 429441937 903837851 864024503 285474692 327236851 29214748 289835153 345070395 664194408 1073107 817703025 395473145 828248388 711773422 308718233 404965069 255551104 874803414 215438839 942840424 270551001 15413679 244683260 300903463 126972980 451576885 280738733 15223277 150635781 847347895 889349493 467247543 132796613 222789134 675800627 678055691 278872891 923179844 34366042 312615437 254970330 867771093 557212094 288956916 266746891 530090957 145453146 330223215 346613941 411279832 434306118 224900404 650546819 620743866 540156043 600050997 271402493 836123987 897005412 243985545 93055769 239560126 187734455 50152834 266467264 60763511 502519002 170089304 434649056 727771006 837783261 233467578 603207149 281388499 698595901 787500775 971083942 556770765 89067791 640045835 843323197 351451811 994127514 291009883 637030516 239499751 564965571 109338692 996697356 716644561 265868580 999786169 859464046 334419119 619745602 525418158 61748808 208523631 718448819 518691260 900270961 612925893 513745073 511608892 608861288 721443815 971471532 111292614 340426014 427852400 651925612 515923287 145842211 368518386 467396706 957276365 834901487 437125149 60768488 474240850 252369295 999823646 502020077 534080947 15148735 209261012 637862277 725119998 726238403 579018637 197273063 863248835 263225062 154582769 401575828 411247153 491852446 342041195 952573320 914731641 798360155 538909521 818475547 167119031 735381122 508296014 399186029 113915843 617447254 648498280 523051157 202928308 204260168 401132033 818866479 972666990 972733979 947513427 672164166 181961007 376690209 442885679 745967505 899112559 427281350 948087602 94747540 596287247 501394830 527741229 924668418 825560358 662111715 800601318 150211699 215369417 234724706 382972018 68345336 315305032 970529420 497940186 621244649 973923374 942564552 609130979 312988187 300432753 693184035 962823863 605965602 895383661 619199636 464553122 160400510 993219728 417435626 820323181 907642114 343112793 364300111 893703439 300848938 208983544 891732045 765196025 226554726 472337429 384732502 415545535 749361832 878820204 937373499 359069898 575097969 196215546 747721219 867583274 868208627 516970619 157219757 236464589 887958055 733846510 10543670 694743993 53521450 828287 381656675 305617793 605966263 439926939 395519464 779643323 430782275 43773458 215194169 127437619 324269374 730374621 265051606 996033191 503320425 795818217 318235434 246980865 171023541 496582426 863804471 541895821 545443817 445958296 317859555 208076302 584405429 215444846 118882047 184753509 77520538 947102973 494547105 152568535 579307261 953255756 441110359 328880713 954668973 563733542 234120961 513543964 504709893 124638002 809024350 899433350 298696072 31890703 231523748 382103539 301181137 899840685 699644918 153566264 946432126 761429323 847801024 393840272 815340985 223175850 80901668 287156683 156980858 159596274 664112718 387019865 360574867 308733024 690520594 252774475 856150370 714813211 668635199 598588663 744626211 547473911 36761318 30684096 774301690 687458632 856054453 240140379 223461498 460181105 533815010 764895158 321355310 373588085 116531446 663514041 567530540 234545681 84813375 653608478 677972986 273789459 653907885 244245213 367914104 777744666 354674733 370984585 211532893 905543533 689449746 815513082 157164421 238794206 775788701 184132987 671966237 451023902 387686965 219470704 945770622 273618763 370971535 89853681 560038634 967465520 694995228 325088131 691022146 392777714 537793061 750414908 121824871 513474930 666406776 778759971 330038925 550653815 446134002 756367076 254363632 964806888 19291761 184411346 911992345 20003660 745126905 17495413 22461506 492652656 19647507 643152372 409976257 156808708 978100131 718516736 958695605 584644459 460056780 595895525 648092277 929901690 106042509 189858997 283019818 741956719 720116538 676696289 653353944 232261509 440339687 972403030 2342034 753256597 224694287 550128075 421186999 820052565 731585864 885355375 231834544 371020173 54385924 693093344 266368137 837777038 293192616 341580002 709034462 775535733 333013962 980579343 562905784 44313629 9052734 962430143 668858148 343495955 975923460 847303676 898904267 907989724 468452656 906461906 935246654 461227978 132146471 68364206 131768672 807851811 819431469 26901969 591640475 707103998 864956040 708563848 309852208 259288765 209528512 63497704 291668159 111641537 437307828 765340873 724098226 606066486 291610719 255446994 980960179 891385252 807107005 892335080 454614530 507579009 638673793 731748580 870092028 521984147 900086536 42510515 830031669 925159691 192893455 19703684 513374385 350741246 686821984 830914346 899688770 42057934 966899665 800237565 341012089 174933604 53799283 648106158 40231113 919979394 897574303 932708263 817858736 53936318 578113686 380930625 126627427 965226525 774326005 893544517 987839087 168705977 560256497 948480179 726915002 651458433 350341554 98071968 479219626 475343425 912847051 864752886 279157388 945215254 810266501 70596792 95017852 333173568 893234087 342744948 619730325 51097907 976682372 972515081 930860024 750936485 347265652 320822037 265920774 20648589 709342288 707983598 449568107 569650655 702083599 383398903 323145783 50272045 568393484 51995892 904062607 352304148 960836050 201279110 398820537 543555381 243210527 611136634 519573686 607370563 577179263 605042999 245978885 886247321 153549701 280966803 181116090 729043302 905196932 692467428 620306201 976695276 910025043 876105935 998555163 890595926 250591863 943924240 686041456 992204770 848295938 200860805 69638768 716249791 789654071 968155970 902337375 240040298 349991319 542699351 114128497 880671297 500617033 511910701 59932797 245635218 141366054 666073038 273648625 730842967 402055206 709802338 367411984 872463606 329947547 317523520 636841743 804253784 922632648 289914162 910111254 378835726 408229109 15452417 528882938 120277592 200486729 599603182 62518119 918441395 134589526 421009686 125762328 989873186 371412658 333329789 490634513 969780090 612140301 249115659 232369271 314281511 501656161 111844341 184562236 117093281 810681107 662642675 969443469 82468158 724711795 681867707 336525089 605825308 470706672 400520956 595658621 993324899 868068767 743450908 894720703 440652347 628614121 828959560 161916337 694604112 63592969 851814544 740951372 972514647 593054580 36908501 774680511 535333251 425649920 123696500 805033608 829094386 10340633 294512453 341900397 641074282 645267540 890317798 386394463 964093297 503411541 439164413 335603451 613172122 934789258 18515768 117096800 310298937 561324965 601429169 650902159 91934918 483236997 615561408 990612891 427594878 340209919 197179278 39468103 567584884 756902421 519974248 568651230 419419863 380145156 166645064 197997896 847066796 385633030 942238871 46197423 341891889 326926668 236051206 350319230 64289054 284059 279431788 790358133 79263595 257640728 889794785 952405354 752427456 596457794 559546800 863686563 910716876 437000525 611228691 783237089 443120288 364646369 492696850 247663641 32047781 425913670 653856993 256981322 948609845 565849557 994745656 791462544 211767874 415257693 722283634 710159734 533165360 776381257 951537690 54450140 961476653 723880886 908628934 861957670 953555405 528979856 672990172 199389227 137183010 230532242 254021374 597742165 494796716 37232548 541704194 547731950 766433788 481058456 897327432 665465639 658811275 670726770 608175836 110112897 94994710 75780073 831708883 501536680 823880326 747346436 305549291 326486044 440123173 653987044 384936691 429640436 864367170 123854396 766208637 976668985 421963823 250756410 984902362 928148565 30446234 248756463 157988671 978398600 127641346 497159537 261529444 705291958 34366814 197038085 220985763 222057743 462325979 859461755 290461342 594661220 313706803 1250478 988428148 531234599 956971651 370258118 261351864 979820374 537666147 238776742 362332441 607295687 763535353 949505943 367620386 126858101 344600614 29036930 430614135 764577169 203063318 723221892 735510695 313551607 26589790 593740685 744952452 234760485 712449379 471240055 15475914 280934772 471033714 645876690 317633104 27591875 669053901 515886733 330233974 826080795 259464423 950092391 678544099 292833474 579486693 648080989 618340312 870552679 552450056 826007391 839878888 105855556 291729048 259750050 125656942 368122171 168435449 365530470 402871089 890309756 94939653 216929238 313120474 600560443 946462106 27983799 915401350 271518362 752832853 418702420 55182965 726869511 828052139 249808925 479302092 580160616 663400535 246607952 273756868 750241594 317144474 535322430 420814817 760937977 60056815 11633639 260415808 822940937 8944567 934944505 119624638 883890933 292159650 392417820 262304371 276782211 401509049 479621267 845202356 735513733 136776670 367402777 351776973 480615970 702944294 84510985 273507122 849928562 197311096 218064559 345660034 930044139 520020980 655502380 366052482 36188466 316177482 627091012 577688357 569362486 118204582 366679579 211657521 386168066 221778115 692345527 31806587 282798486 612649893 762849321 640614352 962227871 566117219 321853013 651437333 801762216 235230849 962068461 39341844 160735837 352787508 1162371 453297737 366605040 544315122 952621669 781552541 990138064 967491771 339334496 855534234 681989844 187888822 950454222 758999573 693521099 36161617 344606760 124168942 691338102 494449207 616689926 416333408 722592832 116080774 502338590 71634311 425358969 132107276 959639689 705766808 98545045 578719459 536424519 830434844 679065883 429953683 20417848 58094514 923502470 459433851 956922149 149977703 261922316 377638559 215711010 76015389 94066104 89357619 251507126 922196518 525634325 406863754 367134645 918829991 87638958 918051941 679528316 922939316 781226117 715948684 430382313 442241181 975308424 564802778 944477235 692382696 717906090 17576610 984312071 88737960 147772287 496027047 586818236 209285350 126010930 35046031 8192314 459772205 605829897 339134028 887596890 404508917 844168710 726857380 108445599 146821947 423517105 564675967 12772596 350240061 713846185 239110584 452743312 33299873 629163687 178519687 949856496 991406684 545632551 758247708 764549981 933609435 694412116 694075397 422272614 184851959 22796823 995160113 20695962 483727926 711977673 75184299 989746772 733641976 269664188 181486202 79578929 618829659 957943226 235808711 941157803 725959149 611176730 417465803 194040388 322979866 670736416 700116478 341375501 158088785 134023966 493959917 490481369 582657799 309628725 21708146 336463358 155322472 629353782 759491364 815047988 63872614 247457431 699311770 994980433 524875836 438507180 426713784 463664082 574010979 67437206 288733373 192850341 978000873 148909100 350712106 570601316 200883432 994082331 680378193 133381665 678525644 118629348 203667777 45121179 363882607 323065816 120414137 967509941 10354951 752396495 508662282 185612124 369130350 856181031 846809890 951601357 710456541 495785918 822140441 437103747 444497794 365376486 633194852 323128536 341798171 169092061 113310184 956193481 95485596 97575837 880055430 67952975 580526380 83762940 124870697 185419169 477447891 177888507 540777391 118949891 668575578 129779284 473676145 679015802 963060197 298027757 544002206 869773195 646700073 452430274 195601501 474329199 940278943 759503453 378721737 121578095 271585078 507053253 309730977 211688558 370805284 590962975 471445955 493509507 291478991 746499142 62967669 680887875 267415571 522700070 310424520 880387110 879117334 413955693 156374192 401798034 186184384 689099026 454204751 880394830 232518225 12933240 23202206 324305710 265502787 641043974 959314885 75521371 660385965 925499131 218784543 587006532 946880320 358879788 782594492 762105240 18623445 271317858 441140322 282016937 78065678 765614133 27714386 112221906 466609640 604876630 293486904 641673169 446463791 185743311 289325438 480286663 772215380 864432529 535876614 763976415 488241987 986856600 276883067 876552072 759741167 542153758 747581266 92052561 195843042 726107405 71394458 647306640 717208060 824596537 315864139 90667101 915786193 13360564 159344236 484620136 470964068 638917517 940861459 11103543 799059447 454469904 138556186 204103742 201997866 832854500 10692852 865115882 551355457 299565632 812150202 359179481 570422249 785933516 700486614 822452801 944744043 805136463 428378257 118410116 779695456 910278159 145054641 295895946 349882437 581171494 459198555 617843151 19349840 904122263 219561752 328263298 560315493 796381419 933902703 273128141 820045170 761715585 502621841 423450269 455269131 772112822 927404301 236026349 430366552 871322785 150192418 138435298 940412928 158205804 522025408 97706394 708033727 253395287 588708763 480415975 311828446 303608903 521677357 26548708 622921886 180171451 598828298 708100259 573774839 544489194 605809476 444403979 819482127 856878154 385790690 66836176 794841151 926927891 585198952 232262413 20315697 448603958 40887718 744166684 8607828 398282704 966268695 811176638 615635580 934800321 838009115 919757181 182988946 779892263 690422569 691953727 911949119 244970378 927119994 133939342 920984272 331083627 913848381 622531228 126942648 865620463 158783336 133079565 567104940 371111011 87997059 685568027 318694056 928513891 9546544 848267704 471847684 626156270 331313514 571680767 718667029 846648472 293905924 447992905 358400627 687193533 88740236 145502649 597235007 201950285 351889372 945343575 877648637 91339870 501235482 637762814 293685426 401511456 197185940 250058024 47987965 379210567 637733105 544267620 828033051 874465572 739978593 37536719 534083447 378681121 619150099 831494694 353428679 425095256 957443253 346955157 660155668 193478216 481395284 103916727 142565199 674724908 604785749 613705390 903687208 76828470 623690899 702661208 729003966 257507518 107510133 791794786 661273179 510401215 605045139 35874789 456189179 627296119 940494298 654357550 606321555 187450327 816511232 255888615 839475125 154822401 264765 336405866 59702923 27244838 17662804 58199039 122910596 245752169 565286781 17480365 889313436 256216110 530149095 200258829 868538370 888860813 576725869 68213378 161319857 549165535 316063266 926457218 757233672 631887415 978349885 470952732 133333966 31635929 260392235 926687635 737911057 335725446 2495228 612986010 982014639 861644943 940408065 532210399 301649019 165757247 605029087 234506422 240309224 266947644 108346216 387980091 671519674 977063141 849476548 485957642 496640920 300990625 840481110 758505184 707145610 491036694 447833657 947689947 192666325 725699003 459854683 675016239 143209409 4508227 673265875 687708637 525847975 154501524 782842825 314158315 848796538 453660741 911394245 969646834 6300556 899328579 603165992 56894174 632538396 838983710 340523598 832010232 351594323 622867165 996177695 803017809 58579885 382269417 351071727 303320533 526594776 464182011 679600222 350311882 51402642 111389593 81085606 589934456 84589102 994482762 33002320 832265715 926770891 519865585 225511515 975862541 555468673 815096040 882222296 381451378 770231299 333986711 322116550 162991748 235730168 705288207 850362273 272126430 546006568 305160993 535557256 821008266 848071590 52861839 19175723 277208103 710866988 841299018 349149967 964787225 597038123 845106098 801746941 254203725 666474142 146525123 652216050 550692977 154744475 115166615 859145128 348019129 895728695 589876300 626796233 149748110 162209609 573346278 506206815 224428801 849429904 92749341 25412847 926294759 958315239 928809951 327086066 251836817 940349071 414398191 603122432 755099162 595250654 81614477 953347318 587244553 327656321 940639403 34966520 817435513 258233220 187432907 631906283 619095122 269879594 225540355 96592277 565773472 209348532 494588442 875355949 16312554 695766680 635082583 912172971 590656966 628587488 8092379 81282160 234096747 953581792 455611033 161641120 640944805 39405698 1109620 508783051 770306040 782103801 982453494 721256632 696531792 797083532 347644694 308638845 469040154 967221903 593812237 314901059 155068547 994784278 622346737 251473897 585083460 921542001 1825809 536744794 273726518 325972224 942534225 298395880 63303650 285976061 229642069 100837019 4878988 426906634 328071003 732037410 237445244 922123952 516466369 964492747 258802179 666767624 657050159 734632300 969448 742323916 290688063 837405294 447592517 775361960 54314879 307951537 232301212 335947997 642461126 491854148 897208845 450454529 521174387 814269200 164143397 349414309 891049724 234321797 662742820 934056298 861565434 960096134 257433092 856880358 144621293 938232760 525452420 866084202 632820827 67352973 680488035 351423838 461877622 985608074 774368259 557650809 699279100 209372693 143651401 9985844 329157291 31615360 529847096 911726475 142405812 107240724 156290006 308980853 285610494 453256019 446374604 919736941 241563020 519955001 236633555 367841424 690393759 159654019 262734771 623698606 525787000 329475240 909560176 947077055 922273872 201748296 587121611 818437631 58019573 230389347 221713959 460133860 907336911 973186665 413014606 310623419 736257052 359182889 85706174 538058631 35888972 245503770 798110210 314854294 233932968 638764312 295821706 7284895 768147597 675027036 568140654 374567378 91184355 288430865 713950743 887789260 280175015 723672063 460911439 235094818 265570954 18753500 359483770 670941272 590697716 220266353 287967299 330221510 571506372 627160515 260998334 235664408 358960674 664531992 548335150 265472535 309959653 655699751 890844005 514733878 808489584 391726467 900055531 728799815 966939678 952572544 826936921 285246805 801152861 855496541 595531069 35952124 976719623 768223089 959568264 786629482 962494943 28571506 468561558 77313620 241323106 342021072 95142829 272284153 574595591 746255977 731668280 5648739 606766911 94693790 569916021 748141003 406008081 448632783 611439508 8043772 596136485 438996444 513614829 640684221 204980483 21239850 496143606 155275100 527464895 555777283 239522938 676207037 727546547 191236921 105952343 322950119 751398616 83196918 979967752 724761043 416407710 943288423 581133375 145451246 399900866 46324379 622501573 193982081 273634931 884155217 286639961 377486594 324174084 775635752 407583430 962488665 411323536 43365234 323934216 399823705 117957657 778056350 63985367 512628220 500483967 142812193 332853237 243135810 304144310 228893236 757889497 268236517 525794008 987003812 199375525 505312053 370512757 343862821 933745401 304295858 376532955 328531852 712345083 538325223 147361852 321346951 647480074 592263493 60152800 848194893 745354926 709789420 227562749 631136748 446108044 593281137 819238172 744086719 908072811 983152868 592808859 41877690 447085214 17635241 248580667 117927931 222290539 837280797 474804439 332537095 955904979 607037074 487978949 114829795 343708162 160819557 728535450 165938909 931683969 952773436 934223229 757131470 699266854 885199214 689585179 383204782 128832986 597195028 282422620 238281298 615702926 704112282 391784145 780330 399671764 88751727 811134416 899820719 92371542 980158720 152875927 112864761 834193128 202071799 203469565 105578131 380330097 395621656 306358354 647589910 81315733 852381288 999053864 346309726 581625449 279408087 666019822 852546361 556303558 388097671 581448449 418369780 664628958 349169906 62377963 795886150 821931960 863244184 498279009 689953986 601323345 851867517 271552603 851161009 52424713 638239889 956236416 723496199 941083489 902136605 971804247 648350761 28405018 475185165 353463169 380809262 342804207 140200337 762682316 454684153 310751189 452643774 127022796 886342432 607733347 437860127 242429039 20864625 345162538 693834539 814715698 467272836 172221649 961549676 389564143 405018532 122637511 174307046 279846382 696531018 945499123 893031522 945326294 34977578 501186968 815873860 239069782 905077488 73738109 633596796 463471121 710565793 414069879 270165214 379569103 678527051 177180739 659912793 266437204 52091175 588180017 476743435 61908814 41276915 807877351 193728847 893538706 87707356 502576843 398425680 374536359 490468142 754258248 840908040 614312718 246205194 93426468 920943343 288465365 621738177 291338748 569207929 402398358 870272228 708239879 840302917 337778588 938720434 457024037 466755199 90218129 811627675 770669922 601550293 282152791 259915024 232400592 758824639 918479379 461289859 740466216 167422368 94267259 578981360 653266414 664910883 154065402 927593291 779752893 93205305 694227416 743086638 444676304 890452811 733096193 545208178 867212181 997150959 406503319 91665542 744548458 1372804 418825994 24607007 114842470 393979928 398044130 444230438 585795179 615827224 569781212 265668509 295357727 244870050 506965650 314059840 33084244 601764701 125621698 167795855 436818413 179711411 286350458 383291150 403637456 227302126 325090638 43614670 177761732 422666029 61330096 102933819 548747677 916775654 240100960 37883022 233807188 19552023 334121850 698020523 14201895 400191539 212328740 86208150 491362769 339012424 658964813 473720663 681860830 454113684 352785279 930759198 882659182 171923876 417814919 648229937 145084280 995373342 93194207 918791366 507355886 973416471 63524256 196952670 525765522 326962319 494130213 523281573 923756258 998814113 856605784 93388233 79239903 243515389 118169373 369621011 91107807 929650801 270410635 797206956 96374323 531368014 303743158 947089594 671624542 865417373 306453145 31678112 745857229 692708678 767469541 581641310 854116684 559833485 351472931 201633673 578235002 409275591 682492542 189702740 621895135 89441289 769036179 406045943 79903817 731052047 262890602 976310882 416809750 77227370 636019162 865213875 264007618 35783019 770751549 135935398 961151534 644737595 451930687 486263444 605168905 231268225 249925430 773534260 943584702 299590229 192876447 952560736 828323195 400366992 721235298 133046093 31157753 913035727 108499550 45386161 461180152 292252862 671708181 839471669 612467177 970046971 501273485 203586316 12587230 817610940 331273017 982452730 136359319 447658068 196213991 746173079 145446509 630981246 711393214 49266362 390074059 55314279 569335786 797801385 502171978 447432559 352347320 826931231 114353873 844758787 645079931 500108152 20603240 386723886 482309409 359277797 580094176 220439451 465734770 92466679 25220680 143149855 402292324 485520997 202307941 104840150 598254016 760907720 707226938 42760303 510334710 298517342 546216397 952879357 887696222 796276905 220695157 248344318 315902077 207437747 654045680 580345958 770455888 222342692 328358076 197381142 409651353 66220871 396976484 297242754 434918539 52018614 587774970 227575028 523241285 960627723 280287783 353926040 814860767 653889043 158536207 655610304 743386188 419129445 835248655 520622964 658410920 744378052 844279103 482053914 771733452 887675902 17014092 328891796 187965570 141901112 738372423 306202593 675276458 596656366 299071711 147338172 700432701 534475782 159523 836717729 654537324 234593003 368242336 75729879 407227413 47862740 70914279 2461869 289262946 432118019 789470285 161117965 486814131 296392875 928190146 936909551 769068331 753261853 231175591 589288827 880170996 356390330 678705898 14309774 11244142 349143889 971558633 440969719 687277049 141684385 341873989 479989045 932841180 601078904 737766130 791889561 620532312 162707543 955346995 87202194 719592131 431619210 107359259 738887219 241736524 895602979 275467455 78320989 221020257 diff --git a/data/cses1620a.txt b/data/cses1620a.txt new file mode 100644 index 0000000..793fba9 --- /dev/null +++ b/data/cses1620a.txt @@ -0,0 +1,2 @@ +10 10 +6 5 1 2 1 5 10 4 6 6 diff --git a/data/cses1754.txt b/data/cses1754.txt new file mode 100644 index 0000000..31d6b55 --- /dev/null +++ b/data/cses1754.txt @@ -0,0 +1,4 @@ +3 +2 1 +2 2 +3 3