diff --git a/Data/ISO3166_CountryCodes.hs b/Data/ISO3166_CountryCodes.hs
--- a/Data/ISO3166_CountryCodes.hs
+++ b/Data/ISO3166_CountryCodes.hs
@@ -18,803 +18,818 @@
      are the same as some standard Haskell constructors.
 
 -}
-module Data.ISO3166_CountryCodes
-    (CountryCode(..),
-     countryNameFromCode,
-     readableCountryName
-    ) where
-import qualified Prelude as P
-import Prelude ((.),not,(==),otherwise,(&&),(==),(/=))
-import Control.Monad
-import Data.Char
-import Data.List
-
-{- | A human readable version of the official name of a country
-     from its country code
-
-     Uses some ad-hockery to rearrange the order of the words.
-
--}
-readableCountryName :: CountryCode -> P.String
-
-readableCountryName
-    = concat . intersperse " " . rearrange . fmap up1 . words .
-      countryNameFromCode
-      where up1 [] = []
-            up1 (c:rest) | not (isAlpha c) = c:up1 rest
-            up1 "OF" = "of"
-            up1 "THE" = "the"
-            up1 "AND" = "and"
-            up1 "U.S." = "US" -- gawd
-            up1 ('M':'C':l) = "Mc"++up1 l -- Don't do MacEdonia!
-                                          -- but there are no Mac_ countries yet
-            up1 ('D':'\'':l) = "d'"++up1 l
-            up1 (c:cs) = toUpper c: downup cs
-            downup [] = [] -- needed for hyphenated names
-            downup (c:cs) | c=='-' = c:up1 cs
-                          | otherwise = toLower c:downup cs
-            rearrange [] = []
-            rearrange [c] = [c]
-            rearrange ll@(n:l)
-                | last l `elem` ["of", "the"] && last n == ','
-                    = onhead up1 l++[[c|c<-n,c/=',']]
-                | otherwise = ll
-            onhead f [] = []
-            onhead f (h:r) = f h:r
-{- Copyright © 2010 Jón Fairbairn
--}
-data CountryCode = 
-   AF -- ^ AFGHANISTAN
-   |
-   AX -- ^ ÅLAND ISLANDS
-   |
-   AL -- ^ ALBANIA
-   |
-   DZ -- ^ ALGERIA
-   |
-   AS -- ^ AMERICAN SAMOA
-   |
-   AD -- ^ ANDORRA
-   |
-   AO -- ^ ANGOLA
-   |
-   AI -- ^ ANGUILLA
-   |
-   AQ -- ^ ANTARCTICA
-   |
-   AG -- ^ ANTIGUA AND BARBUDA
-   |
-   AR -- ^ ARGENTINA
-   |
-   AM -- ^ ARMENIA
-   |
-   AW -- ^ ARUBA
-   |
-   AU -- ^ AUSTRALIA
-   |
-   AT -- ^ AUSTRIA
-   |
-   AZ -- ^ AZERBAIJAN
-   |
-   BS -- ^ BAHAMAS
-   |
-   BH -- ^ BAHRAIN
-   |
-   BD -- ^ BANGLADESH
-   |
-   BB -- ^ BARBADOS
-   |
-   BY -- ^ BELARUS
-   |
-   BE -- ^ BELGIUM
-   |
-   BZ -- ^ BELIZE
-   |
-   BJ -- ^ BENIN
-   |
-   BM -- ^ BERMUDA
-   |
-   BT -- ^ BHUTAN
-   |
-   BO -- ^ BOLIVIA, PLURINATIONAL STATE OF
-   |
-   BQ -- ^ BONAIRE, SINT EUSTATIUS AND SABA
-   |
-   BA -- ^ BOSNIA AND HERZEGOVINA
-   |
-   BW -- ^ BOTSWANA
-   |
-   BV -- ^ BOUVET ISLAND
-   |
-   BR -- ^ BRAZIL
-   |
-   IO -- ^ BRITISH INDIAN OCEAN TERRITORY
-   |
-   BN -- ^ BRUNEI DARUSSALAM
-   |
-   BG -- ^ BULGARIA
-   |
-   BF -- ^ BURKINA FASO
-   |
-   BI -- ^ BURUNDI
-   |
-   KH -- ^ CAMBODIA
-   |
-   CM -- ^ CAMEROON
-   |
-   CA -- ^ CANADA
-   |
-   CV -- ^ CAPE VERDE
-   |
-   KY -- ^ CAYMAN ISLANDS
-   |
-   CF -- ^ CENTRAL AFRICAN REPUBLIC
-   |
-   TD -- ^ CHAD
-   |
-   CL -- ^ CHILE
-   |
-   CN -- ^ CHINA
-   |
-   CX -- ^ CHRISTMAS ISLAND
-   |
-   CC -- ^ COCOS (KEELING) ISLANDS
-   |
-   CO -- ^ COLOMBIA
-   |
-   KM -- ^ COMOROS
-   |
-   CG -- ^ CONGO
-   |
-   CD -- ^ CONGO, THE DEMOCRATIC REPUBLIC OF THE
-   |
-   CK -- ^ COOK ISLANDS
-   |
-   CR -- ^ COSTA RICA
-   |
-   CI -- ^ CÔTE D'IVOIRE
-   |
-   HR -- ^ CROATIA
-   |
-   CU -- ^ CUBA
-   |
-   CW -- ^ CURAÇAO
-   |
-   CY -- ^ CYPRUS
-   |
-   CZ -- ^ CZECH REPUBLIC
-   |
-   DK -- ^ DENMARK
-   |
-   DJ -- ^ DJIBOUTI
-   |
-   DM -- ^ DOMINICA
-   |
-   DO -- ^ DOMINICAN REPUBLIC
-   |
-   EC -- ^ ECUADOR
-   |
-   EG -- ^ EGYPT
-   |
-   SV -- ^ EL SALVADOR
-   |
-   GQ -- ^ EQUATORIAL GUINEA
-   |
-   ER -- ^ ERITREA
-   |
-   EE -- ^ ESTONIA
-   |
-   ET -- ^ ETHIOPIA
-   |
-   FK -- ^ FALKLAND ISLANDS (MALVINAS)
-   |
-   FO -- ^ FAROE ISLANDS
-   |
-   FJ -- ^ FIJI
-   |
-   FI -- ^ FINLAND
-   |
-   FR -- ^ FRANCE
-   |
-   GF -- ^ FRENCH GUIANA
-   |
-   PF -- ^ FRENCH POLYNESIA
-   |
-   TF -- ^ FRENCH SOUTHERN TERRITORIES
-   |
-   GA -- ^ GABON
-   |
-   GM -- ^ GAMBIA
-   |
-   GE -- ^ GEORGIA
-   |
-   DE -- ^ GERMANY
-   |
-   GH -- ^ GHANA
-   |
-   GI -- ^ GIBRALTAR
-   |
-   GR -- ^ GREECE
-   |
-   GL -- ^ GREENLAND
-   |
-   GD -- ^ GRENADA
-   |
-   GP -- ^ GUADELOUPE
-   |
-   GU -- ^ GUAM
-   |
-   GT -- ^ GUATEMALA
-   |
-   GG -- ^ GUERNSEY
-   |
-   GN -- ^ GUINEA
-   |
-   GW -- ^ GUINEA-BISSAU
-   |
-   GY -- ^ GUYANA
-   |
-   HT -- ^ HAITI
-   |
-   HM -- ^ HEARD ISLAND AND MCDONALD ISLANDS
-   |
-   VA -- ^ HOLY SEE (VATICAN CITY STATE)
-   |
-   HN -- ^ HONDURAS
-   |
-   HK -- ^ HONG KONG
-   |
-   HU -- ^ HUNGARY
-   |
-   IS -- ^ ICELAND
-   |
-   IN -- ^ INDIA
-   |
-   ID -- ^ INDONESIA
-   |
-   IR -- ^ IRAN, ISLAMIC REPUBLIC OF
-   |
-   IQ -- ^ IRAQ
-   |
-   IE -- ^ IRELAND
-   |
-   IM -- ^ ISLE OF MAN
-   |
-   IL -- ^ ISRAEL
-   |
-   IT -- ^ ITALY
-   |
-   JM -- ^ JAMAICA
-   |
-   JP -- ^ JAPAN
-   |
-   JE -- ^ JERSEY
-   |
-   JO -- ^ JORDAN
-   |
-   KZ -- ^ KAZAKHSTAN
-   |
-   KE -- ^ KENYA
-   |
-   KI -- ^ KIRIBATI
-   |
-   KP -- ^ KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF
-   |
-   KR -- ^ KOREA, REPUBLIC OF
-   |
-   KW -- ^ KUWAIT
-   |
-   KG -- ^ KYRGYZSTAN
-   |
-   LA -- ^ LAO PEOPLE'S DEMOCRATIC REPUBLIC
-   |
-   LV -- ^ LATVIA
-   |
-   LB -- ^ LEBANON
-   |
-   LS -- ^ LESOTHO
-   |
-   LR -- ^ LIBERIA
-   |
-   LY -- ^ LIBYA
-   |
-   LI -- ^ LIECHTENSTEIN
-   |
-   LT -- ^ LITHUANIA
-   |
-   LU -- ^ LUXEMBOURG
-   |
-   MO -- ^ MACAO
-   |
-   MK -- ^ MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF
-   |
-   MG -- ^ MADAGASCAR
-   |
-   MW -- ^ MALAWI
-   |
-   MY -- ^ MALAYSIA
-   |
-   MV -- ^ MALDIVES
-   |
-   ML -- ^ MALI
-   |
-   MT -- ^ MALTA
-   |
-   MH -- ^ MARSHALL ISLANDS
-   |
-   MQ -- ^ MARTINIQUE
-   |
-   MR -- ^ MAURITANIA
-   |
-   MU -- ^ MAURITIUS
-   |
-   YT -- ^ MAYOTTE
-   |
-   MX -- ^ MEXICO
-   |
-   FM -- ^ MICRONESIA, FEDERATED STATES OF
-   |
-   MD -- ^ MOLDOVA, REPUBLIC OF
-   |
-   MC -- ^ MONACO
-   |
-   MN -- ^ MONGOLIA
-   |
-   ME -- ^ MONTENEGRO
-   |
-   MS -- ^ MONTSERRAT
-   |
-   MA -- ^ MOROCCO
-   |
-   MZ -- ^ MOZAMBIQUE
-   |
-   MM -- ^ MYANMAR
-   |
-   NA -- ^ NAMIBIA
-   |
-   NR -- ^ NAURU
-   |
-   NP -- ^ NEPAL
-   |
-   NL -- ^ NETHERLANDS
-   |
-   NC -- ^ NEW CALEDONIA
-   |
-   NZ -- ^ NEW ZEALAND
-   |
-   NI -- ^ NICARAGUA
-   |
-   NE -- ^ NIGER
-   |
-   NG -- ^ NIGERIA
-   |
-   NU -- ^ NIUE
-   |
-   NF -- ^ NORFOLK ISLAND
-   |
-   MP -- ^ NORTHERN MARIANA ISLANDS
-   |
-   NO -- ^ NORWAY
-   |
-   OM -- ^ OMAN
-   |
-   PK -- ^ PAKISTAN
-   |
-   PW -- ^ PALAU
-   |
-   PS -- ^ PALESTINE, STATE OF
-   |
-   PA -- ^ PANAMA
-   |
-   PG -- ^ PAPUA NEW GUINEA
-   |
-   PY -- ^ PARAGUAY
-   |
-   PE -- ^ PERU
-   |
-   PH -- ^ PHILIPPINES
-   |
-   PN -- ^ PITCAIRN
-   |
-   PL -- ^ POLAND
-   |
-   PT -- ^ PORTUGAL
-   |
-   PR -- ^ PUERTO RICO
-   |
-   QA -- ^ QATAR
-   |
-   RE -- ^ RÉUNION
-   |
-   RO -- ^ ROMANIA
-   |
-   RU -- ^ RUSSIAN FEDERATION
-   |
-   RW -- ^ RWANDA
-   |
-   BL -- ^ SAINT BARTHÉLEMY
-   |
-   SH -- ^ SAINT HELENA, ASCENSION AND TRISTAN DA CUNHA
-   |
-   KN -- ^ SAINT KITTS AND NEVIS
-   |
-   LC -- ^ SAINT LUCIA
-   |
-   MF -- ^ SAINT MARTIN (FRENCH PART)
-   |
-   PM -- ^ SAINT PIERRE AND MIQUELON
-   |
-   VC -- ^ SAINT VINCENT AND THE GRENADINES
-   |
-   WS -- ^ SAMOA
-   |
-   SM -- ^ SAN MARINO
-   |
-   ST -- ^ SAO TOME AND PRINCIPE
-   |
-   SA -- ^ SAUDI ARABIA
-   |
-   SN -- ^ SENEGAL
-   |
-   RS -- ^ SERBIA
-   |
-   SC -- ^ SEYCHELLES
-   |
-   SL -- ^ SIERRA LEONE
-   |
-   SG -- ^ SINGAPORE
-   |
-   SX -- ^ SINT MAARTEN (DUTCH PART)
-   |
-   SK -- ^ SLOVAKIA
-   |
-   SI -- ^ SLOVENIA
-   |
-   SB -- ^ SOLOMON ISLANDS
-   |
-   SO -- ^ SOMALIA
-   |
-   ZA -- ^ SOUTH AFRICA
-   |
-   GS -- ^ SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS
-   |
-   SS -- ^ SOUTH SUDAN
-   |
-   ES -- ^ SPAIN
-   |
-   LK -- ^ SRI LANKA
-   |
-   SD -- ^ SUDAN
-   |
-   SR -- ^ SURINAME
-   |
-   SJ -- ^ SVALBARD AND JAN MAYEN
-   |
-   SZ -- ^ SWAZILAND
-   |
-   SE -- ^ SWEDEN
-   |
-   CH -- ^ SWITZERLAND
-   |
-   SY -- ^ SYRIAN ARAB REPUBLIC
-   |
-   TW -- ^ TAIWAN, PROVINCE OF CHINA
-   |
-   TJ -- ^ TAJIKISTAN
-   |
-   TZ -- ^ TANZANIA, UNITED REPUBLIC OF
-   |
-   TH -- ^ THAILAND
-   |
-   TL -- ^ TIMOR-LESTE
-   |
-   TG -- ^ TOGO
-   |
-   TK -- ^ TOKELAU
-   |
-   TO -- ^ TONGA
-   |
-   TT -- ^ TRINIDAD AND TOBAGO
-   |
-   TN -- ^ TUNISIA
-   |
-   TR -- ^ TURKEY
-   |
-   TM -- ^ TURKMENISTAN
-   |
-   TC -- ^ TURKS AND CAICOS ISLANDS
-   |
-   TV -- ^ TUVALU
-   |
-   UG -- ^ UGANDA
-   |
-   UA -- ^ UKRAINE
-   |
-   AE -- ^ UNITED ARAB EMIRATES
-   |
-   GB -- ^ UNITED KINGDOM
-   |
-   US -- ^ UNITED STATES
-   |
-   UM -- ^ UNITED STATES MINOR OUTLYING ISLANDS
-   |
-   UY -- ^ URUGUAY
-   |
-   UZ -- ^ UZBEKISTAN
-   |
-   VU -- ^ VANUATU
-   |
-   VE -- ^ VENEZUELA, BOLIVARIAN REPUBLIC OF
-   |
-   VN -- ^ VIET NAM
-   |
-   VG -- ^ VIRGIN ISLANDS, BRITISH
-   |
-   VI -- ^ VIRGIN ISLANDS, U.S.
-   |
-   WF -- ^ WALLIS AND FUTUNA
-   |
-   EH -- ^ WESTERN SAHARA
-   |
-   YE -- ^ YEMEN
-   |
-   ZM -- ^ ZAMBIA
-   |
-   ZW -- ^ ZIMBABWE
-   deriving (P.Eq,P.Read,P.Show,P.Enum,P.Bounded,P.Ord)
-
-{-|
-  convert a country code to the official (English) name of the country
-
-   see @'readableCountryName'@ for something with a more pleasing word order and capitalisation
--}
-countryNameFromCode:: CountryCode -> P.String
-countryNameFromCode AF = "AFGHANISTAN"
-countryNameFromCode AX = "ÅLAND ISLANDS"
-countryNameFromCode AL = "ALBANIA"
-countryNameFromCode DZ = "ALGERIA"
-countryNameFromCode AS = "AMERICAN SAMOA"
-countryNameFromCode AD = "ANDORRA"
-countryNameFromCode AO = "ANGOLA"
-countryNameFromCode AI = "ANGUILLA"
-countryNameFromCode AQ = "ANTARCTICA"
-countryNameFromCode AG = "ANTIGUA AND BARBUDA"
-countryNameFromCode AR = "ARGENTINA"
-countryNameFromCode AM = "ARMENIA"
-countryNameFromCode AW = "ARUBA"
-countryNameFromCode AU = "AUSTRALIA"
-countryNameFromCode AT = "AUSTRIA"
-countryNameFromCode AZ = "AZERBAIJAN"
-countryNameFromCode BS = "BAHAMAS"
-countryNameFromCode BH = "BAHRAIN"
-countryNameFromCode BD = "BANGLADESH"
-countryNameFromCode BB = "BARBADOS"
-countryNameFromCode BY = "BELARUS"
-countryNameFromCode BE = "BELGIUM"
-countryNameFromCode BZ = "BELIZE"
-countryNameFromCode BJ = "BENIN"
-countryNameFromCode BM = "BERMUDA"
-countryNameFromCode BT = "BHUTAN"
-countryNameFromCode BO = "BOLIVIA, PLURINATIONAL STATE OF"
-countryNameFromCode BQ = "BONAIRE, SINT EUSTATIUS AND SABA"
-countryNameFromCode BA = "BOSNIA AND HERZEGOVINA"
-countryNameFromCode BW = "BOTSWANA"
-countryNameFromCode BV = "BOUVET ISLAND"
-countryNameFromCode BR = "BRAZIL"
-countryNameFromCode IO = "BRITISH INDIAN OCEAN TERRITORY"
-countryNameFromCode BN = "BRUNEI DARUSSALAM"
-countryNameFromCode BG = "BULGARIA"
-countryNameFromCode BF = "BURKINA FASO"
-countryNameFromCode BI = "BURUNDI"
-countryNameFromCode KH = "CAMBODIA"
-countryNameFromCode CM = "CAMEROON"
-countryNameFromCode CA = "CANADA"
-countryNameFromCode CV = "CAPE VERDE"
-countryNameFromCode KY = "CAYMAN ISLANDS"
-countryNameFromCode CF = "CENTRAL AFRICAN REPUBLIC"
-countryNameFromCode TD = "CHAD"
-countryNameFromCode CL = "CHILE"
-countryNameFromCode CN = "CHINA"
-countryNameFromCode CX = "CHRISTMAS ISLAND"
-countryNameFromCode CC = "COCOS (KEELING) ISLANDS"
-countryNameFromCode CO = "COLOMBIA"
-countryNameFromCode KM = "COMOROS"
-countryNameFromCode CG = "CONGO"
-countryNameFromCode CD = "CONGO, THE DEMOCRATIC REPUBLIC OF THE"
-countryNameFromCode CK = "COOK ISLANDS"
-countryNameFromCode CR = "COSTA RICA"
-countryNameFromCode CI = "CÔTE D'IVOIRE"
-countryNameFromCode HR = "CROATIA"
-countryNameFromCode CU = "CUBA"
-countryNameFromCode CW = "CURAÇAO"
-countryNameFromCode CY = "CYPRUS"
-countryNameFromCode CZ = "CZECH REPUBLIC"
-countryNameFromCode DK = "DENMARK"
-countryNameFromCode DJ = "DJIBOUTI"
-countryNameFromCode DM = "DOMINICA"
-countryNameFromCode DO = "DOMINICAN REPUBLIC"
-countryNameFromCode EC = "ECUADOR"
-countryNameFromCode EG = "EGYPT"
-countryNameFromCode SV = "EL SALVADOR"
-countryNameFromCode GQ = "EQUATORIAL GUINEA"
-countryNameFromCode ER = "ERITREA"
-countryNameFromCode EE = "ESTONIA"
-countryNameFromCode ET = "ETHIOPIA"
-countryNameFromCode FK = "FALKLAND ISLANDS (MALVINAS)"
-countryNameFromCode FO = "FAROE ISLANDS"
-countryNameFromCode FJ = "FIJI"
-countryNameFromCode FI = "FINLAND"
-countryNameFromCode FR = "FRANCE"
-countryNameFromCode GF = "FRENCH GUIANA"
-countryNameFromCode PF = "FRENCH POLYNESIA"
-countryNameFromCode TF = "FRENCH SOUTHERN TERRITORIES"
-countryNameFromCode GA = "GABON"
-countryNameFromCode GM = "GAMBIA"
-countryNameFromCode GE = "GEORGIA"
-countryNameFromCode DE = "GERMANY"
-countryNameFromCode GH = "GHANA"
-countryNameFromCode GI = "GIBRALTAR"
-countryNameFromCode GR = "GREECE"
-countryNameFromCode GL = "GREENLAND"
-countryNameFromCode GD = "GRENADA"
-countryNameFromCode GP = "GUADELOUPE"
-countryNameFromCode GU = "GUAM"
-countryNameFromCode GT = "GUATEMALA"
-countryNameFromCode GG = "GUERNSEY"
-countryNameFromCode GN = "GUINEA"
-countryNameFromCode GW = "GUINEA-BISSAU"
-countryNameFromCode GY = "GUYANA"
-countryNameFromCode HT = "HAITI"
-countryNameFromCode HM = "HEARD ISLAND AND MCDONALD ISLANDS"
-countryNameFromCode VA = "HOLY SEE (VATICAN CITY STATE)"
-countryNameFromCode HN = "HONDURAS"
-countryNameFromCode HK = "HONG KONG"
-countryNameFromCode HU = "HUNGARY"
-countryNameFromCode IS = "ICELAND"
-countryNameFromCode IN = "INDIA"
-countryNameFromCode ID = "INDONESIA"
-countryNameFromCode IR = "IRAN, ISLAMIC REPUBLIC OF"
-countryNameFromCode IQ = "IRAQ"
-countryNameFromCode IE = "IRELAND"
-countryNameFromCode IM = "ISLE OF MAN"
-countryNameFromCode IL = "ISRAEL"
-countryNameFromCode IT = "ITALY"
-countryNameFromCode JM = "JAMAICA"
-countryNameFromCode JP = "JAPAN"
-countryNameFromCode JE = "JERSEY"
-countryNameFromCode JO = "JORDAN"
-countryNameFromCode KZ = "KAZAKHSTAN"
-countryNameFromCode KE = "KENYA"
-countryNameFromCode KI = "KIRIBATI"
-countryNameFromCode KP = "KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF"
-countryNameFromCode KR = "KOREA, REPUBLIC OF"
-countryNameFromCode KW = "KUWAIT"
-countryNameFromCode KG = "KYRGYZSTAN"
-countryNameFromCode LA = "LAO PEOPLE'S DEMOCRATIC REPUBLIC"
-countryNameFromCode LV = "LATVIA"
-countryNameFromCode LB = "LEBANON"
-countryNameFromCode LS = "LESOTHO"
-countryNameFromCode LR = "LIBERIA"
-countryNameFromCode LY = "LIBYA"
-countryNameFromCode LI = "LIECHTENSTEIN"
-countryNameFromCode LT = "LITHUANIA"
-countryNameFromCode LU = "LUXEMBOURG"
-countryNameFromCode MO = "MACAO"
-countryNameFromCode MK = "MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF"
-countryNameFromCode MG = "MADAGASCAR"
-countryNameFromCode MW = "MALAWI"
-countryNameFromCode MY = "MALAYSIA"
-countryNameFromCode MV = "MALDIVES"
-countryNameFromCode ML = "MALI"
-countryNameFromCode MT = "MALTA"
-countryNameFromCode MH = "MARSHALL ISLANDS"
-countryNameFromCode MQ = "MARTINIQUE"
-countryNameFromCode MR = "MAURITANIA"
-countryNameFromCode MU = "MAURITIUS"
-countryNameFromCode YT = "MAYOTTE"
-countryNameFromCode MX = "MEXICO"
-countryNameFromCode FM = "MICRONESIA, FEDERATED STATES OF"
-countryNameFromCode MD = "MOLDOVA, REPUBLIC OF"
-countryNameFromCode MC = "MONACO"
-countryNameFromCode MN = "MONGOLIA"
-countryNameFromCode ME = "MONTENEGRO"
-countryNameFromCode MS = "MONTSERRAT"
-countryNameFromCode MA = "MOROCCO"
-countryNameFromCode MZ = "MOZAMBIQUE"
-countryNameFromCode MM = "MYANMAR"
-countryNameFromCode NA = "NAMIBIA"
-countryNameFromCode NR = "NAURU"
-countryNameFromCode NP = "NEPAL"
-countryNameFromCode NL = "NETHERLANDS"
-countryNameFromCode NC = "NEW CALEDONIA"
-countryNameFromCode NZ = "NEW ZEALAND"
-countryNameFromCode NI = "NICARAGUA"
-countryNameFromCode NE = "NIGER"
-countryNameFromCode NG = "NIGERIA"
-countryNameFromCode NU = "NIUE"
-countryNameFromCode NF = "NORFOLK ISLAND"
-countryNameFromCode MP = "NORTHERN MARIANA ISLANDS"
-countryNameFromCode NO = "NORWAY"
-countryNameFromCode OM = "OMAN"
-countryNameFromCode PK = "PAKISTAN"
-countryNameFromCode PW = "PALAU"
-countryNameFromCode PS = "PALESTINE, STATE OF"
-countryNameFromCode PA = "PANAMA"
-countryNameFromCode PG = "PAPUA NEW GUINEA"
-countryNameFromCode PY = "PARAGUAY"
-countryNameFromCode PE = "PERU"
-countryNameFromCode PH = "PHILIPPINES"
-countryNameFromCode PN = "PITCAIRN"
-countryNameFromCode PL = "POLAND"
-countryNameFromCode PT = "PORTUGAL"
-countryNameFromCode PR = "PUERTO RICO"
-countryNameFromCode QA = "QATAR"
-countryNameFromCode RE = "RÉUNION"
-countryNameFromCode RO = "ROMANIA"
-countryNameFromCode RU = "RUSSIAN FEDERATION"
-countryNameFromCode RW = "RWANDA"
-countryNameFromCode BL = "SAINT BARTHÉLEMY"
-countryNameFromCode SH = "SAINT HELENA, ASCENSION AND TRISTAN DA CUNHA"
-countryNameFromCode KN = "SAINT KITTS AND NEVIS"
-countryNameFromCode LC = "SAINT LUCIA"
-countryNameFromCode MF = "SAINT MARTIN (FRENCH PART)"
-countryNameFromCode PM = "SAINT PIERRE AND MIQUELON"
-countryNameFromCode VC = "SAINT VINCENT AND THE GRENADINES"
-countryNameFromCode WS = "SAMOA"
-countryNameFromCode SM = "SAN MARINO"
-countryNameFromCode ST = "SAO TOME AND PRINCIPE"
-countryNameFromCode SA = "SAUDI ARABIA"
-countryNameFromCode SN = "SENEGAL"
-countryNameFromCode RS = "SERBIA"
-countryNameFromCode SC = "SEYCHELLES"
-countryNameFromCode SL = "SIERRA LEONE"
-countryNameFromCode SG = "SINGAPORE"
-countryNameFromCode SX = "SINT MAARTEN (DUTCH PART)"
-countryNameFromCode SK = "SLOVAKIA"
-countryNameFromCode SI = "SLOVENIA"
-countryNameFromCode SB = "SOLOMON ISLANDS"
-countryNameFromCode SO = "SOMALIA"
-countryNameFromCode ZA = "SOUTH AFRICA"
-countryNameFromCode GS = "SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS"
-countryNameFromCode SS = "SOUTH SUDAN"
-countryNameFromCode ES = "SPAIN"
-countryNameFromCode LK = "SRI LANKA"
-countryNameFromCode SD = "SUDAN"
-countryNameFromCode SR = "SURINAME"
-countryNameFromCode SJ = "SVALBARD AND JAN MAYEN"
-countryNameFromCode SZ = "SWAZILAND"
-countryNameFromCode SE = "SWEDEN"
-countryNameFromCode CH = "SWITZERLAND"
-countryNameFromCode SY = "SYRIAN ARAB REPUBLIC"
-countryNameFromCode TW = "TAIWAN, PROVINCE OF CHINA"
-countryNameFromCode TJ = "TAJIKISTAN"
-countryNameFromCode TZ = "TANZANIA, UNITED REPUBLIC OF"
-countryNameFromCode TH = "THAILAND"
-countryNameFromCode TL = "TIMOR-LESTE"
-countryNameFromCode TG = "TOGO"
-countryNameFromCode TK = "TOKELAU"
-countryNameFromCode TO = "TONGA"
-countryNameFromCode TT = "TRINIDAD AND TOBAGO"
-countryNameFromCode TN = "TUNISIA"
-countryNameFromCode TR = "TURKEY"
-countryNameFromCode TM = "TURKMENISTAN"
-countryNameFromCode TC = "TURKS AND CAICOS ISLANDS"
-countryNameFromCode TV = "TUVALU"
-countryNameFromCode UG = "UGANDA"
-countryNameFromCode UA = "UKRAINE"
-countryNameFromCode AE = "UNITED ARAB EMIRATES"
-countryNameFromCode GB = "UNITED KINGDOM"
-countryNameFromCode US = "UNITED STATES"
-countryNameFromCode UM = "UNITED STATES MINOR OUTLYING ISLANDS"
-countryNameFromCode UY = "URUGUAY"
-countryNameFromCode UZ = "UZBEKISTAN"
-countryNameFromCode VU = "VANUATU"
-countryNameFromCode VE = "VENEZUELA, BOLIVARIAN REPUBLIC OF"
-countryNameFromCode VN = "VIET NAM"
-countryNameFromCode VG = "VIRGIN ISLANDS, BRITISH"
-countryNameFromCode VI = "VIRGIN ISLANDS, U.S."
-countryNameFromCode WF = "WALLIS AND FUTUNA"
-countryNameFromCode EH = "WESTERN SAHARA"
-countryNameFromCode YE = "YEMEN"
-countryNameFromCode ZM = "ZAMBIA"
-countryNameFromCode ZW = "ZIMBABWE"
+{-# LANGUAGE CPP #-}
+#if __GLASGOW_HASKELL__ >= 701
+{-# LANGUAGE DeriveGeneric #-}
+#endif
+module Data.ISO3166_CountryCodes
+    (CountryCode(..),
+     countryNameFromCode,
+     readableCountryName
+    ) where
+import qualified Prelude as P
+import Prelude ((.),not,(==),otherwise,(&&),(==),(/=))
+import Control.Monad
+import Data.Char
+import Data.List
+
+#if __GLASGOW_HASKELL__ >= 701
+import qualified GHC.Generics as G
+#endif
+
+{- | A human readable version of the official name of a country
+     from its country code
+
+     Uses some ad-hockery to rearrange the order of the words.
+
+-}
+readableCountryName :: CountryCode -> P.String
+
+readableCountryName
+    = concat . intersperse " " . rearrange . fmap up1 . words .
+      fmap toUpper . countryNameFromCode
+      where up1 [] = []
+            up1 (c:rest) | not (isAlpha c) = c:up1 rest
+            up1 "OF" = "of"
+            up1 "THE" = "the"
+            up1 "AND" = "and"
+            up1 "U.S." = "US" -- gawd
+            up1 ('M':'C':l) = "Mc"++up1 l -- Don't do MacEdonia!
+                                          -- but there are no Mac_ countries yet
+            up1 ('D':'\'':l) = "d'"++up1 l
+            up1 (c:cs) = toUpper c: downup cs
+            downup [] = [] -- needed for hyphenated names
+            downup (c:cs) | c=='-' = c:up1 cs
+                          | otherwise = toLower c:downup cs
+            rearrange [] = []
+            rearrange [c] = [c]
+            rearrange ll@(n:l)
+                | last l `elem` ["of", "the"] && last n == ','
+                    = onhead up1 l++[[c|c<-n,c/=',']]
+                | otherwise = ll
+            onhead f [] = []
+            onhead f (h:r) = f h:r
+{- Copyright © 2010 Jón Fairbairn
+-}
+data CountryCode = 
+   Code -- ^ Name
+   |
+   AF -- ^ Afghanistan
+   |
+   AX -- ^ Åland Islands
+   |
+   AL -- ^ Albania
+   |
+   DZ -- ^ Algeria
+   |
+   AS -- ^ American Samoa
+   |
+   AD -- ^ Andorra
+   |
+   AO -- ^ Angola
+   |
+   AI -- ^ Anguilla
+   |
+   AQ -- ^ Antarctica
+   |
+   AG -- ^ Antigua and Barbuda
+   |
+   AR -- ^ Argentina
+   |
+   AM -- ^ Armenia
+   |
+   AW -- ^ Aruba
+   |
+   AU -- ^ Australia
+   |
+   AT -- ^ Austria
+   |
+   AZ -- ^ Azerbaijan
+   |
+   BS -- ^ Bahamas
+   |
+   BH -- ^ Bahrain
+   |
+   BD -- ^ Bangladesh
+   |
+   BB -- ^ Barbados
+   |
+   BY -- ^ Belarus
+   |
+   BE -- ^ Belgium
+   |
+   BZ -- ^ Belize
+   |
+   BJ -- ^ Benin
+   |
+   BM -- ^ Bermuda
+   |
+   BT -- ^ Bhutan
+   |
+   BO -- ^ Bolivia, Plurinational State of
+   |
+   BQ -- ^ Bonaire, Sint Eustatius and Saba
+   |
+   BA -- ^ Bosnia and Herzegovina
+   |
+   BW -- ^ Botswana
+   |
+   BV -- ^ Bouvet Island
+   |
+   BR -- ^ Brazil
+   |
+   IO -- ^ British Indian Ocean Territory
+   |
+   BN -- ^ Brunei Darussalam
+   |
+   BG -- ^ Bulgaria
+   |
+   BF -- ^ Burkina Faso
+   |
+   BI -- ^ Burundi
+   |
+   KH -- ^ Cambodia
+   |
+   CM -- ^ Cameroon
+   |
+   CA -- ^ Canada
+   |
+   CV -- ^ Cape Verde
+   |
+   KY -- ^ Cayman Islands
+   |
+   CF -- ^ Central African Republic
+   |
+   TD -- ^ Chad
+   |
+   CL -- ^ Chile
+   |
+   CN -- ^ China
+   |
+   CX -- ^ Christmas Island
+   |
+   CC -- ^ Cocos (Keeling) Islands
+   |
+   CO -- ^ Colombia
+   |
+   KM -- ^ Comoros
+   |
+   CG -- ^ Congo
+   |
+   CD -- ^ Congo, the Democratic Republic of the
+   |
+   CK -- ^ Cook Islands
+   |
+   CR -- ^ Costa Rica
+   |
+   CI -- ^ Côte d'Ivoire
+   |
+   HR -- ^ Croatia
+   |
+   CU -- ^ Cuba
+   |
+   CW -- ^ Curaçao
+   |
+   CY -- ^ Cyprus
+   |
+   CZ -- ^ Czech Republic
+   |
+   DK -- ^ Denmark
+   |
+   DJ -- ^ Djibouti
+   |
+   DM -- ^ Dominica
+   |
+   DO -- ^ Dominican Republic
+   |
+   EC -- ^ Ecuador
+   |
+   EG -- ^ Egypt
+   |
+   SV -- ^ El Salvador
+   |
+   GQ -- ^ Equatorial Guinea
+   |
+   ER -- ^ Eritrea
+   |
+   EE -- ^ Estonia
+   |
+   ET -- ^ Ethiopia
+   |
+   FK -- ^ Falkland Islands (Malvinas)
+   |
+   FO -- ^ Faroe Islands
+   |
+   FJ -- ^ Fiji
+   |
+   FI -- ^ Finland
+   |
+   FR -- ^ France
+   |
+   GF -- ^ French Guiana
+   |
+   PF -- ^ French Polynesia
+   |
+   TF -- ^ French Southern Territories
+   |
+   GA -- ^ Gabon
+   |
+   GM -- ^ Gambia
+   |
+   GE -- ^ Georgia
+   |
+   DE -- ^ Germany
+   |
+   GH -- ^ Ghana
+   |
+   GI -- ^ Gibraltar
+   |
+   GR -- ^ Greece
+   |
+   GL -- ^ Greenland
+   |
+   GD -- ^ Grenada
+   |
+   GP -- ^ Guadeloupe
+   |
+   GU -- ^ Guam
+   |
+   GT -- ^ Guatemala
+   |
+   GG -- ^ Guernsey
+   |
+   GN -- ^ Guinea
+   |
+   GW -- ^ Guinea-Bissau
+   |
+   GY -- ^ Guyana
+   |
+   HT -- ^ Haiti
+   |
+   HM -- ^ Heard Island and McDonald Mcdonald Islands
+   |
+   VA -- ^ Holy See (Vatican City State)
+   |
+   HN -- ^ Honduras
+   |
+   HK -- ^ Hong Kong
+   |
+   HU -- ^ Hungary
+   |
+   IS -- ^ Iceland
+   |
+   IN -- ^ India
+   |
+   ID -- ^ Indonesia
+   |
+   IR -- ^ Iran, Islamic Republic of
+   |
+   IQ -- ^ Iraq
+   |
+   IE -- ^ Ireland
+   |
+   IM -- ^ Isle of Man
+   |
+   IL -- ^ Israel
+   |
+   IT -- ^ Italy
+   |
+   JM -- ^ Jamaica
+   |
+   JP -- ^ Japan
+   |
+   JE -- ^ Jersey
+   |
+   JO -- ^ Jordan
+   |
+   KZ -- ^ Kazakhstan
+   |
+   KE -- ^ Kenya
+   |
+   KI -- ^ Kiribati
+   |
+   KP -- ^ Korea, Democratic People's Republic of
+   |
+   KR -- ^ Korea, Republic of
+   |
+   KW -- ^ Kuwait
+   |
+   KG -- ^ Kyrgyzstan
+   |
+   LA -- ^ Lao People's Democratic Republic
+   |
+   LV -- ^ Latvia
+   |
+   LB -- ^ Lebanon
+   |
+   LS -- ^ Lesotho
+   |
+   LR -- ^ Liberia
+   |
+   LY -- ^ Libya
+   |
+   LI -- ^ Liechtenstein
+   |
+   LT -- ^ Lithuania
+   |
+   LU -- ^ Luxembourg
+   |
+   MO -- ^ Macao
+   |
+   MK -- ^ Macedonia, the Former Yugoslav Republic of
+   |
+   MG -- ^ Madagascar
+   |
+   MW -- ^ Malawi
+   |
+   MY -- ^ Malaysia
+   |
+   MV -- ^ Maldives
+   |
+   ML -- ^ Mali
+   |
+   MT -- ^ Malta
+   |
+   MH -- ^ Marshall Islands
+   |
+   MQ -- ^ Martinique
+   |
+   MR -- ^ Mauritania
+   |
+   MU -- ^ Mauritius
+   |
+   YT -- ^ Mayotte
+   |
+   MX -- ^ Mexico
+   |
+   FM -- ^ Micronesia, Federated States of
+   |
+   MD -- ^ Moldova, Republic of
+   |
+   MC -- ^ Monaco
+   |
+   MN -- ^ Mongolia
+   |
+   ME -- ^ Montenegro
+   |
+   MS -- ^ Montserrat
+   |
+   MA -- ^ Morocco
+   |
+   MZ -- ^ Mozambique
+   |
+   MM -- ^ Myanmar
+   |
+   NA -- ^ Namibia
+   |
+   NR -- ^ Nauru
+   |
+   NP -- ^ Nepal
+   |
+   NL -- ^ Netherlands
+   |
+   NC -- ^ New Caledonia
+   |
+   NZ -- ^ New Zealand
+   |
+   NI -- ^ Nicaragua
+   |
+   NE -- ^ Niger
+   |
+   NG -- ^ Nigeria
+   |
+   NU -- ^ Niue
+   |
+   NF -- ^ Norfolk Island
+   |
+   MP -- ^ Northern Mariana Islands
+   |
+   NO -- ^ Norway
+   |
+   OM -- ^ Oman
+   |
+   PK -- ^ Pakistan
+   |
+   PW -- ^ Palau
+   |
+   PS -- ^ Palestine, State of
+   |
+   PA -- ^ Panama
+   |
+   PG -- ^ Papua New Guinea
+   |
+   PY -- ^ Paraguay
+   |
+   PE -- ^ Peru
+   |
+   PH -- ^ Philippines
+   |
+   PN -- ^ Pitcairn
+   |
+   PL -- ^ Poland
+   |
+   PT -- ^ Portugal
+   |
+   PR -- ^ Puerto Rico
+   |
+   QA -- ^ Qatar
+   |
+   RE -- ^ Réunion
+   |
+   RO -- ^ Romania
+   |
+   RU -- ^ Russian Federation
+   |
+   RW -- ^ Rwanda
+   |
+   BL -- ^ Saint Barthélemy
+   |
+   SH -- ^ Saint Helena, Ascension and Tristan da Cunha
+   |
+   KN -- ^ Saint Kitts and Nevis
+   |
+   LC -- ^ Saint Lucia
+   |
+   MF -- ^ Saint Martin (French part)
+   |
+   PM -- ^ Saint Pierre and Miquelon
+   |
+   VC -- ^ Saint Vincent and the Grenadines
+   |
+   WS -- ^ Samoa
+   |
+   SM -- ^ San Marino
+   |
+   ST -- ^ Sao Tome and Principe
+   |
+   SA -- ^ Saudi Arabia
+   |
+   SN -- ^ Senegal
+   |
+   RS -- ^ Serbia
+   |
+   SC -- ^ Seychelles
+   |
+   SL -- ^ Sierra Leone
+   |
+   SG -- ^ Singapore
+   |
+   SX -- ^ Sint Maarten (Dutch part)
+   |
+   SK -- ^ Slovakia
+   |
+   SI -- ^ Slovenia
+   |
+   SB -- ^ Solomon Islands
+   |
+   SO -- ^ Somalia
+   |
+   ZA -- ^ South Africa
+   |
+   GS -- ^ South Georgia and the South Sandwich Islands
+   |
+   SS -- ^ South Sudan
+   |
+   ES -- ^ Spain
+   |
+   LK -- ^ Sri Lanka
+   |
+   SD -- ^ Sudan
+   |
+   SR -- ^ Suriname
+   |
+   SJ -- ^ Svalbard and Jan Mayen
+   |
+   SZ -- ^ Swaziland
+   |
+   SE -- ^ Sweden
+   |
+   CH -- ^ Switzerland
+   |
+   SY -- ^ Syrian Arab Republic
+   |
+   TW -- ^ Taiwan, Province of China
+   |
+   TJ -- ^ Tajikistan
+   |
+   TZ -- ^ Tanzania, United Republic of
+   |
+   TH -- ^ Thailand
+   |
+   TL -- ^ Timor-Leste
+   |
+   TG -- ^ Togo
+   |
+   TK -- ^ Tokelau
+   |
+   TO -- ^ Tonga
+   |
+   TT -- ^ Trinidad and Tobago
+   |
+   TN -- ^ Tunisia
+   |
+   TR -- ^ Turkey
+   |
+   TM -- ^ Turkmenistan
+   |
+   TC -- ^ Turks and Caicos Islands
+   |
+   TV -- ^ Tuvalu
+   |
+   UG -- ^ Uganda
+   |
+   UA -- ^ Ukraine
+   |
+   AE -- ^ United Arab Emirates
+   |
+   GB -- ^ United Kingdom
+   |
+   US -- ^ United States
+   |
+   UM -- ^ United States Minor Outlying Islands
+   |
+   UY -- ^ Uruguay
+   |
+   UZ -- ^ Uzbekistan
+   |
+   VU -- ^ Vanuatu
+   |
+   VE -- ^ Venezuela, Bolivarian Republic of
+   |
+   VN -- ^ Viet Nam
+   |
+   VG -- ^ Virgin Islands, British
+   |
+   VI -- ^ Virgin Islands, U.S.
+   |
+   WF -- ^ Wallis and Futuna
+   |
+   EH -- ^ Western Sahara
+   |
+   YE -- ^ Yemen
+   |
+   ZM -- ^ Zambia
+   |
+   ZW -- ^ Zimbabwe
+#if __GLASGOW_HASKELL__ >= 701
+   deriving (P.Eq,P.Read,P.Show,P.Enum,P.Bounded,P.Ord,G.Generic)
+#else
+   deriving (P.Eq,P.Read,P.Show,P.Enum,P.Bounded,P.Ord)
+#endif
+
+{-|
+  convert a country code to the official (English) name of the country
+
+   see @'readableCountryName'@ for something with a more pleasing word order and capitalisation
+-}
+countryNameFromCode:: CountryCode -> P.String
+countryNameFromCode Code = "Name"
+countryNameFromCode AF = "Afghanistan"
+countryNameFromCode AX = "Åland Islands"
+countryNameFromCode AL = "Albania"
+countryNameFromCode DZ = "Algeria"
+countryNameFromCode AS = "American Samoa"
+countryNameFromCode AD = "Andorra"
+countryNameFromCode AO = "Angola"
+countryNameFromCode AI = "Anguilla"
+countryNameFromCode AQ = "Antarctica"
+countryNameFromCode AG = "Antigua and Barbuda"
+countryNameFromCode AR = "Argentina"
+countryNameFromCode AM = "Armenia"
+countryNameFromCode AW = "Aruba"
+countryNameFromCode AU = "Australia"
+countryNameFromCode AT = "Austria"
+countryNameFromCode AZ = "Azerbaijan"
+countryNameFromCode BS = "Bahamas"
+countryNameFromCode BH = "Bahrain"
+countryNameFromCode BD = "Bangladesh"
+countryNameFromCode BB = "Barbados"
+countryNameFromCode BY = "Belarus"
+countryNameFromCode BE = "Belgium"
+countryNameFromCode BZ = "Belize"
+countryNameFromCode BJ = "Benin"
+countryNameFromCode BM = "Bermuda"
+countryNameFromCode BT = "Bhutan"
+countryNameFromCode BO = "Bolivia, Plurinational State of"
+countryNameFromCode BQ = "Bonaire, Sint Eustatius and Saba"
+countryNameFromCode BA = "Bosnia and Herzegovina"
+countryNameFromCode BW = "Botswana"
+countryNameFromCode BV = "Bouvet Island"
+countryNameFromCode BR = "Brazil"
+countryNameFromCode IO = "British Indian Ocean Territory"
+countryNameFromCode BN = "Brunei Darussalam"
+countryNameFromCode BG = "Bulgaria"
+countryNameFromCode BF = "Burkina Faso"
+countryNameFromCode BI = "Burundi"
+countryNameFromCode KH = "Cambodia"
+countryNameFromCode CM = "Cameroon"
+countryNameFromCode CA = "Canada"
+countryNameFromCode CV = "Cape Verde"
+countryNameFromCode KY = "Cayman Islands"
+countryNameFromCode CF = "Central African Republic"
+countryNameFromCode TD = "Chad"
+countryNameFromCode CL = "Chile"
+countryNameFromCode CN = "China"
+countryNameFromCode CX = "Christmas Island"
+countryNameFromCode CC = "Cocos (Keeling) Islands"
+countryNameFromCode CO = "Colombia"
+countryNameFromCode KM = "Comoros"
+countryNameFromCode CG = "Congo"
+countryNameFromCode CD = "Congo, the Democratic Republic of the"
+countryNameFromCode CK = "Cook Islands"
+countryNameFromCode CR = "Costa Rica"
+countryNameFromCode CI = "Côte d'Ivoire"
+countryNameFromCode HR = "Croatia"
+countryNameFromCode CU = "Cuba"
+countryNameFromCode CW = "Curaçao"
+countryNameFromCode CY = "Cyprus"
+countryNameFromCode CZ = "Czech Republic"
+countryNameFromCode DK = "Denmark"
+countryNameFromCode DJ = "Djibouti"
+countryNameFromCode DM = "Dominica"
+countryNameFromCode DO = "Dominican Republic"
+countryNameFromCode EC = "Ecuador"
+countryNameFromCode EG = "Egypt"
+countryNameFromCode SV = "El Salvador"
+countryNameFromCode GQ = "Equatorial Guinea"
+countryNameFromCode ER = "Eritrea"
+countryNameFromCode EE = "Estonia"
+countryNameFromCode ET = "Ethiopia"
+countryNameFromCode FK = "Falkland Islands (Malvinas)"
+countryNameFromCode FO = "Faroe Islands"
+countryNameFromCode FJ = "Fiji"
+countryNameFromCode FI = "Finland"
+countryNameFromCode FR = "France"
+countryNameFromCode GF = "French Guiana"
+countryNameFromCode PF = "French Polynesia"
+countryNameFromCode TF = "French Southern Territories"
+countryNameFromCode GA = "Gabon"
+countryNameFromCode GM = "Gambia"
+countryNameFromCode GE = "Georgia"
+countryNameFromCode DE = "Germany"
+countryNameFromCode GH = "Ghana"
+countryNameFromCode GI = "Gibraltar"
+countryNameFromCode GR = "Greece"
+countryNameFromCode GL = "Greenland"
+countryNameFromCode GD = "Grenada"
+countryNameFromCode GP = "Guadeloupe"
+countryNameFromCode GU = "Guam"
+countryNameFromCode GT = "Guatemala"
+countryNameFromCode GG = "Guernsey"
+countryNameFromCode GN = "Guinea"
+countryNameFromCode GW = "Guinea-Bissau"
+countryNameFromCode GY = "Guyana"
+countryNameFromCode HT = "Haiti"
+countryNameFromCode HM = "Heard Island and McDonald Mcdonald Islands"
+countryNameFromCode VA = "Holy See (Vatican City State)"
+countryNameFromCode HN = "Honduras"
+countryNameFromCode HK = "Hong Kong"
+countryNameFromCode HU = "Hungary"
+countryNameFromCode IS = "Iceland"
+countryNameFromCode IN = "India"
+countryNameFromCode ID = "Indonesia"
+countryNameFromCode IR = "Iran, Islamic Republic of"
+countryNameFromCode IQ = "Iraq"
+countryNameFromCode IE = "Ireland"
+countryNameFromCode IM = "Isle of Man"
+countryNameFromCode IL = "Israel"
+countryNameFromCode IT = "Italy"
+countryNameFromCode JM = "Jamaica"
+countryNameFromCode JP = "Japan"
+countryNameFromCode JE = "Jersey"
+countryNameFromCode JO = "Jordan"
+countryNameFromCode KZ = "Kazakhstan"
+countryNameFromCode KE = "Kenya"
+countryNameFromCode KI = "Kiribati"
+countryNameFromCode KP = "Korea, Democratic People's Republic of"
+countryNameFromCode KR = "Korea, Republic of"
+countryNameFromCode KW = "Kuwait"
+countryNameFromCode KG = "Kyrgyzstan"
+countryNameFromCode LA = "Lao People's Democratic Republic"
+countryNameFromCode LV = "Latvia"
+countryNameFromCode LB = "Lebanon"
+countryNameFromCode LS = "Lesotho"
+countryNameFromCode LR = "Liberia"
+countryNameFromCode LY = "Libya"
+countryNameFromCode LI = "Liechtenstein"
+countryNameFromCode LT = "Lithuania"
+countryNameFromCode LU = "Luxembourg"
+countryNameFromCode MO = "Macao"
+countryNameFromCode MK = "Macedonia, the Former Yugoslav Republic of"
+countryNameFromCode MG = "Madagascar"
+countryNameFromCode MW = "Malawi"
+countryNameFromCode MY = "Malaysia"
+countryNameFromCode MV = "Maldives"
+countryNameFromCode ML = "Mali"
+countryNameFromCode MT = "Malta"
+countryNameFromCode MH = "Marshall Islands"
+countryNameFromCode MQ = "Martinique"
+countryNameFromCode MR = "Mauritania"
+countryNameFromCode MU = "Mauritius"
+countryNameFromCode YT = "Mayotte"
+countryNameFromCode MX = "Mexico"
+countryNameFromCode FM = "Micronesia, Federated States of"
+countryNameFromCode MD = "Moldova, Republic of"
+countryNameFromCode MC = "Monaco"
+countryNameFromCode MN = "Mongolia"
+countryNameFromCode ME = "Montenegro"
+countryNameFromCode MS = "Montserrat"
+countryNameFromCode MA = "Morocco"
+countryNameFromCode MZ = "Mozambique"
+countryNameFromCode MM = "Myanmar"
+countryNameFromCode NA = "Namibia"
+countryNameFromCode NR = "Nauru"
+countryNameFromCode NP = "Nepal"
+countryNameFromCode NL = "Netherlands"
+countryNameFromCode NC = "New Caledonia"
+countryNameFromCode NZ = "New Zealand"
+countryNameFromCode NI = "Nicaragua"
+countryNameFromCode NE = "Niger"
+countryNameFromCode NG = "Nigeria"
+countryNameFromCode NU = "Niue"
+countryNameFromCode NF = "Norfolk Island"
+countryNameFromCode MP = "Northern Mariana Islands"
+countryNameFromCode NO = "Norway"
+countryNameFromCode OM = "Oman"
+countryNameFromCode PK = "Pakistan"
+countryNameFromCode PW = "Palau"
+countryNameFromCode PS = "Palestine, State of"
+countryNameFromCode PA = "Panama"
+countryNameFromCode PG = "Papua New Guinea"
+countryNameFromCode PY = "Paraguay"
+countryNameFromCode PE = "Peru"
+countryNameFromCode PH = "Philippines"
+countryNameFromCode PN = "Pitcairn"
+countryNameFromCode PL = "Poland"
+countryNameFromCode PT = "Portugal"
+countryNameFromCode PR = "Puerto Rico"
+countryNameFromCode QA = "Qatar"
+countryNameFromCode RE = "Réunion"
+countryNameFromCode RO = "Romania"
+countryNameFromCode RU = "Russian Federation"
+countryNameFromCode RW = "Rwanda"
+countryNameFromCode BL = "Saint Barthélemy"
+countryNameFromCode SH = "Saint Helena, Ascension and Tristan da Cunha"
+countryNameFromCode KN = "Saint Kitts and Nevis"
+countryNameFromCode LC = "Saint Lucia"
+countryNameFromCode MF = "Saint Martin (French part)"
+countryNameFromCode PM = "Saint Pierre and Miquelon"
+countryNameFromCode VC = "Saint Vincent and the Grenadines"
+countryNameFromCode WS = "Samoa"
+countryNameFromCode SM = "San Marino"
+countryNameFromCode ST = "Sao Tome and Principe"
+countryNameFromCode SA = "Saudi Arabia"
+countryNameFromCode SN = "Senegal"
+countryNameFromCode RS = "Serbia"
+countryNameFromCode SC = "Seychelles"
+countryNameFromCode SL = "Sierra Leone"
+countryNameFromCode SG = "Singapore"
+countryNameFromCode SX = "Sint Maarten (Dutch part)"
+countryNameFromCode SK = "Slovakia"
+countryNameFromCode SI = "Slovenia"
+countryNameFromCode SB = "Solomon Islands"
+countryNameFromCode SO = "Somalia"
+countryNameFromCode ZA = "South Africa"
+countryNameFromCode GS = "South Georgia and the South Sandwich Islands"
+countryNameFromCode SS = "South Sudan"
+countryNameFromCode ES = "Spain"
+countryNameFromCode LK = "Sri Lanka"
+countryNameFromCode SD = "Sudan"
+countryNameFromCode SR = "Suriname"
+countryNameFromCode SJ = "Svalbard and Jan Mayen"
+countryNameFromCode SZ = "Swaziland"
+countryNameFromCode SE = "Sweden"
+countryNameFromCode CH = "Switzerland"
+countryNameFromCode SY = "Syrian Arab Republic"
+countryNameFromCode TW = "Taiwan, Province of China"
+countryNameFromCode TJ = "Tajikistan"
+countryNameFromCode TZ = "Tanzania, United Republic of"
+countryNameFromCode TH = "Thailand"
+countryNameFromCode TL = "Timor-Leste"
+countryNameFromCode TG = "Togo"
+countryNameFromCode TK = "Tokelau"
+countryNameFromCode TO = "Tonga"
+countryNameFromCode TT = "Trinidad and Tobago"
+countryNameFromCode TN = "Tunisia"
+countryNameFromCode TR = "Turkey"
+countryNameFromCode TM = "Turkmenistan"
+countryNameFromCode TC = "Turks and Caicos Islands"
+countryNameFromCode TV = "Tuvalu"
+countryNameFromCode UG = "Uganda"
+countryNameFromCode UA = "Ukraine"
+countryNameFromCode AE = "United Arab Emirates"
+countryNameFromCode GB = "United Kingdom"
+countryNameFromCode US = "United States"
+countryNameFromCode UM = "United States Minor Outlying Islands"
+countryNameFromCode UY = "Uruguay"
+countryNameFromCode UZ = "Uzbekistan"
+countryNameFromCode VU = "Vanuatu"
+countryNameFromCode VE = "Venezuela, Bolivarian Republic of"
+countryNameFromCode VN = "Viet Nam"
+countryNameFromCode VG = "Virgin Islands, British"
+countryNameFromCode VI = "Virgin Islands, U.S."
+countryNameFromCode WF = "Wallis and Futuna"
+countryNameFromCode EH = "Western Sahara"
+countryNameFromCode YE = "Yemen"
+countryNameFromCode ZM = "Zambia"
+countryNameFromCode ZW = "Zimbabwe"
diff --git a/iso3166-country-codes.cabal b/iso3166-country-codes.cabal
--- a/iso3166-country-codes.cabal
+++ b/iso3166-country-codes.cabal
@@ -1,4 +1,4 @@
-Version: 0.20130302.4
+Version: 0.20140203.6
 Name:		iso3166-country-codes
 Cabal-Version:  >= 1.6
 Build-type:	Simple
@@ -15,11 +15,11 @@
 	     official name of the country.
 
 Library
-  Build-Depends:	base ==4.*
+  Build-Depends:	base ==4.*, http-conduit >= 2.1.5
   Exposed-modules: Data.ISO3166_CountryCodes
 
 -- a full build depends on HTTP == 4000.*, utf8-string ==0.*
 
 source-repository head
   type:     darcs
-  location: http://www.cl.cam.ac.uk/~jf15/ISO3166_CountryCodes/
+  location: http://darcs.bookofsand.co.uk/ISO3166_CountryCodes/
