diff --git a/competitions/100Change2025/etl/compose-and-upload b/competitions/100Change2025/etl/compose-and-upload
index 77802f9650d54e2dd491fffe0748293c256b8159..225d273ef11617801a39e58078590973ccce6599 100755
--- a/competitions/100Change2025/etl/compose-and-upload
+++ b/competitions/100Change2025/etl/compose-and-upload
@@ -52,7 +52,7 @@ Command-line options:
                                   created already.
 """
 
-from etl import competition, wiki, toc, tdc
+from etl import competition, wiki, toc, tdc, Geocoder
 import config
 import getopt
 import sys
@@ -302,6 +302,12 @@ def main():
         )
     )
 
+    if config.geocode_api_key:
+        geocoder = Geocoder.Geocoder(config.geocode_api_key)
+        comp.process_cells_special(
+            "Organization Location", competition.GeocodeProcessor(geocoder)
+        )
+
     comp.transform_sheet(
         competition.PersonCombiner(
             column_name="Participant",
@@ -797,15 +803,11 @@ def main():
 
     }
 
+
     maptocs = [
-        toc.CountryChoroplethMap(
+        toc.PinMap(
             "Organization_Location_Map",
             "Organization Location",
-            [201, 226, 211],
-            [58, 131, 70],
-            country_override=overrides,
-            legend_title="Proposals",
-            max_num=50,
         ),
         toc.CountryChoroplethMap(
             "Current_Work_Country_Map",
@@ -834,8 +836,9 @@ def main():
     ]
 
     valid_proposals = [p for p in comp.ordered_proposals() if p.cell("Admin Review Status") == "Valid"]
+    top60_proposals = [p for p in comp.ordered_proposals() if p.key() in top60]
     for maptoc in maptocs:
-        maptoc.proposals = valid_proposals
+        maptoc.proposals = top60_proposals
         comp.add_toc(maptoc)
 
     comp.add_toc(