import Data.List
import qualified Data.ByteString.Char8 as B

main :: IO ()
main = getLine >> breads >>= print . solve

solve :: [Int] -> Int
solve = foldl' ff 0 
    where
        ff acc x = acc + count x
        count x
            | even x = 1 + count (x `div` 2)
            | otherwise = 0
            

breads :: IO [Int]
breads = unfoldr uff <$> B.getLine
    where
        uff b = check <$> B.readInt b
        check (a, b)
            | B.null b = (a, b)
            | otherwise = (a, B.tail b)