I have this from Peyton Jones awkward squad papergetTwoChars :: IO (Char,Char)getTwoChars = do c1 <- getChar c2 <- getChar return (c1,c2)Can someone explain what is happening here? *Main> getTwoCharsab('a','b')*Main> getTwoCharsa('\n','a')