import Data.Char
main = do
  w <- getLine
  t <- getContents
  print $ f1 w (map f2 (words t))
  
f1 w t_w | head t_w == "END_OF_TEXT" = 0
         | (map toLower $ head t_w) == w = 1 + (f1 w (tail t_w))
         | otherwise = f1 w (tail t_w)
f2 w = [c |c<-w, elem c $ ['A'..'z']]
