+ abbreviation :: Maybe String, -- ^ Some teams don't have abbreviations,
+ -- or at least, some sample jfilexml
+ -- don't have them for some teams.
+ name :: Maybe String -- ^ Some teams don't even have names!
+ }
+ deriving (Eq, GHC.Generic, Show)
+
+-- | Needed for 'Generics.to_tuple'.
+--
+instance Generic Team
+
+-- * VTeam / HTeam
+
+-- | A wrapper around 'Team' that lets us distinguish between home and
+-- away teams. See also 'HTeam'. \"V\" (visiting) was chosen instead
+-- of \"A\" (away) simply because \"vteam\" looks better than
+-- \"ateam\". This is purely for type-safety.
+--
+newtype VTeam = VTeam { vteam :: Team } deriving (Eq, Show)