import Data.Char
import Text.Printf

main = do
    os <- getContents
    let ss = concat $ lines os
    mapM_ (\(c,i) -> printf "%c : %d\n" c i) $ count ss

count :: String -> [(Char, Int)]
count s = map (countChar s) ['a'..'z']
  where
    countChar s c = (c, length $ filter (==c) (map toLower s))

