import Data.List func :: String -> [String] func [] = [[]] func str@(x:xs) = (map (x :) (func xs)) ++ (map (last str :) (func (init str))) main = getLine >>= print . length . nub . sort . func