{
 "communes": [
  {
   "code": "45115",
   "nom": "Courtenay",
   "court": "Courtenay",
   "pop": 3772,
   "km2": 50.1,
   "dens": 75.2,
   "ent": 905,
   "ent1000": 240,
   "tC": 0.0,
   "tCR": 21.6
  },
  {
   "code": "45083",
   "nom": "Château-Renard",
   "court": "Château-Renard",
   "pop": 2112,
   "km2": 40.4,
   "dens": 52.3,
   "ent": 574,
   "ent1000": 272,
   "tC": 21.8,
   "tCR": 0.0
  },
  {
   "code": "45279",
   "nom": "Saint-Germain-des-Prés",
   "court": "St-Germain-des-Prés",
   "pop": 1849,
   "km2": 26.4,
   "dens": 70.1,
   "ent": 348,
   "ent1000": 188,
   "tC": 31.3,
   "tCR": 9.5
  },
  {
   "code": "45129",
   "nom": "Douchy-Montcorbon",
   "court": "Douchy-Montcorbon",
   "pop": 1370,
   "km2": 50.1,
   "dens": 27.3,
   "ent": 320,
   "ent1000": 234,
   "tC": 14.6,
   "tCR": 16.8
  },
  {
   "code": "45329",
   "nom": "Triguères",
   "court": "Triguères",
   "pop": 1259,
   "km2": 35.9,
   "dens": 35.1,
   "ent": 269,
   "ent1000": 214,
   "tC": 16.0,
   "tCR": 7.7
  },
  {
   "code": "45097",
   "nom": "Chuelles",
   "court": "Chuelles",
   "pop": 1237,
   "km2": 30.8,
   "dens": 40.1,
   "ent": 267,
   "ent1000": 216,
   "tC": 14.0,
   "tCR": 10.3
  },
  {
   "code": "45307",
   "nom": "La Selle-sur-le-Bied",
   "court": "La Selle-sur-le-Bied",
   "pop": 1151,
   "km2": 30.2,
   "dens": 38.2,
   "ent": 237,
   "ent1000": 206,
   "tC": 18.9,
   "tCR": 20.0
  },
  {
   "code": "45026",
   "nom": "Bazoches-sur-le-Betz",
   "court": "Bazoches-s-le-Betz",
   "pop": 960,
   "km2": 15.4,
   "dens": 62.2,
   "ent": 188,
   "ent1000": 196,
   "tC": 20.8,
   "tCR": 32.0
  },
  {
   "code": "45281",
   "nom": "Saint-Hilaire-les-Andrésis",
   "court": "St-Hilaire-les-A.",
   "pop": 952,
   "km2": 25.7,
   "dens": 37.0,
   "ent": 200,
   "ent1000": 210,
   "tC": 7.7,
   "tCR": 19.0
  },
  {
   "code": "45306",
   "nom": "La Selle-en-Hermoy",
   "court": "La Selle-en-Hermoy",
   "pop": 784,
   "km2": 19.6,
   "dens": 40.0,
   "ent": 132,
   "ent1000": 168,
   "tC": 18.8,
   "tCR": 14.0
  },
  {
   "code": "45165",
   "nom": "Gy-les-Nonains",
   "court": "Gy-les-Nonains",
   "pop": 604,
   "km2": 20.2,
   "dens": 29.9,
   "ent": 122,
   "ent1000": 202,
   "tC": 33.7,
   "tCR": 12.9
  },
  {
   "code": "45136",
   "nom": "Ervauville",
   "court": "Ervauville",
   "pop": 561,
   "km2": 12.6,
   "dens": 44.6,
   "ent": 97,
   "ent1000": 173,
   "tC": 13.5,
   "tCR": 24.8
  },
  {
   "code": "45073",
   "nom": "Chantecoq",
   "court": "Chantecoq",
   "pop": 518,
   "km2": 15.9,
   "dens": 32.5,
   "ent": 110,
   "ent1000": 212,
   "tC": 13.1,
   "tCR": 20.7
  },
  {
   "code": "45199",
   "nom": "Melleroy",
   "court": "Melleroy",
   "pop": 516,
   "km2": 24.2,
   "dens": 21.3,
   "ent": 119,
   "ent1000": 231,
   "tC": 27.8,
   "tCR": 10.6
  },
  {
   "code": "45275",
   "nom": "Saint-Firmin-des-Bois",
   "court": "St-Firmin-des-Bois",
   "pop": 497,
   "km2": 19.1,
   "dens": 26.1,
   "ent": 99,
   "ent1000": 199,
   "tC": 20.3,
   "tCR": 5.2
  },
  {
   "code": "45149",
   "nom": "Foucherolles",
   "court": "Foucherolles",
   "pop": 319,
   "km2": 9.8,
   "dens": 32.4,
   "ent": 52,
   "ent1000": 163,
   "tC": 17.3,
   "tCR": 28.6
  },
  {
   "code": "45113",
   "nom": "Courtemaux",
   "court": "Courtemaux",
   "pop": 261,
   "km2": 12.2,
   "dens": 21.4,
   "ent": 73,
   "ent1000": 280,
   "tC": 15.6,
   "tCR": 22.3
  },
  {
   "code": "45189",
   "nom": "Louzouer",
   "court": "Louzouer",
   "pop": 247,
   "km2": 11.3,
   "dens": 21.9,
   "ent": 67,
   "ent1000": 271,
   "tC": 18.0,
   "tCR": 15.5
  },
  {
   "code": "89350",
   "nom": "Saint-Loup-d'Ordon",
   "court": "St-Loup-d'Ordon",
   "pop": 242,
   "km2": 18.0,
   "dens": 13.4,
   "ent": 75,
   "ent1000": 310,
   "tC": 21.4,
   "tCR": 30.6
  },
  {
   "code": "45250",
   "nom": "Pers-en-Gâtinais",
   "court": "Pers-en-Gâtinais",
   "pop": 239,
   "km2": 10.7,
   "dens": 22.3,
   "ent": 65,
   "ent1000": 272,
   "tC": 25.1,
   "tCR": 26.2
  },
  {
   "code": "45076",
   "nom": "La Chapelle-Saint-Sépulcre",
   "court": "La Chapelle-St-S.",
   "pop": 219,
   "km2": 6.2,
   "dens": 35.2,
   "ent": 50,
   "ent1000": 228,
   "tC": 19.7,
   "tCR": 17.3
  },
  {
   "code": "45322",
   "nom": "Thorailles",
   "court": "Thorailles",
   "pop": 201,
   "km2": 3.5,
   "dens": 57.9,
   "ent": 28,
   "ent1000": 139,
   "tC": 15.9,
   "tCR": 14.7
  },
  {
   "code": "45201",
   "nom": "Mérinville",
   "court": "Mérinville",
   "pop": 171,
   "km2": 11.9,
   "dens": 14.4,
   "ent": 31,
   "ent1000": 181,
   "tC": 21.3,
   "tCR": 27.7
  }
 ],
 "total": {
  "pop": 20041,
  "ent": 4428,
  "km2": 500.3,
  "dens": 40.1,
  "ent1000": 221
 },
 "poles": [
  {
   "nom": "Montargis",
   "tC": 28.1,
   "kmC": 33.2,
   "tCR": 21.7,
   "kmCR": 17.1
  },
  {
   "nom": "Amilly (zone comm.)",
   "tC": 27.8,
   "kmC": 27.3,
   "tCR": 15.6,
   "kmCR": 13.5
  },
  {
   "nom": "Ferrières-en-Gâtinais",
   "tC": 24.0,
   "kmC": 29.4,
   "tCR": 30.3,
   "kmCR": 25.2
  },
  {
   "nom": "Sens",
   "tC": 29.2,
   "kmC": 29.4,
   "tCR": 44.5,
   "kmCR": 48.0
  },
  {
   "nom": "Villeneuve-sur-Yonne",
   "tC": 22.6,
   "kmC": 21.3,
   "tCR": 40.4,
   "kmCR": 40.0
  },
  {
   "nom": "Joigny",
   "tC": 34.0,
   "kmC": 37.9,
   "tCR": 43.9,
   "kmCR": 40.5
  },
  {
   "nom": "Nemours",
   "tC": 32.9,
   "kmC": 46.5,
   "tCR": 48.8,
   "kmCR": 60.3
  },
  {
   "nom": "Gien",
   "tC": 54.6,
   "kmC": 79.0,
   "tCR": 43.0,
   "kmCR": 40.5
  },
  {
   "nom": "Auxerre",
   "tC": 43.0,
   "kmC": 56.7,
   "tCR": 53.5,
   "kmCR": 59.3
  },
  {
   "nom": "Orléans",
   "tC": 80.8,
   "kmC": 118.5,
   "tCR": 80.4,
   "kmCR": 88.5
  },
  {
   "nom": "Paris",
   "tC": 91.8,
   "kmC": 124.5,
   "tCR": 107.7,
   "kmCR": 138.3
  }
 ],
 "sections": [
  {
   "code": "A",
   "lib": "Agriculture, sylviculture, pêche",
   "g1": 253,
   "g2": 98,
   "g3": 90,
   "g4": 41,
   "tot": 482,
   "pct": 10.9,
   "bipole": 107
  },
  {
   "code": "C",
   "lib": "Industrie manufacturière",
   "g1": 132,
   "g2": 34,
   "g3": 14,
   "g4": 9,
   "tot": 189,
   "pct": 4.3,
   "bipole": 72
  },
  {
   "code": "F",
   "lib": "Construction",
   "g1": 187,
   "g2": 95,
   "g3": 43,
   "g4": 14,
   "tot": 339,
   "pct": 7.7,
   "bipole": 83
  },
  {
   "code": "G",
   "lib": "Commerce, réparation automobile",
   "g1": 376,
   "g2": 120,
   "g3": 68,
   "g4": 25,
   "tot": 589,
   "pct": 13.3,
   "bipole": 217
  },
  {
   "code": "H",
   "lib": "Transports et entreposage",
   "g1": 64,
   "g2": 32,
   "g3": 10,
   "g4": 7,
   "tot": 113,
   "pct": 2.6,
   "bipole": 44
  },
  {
   "code": "I",
   "lib": "Hébergement et restauration",
   "g1": 88,
   "g2": 24,
   "g3": 9,
   "g4": 3,
   "tot": 124,
   "pct": 2.8,
   "bipole": 63
  },
  {
   "code": "M",
   "lib": "Activités spécialisées, scientifiques, conseil",
   "g1": 127,
   "g2": 54,
   "g3": 21,
   "g4": 18,
   "tot": 220,
   "pct": 5.0,
   "bipole": 78
  },
  {
   "code": "N",
   "lib": "Services administratifs et de soutien",
   "g1": 139,
   "g2": 59,
   "g3": 27,
   "g4": 17,
   "tot": 242,
   "pct": 5.5,
   "bipole": 73
  },
  {
   "code": "Q",
   "lib": "Santé humaine et action sociale",
   "g1": 119,
   "g2": 29,
   "g3": 19,
   "g4": 9,
   "tot": 176,
   "pct": 4.0,
   "bipole": 70
  },
  {
   "code": "S",
   "lib": "Autres activités de services",
   "g1": 192,
   "g2": 71,
   "g3": 40,
   "g4": 15,
   "tot": 318,
   "pct": 7.2,
   "bipole": 107
  }
 ],
 "naf": [
  {
   "code": "56.10A",
   "lib": "Restauration traditionnelle",
   "n": 16
  },
  {
   "code": "96.02A",
   "lib": "Coiffure",
   "n": 14
  },
  {
   "code": "45.20A",
   "lib": "Entretien et réparation de véhicules",
   "n": 13
  },
  {
   "code": "10.71C",
   "lib": "Boulangerie et boulangerie-pâtisserie",
   "n": 10
  },
  {
   "code": "47.73Z",
   "lib": "Pharmacies",
   "n": 6
  },
  {
   "code": "55.20Z",
   "lib": "Hébergement touristique de courte durée",
   "n": 6
  },
  {
   "code": "86.21Z",
   "lib": "Médecins généralistes",
   "n": 4
  },
  {
   "code": "62.02A",
   "lib": "Conseil en systèmes informatiques",
   "n": 3
  },
  {
   "code": "96.04Z",
   "lib": "Entretien corporel et soins de beauté",
   "n": 2
  }
 ],
 "insee": {
  "population_2023": 20041,
  "densite_2023": 40.2,
  "evol_annuelle_2017_2023": -0.2,
  "solde_naturel_annuel": -0.3,
  "solde_migratoire_annuel": 0.1,
  "menages_2023": 9547,
  "naissances_2025": 170,
  "deces_2025": 245,
  "logements_2023": 12622,
  "part_residences_principales": 75.4,
  "part_residences_secondaires": 13.0,
  "part_logements_vacants": 11.7,
  "part_proprietaires": 77.2,
  "niveau_vie_median_2023": 24700,
  "taux_pauvrete_2023": 14.0,
  "emplois_lieu_travail_2023": 4319,
  "part_emploi_salarie": 77.7,
  "taux_activite_15_64": 76.2,
  "taux_chomage_15_64": 13.0,
  "etablissements_employeurs_2024": 533,
  "part_agriculture": 10.3,
  "part_industrie": 10.3,
  "part_construction": 15.6,
  "part_commerce_transport_services": 49.5,
  "part_admin_ens_sante_social": 14.3
 },
 "sources": {
  "populations_communales": "INSEE, populations légales millésime 2023, via API Géo (api.gouv.fr), consultée en août 2026",
  "surfaces": "IGN / API Géo, surfaces communales en hectares, consultées en août 2026",
  "entreprises": "API Recherche d'entreprises (data.gouv.fr / DINUM), base SIRENE — unités légales actives ayant au moins un établissement dans la commune, requêtes d'août 2026",
  "temps_trajet": "OSRM sur données OpenStreetMap, profil voiture, calculs d'août 2026",
  "insee_epci": "INSEE, Comparateur de territoires, EPCI 200067668, consulté en août 2026 — millésimes 2023 (recensement, Filosofi) et fin 2024 (établissements employeurs)",
  "perimetre": "3CBO (3cbo.fr) et API Géo, périmètre vérifié en août 2026 : 23 communes, dont Saint-Loup-d'Ordon (Yonne)"
 },
 "iso_courtenay": [
  {
   "lab": "0 à 10 minutes",
   "n": 2,
   "pop": 4724,
   "pct": 23.6,
   "ent": 1105,
   "communes": [
    "Courtenay",
    "St-Hilaire-les-A."
   ]
  },
  {
   "lab": "10 à 20 minutes",
   "n": 12,
   "pop": 8127,
   "pct": 40.6,
   "ent": 1702,
   "communes": [
    "Douchy-Montcorbon",
    "Triguères",
    "Chuelles",
    "La Selle-sur-le-Bied",
    "La Selle-en-Hermoy",
    "Ervauville",
    "Chantecoq",
    "Foucherolles",
    "Courtemaux",
    "Louzouer",
    "La Chapelle-St-S.",
    "Thorailles"
   ]
  },
  {
   "lab": "20 à 30 minutes",
   "n": 7,
   "pop": 4737,
   "pct": 23.6,
   "ent": 1151,
   "communes": [
    "Château-Renard",
    "Bazoches-s-le-Betz",
    "Melleroy",
    "St-Firmin-des-Bois",
    "St-Loup-d'Ordon",
    "Pers-en-Gâtinais",
    "Mérinville"
   ]
  },
  {
   "lab": "plus de 30 minutes",
   "n": 2,
   "pop": 2453,
   "pct": 12.2,
   "ent": 470,
   "communes": [
    "St-Germain-des-Prés",
    "Gy-les-Nonains"
   ]
  }
 ],
 "iso_chateau_renard": [
  {
   "lab": "0 à 10 minutes",
   "n": 4,
   "pop": 5717,
   "pct": 28.5,
   "ent": 1290,
   "communes": [
    "Château-Renard",
    "St-Germain-des-Prés",
    "Triguères",
    "St-Firmin-des-Bois"
   ]
  },
  {
   "lab": "10 à 20 minutes",
   "n": 9,
   "pop": 6130,
   "pct": 30.6,
   "ent": 1305,
   "communes": [
    "Douchy-Montcorbon",
    "Chuelles",
    "St-Hilaire-les-A.",
    "La Selle-en-Hermoy",
    "Gy-les-Nonains",
    "Melleroy",
    "Louzouer",
    "La Chapelle-St-S.",
    "Thorailles"
   ]
  },
  {
   "lab": "20 à 30 minutes",
   "n": 8,
   "pop": 6992,
   "pct": 34.9,
   "ent": 1570,
   "communes": [
    "Courtenay",
    "La Selle-sur-le-Bied",
    "Ervauville",
    "Chantecoq",
    "Foucherolles",
    "Courtemaux",
    "Pers-en-Gâtinais",
    "Mérinville"
   ]
  },
  {
   "lab": "plus de 30 minutes",
   "n": 2,
   "pop": 1202,
   "pct": 6.0,
   "ent": 263,
   "communes": [
    "Bazoches-s-le-Betz",
    "St-Loup-d'Ordon"
   ]
  }
 ]
}