import Control.Monad
import Data.Foldable

main :: IO ()
main = do
  t <- readLn
  cs <- replicateM t $ map read . words <$> getLine
  for_ cs $ print . solve

solve :: [Int] -> Int
solve (l : r : a : b : _) | a < 0     = a * l + b
                          | otherwise = a * r + b