import Control.Applicative import Control.Monad import qualified Data.ByteString.Lazy.Char8 as B import Data.Maybe main :: IO () main = do getLine cds <- map (solve . map (fst . fromJust . B.readInteger) . B.words) . B.lines <$> B.getContents print $ sum cds `mod` (10^9+7) solve :: [Integer] -> Integer solve [c,d] | c <= 2 = d | otherwise = 2*d