import Control.Applicative
import Control.Monad
import Data.Char

count :: String -> [Int]
count [] = take 26 (repeat 0)
count (x:xs) | 'A' <= x && x <= 'Z'  =
    take c rcount ++ [rcount!!c + 1] ++ drop (c+1) rcount
    where c = ord x - ord 'A'
          rcount = count xs
count (x:xs) | 'a' <= x && x <= 'z'  =
    take c rcount ++ [rcount!!c + 1] ++ drop (c+1) rcount
    where c = ord x - ord 'a'
          rcount = count xs
count (x:xs) = count xs

main = do
    s <- getContents
    let c = count s
    putStr $ concat[ chr (i + ord 'a'):" : " ++ show(c!!i) ++"\n" | i <- [0..25] ]
    