import qualified Data.Set as S main = getLine >> getLine >>= print . cardf . map read . words cardf :: [Int] -> Int cardf (n:ns) = cardf' (S.singleton n) ns where cardf' s [] = S.findMax s cardf' s (0:ns) = cardf' (S.fromList (concatMap (sequence [(+0),(*0)]) (S.toList s))) ns cardf' s (n:ns) = cardf' (S.fromList (concatMap (sequence [(+n),(+(negate n)),(*n),(`quot` n)]) (S.toList s))) ns