{
  "ports": [
    {
      "id": "ras_tanura",
      "name": "Ras Tanura",
      "lat": 26.64,
      "lng": 50.17,
      "country": "SA",
      "region": "persian_gulf",
      "type": "oil",
      "note": "World's largest oil terminal"
    },
    {
      "id": "jubail",
      "name": "Jubail",
      "lat": 27.01,
      "lng": 49.66,
      "country": "SA",
      "region": "persian_gulf",
      "type": "oil"
    },
    {
      "id": "jebel_ali",
      "name": "Jebel Ali",
      "lat": 25.01,
      "lng": 55.06,
      "country": "AE",
      "region": "persian_gulf",
      "type": "container",
      "throughput": 14.0
    },
    {
      "id": "fujairah",
      "name": "Fujairah",
      "lat": 25.12,
      "lng": 56.33,
      "country": "AE",
      "region": "gulf_oman",
      "type": "oil",
      "note": "ADCOP pipeline terminus (bypasses Hormuz)"
    },
    {
      "id": "bandar_abbas",
      "name": "Bandar Abbas",
      "lat": 27.19,
      "lng": 56.27,
      "country": "IR",
      "region": "persian_gulf",
      "type": "container"
    },
    {
      "id": "kharg",
      "name": "Kharg Island",
      "lat": 29.23,
      "lng": 50.32,
      "country": "IR",
      "region": "persian_gulf",
      "type": "oil",
      "note": "Iran's main oil export terminal"
    },
    {
      "id": "basra",
      "name": "Basra / Umm Qasr",
      "lat": 30.04,
      "lng": 47.95,
      "country": "IQ",
      "region": "persian_gulf",
      "type": "oil"
    },
    {
      "id": "kuwait_port",
      "name": "Kuwait City Port",
      "lat": 29.35,
      "lng": 47.93,
      "country": "KW",
      "region": "persian_gulf",
      "type": "oil"
    },
    {
      "id": "ras_laffan",
      "name": "Ras Laffan",
      "lat": 25.93,
      "lng": 51.53,
      "country": "QA",
      "region": "persian_gulf",
      "type": "lng",
      "note": "World's largest LNG port"
    },
    {
      "id": "yanbu",
      "name": "Yanbu",
      "lat": 24.09,
      "lng": 38.06,
      "country": "SA",
      "region": "red_sea",
      "type": "oil",
      "note": "East-West Pipeline terminus"
    },
    {
      "id": "jeddah",
      "name": "Jeddah",
      "lat": 21.49,
      "lng": 39.17,
      "country": "SA",
      "region": "red_sea",
      "type": "container",
      "throughput": 5.0
    },
    {
      "id": "djibouti",
      "name": "Djibouti",
      "lat": 11.6,
      "lng": 43.14,
      "country": "DJ",
      "region": "red_sea",
      "type": "container"
    },
    {
      "id": "aden",
      "name": "Aden",
      "lat": 12.79,
      "lng": 45.03,
      "country": "YE",
      "region": "red_sea",
      "type": "container"
    },
    {
      "id": "port_said",
      "name": "Port Said",
      "lat": 31.26,
      "lng": 32.3,
      "country": "EG",
      "region": "suez",
      "type": "container",
      "throughput": 4.0
    },
    {
      "id": "suez",
      "name": "Suez",
      "lat": 29.97,
      "lng": 32.55,
      "country": "EG",
      "region": "suez",
      "type": "transit"
    },
    {
      "id": "piraeus",
      "name": "Piraeus",
      "lat": 37.94,
      "lng": 23.63,
      "country": "GR",
      "region": "mediterranean",
      "type": "container",
      "throughput": 5.5
    },
    {
      "id": "valencia",
      "name": "Valencia",
      "lat": 39.44,
      "lng": -0.32,
      "country": "ES",
      "region": "mediterranean",
      "type": "container",
      "throughput": 5.6
    },
    {
      "id": "algeciras",
      "name": "Algeciras",
      "lat": 36.13,
      "lng": -5.44,
      "country": "ES",
      "region": "mediterranean",
      "type": "container",
      "throughput": 5.1
    },
    {
      "id": "genoa",
      "name": "Genoa",
      "lat": 44.41,
      "lng": 8.93,
      "country": "IT",
      "region": "mediterranean",
      "type": "container"
    },
    {
      "id": "rotterdam",
      "name": "Rotterdam",
      "lat": 51.89,
      "lng": 4.29,
      "country": "NL",
      "region": "europe_north",
      "type": "container",
      "throughput": 14.5
    },
    {
      "id": "antwerp",
      "name": "Antwerp",
      "lat": 51.23,
      "lng": 4.4,
      "country": "BE",
      "region": "europe_north",
      "type": "container",
      "throughput": 12.0
    },
    {
      "id": "hamburg",
      "name": "Hamburg",
      "lat": 53.53,
      "lng": 9.97,
      "country": "DE",
      "region": "europe_north",
      "type": "container",
      "throughput": 8.7
    },
    {
      "id": "felixstowe",
      "name": "Felixstowe",
      "lat": 51.96,
      "lng": 1.33,
      "country": "GB",
      "region": "europe_north",
      "type": "container"
    },
    {
      "id": "ceyhan",
      "name": "Ceyhan",
      "lat": 36.85,
      "lng": 35.78,
      "country": "TR",
      "region": "mediterranean",
      "type": "oil",
      "note": "Kirkuk-Ceyhan pipeline terminus"
    },
    {
      "id": "istanbul",
      "name": "Istanbul / Bosphorus",
      "lat": 41.01,
      "lng": 29.01,
      "country": "TR",
      "region": "bosphorus",
      "type": "transit"
    },
    {
      "id": "shanghai",
      "name": "Shanghai",
      "lat": 31.23,
      "lng": 121.47,
      "country": "CN",
      "region": "east_asia",
      "type": "container",
      "throughput": 49.0
    },
    {
      "id": "ningbo",
      "name": "Ningbo-Zhoushan",
      "lat": 29.87,
      "lng": 121.89,
      "country": "CN",
      "region": "east_asia",
      "type": "container",
      "throughput": 35.0
    },
    {
      "id": "shenzhen",
      "name": "Shenzhen",
      "lat": 22.48,
      "lng": 113.93,
      "country": "CN",
      "region": "east_asia",
      "type": "container",
      "throughput": 30.0
    },
    {
      "id": "guangzhou",
      "name": "Guangzhou",
      "lat": 22.94,
      "lng": 113.45,
      "country": "CN",
      "region": "east_asia",
      "type": "container",
      "throughput": 24.0
    },
    {
      "id": "qingdao",
      "name": "Qingdao",
      "lat": 36.07,
      "lng": 120.38,
      "country": "CN",
      "region": "east_asia",
      "type": "container",
      "throughput": 25.0
    },
    {
      "id": "busan",
      "name": "Busan",
      "lat": 35.1,
      "lng": 129.03,
      "country": "KR",
      "region": "east_asia",
      "type": "container",
      "throughput": 22.0
    },
    {
      "id": "tokyo",
      "name": "Tokyo / Yokohama",
      "lat": 35.45,
      "lng": 139.65,
      "country": "JP",
      "region": "east_asia",
      "type": "container"
    },
    {
      "id": "kobe",
      "name": "Kobe",
      "lat": 34.69,
      "lng": 135.2,
      "country": "JP",
      "region": "east_asia",
      "type": "container"
    },
    {
      "id": "kaohsiung",
      "name": "Kaohsiung",
      "lat": 22.61,
      "lng": 120.29,
      "country": "TW",
      "region": "east_asia",
      "type": "container",
      "throughput": 10.0
    },
    {
      "id": "singapore",
      "name": "Singapore",
      "lat": 1.26,
      "lng": 103.84,
      "country": "SG",
      "region": "malacca",
      "type": "container",
      "throughput": 39.0
    },
    {
      "id": "port_klang",
      "name": "Port Klang",
      "lat": 3.0,
      "lng": 101.39,
      "country": "MY",
      "region": "malacca",
      "type": "container",
      "throughput": 14.0
    },
    {
      "id": "tanjung_pelepas",
      "name": "Tanjung Pelepas",
      "lat": 1.37,
      "lng": 103.55,
      "country": "MY",
      "region": "malacca",
      "type": "container",
      "throughput": 11.0
    },
    {
      "id": "mumbai",
      "name": "Mumbai / JNPT",
      "lat": 18.95,
      "lng": 72.95,
      "country": "IN",
      "region": "south_asia",
      "type": "container",
      "throughput": 6.0
    },
    {
      "id": "colombo",
      "name": "Colombo",
      "lat": 6.94,
      "lng": 79.84,
      "country": "LK",
      "region": "south_asia",
      "type": "container"
    },
    {
      "id": "durban",
      "name": "Durban",
      "lat": -29.87,
      "lng": 31.05,
      "country": "ZA",
      "region": "africa_south",
      "type": "container"
    },
    {
      "id": "cape_town",
      "name": "Cape Town",
      "lat": -33.9,
      "lng": 18.44,
      "country": "ZA",
      "region": "africa_south",
      "type": "container",
      "note": "Cape of Good Hope reroute port"
    },
    {
      "id": "mombasa",
      "name": "Mombasa",
      "lat": -4.04,
      "lng": 39.67,
      "country": "KE",
      "region": "africa_east",
      "type": "container"
    },
    {
      "id": "lagos",
      "name": "Lagos / Apapa",
      "lat": 6.44,
      "lng": 3.39,
      "country": "NG",
      "region": "africa_west",
      "type": "container"
    },
    {
      "id": "houston",
      "name": "Houston",
      "lat": 29.73,
      "lng": -95.27,
      "country": "US",
      "region": "americas",
      "type": "oil"
    },
    {
      "id": "new_york",
      "name": "New York / New Jersey",
      "lat": 40.68,
      "lng": -74.15,
      "country": "US",
      "region": "americas",
      "type": "container"
    },
    {
      "id": "los_angeles",
      "name": "Los Angeles / Long Beach",
      "lat": 33.74,
      "lng": -118.26,
      "country": "US",
      "region": "americas",
      "type": "container",
      "throughput": 9.0
    },
    {
      "id": "santos",
      "name": "Santos",
      "lat": -23.96,
      "lng": -46.3,
      "country": "BR",
      "region": "americas",
      "type": "container"
    },
    {
      "id": "colon",
      "name": "Col\u00f3n",
      "lat": 9.36,
      "lng": -79.9,
      "country": "PA",
      "region": "panama",
      "type": "transit"
    },
    {
      "id": "balboa",
      "name": "Balboa",
      "lat": 8.95,
      "lng": -79.57,
      "country": "PA",
      "region": "panama",
      "type": "transit"
    }
  ],
  "chokepoints": [
    {
      "id": "hormuz",
      "name": "Strait of Hormuz",
      "lat": 26.57,
      "lng": 56.25,
      "width_km": 33,
      "daily_transits": 80,
      "pct_oil": 25,
      "pct_lng": 20,
      "pct_global_trade": 21
    },
    {
      "id": "mandeb",
      "name": "Bab el-Mandeb",
      "lat": 12.58,
      "lng": 43.33,
      "width_km": 26,
      "daily_transits": 60,
      "pct_oil": 9,
      "pct_lng": 8,
      "pct_global_trade": 10
    },
    {
      "id": "suez",
      "name": "Suez Canal",
      "lat": 30.58,
      "lng": 32.34,
      "width_km": 0.2,
      "daily_transits": 70,
      "pct_oil": 9,
      "pct_lng": 8,
      "pct_global_trade": 13
    },
    {
      "id": "malacca",
      "name": "Strait of Malacca",
      "lat": 2.5,
      "lng": 101.8,
      "width_km": 65,
      "daily_transits": 90,
      "pct_oil": 16,
      "pct_lng": 0,
      "pct_global_trade": 25
    },
    {
      "id": "panama",
      "name": "Panama Canal",
      "lat": 9.1,
      "lng": -79.7,
      "width_km": 0.033,
      "daily_transits": 35,
      "pct_oil": 5,
      "pct_lng": 5,
      "pct_global_trade": 5
    }
  ]
}