Shiftstate]
shiftstates = do
    ["SHIFTSTATE"] ← readLine
    map shiftstateFromWinShiftstate <$> many (try shiftstate)

shiftstate ∷ (Parser m, MonadFail 
kbdField ∷ (Parser m, MonadFail m) ⇒ m Information
kbdField = do
    ["KBD", l1, l2] ← readLine
    pure ∘ set _name l1 ∘ set _fullName l2 $ (∅)
kbdField = do
    ["KBD", l1, l2] ← readLine
    pure ∘ set _name l1 ∘ set _fullName l2 $ (∅)