arbHost :: Gen B.ByteString
arbHost = foldr BS.cons mempty <$> xs
  where c :: Gen Word8 -- "a-z"        "A-Z"        "-./0-9"
        c = elements $ [97..122] ++ [65..90] ++ [45,48..57]
        xs = do
               a <- listOf1 c 
               b <- listOf1 c
               let dot = [46] -- at least one '.'
               return $ a ++ dot ++ b 
arbHost :: Gen B.ByteString
arbHost = foldr BS.cons mempty <$> xs
  where c :: Gen Word8 -- "a-z"        "A-Z"        "-./0-9"
        c = elements $ [97..122] ++ [65..90] ++ [45,48..57]
        xs = do
               a <- listOf1 c 
               b <- listOf1 c
               let dot = [46] -- at least one '.'
               return $ a ++ dot ++ b 
arbHost = foldr BS.cons mempty <$> xs
  where c :: Gen Word8 -- "a-z"        "A-Z"        "-./0-9"
        c = elements $ [97..122] ++ [65..90] ++ [45,48..57]
        xs = do
               a <- listOf1 c 
               b <- listOf1 c
               let dot = [46] -- at least one '.'
               return $ a ++ dot ++ b 