input :: GetUser -> PutUser -> Msg -> IO Msg
input gUser pUser m@(Msg name0 _ _) = do
    r <- gUser name0
    case r of
        Nothing    -> newUser      pUser m
        Just exist -> existingUser pUser m exist
input :: GetUser -> PutUser -> Msg -> IO Msg
input gUser pUser m@(Msg name0 _ _) = do
    r <- gUser name0
    case r of
        Nothing    -> newUser      pUser m
        Just exist -> existingUser pUser m exist
input gUser pUser m@(Msg name0 _ _) = do
    r <- gUser name0
    case r of
        Nothing    -> newUser      pUser m
        Just exist -> existingUser pUser m exist