rotate :: Int -> Char -> Char
rotate n c = alphabet !! mod (base + n) 26
  where
    base = unwrap (elemIndex c alphabet)
rotate :: Int -> Char -> Char
rotate n c = alphabet !! mod (base + n) 26
  where
    base = unwrap (elemIndex c alphabet)
rotate n c = alphabet !! mod (base + n) 26
  where
    base = unwrap (elemIndex c alphabet)