getFlag :: String -> Options -> Maybe Option
getFlag str (Options opts) | length matchOpts == 0 = Nothing
                           | length matchOpts == 1 = Just (head matchOpts)
                           | otherwise = Nothing
  where matchOpts = filter (\x -> (isFlag (str) x)) opts
getFlag :: String -> Options -> Maybe Option
getFlag str (Options opts) | length matchOpts == 0 = Nothing
                           | length matchOpts == 1 = Just (head matchOpts)
                           | otherwise = Nothing
  where matchOpts = filter (\x -> (isFlag (str) x)) opts
getFlag str (Options opts) | length matchOpts == 0 = Nothing
                           | length matchOpts == 1 = Just (head matchOpts)
                           | otherwise = Nothing
  where matchOpts = filter (\x -> (isFlag (str) x)) opts