module Facts.Geography.Countries.UnitedStates.Address where
import Data.Data
import Data.Typeable
import Facts.Geography.Countries.UnitedStates
import Facts.Geography.Countries.UnitedStates.ZipCode
data Recipient = Recipient { recipient_name :: String
, recipient_firm :: Maybe String
} deriving (Data, Eq, Ord, Show, Typeable)
data Address = Address { recipient :: Recipient
, street_address :: String
, street_address2 :: Maybe String
, city :: String
, state :: Either StateCode OtherUSEntity
, zip_code :: ZipCode
} deriving (Data, Eq, Show, Ord, Typeable)