-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A collection of facts about the real world.
--
-- The Facts hierarchy is meant to contain commonly used, relatively
-- static facts about the "real world". The facts are meant to be encoded
-- using relatively simple Haskell constructs. However, we do make some
-- promises: every data type our modules export will have instances of
-- Data, Eq, Ord, Show, andTypeable.
-- We will use explicit module export lists to control access to internal
-- data structures.
--
-- As much of the data we are encoding is tabular, we use simple
-- structures like lists and maps to encode the relations. This has two
-- practical ramifications: the textual representation of the data can be
-- very wide, but are also very easy to edit, with "block editing" tools
-- like Vi's visual block mode. The other consequence is that the naive
-- approach to writing queries can be tedious, and the resulting naive
-- queries are slower than they could be. Template Haskell can eliminate
-- much of this drudgery. Felipe Lessa has graciously donated some
-- Template Haskell code which we have adapted.
--
-- The Facts.* hierarchy currently contains modules with geographical
-- information, such as a data type of countries, cross references to
-- various ISO-3166-1 names for each, a list of states in the United
-- States, and the United States address format. Please see the module
-- hierarchy for more specifics. Patches are welcomed, though prospective
-- contributors are encouraged to encode data structures using lists of
-- pairs to encode bijections, all exposed data types are instances of
-- Data, Eq, Ord, Show, and Typeable,
-- and to use explicit exports to only export queries and their input and
-- output types and constructors. For now, we will add facts to the
-- hierarchy lazily, as our projects need them.
@package Facts
@version 0.1.2
module Facts.Geography.Location
data DMS
DMS :: Double -> Double -> Double -> DMS
degrees :: DMS -> Double
minutes :: DMS -> Double
seconds :: DMS -> Double
data Length
Meters :: Double -> Length
Feet :: Double -> Length
data Location
Location :: Latitude -> Longitude -> Maybe Elevation -> Location
latitude :: Location -> Latitude
longitude :: Location -> Longitude
elevation :: Location -> Maybe Elevation
newtype Latitude
Latitude :: (Degrees Double) -> Latitude
newtype Longitude
Longitude :: (Degrees Double) -> Longitude
instance Typeable Location
instance Typeable Longitude
instance Typeable Latitude
instance Typeable Length
instance Typeable DMS
instance Data Location
instance Eq Location
instance Ord Location
instance Show Location
instance Data Longitude
instance Eq Longitude
instance Ord Longitude
instance Show Longitude
instance Data Latitude
instance Eq Latitude
instance Ord Latitude
instance Show Latitude
instance Data Length
instance Eq Length
instance Ord Length
instance Show Length
instance Data DMS
instance Eq DMS
instance Ord DMS
instance Show DMS
module Facts.Geography.Countries.UnitedStates
-- | The State data type is a list of States in the United States.
data State
Alabama :: State
Alaska :: State
Arizona :: State
Arkansas :: State
California :: State
Colorodo :: State
Connecticut :: State
Delaware :: State
Florida :: State
Georgia :: State
Hawaii :: State
Idaho :: State
Illinois :: State
Indiana :: State
Iowa :: State
Kansas :: State
Kentucky :: State
Louisiana :: State
Maine :: State
Maryland :: State
Massachusetts :: State
Michigan :: State
Minnesota :: State
Mississippi :: State
Missouri :: State
Montana :: State
Nebraska :: State
Nevada :: State
NewHampshire :: State
NewJersey :: State
NewMexico :: State
NewYork :: State
NorthCarolina :: State
NorthDakota :: State
Ohio :: State
Oklahoma :: State
Oregon :: State
Pennsylvania :: State
RhodeIsland :: State
SouthCarolina :: State
SouthDakota :: State
Tennessee :: State
Texas :: State
Utah :: State
Vermont :: State
Virginia :: State
Washington :: State
WestVirginia :: State
Wisconsin :: State
Wyoming :: State
-- | State abbreviations:
data StateAbbreviation
AL :: StateAbbreviation
AK :: StateAbbreviation
AZ :: StateAbbreviation
AR :: StateAbbreviation
CA :: StateAbbreviation
CO :: StateAbbreviation
CT :: StateAbbreviation
DE :: StateAbbreviation
FL :: StateAbbreviation
GA :: StateAbbreviation
HI :: StateAbbreviation
ID :: StateAbbreviation
IL :: StateAbbreviation
IN :: StateAbbreviation
IA :: StateAbbreviation
KS :: StateAbbreviation
KY :: StateAbbreviation
LA :: StateAbbreviation
ME :: StateAbbreviation
MD :: StateAbbreviation
MA :: StateAbbreviation
MI :: StateAbbreviation
MN :: StateAbbreviation
MS :: StateAbbreviation
MO :: StateAbbreviation
MT :: StateAbbreviation
NE :: StateAbbreviation
NV :: StateAbbreviation
NH :: StateAbbreviation
NJ :: StateAbbreviation
NM :: StateAbbreviation
NY :: StateAbbreviation
NC :: StateAbbreviation
ND :: StateAbbreviation
OH :: StateAbbreviation
OK :: StateAbbreviation
OR :: StateAbbreviation
PA :: StateAbbreviation
RI :: StateAbbreviation
SC :: StateAbbreviation
SD :: StateAbbreviation
TN :: StateAbbreviation
TX :: StateAbbreviation
UT :: StateAbbreviation
VT :: StateAbbreviation
VA :: StateAbbreviation
WA :: StateAbbreviation
WV :: StateAbbreviation
WI :: StateAbbreviation
WY :: StateAbbreviation
type StateCode = StateAbbreviation
-- | Other US Entities, such as protectorates, districts, and others:
data OtherUSEntity
AmericanSamoa :: OtherUSEntity
Guam :: OtherUSEntity
NorthernMarianaIslands :: OtherUSEntity
PuertoRico :: OtherUSEntity
USVirginIslands :: OtherUSEntity
DistrictOfColumbia :: OtherUSEntity
state_by_state_code :: StateAbbreviation -> State
state_code_by_state :: State -> StateAbbreviation
instance Arbitrary StateCode
instance Arbitrary State
instance Show State
module Facts.Geography.Continents
data Continent
Africa :: Continent
Antarctica :: Continent
Asia :: Continent
Australia :: Continent
Europe :: Continent
NorthAmerica :: Continent
SouthAmerica :: Continent
instance Typeable Continent
instance Data Continent
instance Eq Continent
instance Ord Continent
instance Show Continent
module Data.Numerals.Decimal
data DecimalDigit
Zero :: DecimalDigit
One :: DecimalDigit
Two :: DecimalDigit
Three :: DecimalDigit
Four :: DecimalDigit
Five :: DecimalDigit
Six :: DecimalDigit
Seven :: DecimalDigit
Eight :: DecimalDigit
Nine :: DecimalDigit
-- | Takes a DecimalDigit to its Integral form
decimal_digit_to_integral :: (Integral n) => DecimalDigit -> n
-- | Takes an Integral digit to a DecimalDigit. This function is partial on
-- a set of Integrals.
unsafe_integral_digit_to_decimal_digit :: (Integral n) => n -> DecimalDigit
integral_to_digits :: (Integral n) => n -> [DecimalDigit]
digits_to_integral :: (Integral n) => [DecimalDigit] -> n
prop_decimal_digit_round_trip :: [DecimalDigit] -> Bool
prop_positive_integral_round_trip :: (Integral n) => n -> Bool
instance Typeable DecimalDigit
instance Data DecimalDigit
instance Enum DecimalDigit
instance Eq DecimalDigit
instance Ord DecimalDigit
instance Show DecimalDigit
module Facts.Geography.Countries
-- | The type of "countries" includes sovereign nations and other "areas of
-- geographical interest", as defined by the United Nations, whose
-- definition was adopted by ISO.
data Country
Afghanistan :: Country
AlandIslands :: Country
Albania :: Country
Algeria :: Country
AmericanSamoa :: Country
Andorra :: Country
Angola :: Country
Anguilla :: Country
Antarctica :: Country
AntiguaAndBarbuda :: Country
Argentina :: Country
Armenia :: Country
Aruba :: Country
Australia :: Country
Austria :: Country
Azerbaijan :: Country
Bahamas :: Country
Bahrain :: Country
Bangladesh :: Country
Barbados :: Country
Belarus :: Country
Belgium :: Country
Belize :: Country
Benin :: Country
Bermuda :: Country
Bhutan :: Country
Bolivia :: Country
BosniaAndHerzegovina :: Country
Botswana :: Country
BouvetIsland :: Country
Brazil :: Country
BritishIndianOceanTerritory :: Country
BruneiDarussalam :: Country
Bulgaria :: Country
BurkinaFaso :: Country
Burundi :: Country
Cambodia :: Country
Cameroon :: Country
Canada :: Country
CapeVerde :: Country
CaymanIslands :: Country
CentralAfricanRepublic :: Country
Chad :: Country
Chile :: Country
China :: Country
ChristmasIsland :: Country
CocosKeelingIslands :: Country
Colombia :: Country
Comoros :: Country
Congo :: Country
DemocraticRepublicOfCongo :: Country
CookIslands :: Country
CostaRica :: Country
CoteDIvoire :: Country
Croatia :: Country
Cuba :: Country
Cyprus :: Country
CzechRepublic :: Country
Denmark :: Country
Djibouti :: Country
Dominica :: Country
DominicanRepublic :: Country
Ecuador :: Country
Egypt :: Country
ElSalvador :: Country
EquatorialGuinea :: Country
Eritrea :: Country
Estonia :: Country
Ethiopia :: Country
FalklandIslands :: Country
FaroeIslands :: Country
Fiji :: Country
Finland :: Country
France :: Country
FrenchGuiana :: Country
FrenchPolynesia :: Country
FrenchSouthernTerritories :: Country
Gabon :: Country
Gambia :: Country
Georgia :: Country
Germany :: Country
Ghana :: Country
Gibraltar :: Country
Greece :: Country
Greenland :: Country
Grenada :: Country
Guadeloupe :: Country
Guam :: Country
Guatemala :: Country
Guernsey :: Country
Guinea :: Country
GuineaBissau :: Country
Guyana :: Country
Haiti :: Country
HeardIslandAndMcDonaldIslands :: Country
HolySee :: Country
Honduras :: Country
HongKong :: Country
Hungary :: Country
Iceland :: Country
India :: Country
Indonesia :: Country
Iran :: Country
Iraq :: Country
Ireland :: Country
IsleOfMan :: Country
Israel :: Country
Italy :: Country
Jamaica :: Country
Japan :: Country
Jersey :: Country
Jordan :: Country
Kazakhstan :: Country
Kenya :: Country
Kiribati :: Country
NorthKorea :: Country
SouthKorea :: Country
Kuwait :: Country
Kyrgyzstan :: Country
Laos :: Country
Latvia :: Country
Lebanon :: Country
Lesotho :: Country
Liberia :: Country
Libya :: Country
Liechtenstein :: Country
Lithuania :: Country
Luxembourg :: Country
Macao :: Country
Macedonia :: Country
Madagascar :: Country
Malawi :: Country
Malaysia :: Country
Maldives :: Country
Mali :: Country
Malta :: Country
MarshallIslands :: Country
Martinique :: Country
Mauritania :: Country
Mauritius :: Country
Mayotte :: Country
Mexico :: Country
Micronesia :: Country
Moldova :: Country
Monaco :: Country
Mongolia :: Country
Montenegro :: Country
Montserrat :: Country
Morocco :: Country
Mozambique :: Country
Myanmar :: Country
Namibia :: Country
Nauru :: Country
Nepal :: Country
Netherlands :: Country
NetherlandsAntilles :: Country
NewCaledonia :: Country
NewZealand :: Country
Nicaragua :: Country
Niger :: Country
Nigeria :: Country
Niue :: Country
NorfolkIsland :: Country
NorthernMarianaIslands :: Country
Norway :: Country
Oman :: Country
Pakistan :: Country
Palau :: Country
Palestinine :: Country
Panama :: Country
PapuaNewGuinea :: Country
Paraguay :: Country
Peru :: Country
Philippines :: Country
Pitcairn :: Country
Poland :: Country
Portugal :: Country
PuertoRico :: Country
Qatar :: Country
Reunion :: Country
Romania :: Country
RussianFederation :: Country
Rwanda :: Country
SaintBarthelemy :: Country
SaintHelenaAscensionAndTristanDaCunha :: Country
SaintKittsAndNevis :: Country
SaintLucia :: Country
SaintMartin :: Country
SaintPierreAndMiquelon :: Country
SaintVincentAndTheGrenadines :: Country
Samoa :: Country
SanMarino :: Country
SaoTomeAndPrincipe :: Country
SaudiArabia :: Country
Senegal :: Country
Serbia :: Country
Seychelles :: Country
SierraLeone :: Country
Singapore :: Country
Slovakia :: Country
Slovenia :: Country
SolomonIslands :: Country
Somalia :: Country
SouthAfrica :: Country
SouthGeorgiaAndtheSouthSandwichIslands :: Country
Spain :: Country
SriLanka :: Country
Sudan :: Country
Suriname :: Country
SvalbardAndJanMayen :: Country
Swaziland :: Country
Sweden :: Country
Switzerland :: Country
Syria :: Country
Taiwan :: Country
Tajikistan :: Country
Tanzania :: Country
Thailand :: Country
TimorLeste :: Country
Togo :: Country
Tokelau :: Country
Tonga :: Country
TrinidadAndTobago :: Country
Tunisia :: Country
Turkey :: Country
Turkmenistan :: Country
TurksAndCaicosIslands :: Country
Tuvalu :: Country
Uganda :: Country
Ukraine :: Country
UnitedArabEmirates :: Country
UnitedKingdom :: Country
UnitedStates :: Country
UnitedStatesMinorOutlyingIslands :: Country
Uruguay :: Country
Uzbekistan :: Country
Vanuatu :: Country
Venezuela :: Country
VietNam :: Country
BritishVirginIslands :: Country
USVirginIslands :: Country
WallisAndFutuna :: Country
WesternSahara :: Country
Yemen :: Country
Zambia :: Country
Zimbabwe :: Country
data ISOAlpha2Code
AF :: ISOAlpha2Code
AX :: ISOAlpha2Code
AL :: ISOAlpha2Code
DZ :: ISOAlpha2Code
AS :: ISOAlpha2Code
AD :: ISOAlpha2Code
AO :: ISOAlpha2Code
AI :: ISOAlpha2Code
AQ :: ISOAlpha2Code
AG :: ISOAlpha2Code
AR :: ISOAlpha2Code
AM :: ISOAlpha2Code
AW :: ISOAlpha2Code
AU :: ISOAlpha2Code
AT :: ISOAlpha2Code
AZ :: ISOAlpha2Code
BS :: ISOAlpha2Code
BH :: ISOAlpha2Code
BD :: ISOAlpha2Code
BB :: ISOAlpha2Code
BY :: ISOAlpha2Code
BE :: ISOAlpha2Code
BZ :: ISOAlpha2Code
BJ :: ISOAlpha2Code
BM :: ISOAlpha2Code
BT :: ISOAlpha2Code
BO :: ISOAlpha2Code
BA :: ISOAlpha2Code
BW :: ISOAlpha2Code
BV :: ISOAlpha2Code
BR :: ISOAlpha2Code
IO :: ISOAlpha2Code
BN :: ISOAlpha2Code
BG :: ISOAlpha2Code
BF :: ISOAlpha2Code
BI :: ISOAlpha2Code
KH :: ISOAlpha2Code
CM :: ISOAlpha2Code
CA :: ISOAlpha2Code
CV :: ISOAlpha2Code
KY :: ISOAlpha2Code
CF :: ISOAlpha2Code
TD :: ISOAlpha2Code
CL :: ISOAlpha2Code
CN :: ISOAlpha2Code
CX :: ISOAlpha2Code
CC :: ISOAlpha2Code
CO :: ISOAlpha2Code
KM :: ISOAlpha2Code
CG :: ISOAlpha2Code
CD :: ISOAlpha2Code
CK :: ISOAlpha2Code
CR :: ISOAlpha2Code
CI :: ISOAlpha2Code
HR :: ISOAlpha2Code
CU :: ISOAlpha2Code
CY :: ISOAlpha2Code
CZ :: ISOAlpha2Code
DK :: ISOAlpha2Code
DJ :: ISOAlpha2Code
DM :: ISOAlpha2Code
DO :: ISOAlpha2Code
EC :: ISOAlpha2Code
EG :: ISOAlpha2Code
SV :: ISOAlpha2Code
GQ :: ISOAlpha2Code
ER :: ISOAlpha2Code
EE :: ISOAlpha2Code
ET :: ISOAlpha2Code
FK :: ISOAlpha2Code
FO :: ISOAlpha2Code
FJ :: ISOAlpha2Code
FI :: ISOAlpha2Code
FR :: ISOAlpha2Code
GF :: ISOAlpha2Code
PF :: ISOAlpha2Code
TF :: ISOAlpha2Code
GA :: ISOAlpha2Code
GM :: ISOAlpha2Code
GE :: ISOAlpha2Code
DE :: ISOAlpha2Code
GH :: ISOAlpha2Code
GI :: ISOAlpha2Code
GR :: ISOAlpha2Code
GL :: ISOAlpha2Code
GD :: ISOAlpha2Code
GP :: ISOAlpha2Code
GU :: ISOAlpha2Code
GT :: ISOAlpha2Code
GG :: ISOAlpha2Code
GN :: ISOAlpha2Code
GW :: ISOAlpha2Code
GY :: ISOAlpha2Code
HT :: ISOAlpha2Code
HM :: ISOAlpha2Code
VA :: ISOAlpha2Code
HN :: ISOAlpha2Code
HK :: ISOAlpha2Code
HU :: ISOAlpha2Code
IS :: ISOAlpha2Code
IN :: ISOAlpha2Code
ID :: ISOAlpha2Code
IR :: ISOAlpha2Code
IQ :: ISOAlpha2Code
IE :: ISOAlpha2Code
IM :: ISOAlpha2Code
IL :: ISOAlpha2Code
IT :: ISOAlpha2Code
JM :: ISOAlpha2Code
JP :: ISOAlpha2Code
JE :: ISOAlpha2Code
JO :: ISOAlpha2Code
KZ :: ISOAlpha2Code
KE :: ISOAlpha2Code
KI :: ISOAlpha2Code
KP :: ISOAlpha2Code
KR :: ISOAlpha2Code
KW :: ISOAlpha2Code
KG :: ISOAlpha2Code
LA :: ISOAlpha2Code
LV :: ISOAlpha2Code
LB :: ISOAlpha2Code
LS :: ISOAlpha2Code
LR :: ISOAlpha2Code
LY :: ISOAlpha2Code
LI :: ISOAlpha2Code
LT :: ISOAlpha2Code
LU :: ISOAlpha2Code
MO :: ISOAlpha2Code
MK :: ISOAlpha2Code
MG :: ISOAlpha2Code
MW :: ISOAlpha2Code
MY :: ISOAlpha2Code
MV :: ISOAlpha2Code
ML :: ISOAlpha2Code
MT :: ISOAlpha2Code
MH :: ISOAlpha2Code
MQ :: ISOAlpha2Code
MR :: ISOAlpha2Code
MU :: ISOAlpha2Code
YT :: ISOAlpha2Code
MX :: ISOAlpha2Code
FM :: ISOAlpha2Code
MD :: ISOAlpha2Code
MC :: ISOAlpha2Code
MN :: ISOAlpha2Code
ME :: ISOAlpha2Code
MS :: ISOAlpha2Code
MA :: ISOAlpha2Code
MZ :: ISOAlpha2Code
MM :: ISOAlpha2Code
NA :: ISOAlpha2Code
NR :: ISOAlpha2Code
NP :: ISOAlpha2Code
NL :: ISOAlpha2Code
AN :: ISOAlpha2Code
NC :: ISOAlpha2Code
NZ :: ISOAlpha2Code
NI :: ISOAlpha2Code
NE :: ISOAlpha2Code
NG :: ISOAlpha2Code
NU :: ISOAlpha2Code
NF :: ISOAlpha2Code
MP :: ISOAlpha2Code
NO :: ISOAlpha2Code
OM :: ISOAlpha2Code
PK :: ISOAlpha2Code
PW :: ISOAlpha2Code
PS :: ISOAlpha2Code
PA :: ISOAlpha2Code
PG :: ISOAlpha2Code
PY :: ISOAlpha2Code
PE :: ISOAlpha2Code
PH :: ISOAlpha2Code
PN :: ISOAlpha2Code
PL :: ISOAlpha2Code
PT :: ISOAlpha2Code
PR :: ISOAlpha2Code
QA :: ISOAlpha2Code
RE :: ISOAlpha2Code
RO :: ISOAlpha2Code
RU :: ISOAlpha2Code
RW :: ISOAlpha2Code
BL :: ISOAlpha2Code
SH :: ISOAlpha2Code
KN :: ISOAlpha2Code
LC :: ISOAlpha2Code
MF :: ISOAlpha2Code
PM :: ISOAlpha2Code
VC :: ISOAlpha2Code
WS :: ISOAlpha2Code
SM :: ISOAlpha2Code
ST :: ISOAlpha2Code
SA :: ISOAlpha2Code
SN :: ISOAlpha2Code
RS :: ISOAlpha2Code
SC :: ISOAlpha2Code
SL :: ISOAlpha2Code
SG :: ISOAlpha2Code
SK :: ISOAlpha2Code
SI :: ISOAlpha2Code
SB :: ISOAlpha2Code
SO :: ISOAlpha2Code
ZA :: ISOAlpha2Code
GS :: ISOAlpha2Code
ES :: ISOAlpha2Code
LK :: ISOAlpha2Code
SD :: ISOAlpha2Code
SR :: ISOAlpha2Code
SJ :: ISOAlpha2Code
SZ :: ISOAlpha2Code
SE :: ISOAlpha2Code
CH :: ISOAlpha2Code
SY :: ISOAlpha2Code
TW :: ISOAlpha2Code
TJ :: ISOAlpha2Code
TZ :: ISOAlpha2Code
TH :: ISOAlpha2Code
TL :: ISOAlpha2Code
TG :: ISOAlpha2Code
TK :: ISOAlpha2Code
TO :: ISOAlpha2Code
TT :: ISOAlpha2Code
TN :: ISOAlpha2Code
TR :: ISOAlpha2Code
TM :: ISOAlpha2Code
TC :: ISOAlpha2Code
TV :: ISOAlpha2Code
UG :: ISOAlpha2Code
UA :: ISOAlpha2Code
AE :: ISOAlpha2Code
GB :: ISOAlpha2Code
US :: ISOAlpha2Code
UM :: ISOAlpha2Code
UY :: ISOAlpha2Code
UZ :: ISOAlpha2Code
VU :: ISOAlpha2Code
VE :: ISOAlpha2Code
VN :: ISOAlpha2Code
VG :: ISOAlpha2Code
VI :: ISOAlpha2Code
WF :: ISOAlpha2Code
EH :: ISOAlpha2Code
YE :: ISOAlpha2Code
ZM :: ISOAlpha2Code
ZW :: ISOAlpha2Code
data ISOAlpha3Code
AFG :: ISOAlpha3Code
ALA :: ISOAlpha3Code
ALB :: ISOAlpha3Code
DZA :: ISOAlpha3Code
ASM :: ISOAlpha3Code
AND :: ISOAlpha3Code
AGO :: ISOAlpha3Code
AIA :: ISOAlpha3Code
ATA :: ISOAlpha3Code
ATG :: ISOAlpha3Code
ARG :: ISOAlpha3Code
ARM :: ISOAlpha3Code
ABW :: ISOAlpha3Code
AUS :: ISOAlpha3Code
AUT :: ISOAlpha3Code
AZE :: ISOAlpha3Code
BHS :: ISOAlpha3Code
BHR :: ISOAlpha3Code
BGD :: ISOAlpha3Code
BRB :: ISOAlpha3Code
BLR :: ISOAlpha3Code
BEL :: ISOAlpha3Code
BLZ :: ISOAlpha3Code
BEN :: ISOAlpha3Code
BMU :: ISOAlpha3Code
BTN :: ISOAlpha3Code
BOL :: ISOAlpha3Code
BIH :: ISOAlpha3Code
BWA :: ISOAlpha3Code
BVT :: ISOAlpha3Code
BRA :: ISOAlpha3Code
IOT :: ISOAlpha3Code
BRN :: ISOAlpha3Code
BGR :: ISOAlpha3Code
BFA :: ISOAlpha3Code
BDI :: ISOAlpha3Code
KHM :: ISOAlpha3Code
CMR :: ISOAlpha3Code
CAN :: ISOAlpha3Code
CPV :: ISOAlpha3Code
CYM :: ISOAlpha3Code
CAF :: ISOAlpha3Code
TCD :: ISOAlpha3Code
CHL :: ISOAlpha3Code
CHN :: ISOAlpha3Code
CXR :: ISOAlpha3Code
CCK :: ISOAlpha3Code
COL :: ISOAlpha3Code
COM :: ISOAlpha3Code
COG :: ISOAlpha3Code
COD :: ISOAlpha3Code
COK :: ISOAlpha3Code
CRI :: ISOAlpha3Code
CIV :: ISOAlpha3Code
HRV :: ISOAlpha3Code
CUB :: ISOAlpha3Code
CYP :: ISOAlpha3Code
CZE :: ISOAlpha3Code
DNK :: ISOAlpha3Code
DJI :: ISOAlpha3Code
DMA :: ISOAlpha3Code
DOM :: ISOAlpha3Code
ECU :: ISOAlpha3Code
EGY :: ISOAlpha3Code
SLV :: ISOAlpha3Code
GNQ :: ISOAlpha3Code
ERI :: ISOAlpha3Code
EST :: ISOAlpha3Code
ETH :: ISOAlpha3Code
FLK :: ISOAlpha3Code
FRO :: ISOAlpha3Code
FJI :: ISOAlpha3Code
FIN :: ISOAlpha3Code
FRA :: ISOAlpha3Code
GUF :: ISOAlpha3Code
PYF :: ISOAlpha3Code
ATF :: ISOAlpha3Code
GAB :: ISOAlpha3Code
GMB :: ISOAlpha3Code
GEO :: ISOAlpha3Code
DEU :: ISOAlpha3Code
GHA :: ISOAlpha3Code
GIB :: ISOAlpha3Code
GRC :: ISOAlpha3Code
GRL :: ISOAlpha3Code
GRD :: ISOAlpha3Code
GLP :: ISOAlpha3Code
GUM :: ISOAlpha3Code
GTM :: ISOAlpha3Code
GGY :: ISOAlpha3Code
GIN :: ISOAlpha3Code
GNB :: ISOAlpha3Code
GUY :: ISOAlpha3Code
HTI :: ISOAlpha3Code
HMD :: ISOAlpha3Code
VAT :: ISOAlpha3Code
HND :: ISOAlpha3Code
HKG :: ISOAlpha3Code
HUN :: ISOAlpha3Code
ISL :: ISOAlpha3Code
IND :: ISOAlpha3Code
IDN :: ISOAlpha3Code
IRN :: ISOAlpha3Code
IRQ :: ISOAlpha3Code
IRL :: ISOAlpha3Code
IMN :: ISOAlpha3Code
ISR :: ISOAlpha3Code
ITA :: ISOAlpha3Code
JAM :: ISOAlpha3Code
JPN :: ISOAlpha3Code
JEY :: ISOAlpha3Code
JOR :: ISOAlpha3Code
KAZ :: ISOAlpha3Code
KEN :: ISOAlpha3Code
KIR :: ISOAlpha3Code
PRK :: ISOAlpha3Code
KOR :: ISOAlpha3Code
KWT :: ISOAlpha3Code
KGZ :: ISOAlpha3Code
LAO :: ISOAlpha3Code
LVA :: ISOAlpha3Code
LBN :: ISOAlpha3Code
LSO :: ISOAlpha3Code
LBR :: ISOAlpha3Code
LBY :: ISOAlpha3Code
LIE :: ISOAlpha3Code
LTU :: ISOAlpha3Code
LUX :: ISOAlpha3Code
MAC :: ISOAlpha3Code
MKD :: ISOAlpha3Code
MDG :: ISOAlpha3Code
MWI :: ISOAlpha3Code
MYS :: ISOAlpha3Code
MDV :: ISOAlpha3Code
MLI :: ISOAlpha3Code
MLT :: ISOAlpha3Code
MHL :: ISOAlpha3Code
MTQ :: ISOAlpha3Code
MRT :: ISOAlpha3Code
MUS :: ISOAlpha3Code
MYT :: ISOAlpha3Code
MEX :: ISOAlpha3Code
FSM :: ISOAlpha3Code
MDA :: ISOAlpha3Code
MCO :: ISOAlpha3Code
MNG :: ISOAlpha3Code
MNE :: ISOAlpha3Code
MSR :: ISOAlpha3Code
MAR :: ISOAlpha3Code
MOZ :: ISOAlpha3Code
MMR :: ISOAlpha3Code
NAM :: ISOAlpha3Code
NRU :: ISOAlpha3Code
NPL :: ISOAlpha3Code
NLD :: ISOAlpha3Code
ANT :: ISOAlpha3Code
NCL :: ISOAlpha3Code
NZL :: ISOAlpha3Code
NIC :: ISOAlpha3Code
NER :: ISOAlpha3Code
NGA :: ISOAlpha3Code
NIU :: ISOAlpha3Code
NFK :: ISOAlpha3Code
MNP :: ISOAlpha3Code
NOR :: ISOAlpha3Code
OMN :: ISOAlpha3Code
PAK :: ISOAlpha3Code
PLW :: ISOAlpha3Code
PSE :: ISOAlpha3Code
PAN :: ISOAlpha3Code
PNG :: ISOAlpha3Code
PRY :: ISOAlpha3Code
PER :: ISOAlpha3Code
PHL :: ISOAlpha3Code
PCN :: ISOAlpha3Code
POL :: ISOAlpha3Code
PRT :: ISOAlpha3Code
PRI :: ISOAlpha3Code
QAT :: ISOAlpha3Code
REU :: ISOAlpha3Code
ROU :: ISOAlpha3Code
RUS :: ISOAlpha3Code
RWA :: ISOAlpha3Code
BLM :: ISOAlpha3Code
SHN :: ISOAlpha3Code
KNA :: ISOAlpha3Code
LCA :: ISOAlpha3Code
MAF :: ISOAlpha3Code
SPM :: ISOAlpha3Code
VCT :: ISOAlpha3Code
WSM :: ISOAlpha3Code
SMR :: ISOAlpha3Code
STP :: ISOAlpha3Code
SAU :: ISOAlpha3Code
SEN :: ISOAlpha3Code
SRB :: ISOAlpha3Code
SYC :: ISOAlpha3Code
SLE :: ISOAlpha3Code
SGP :: ISOAlpha3Code
SVK :: ISOAlpha3Code
SVN :: ISOAlpha3Code
SLB :: ISOAlpha3Code
SOM :: ISOAlpha3Code
ZAF :: ISOAlpha3Code
SGS :: ISOAlpha3Code
ESP :: ISOAlpha3Code
LKA :: ISOAlpha3Code
SDN :: ISOAlpha3Code
SUR :: ISOAlpha3Code
SJM :: ISOAlpha3Code
SWZ :: ISOAlpha3Code
SWE :: ISOAlpha3Code
CHE :: ISOAlpha3Code
SYR :: ISOAlpha3Code
TWN :: ISOAlpha3Code
TJK :: ISOAlpha3Code
TZA :: ISOAlpha3Code
THA :: ISOAlpha3Code
TLS :: ISOAlpha3Code
TGO :: ISOAlpha3Code
TKL :: ISOAlpha3Code
TON :: ISOAlpha3Code
TTO :: ISOAlpha3Code
TUN :: ISOAlpha3Code
TUR :: ISOAlpha3Code
TKM :: ISOAlpha3Code
TCA :: ISOAlpha3Code
TUV :: ISOAlpha3Code
UGA :: ISOAlpha3Code
UKR :: ISOAlpha3Code
ARE :: ISOAlpha3Code
GBR :: ISOAlpha3Code
USA :: ISOAlpha3Code
UMI :: ISOAlpha3Code
URY :: ISOAlpha3Code
UZB :: ISOAlpha3Code
VUT :: ISOAlpha3Code
VEN :: ISOAlpha3Code
VNM :: ISOAlpha3Code
VGB :: ISOAlpha3Code
VIR :: ISOAlpha3Code
WLF :: ISOAlpha3Code
ESH :: ISOAlpha3Code
YEM :: ISOAlpha3Code
ZMB :: ISOAlpha3Code
ZWE :: ISOAlpha3Code
data ISONumericCode
type UNFormalName = String
type UNShortName = String
-- | A smart constructor to turn Integers into
-- ISONumericCodes. Note that the space of ISO-3166-1 numeric
-- codes has many reserved or otherwise unused codes. This constructor
-- does not verify that its input is a valid ISO-3166-1 country code, it
-- merely constructs a
isoNumericCode :: Integer -> ISONumericCode
-- | shortEnglishCountryName maps a Country to an ISO-3166-1 "short
-- name". By the international standard, these names are taken from the
-- "United Nations Terminology Bulletin Country Names", and "Country and
-- Region Codes for Statistical Use" of the UN Statistics Division.
shortEnglishCountryName :: Country -> UNShortName
-- | formalEnglishCountryName maps a Country to an ISO-3166-1
-- "formal name". By the international standard, these names are taken
-- from the "United Nations Terminology Bulletin Country Names", and
-- "Country and Region Codes for Statistical Use" of the UN Statistics
-- Division.
formalEnglishCountryName :: Country -> UNFormalName
-- | Maps a Country to its ISO-3166-1 2-character code.
isoAlpha2Code_for_country :: Country -> ISOAlpha2Code
-- | Maps a Country to its ISO-3166-1 3-character code.
isoAlpha3Code_for_country :: Country -> ISOAlpha3Code
-- | Maps an ISO-3166-1 2-character code to a Country.
country_for_isoAlpha2Code :: ISOAlpha2Code -> Country
-- | Maps an ISO-3166-1 3-character code to a Country.
country_for_isoAlpha3Code :: ISOAlpha3Code -> Country
-- | Maps a Country to its ISO-3166-1 numeric code.
isoNumericCode_for_country :: Country -> ISONumericCode
-- | country_for_valid_isoNumericCode maps a valid
-- ISONumericCode to a Country. Unfortunately, this is a
-- partial function. Use country_for_isoNumericCode instead,
-- unless you can guarantee that the ISONumericCode supplied to
-- the query is valid.
country_for_valid_isoNumericCode :: ISONumericCode -> Country
-- | The ISO Numeric Code space is not fully packed. Many codes are
-- "reserved" or otherwise unused. country_for_isoNumericCode
-- takes an ISONumericCode and possibly returns a matching
-- Country.
country_for_isoNumericCode :: ISONumericCode -> Maybe Country
instance Show ValidCode
instance Arbitrary ValidCode
instance Arbitrary Country
instance Show Country
module Facts.Geography.Countries.UnitedStates.ZipCode
type Digit = DecimalDigit
data ZipCode
ZipCode :: (Digit, Digit, Digit, Digit, Digit) -> Maybe (Digit, Digit, Digit, Digit) -> ZipCode
zip_code :: ZipCode -> (Digit, Digit, Digit, Digit, Digit)
plus4 :: ZipCode -> Maybe (Digit, Digit, Digit, Digit)
instance Typeable ZipCode
instance Data ZipCode
instance Eq ZipCode
instance Ord ZipCode
instance Show ZipCode
module Facts.Geography.Countries.UnitedStates.Address
data Recipient
Recipient :: String -> Maybe String -> Recipient
recipient_name :: Recipient -> String
recipient_firm :: Recipient -> Maybe String
data Address
Address :: Recipient -> String -> Maybe String -> String -> Either StateCode OtherUSEntity -> ZipCode -> Address
recipient :: Address -> Recipient
street_address :: Address -> String
street_address2 :: Address -> Maybe String
city :: Address -> String
state :: Address -> Either StateCode OtherUSEntity
zip_code :: Address -> ZipCode
instance Typeable Address
instance Typeable Recipient
instance Data Address
instance Eq Address
instance Show Address
instance Ord Address
instance Data Recipient
instance Eq Recipient
instance Ord Recipient
instance Show Recipient