diff --git a/ocw/shape/countries.dbf b/ocw/shape/countries.dbf
old mode 100755
new mode 100644
index 0ecd798..fd81215
--- a/ocw/shape/countries.dbf
+++ b/ocw/shape/countries.dbf
Binary files differ
diff --git a/ocw/shape/countries.prj b/ocw/shape/countries.prj
old mode 100755
new mode 100644
index f45cbad..b13a717
--- a/ocw/shape/countries.prj
+++ b/ocw/shape/countries.prj
@@ -1 +1 @@
-GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]
\ No newline at end of file
+GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.017453292519943295]]
\ No newline at end of file
diff --git a/ocw/shape/countries.shp b/ocw/shape/countries.shp
old mode 100755
new mode 100644
index 7d40398..c7f0020
--- a/ocw/shape/countries.shp
+++ b/ocw/shape/countries.shp
Binary files differ
diff --git a/ocw/shape/countries.shx b/ocw/shape/countries.shx
old mode 100755
new mode 100644
index a441100..8f9e0c8
--- a/ocw/shape/countries.shx
+++ b/ocw/shape/countries.shx
Binary files differ
diff --git a/ocw/utils.py b/ocw/utils.py
index 64050fe..df0324f 100755
--- a/ocw/utils.py
+++ b/ocw/utils.py
@@ -507,7 +507,7 @@
     regions = []
     shapefile_dir = os.sep.join([os.path.dirname(__file__), 'shape'])
     map_read.readshapefile(os.path.join(shapefile_dir, boundary_type),
-                           boundary_type, drawbounds=False)
+                           boundary_type, drawbounds=False, default_encoding='latin-1')
     # Note: The shapefile may contain countries or states with latin letters.
     # Hence, the output of readshapefile can be a mix of ascii and unicode
     # strings. Because python 2 and 3 treat them differently, we must
@@ -524,7 +524,7 @@
         for region_name in region_names:
             region_name = _force_unicode(region_name)
             for iregion, region_info in enumerate(map_read.countries_info):
-                country = _force_unicode(region_info['COUNTRY'], 'latin-1')
+                country = _force_unicode(region_info['NAME_EN'], 'latin-1')
                 if (country.replace(" ", "").lower() ==
                     region_name.replace(" ", "").lower()):
                     regions.append(np.array(map_read.countries[iregion]))
