{
  "report_id": "002-training-hours",
  "status": "READY",
  "period": {
    "start": "2019-01-01",
    "end": "2026-07-15"
  },
  "semantics": {
    "time": "Hora local del centro; no se aplica conversión de zona horaria.",
    "effective_attendance": "La reserva termina sin ninguna marca de baja.",
    "cancellation_with_refund": "La persona no asiste y el sistema devuelve el crédito.",
    "absence_without_refund": "La persona no asiste y pierde el crédito.",
    "invalid_deleted_without_no_train": "Existe una devolución sin una baja asociada; estado inconsistente."
  },
  "sample": {
    "classes": 28512627,
    "centers": 2170,
    "canceled_classes": 97205,
    "offered_places": 317448139,
    "reservation_records": 189082840,
    "effective_attendances": 131484342,
    "cancellations_with_refund": 52391869,
    "absences_without_refund": 5206612,
    "invalid_deleted_without_no_train": 17,
    "waitlist_entries": 12726629,
    "waitlist_notified": 11066632,
    "waitlist_with_any_reservation": 3969202,
    "waitlist_effective_attendance": 2615669,
    "waitlist_notified_without_reservation": 7180012,
    "waitlist_never_notified": 1659997,
    "tenants_attempted": 2174,
    "tenants_succeeded": 2174,
    "tenants_failed": 0,
    "low_attendance_2025": {
      "eligible_centers": 2094,
      "eligible_classes": 4938123,
      "paired_noon_19h_centers": 805
    }
  },
  "privacy": {
    "minimum_centers_per_group": 20,
    "minimum_observations_per_group": 500,
    "raw_athlete_identifiers_exported": false
  },
  "series": {
    "by_hour": [
      {
        "hour": 0,
        "classes": 2737,
        "centers": 50,
        "offered_places": 24462,
        "effective_attendances": 566,
        "cancellations_with_refund": 147,
        "absences_without_refund": 13,
        "waitlist_entries": 18
      },
      {
        "hour": 5,
        "classes": 7744,
        "centers": 26,
        "offered_places": 57334,
        "effective_attendances": 2790,
        "cancellations_with_refund": 1005,
        "absences_without_refund": 29,
        "waitlist_entries": 144
      },
      {
        "hour": 6,
        "classes": 266262,
        "centers": 383,
        "offered_places": 3661776,
        "effective_attendances": 1318510,
        "cancellations_with_refund": 383246,
        "absences_without_refund": 56613,
        "waitlist_entries": 70614
      },
      {
        "hour": 7,
        "classes": 1408495,
        "centers": 1561,
        "offered_places": 18236966,
        "effective_attendances": 7075586,
        "cancellations_with_refund": 2065130,
        "absences_without_refund": 297295,
        "waitlist_entries": 352359
      },
      {
        "hour": 8,
        "classes": 1874400,
        "centers": 1857,
        "offered_places": 19978371,
        "effective_attendances": 6936011,
        "cancellations_with_refund": 2523984,
        "absences_without_refund": 308299,
        "waitlist_entries": 367837
      },
      {
        "hour": 9,
        "classes": 2778793,
        "centers": 2075,
        "offered_places": 32431501,
        "effective_attendances": 14043428,
        "cancellations_with_refund": 5401016,
        "absences_without_refund": 546959,
        "waitlist_entries": 1215367
      },
      {
        "hour": 10,
        "classes": 2609338,
        "centers": 2106,
        "offered_places": 28547372,
        "effective_attendances": 11185127,
        "cancellations_with_refund": 4750801,
        "absences_without_refund": 459111,
        "waitlist_entries": 1104151
      },
      {
        "hour": 11,
        "classes": 1797122,
        "centers": 1974,
        "offered_places": 18751774,
        "effective_attendances": 5496909,
        "cancellations_with_refund": 2292047,
        "absences_without_refund": 216922,
        "waitlist_entries": 528162
      },
      {
        "hour": 12,
        "classes": 1190328,
        "centers": 1683,
        "offered_places": 12052703,
        "effective_attendances": 2619531,
        "cancellations_with_refund": 983764,
        "absences_without_refund": 88431,
        "waitlist_entries": 194139
      },
      {
        "hour": 13,
        "classes": 934227,
        "centers": 1304,
        "offered_places": 9786773,
        "effective_attendances": 2326520,
        "cancellations_with_refund": 722221,
        "absences_without_refund": 74052,
        "waitlist_entries": 94326
      },
      {
        "hour": 14,
        "classes": 968646,
        "centers": 1190,
        "offered_places": 11855936,
        "effective_attendances": 3275698,
        "cancellations_with_refund": 955581,
        "absences_without_refund": 99464,
        "waitlist_entries": 116390
      },
      {
        "hour": 15,
        "classes": 837197,
        "centers": 1234,
        "offered_places": 8916896,
        "effective_attendances": 2501135,
        "cancellations_with_refund": 833666,
        "absences_without_refund": 88360,
        "waitlist_entries": 87526
      },
      {
        "hour": 16,
        "classes": 1455757,
        "centers": 1803,
        "offered_places": 15105631,
        "effective_attendances": 5676423,
        "cancellations_with_refund": 2227320,
        "absences_without_refund": 231064,
        "waitlist_entries": 361831
      },
      {
        "hour": 17,
        "classes": 2648655,
        "centers": 2116,
        "offered_places": 28498459,
        "effective_attendances": 13827757,
        "cancellations_with_refund": 5811548,
        "absences_without_refund": 533324,
        "waitlist_entries": 1243921
      },
      {
        "hour": 18,
        "classes": 3009323,
        "centers": 2139,
        "offered_places": 33291161,
        "effective_attendances": 18022154,
        "cancellations_with_refund": 7681742,
        "absences_without_refund": 699715,
        "waitlist_entries": 2060392
      },
      {
        "hour": 19,
        "classes": 3042305,
        "centers": 2147,
        "offered_places": 34559064,
        "effective_attendances": 19133605,
        "cancellations_with_refund": 8062859,
        "absences_without_refund": 763340,
        "waitlist_entries": 2611140
      },
      {
        "hour": 20,
        "classes": 2505253,
        "centers": 2060,
        "offered_places": 28529781,
        "effective_attendances": 13908502,
        "cancellations_with_refund": 5877909,
        "absences_without_refund": 565420,
        "waitlist_entries": 1879716
      },
      {
        "hour": 21,
        "classes": 974703,
        "centers": 1368,
        "offered_places": 11000595,
        "effective_attendances": 4013396,
        "cancellations_with_refund": 1751492,
        "absences_without_refund": 177314,
        "waitlist_entries": 436753
      },
      {
        "hour": 22,
        "classes": 66620,
        "centers": 251,
        "offered_places": 820319,
        "effective_attendances": 103400,
        "cancellations_with_refund": 7688,
        "absences_without_refund": 698,
        "waitlist_entries": 870
      },
      {
        "hour": 23,
        "classes": 25908,
        "centers": 70,
        "offered_places": 476213,
        "effective_attendances": 12852,
        "cancellations_with_refund": 1394,
        "absences_without_refund": 33,
        "waitlist_entries": 791
      }
    ],
    "by_day_and_hour": [
      {
        "iso_weekday": 1,
        "hour": 6,
        "centers": 337,
        "classes": 51255,
        "effective_attendances": 262536,
        "offered_places": 712700,
        "cancellations_with_refund": 63888,
        "absences_without_refund": 11284
      },
      {
        "iso_weekday": 1,
        "hour": 7,
        "centers": 1439,
        "classes": 280429,
        "effective_attendances": 1404104,
        "offered_places": 3609925,
        "cancellations_with_refund": 337688,
        "absences_without_refund": 55914
      },
      {
        "iso_weekday": 1,
        "hour": 8,
        "centers": 1727,
        "classes": 364423,
        "effective_attendances": 1327396,
        "offered_places": 3887696,
        "cancellations_with_refund": 382042,
        "absences_without_refund": 54857
      },
      {
        "iso_weekday": 1,
        "hour": 9,
        "centers": 1992,
        "classes": 506775,
        "effective_attendances": 2528887,
        "offered_places": 5546678,
        "cancellations_with_refund": 716841,
        "absences_without_refund": 85356
      },
      {
        "iso_weekday": 1,
        "hour": 10,
        "centers": 1991,
        "classes": 448896,
        "effective_attendances": 1797974,
        "offered_places": 4742665,
        "cancellations_with_refund": 550737,
        "absences_without_refund": 60755
      },
      {
        "iso_weekday": 1,
        "hour": 11,
        "centers": 1733,
        "classes": 304972,
        "effective_attendances": 827004,
        "offered_places": 3073060,
        "cancellations_with_refund": 243248,
        "absences_without_refund": 27191
      },
      {
        "iso_weekday": 1,
        "hour": 12,
        "centers": 1403,
        "classes": 210852,
        "effective_attendances": 435413,
        "offered_places": 2083573,
        "cancellations_with_refund": 114137,
        "absences_without_refund": 12070
      },
      {
        "iso_weekday": 1,
        "hour": 13,
        "centers": 1097,
        "classes": 179410,
        "effective_attendances": 482343,
        "offered_places": 1877103,
        "cancellations_with_refund": 110144,
        "absences_without_refund": 13198
      },
      {
        "iso_weekday": 1,
        "hour": 14,
        "centers": 1026,
        "classes": 191165,
        "effective_attendances": 693373,
        "offered_places": 2358662,
        "cancellations_with_refund": 152406,
        "absences_without_refund": 17721
      },
      {
        "iso_weekday": 1,
        "hour": 15,
        "centers": 1048,
        "classes": 165063,
        "effective_attendances": 529266,
        "offered_places": 1759360,
        "cancellations_with_refund": 131586,
        "absences_without_refund": 15592
      },
      {
        "iso_weekday": 1,
        "hour": 16,
        "centers": 1613,
        "classes": 290467,
        "effective_attendances": 1203536,
        "offered_places": 3024793,
        "cancellations_with_refund": 354649,
        "absences_without_refund": 39011
      },
      {
        "iso_weekday": 1,
        "hour": 17,
        "centers": 2054,
        "classes": 535392,
        "effective_attendances": 3018349,
        "offered_places": 5772501,
        "cancellations_with_refund": 937532,
        "absences_without_refund": 92861
      },
      {
        "iso_weekday": 1,
        "hour": 18,
        "centers": 2105,
        "classes": 612058,
        "effective_attendances": 3992753,
        "offered_places": 6783351,
        "cancellations_with_refund": 1261819,
        "absences_without_refund": 124847
      },
      {
        "iso_weekday": 1,
        "hour": 19,
        "centers": 2121,
        "classes": 636269,
        "effective_attendances": 4479989,
        "offered_places": 7248537,
        "cancellations_with_refund": 1408375,
        "absences_without_refund": 146356
      },
      {
        "iso_weekday": 1,
        "hour": 20,
        "centers": 2018,
        "classes": 553112,
        "effective_attendances": 3506934,
        "offered_places": 6332491,
        "cancellations_with_refund": 1131958,
        "absences_without_refund": 120670
      },
      {
        "iso_weekday": 1,
        "hour": 21,
        "centers": 1238,
        "classes": 226255,
        "effective_attendances": 1093569,
        "offered_places": 2563043,
        "cancellations_with_refund": 379242,
        "absences_without_refund": 41175
      },
      {
        "iso_weekday": 1,
        "hour": 22,
        "centers": 169,
        "classes": 11724,
        "effective_attendances": 23464,
        "offered_places": 147431,
        "cancellations_with_refund": 1879,
        "absences_without_refund": 261
      },
      {
        "iso_weekday": 1,
        "hour": 23,
        "centers": 44,
        "classes": 3982,
        "effective_attendances": 2285,
        "offered_places": 75046,
        "cancellations_with_refund": 297,
        "absences_without_refund": 3
      },
      {
        "iso_weekday": 2,
        "hour": 6,
        "centers": 341,
        "classes": 52291,
        "effective_attendances": 274916,
        "offered_places": 714862,
        "cancellations_with_refund": 68667,
        "absences_without_refund": 10331
      },
      {
        "iso_weekday": 2,
        "hour": 7,
        "centers": 1450,
        "classes": 278967,
        "effective_attendances": 1473850,
        "offered_places": 3609347,
        "cancellations_with_refund": 362189,
        "absences_without_refund": 56727
      },
      {
        "iso_weekday": 2,
        "hour": 8,
        "centers": 1742,
        "classes": 366785,
        "effective_attendances": 1374054,
        "offered_places": 3877550,
        "cancellations_with_refund": 432261,
        "absences_without_refund": 56279
      },
      {
        "iso_weekday": 2,
        "hour": 9,
        "centers": 2001,
        "classes": 525217,
        "effective_attendances": 2589493,
        "offered_places": 5722714,
        "cancellations_with_refund": 853619,
        "absences_without_refund": 88522
      },
      {
        "iso_weekday": 2,
        "hour": 10,
        "centers": 1986,
        "classes": 458982,
        "effective_attendances": 1811202,
        "offered_places": 4893021,
        "cancellations_with_refund": 642030,
        "absences_without_refund": 62276
      },
      {
        "iso_weekday": 2,
        "hour": 11,
        "centers": 1740,
        "classes": 309208,
        "effective_attendances": 814462,
        "offered_places": 3119055,
        "cancellations_with_refund": 275895,
        "absences_without_refund": 25765
      },
      {
        "iso_weekday": 2,
        "hour": 12,
        "centers": 1396,
        "classes": 211574,
        "effective_attendances": 424515,
        "offered_places": 2097035,
        "cancellations_with_refund": 125071,
        "absences_without_refund": 11965
      },
      {
        "iso_weekday": 2,
        "hour": 13,
        "centers": 1108,
        "classes": 175397,
        "effective_attendances": 448714,
        "offered_places": 1834071,
        "cancellations_with_refund": 119457,
        "absences_without_refund": 12636
      },
      {
        "iso_weekday": 2,
        "hour": 14,
        "centers": 1012,
        "classes": 192038,
        "effective_attendances": 682956,
        "offered_places": 2355507,
        "cancellations_with_refund": 173724,
        "absences_without_refund": 18014
      },
      {
        "iso_weekday": 2,
        "hour": 15,
        "centers": 1070,
        "classes": 166348,
        "effective_attendances": 510371,
        "offered_places": 1770638,
        "cancellations_with_refund": 149412,
        "absences_without_refund": 16113
      },
      {
        "iso_weekday": 2,
        "hour": 16,
        "centers": 1619,
        "classes": 298189,
        "effective_attendances": 1198955,
        "offered_places": 3073735,
        "cancellations_with_refund": 411141,
        "absences_without_refund": 43583
      },
      {
        "iso_weekday": 2,
        "hour": 17,
        "centers": 2053,
        "classes": 542385,
        "effective_attendances": 2894004,
        "offered_places": 5810573,
        "cancellations_with_refund": 1073918,
        "absences_without_refund": 99160
      },
      {
        "iso_weekday": 2,
        "hour": 18,
        "centers": 2101,
        "classes": 624532,
        "effective_attendances": 3937223,
        "offered_places": 6888675,
        "cancellations_with_refund": 1494469,
        "absences_without_refund": 135821
      },
      {
        "iso_weekday": 2,
        "hour": 19,
        "centers": 2122,
        "classes": 648417,
        "effective_attendances": 4358336,
        "offered_places": 7371351,
        "cancellations_with_refund": 1659781,
        "absences_without_refund": 160081
      },
      {
        "iso_weekday": 2,
        "hour": 20,
        "centers": 2005,
        "classes": 563121,
        "effective_attendances": 3336423,
        "offered_places": 6401329,
        "cancellations_with_refund": 1302685,
        "absences_without_refund": 126786
      },
      {
        "iso_weekday": 2,
        "hour": 21,
        "centers": 1224,
        "classes": 225704,
        "effective_attendances": 989325,
        "offered_places": 2544739,
        "cancellations_with_refund": 410047,
        "absences_without_refund": 42371
      },
      {
        "iso_weekday": 2,
        "hour": 22,
        "centers": 171,
        "classes": 10822,
        "effective_attendances": 18480,
        "offered_places": 126404,
        "cancellations_with_refund": 1034,
        "absences_without_refund": 46
      },
      {
        "iso_weekday": 2,
        "hour": 23,
        "centers": 44,
        "classes": 3956,
        "effective_attendances": 2340,
        "offered_places": 73999,
        "cancellations_with_refund": 231,
        "absences_without_refund": 7
      },
      {
        "iso_weekday": 3,
        "hour": 5,
        "centers": 20,
        "classes": 1215,
        "effective_attendances": 553,
        "offered_places": 8979,
        "cancellations_with_refund": 221,
        "absences_without_refund": 6
      },
      {
        "iso_weekday": 3,
        "hour": 6,
        "centers": 333,
        "classes": 52929,
        "effective_attendances": 275171,
        "offered_places": 727314,
        "cancellations_with_refund": 80477,
        "absences_without_refund": 12136
      },
      {
        "iso_weekday": 3,
        "hour": 7,
        "centers": 1445,
        "classes": 289114,
        "effective_attendances": 1499131,
        "offered_places": 3695069,
        "cancellations_with_refund": 435650,
        "absences_without_refund": 60623
      },
      {
        "iso_weekday": 3,
        "hour": 8,
        "centers": 1750,
        "classes": 374012,
        "effective_attendances": 1403530,
        "offered_places": 3961808,
        "cancellations_with_refund": 504764,
        "absences_without_refund": 59601
      },
      {
        "iso_weekday": 3,
        "hour": 9,
        "centers": 1991,
        "classes": 517097,
        "effective_attendances": 2544830,
        "offered_places": 5635079,
        "cancellations_with_refund": 966781,
        "absences_without_refund": 91590
      },
      {
        "iso_weekday": 3,
        "hour": 10,
        "centers": 2007,
        "classes": 457967,
        "effective_attendances": 1812035,
        "offered_places": 4839608,
        "cancellations_with_refund": 729210,
        "absences_without_refund": 65233
      },
      {
        "iso_weekday": 3,
        "hour": 11,
        "centers": 1756,
        "classes": 311993,
        "effective_attendances": 825863,
        "offered_places": 3147609,
        "cancellations_with_refund": 314738,
        "absences_without_refund": 28267
      },
      {
        "iso_weekday": 3,
        "hour": 12,
        "centers": 1411,
        "classes": 212305,
        "effective_attendances": 420041,
        "offered_places": 2100745,
        "cancellations_with_refund": 141483,
        "absences_without_refund": 12461
      },
      {
        "iso_weekday": 3,
        "hour": 13,
        "centers": 1112,
        "classes": 180832,
        "effective_attendances": 462101,
        "offered_places": 1889918,
        "cancellations_with_refund": 140444,
        "absences_without_refund": 14237
      },
      {
        "iso_weekday": 3,
        "hour": 14,
        "centers": 1027,
        "classes": 193242,
        "effective_attendances": 667924,
        "offered_places": 2380429,
        "cancellations_with_refund": 196346,
        "absences_without_refund": 20197
      },
      {
        "iso_weekday": 3,
        "hour": 15,
        "centers": 1052,
        "classes": 166231,
        "effective_attendances": 514072,
        "offered_places": 1779269,
        "cancellations_with_refund": 170601,
        "absences_without_refund": 17290
      },
      {
        "iso_weekday": 3,
        "hour": 16,
        "centers": 1610,
        "classes": 291699,
        "effective_attendances": 1147128,
        "offered_places": 3022376,
        "cancellations_with_refund": 453813,
        "absences_without_refund": 44710
      },
      {
        "iso_weekday": 3,
        "hour": 17,
        "centers": 2061,
        "classes": 541653,
        "effective_attendances": 2855903,
        "offered_places": 5828410,
        "cancellations_with_refund": 1220095,
        "absences_without_refund": 106717
      },
      {
        "iso_weekday": 3,
        "hour": 18,
        "centers": 2105,
        "classes": 619657,
        "effective_attendances": 3751414,
        "offered_places": 6848275,
        "cancellations_with_refund": 1648525,
        "absences_without_refund": 144133
      },
      {
        "iso_weekday": 3,
        "hour": 19,
        "centers": 2125,
        "classes": 642986,
        "effective_attendances": 4135437,
        "offered_places": 7297915,
        "cancellations_with_refund": 1833345,
        "absences_without_refund": 166494
      },
      {
        "iso_weekday": 3,
        "hour": 20,
        "centers": 2004,
        "classes": 554521,
        "effective_attendances": 3129681,
        "offered_places": 6356365,
        "cancellations_with_refund": 1432203,
        "absences_without_refund": 132221
      },
      {
        "iso_weekday": 3,
        "hour": 21,
        "centers": 1227,
        "classes": 221157,
        "effective_attendances": 917022,
        "offered_places": 2495801,
        "cancellations_with_refund": 444622,
        "absences_without_refund": 42433
      },
      {
        "iso_weekday": 3,
        "hour": 22,
        "centers": 173,
        "classes": 11257,
        "effective_attendances": 16905,
        "offered_places": 134754,
        "cancellations_with_refund": 1994,
        "absences_without_refund": 275
      },
      {
        "iso_weekday": 3,
        "hour": 23,
        "centers": 43,
        "classes": 3992,
        "effective_attendances": 2153,
        "offered_places": 74851,
        "cancellations_with_refund": 229,
        "absences_without_refund": 5
      },
      {
        "iso_weekday": 4,
        "hour": 6,
        "centers": 341,
        "classes": 49401,
        "effective_attendances": 245186,
        "offered_places": 683293,
        "cancellations_with_refund": 79439,
        "absences_without_refund": 10796
      },
      {
        "iso_weekday": 4,
        "hour": 7,
        "centers": 1436,
        "classes": 267020,
        "effective_attendances": 1323644,
        "offered_places": 3456059,
        "cancellations_with_refund": 433289,
        "absences_without_refund": 59734
      },
      {
        "iso_weekday": 4,
        "hour": 8,
        "centers": 1746,
        "classes": 352366,
        "effective_attendances": 1264974,
        "offered_places": 3735547,
        "cancellations_with_refund": 509810,
        "absences_without_refund": 59300
      },
      {
        "iso_weekday": 4,
        "hour": 9,
        "centers": 2004,
        "classes": 508886,
        "effective_attendances": 2430182,
        "offered_places": 5566171,
        "cancellations_with_refund": 1011068,
        "absences_without_refund": 95543
      },
      {
        "iso_weekday": 4,
        "hour": 10,
        "centers": 1999,
        "classes": 447482,
        "effective_attendances": 1699458,
        "offered_places": 4706120,
        "cancellations_with_refund": 761187,
        "absences_without_refund": 67102
      },
      {
        "iso_weekday": 4,
        "hour": 11,
        "centers": 1725,
        "classes": 297847,
        "effective_attendances": 752373,
        "offered_places": 3011305,
        "cancellations_with_refund": 322349,
        "absences_without_refund": 28074
      },
      {
        "iso_weekday": 4,
        "hour": 12,
        "centers": 1409,
        "classes": 203433,
        "effective_attendances": 389554,
        "offered_places": 2012066,
        "cancellations_with_refund": 148227,
        "absences_without_refund": 13454
      },
      {
        "iso_weekday": 4,
        "hour": 13,
        "centers": 1104,
        "classes": 170051,
        "effective_attendances": 408074,
        "offered_places": 1778924,
        "cancellations_with_refund": 139240,
        "absences_without_refund": 13549
      },
      {
        "iso_weekday": 4,
        "hour": 14,
        "centers": 1023,
        "classes": 188236,
        "effective_attendances": 632960,
        "offered_places": 2296596,
        "cancellations_with_refund": 204249,
        "absences_without_refund": 20692
      },
      {
        "iso_weekday": 4,
        "hour": 15,
        "centers": 1057,
        "classes": 163050,
        "effective_attendances": 470923,
        "offered_places": 1730994,
        "cancellations_with_refund": 176162,
        "absences_without_refund": 18016
      },
      {
        "iso_weekday": 4,
        "hour": 16,
        "centers": 1636,
        "classes": 289180,
        "effective_attendances": 1099102,
        "offered_places": 2983831,
        "cancellations_with_refund": 480098,
        "absences_without_refund": 49932
      },
      {
        "iso_weekday": 4,
        "hour": 17,
        "centers": 2056,
        "classes": 527375,
        "effective_attendances": 2662662,
        "offered_places": 5693926,
        "cancellations_with_refund": 1249017,
        "absences_without_refund": 113811
      },
      {
        "iso_weekday": 4,
        "hour": 18,
        "centers": 2116,
        "classes": 611550,
        "effective_attendances": 3609790,
        "offered_places": 6732934,
        "cancellations_with_refund": 1739020,
        "absences_without_refund": 155363
      },
      {
        "iso_weekday": 4,
        "hour": 19,
        "centers": 2123,
        "classes": 632091,
        "effective_attendances": 3951904,
        "offered_places": 7167029,
        "cancellations_with_refund": 1905451,
        "absences_without_refund": 176616
      },
      {
        "iso_weekday": 4,
        "hour": 20,
        "centers": 2005,
        "classes": 548135,
        "effective_attendances": 3016756,
        "offered_places": 6238279,
        "cancellations_with_refund": 1477885,
        "absences_without_refund": 138920
      },
      {
        "iso_weekday": 4,
        "hour": 21,
        "centers": 1226,
        "classes": 220674,
        "effective_attendances": 903510,
        "offered_places": 2492952,
        "cancellations_with_refund": 458763,
        "absences_without_refund": 46217
      },
      {
        "iso_weekday": 4,
        "hour": 22,
        "centers": 175,
        "classes": 10806,
        "effective_attendances": 18330,
        "offered_places": 127335,
        "cancellations_with_refund": 1332,
        "absences_without_refund": 63
      },
      {
        "iso_weekday": 4,
        "hour": 23,
        "centers": 45,
        "classes": 3955,
        "effective_attendances": 2149,
        "offered_places": 74238,
        "cancellations_with_refund": 255,
        "absences_without_refund": 7
      },
      {
        "iso_weekday": 5,
        "hour": 6,
        "centers": 326,
        "classes": 50151,
        "effective_attendances": 258148,
        "offered_places": 702276,
        "cancellations_with_refund": 90154,
        "absences_without_refund": 12037
      },
      {
        "iso_weekday": 5,
        "hour": 7,
        "centers": 1408,
        "classes": 271941,
        "effective_attendances": 1348345,
        "offered_places": 3500679,
        "cancellations_with_refund": 490330,
        "absences_without_refund": 63647
      },
      {
        "iso_weekday": 5,
        "hour": 8,
        "centers": 1718,
        "classes": 354663,
        "effective_attendances": 1304944,
        "offered_places": 3765387,
        "cancellations_with_refund": 570027,
        "absences_without_refund": 63686
      },
      {
        "iso_weekday": 5,
        "hour": 9,
        "centers": 1956,
        "classes": 489442,
        "effective_attendances": 2440413,
        "offered_places": 5388210,
        "cancellations_with_refund": 1088036,
        "absences_without_refund": 102869
      },
      {
        "iso_weekday": 5,
        "hour": 10,
        "centers": 1939,
        "classes": 430786,
        "effective_attendances": 1728228,
        "offered_places": 4590477,
        "cancellations_with_refund": 826624,
        "absences_without_refund": 72506
      },
      {
        "iso_weekday": 5,
        "hour": 11,
        "centers": 1682,
        "classes": 293263,
        "effective_attendances": 785739,
        "offered_places": 2968586,
        "cancellations_with_refund": 354520,
        "absences_without_refund": 31079
      },
      {
        "iso_weekday": 5,
        "hour": 12,
        "centers": 1386,
        "classes": 201620,
        "effective_attendances": 413954,
        "offered_places": 2013232,
        "cancellations_with_refund": 168906,
        "absences_without_refund": 14705
      },
      {
        "iso_weekday": 5,
        "hour": 13,
        "centers": 1077,
        "classes": 166751,
        "effective_attendances": 411513,
        "offered_places": 1754063,
        "cancellations_with_refund": 155089,
        "absences_without_refund": 15848
      },
      {
        "iso_weekday": 5,
        "hour": 14,
        "centers": 984,
        "classes": 174627,
        "effective_attendances": 585175,
        "offered_places": 2175156,
        "cancellations_with_refund": 226823,
        "absences_without_refund": 22625
      },
      {
        "iso_weekday": 5,
        "hour": 15,
        "centers": 997,
        "classes": 150916,
        "effective_attendances": 469492,
        "offered_places": 1632725,
        "cancellations_with_refund": 204495,
        "absences_without_refund": 21266
      },
      {
        "iso_weekday": 5,
        "hour": 16,
        "centers": 1535,
        "classes": 256480,
        "effective_attendances": 1016004,
        "offered_places": 2735078,
        "cancellations_with_refund": 524559,
        "absences_without_refund": 53550
      },
      {
        "iso_weekday": 5,
        "hour": 17,
        "centers": 1956,
        "classes": 469512,
        "effective_attendances": 2375378,
        "offered_places": 5100273,
        "cancellations_with_refund": 1323359,
        "absences_without_refund": 120282
      },
      {
        "iso_weekday": 5,
        "hour": 18,
        "centers": 2000,
        "classes": 510929,
        "effective_attendances": 2702967,
        "offered_places": 5739045,
        "cancellations_with_refund": 1528127,
        "absences_without_refund": 138792
      },
      {
        "iso_weekday": 5,
        "hour": 19,
        "centers": 1918,
        "classes": 453427,
        "effective_attendances": 2192611,
        "offered_places": 5208440,
        "cancellations_with_refund": 1252731,
        "absences_without_refund": 113388
      },
      {
        "iso_weekday": 5,
        "hour": 20,
        "centers": 1571,
        "classes": 262194,
        "effective_attendances": 908129,
        "offered_places": 2992490,
        "cancellations_with_refund": 531496,
        "absences_without_refund": 46694
      },
      {
        "iso_weekday": 5,
        "hour": 21,
        "centers": 782,
        "classes": 63556,
        "effective_attendances": 103579,
        "offered_places": 727477,
        "cancellations_with_refund": 57825,
        "absences_without_refund": 5099
      },
      {
        "iso_weekday": 5,
        "hour": 22,
        "centers": 145,
        "classes": 9449,
        "effective_attendances": 11245,
        "offered_places": 120436,
        "cancellations_with_refund": 817,
        "absences_without_refund": 26
      },
      {
        "iso_weekday": 5,
        "hour": 23,
        "centers": 46,
        "classes": 3975,
        "effective_attendances": 1786,
        "offered_places": 74489,
        "cancellations_with_refund": 234,
        "absences_without_refund": 4
      },
      {
        "iso_weekday": 6,
        "hour": 6,
        "centers": 69,
        "classes": 5489,
        "effective_attendances": 1852,
        "offered_places": 70262,
        "cancellations_with_refund": 367,
        "absences_without_refund": 16
      },
      {
        "iso_weekday": 6,
        "hour": 7,
        "centers": 280,
        "classes": 12015,
        "effective_attendances": 21603,
        "offered_places": 199149,
        "cancellations_with_refund": 5495,
        "absences_without_refund": 622
      },
      {
        "iso_weekday": 6,
        "hour": 8,
        "centers": 746,
        "classes": 48973,
        "effective_attendances": 246867,
        "offered_places": 612419,
        "cancellations_with_refund": 119249,
        "absences_without_refund": 14134
      },
      {
        "iso_weekday": 6,
        "hour": 9,
        "centers": 1468,
        "classes": 200212,
        "effective_attendances": 1376163,
        "offered_places": 3847150,
        "cancellations_with_refund": 703353,
        "absences_without_refund": 77242
      },
      {
        "iso_weekday": 6,
        "hour": 10,
        "centers": 1657,
        "classes": 314890,
        "effective_attendances": 2103281,
        "offered_places": 4069281,
        "cancellations_with_refund": 1103135,
        "absences_without_refund": 115660
      },
      {
        "iso_weekday": 6,
        "hour": 11,
        "centers": 1429,
        "classes": 232705,
        "effective_attendances": 1294316,
        "offered_places": 2895984,
        "cancellations_with_refund": 667232,
        "absences_without_refund": 63742
      },
      {
        "iso_weekday": 6,
        "hour": 12,
        "centers": 1073,
        "classes": 119415,
        "effective_attendances": 454976,
        "offered_places": 1404787,
        "cancellations_with_refund": 237606,
        "absences_without_refund": 19659
      },
      {
        "iso_weekday": 6,
        "hour": 13,
        "centers": 547,
        "classes": 41928,
        "effective_attendances": 89641,
        "offered_places": 460295,
        "cancellations_with_refund": 44271,
        "absences_without_refund": 3851
      },
      {
        "iso_weekday": 6,
        "hour": 14,
        "centers": 267,
        "classes": 16508,
        "effective_attendances": 10392,
        "offered_places": 175102,
        "cancellations_with_refund": 1678,
        "absences_without_refund": 191
      },
      {
        "iso_weekday": 6,
        "hour": 15,
        "centers": 165,
        "classes": 14263,
        "effective_attendances": 4768,
        "offered_places": 138360,
        "cancellations_with_refund": 939,
        "absences_without_refund": 55
      },
      {
        "iso_weekday": 6,
        "hour": 16,
        "centers": 252,
        "classes": 16395,
        "effective_attendances": 7962,
        "offered_places": 152161,
        "cancellations_with_refund": 2120,
        "absences_without_refund": 200
      },
      {
        "iso_weekday": 6,
        "hour": 17,
        "centers": 319,
        "classes": 18456,
        "effective_attendances": 15816,
        "offered_places": 173315,
        "cancellations_with_refund": 6397,
        "absences_without_refund": 395
      },
      {
        "iso_weekday": 6,
        "hour": 18,
        "centers": 296,
        "classes": 17409,
        "effective_attendances": 20530,
        "offered_places": 176167,
        "cancellations_with_refund": 8425,
        "absences_without_refund": 660
      },
      {
        "iso_weekday": 6,
        "hour": 19,
        "centers": 230,
        "classes": 15738,
        "effective_attendances": 8391,
        "offered_places": 147644,
        "cancellations_with_refund": 1819,
        "absences_without_refund": 226
      },
      {
        "iso_weekday": 6,
        "hour": 20,
        "centers": 193,
        "classes": 12649,
        "effective_attendances": 5798,
        "offered_places": 107450,
        "cancellations_with_refund": 950,
        "absences_without_refund": 65
      },
      {
        "iso_weekday": 6,
        "hour": 21,
        "centers": 140,
        "classes": 8944,
        "effective_attendances": 4255,
        "offered_places": 88242,
        "cancellations_with_refund": 506,
        "absences_without_refund": 14
      },
      {
        "iso_weekday": 6,
        "hour": 22,
        "centers": 92,
        "classes": 6461,
        "effective_attendances": 10615,
        "offered_places": 84300,
        "cancellations_with_refund": 389,
        "absences_without_refund": 15
      },
      {
        "iso_weekday": 6,
        "hour": 23,
        "centers": 39,
        "classes": 3159,
        "effective_attendances": 1343,
        "offered_places": 54140,
        "cancellations_with_refund": 89,
        "absences_without_refund": 4
      },
      {
        "iso_weekday": 7,
        "hour": 6,
        "centers": 39,
        "classes": 4746,
        "effective_attendances": 701,
        "offered_places": 51069,
        "cancellations_with_refund": 254,
        "absences_without_refund": 13
      },
      {
        "iso_weekday": 7,
        "hour": 7,
        "centers": 157,
        "classes": 9009,
        "effective_attendances": 4909,
        "offered_places": 166738,
        "cancellations_with_refund": 489,
        "absences_without_refund": 28
      },
      {
        "iso_weekday": 7,
        "hour": 8,
        "centers": 232,
        "classes": 13178,
        "effective_attendances": 14246,
        "offered_places": 137964,
        "cancellations_with_refund": 5831,
        "absences_without_refund": 442
      },
      {
        "iso_weekday": 7,
        "hour": 9,
        "centers": 458,
        "classes": 31164,
        "effective_attendances": 133460,
        "offered_places": 725499,
        "cancellations_with_refund": 61318,
        "absences_without_refund": 5837
      },
      {
        "iso_weekday": 7,
        "hour": 10,
        "centers": 611,
        "classes": 50335,
        "effective_attendances": 232949,
        "offered_places": 706200,
        "cancellations_with_refund": 137878,
        "absences_without_refund": 15579
      },
      {
        "iso_weekday": 7,
        "hour": 11,
        "centers": 516,
        "classes": 47134,
        "effective_attendances": 197152,
        "offered_places": 536175,
        "cancellations_with_refund": 114065,
        "absences_without_refund": 12804
      },
      {
        "iso_weekday": 7,
        "hour": 12,
        "centers": 374,
        "classes": 31129,
        "effective_attendances": 81078,
        "offered_places": 341265,
        "cancellations_with_refund": 48334,
        "absences_without_refund": 4117
      },
      {
        "iso_weekday": 7,
        "hour": 13,
        "centers": 210,
        "classes": 19858,
        "effective_attendances": 24134,
        "offered_places": 192399,
        "cancellations_with_refund": 13576,
        "absences_without_refund": 733
      },
      {
        "iso_weekday": 7,
        "hour": 14,
        "centers": 132,
        "classes": 12830,
        "effective_attendances": 2918,
        "offered_places": 114484,
        "cancellations_with_refund": 355,
        "absences_without_refund": 24
      },
      {
        "iso_weekday": 7,
        "hour": 15,
        "centers": 115,
        "classes": 11326,
        "effective_attendances": 2243,
        "offered_places": 105550,
        "cancellations_with_refund": 471,
        "absences_without_refund": 28
      },
      {
        "iso_weekday": 7,
        "hour": 16,
        "centers": 139,
        "classes": 13347,
        "effective_attendances": 3736,
        "offered_places": 113657,
        "cancellations_with_refund": 940,
        "absences_without_refund": 78
      },
      {
        "iso_weekday": 7,
        "hour": 17,
        "centers": 148,
        "classes": 13882,
        "effective_attendances": 5645,
        "offered_places": 119461,
        "cancellations_with_refund": 1230,
        "absences_without_refund": 98
      },
      {
        "iso_weekday": 7,
        "hour": 18,
        "centers": 164,
        "classes": 13188,
        "effective_attendances": 7477,
        "offered_places": 122714,
        "cancellations_with_refund": 1357,
        "absences_without_refund": 99
      },
      {
        "iso_weekday": 7,
        "hour": 19,
        "centers": 139,
        "classes": 13377,
        "effective_attendances": 6937,
        "offered_places": 118148,
        "cancellations_with_refund": 1357,
        "absences_without_refund": 179
      },
      {
        "iso_weekday": 7,
        "hour": 20,
        "centers": 125,
        "classes": 11521,
        "effective_attendances": 4781,
        "offered_places": 101377,
        "cancellations_with_refund": 732,
        "absences_without_refund": 64
      },
      {
        "iso_weekday": 7,
        "hour": 21,
        "centers": 81,
        "classes": 8413,
        "effective_attendances": 2136,
        "offered_places": 88341,
        "cancellations_with_refund": 487,
        "absences_without_refund": 5
      },
      {
        "iso_weekday": 7,
        "hour": 22,
        "centers": 63,
        "classes": 6101,
        "effective_attendances": 4361,
        "offered_places": 79659,
        "cancellations_with_refund": 243,
        "absences_without_refund": 12
      },
      {
        "iso_weekday": 7,
        "hour": 23,
        "centers": 23,
        "classes": 2889,
        "effective_attendances": 796,
        "offered_places": 49450,
        "cancellations_with_refund": 59,
        "absences_without_refund": 3
      }
    ],
    "by_month": [
      {
        "year": 2019,
        "month": 1,
        "centers": 212,
        "classes": 60718,
        "effective_attendances": 236919,
        "offered_places": 682698,
        "cancellations_with_refund": 84938,
        "absences_without_refund": 6107
      },
      {
        "year": 2019,
        "month": 2,
        "centers": 214,
        "classes": 58282,
        "effective_attendances": 247184,
        "offered_places": 658287,
        "cancellations_with_refund": 84518,
        "absences_without_refund": 6369
      },
      {
        "year": 2019,
        "month": 3,
        "centers": 223,
        "classes": 63051,
        "effective_attendances": 272618,
        "offered_places": 716045,
        "cancellations_with_refund": 92450,
        "absences_without_refund": 7089
      },
      {
        "year": 2019,
        "month": 4,
        "centers": 239,
        "classes": 63795,
        "effective_attendances": 275337,
        "offered_places": 721734,
        "cancellations_with_refund": 98293,
        "absences_without_refund": 7860
      },
      {
        "year": 2019,
        "month": 5,
        "centers": 247,
        "classes": 71445,
        "effective_attendances": 300427,
        "offered_places": 801890,
        "cancellations_with_refund": 105704,
        "absences_without_refund": 8081
      },
      {
        "year": 2019,
        "month": 6,
        "centers": 253,
        "classes": 67601,
        "effective_attendances": 279941,
        "offered_places": 759826,
        "cancellations_with_refund": 103322,
        "absences_without_refund": 8009
      },
      {
        "year": 2019,
        "month": 7,
        "centers": 259,
        "classes": 75671,
        "effective_attendances": 303510,
        "offered_places": 858641,
        "cancellations_with_refund": 109987,
        "absences_without_refund": 8537
      },
      {
        "year": 2019,
        "month": 8,
        "centers": 274,
        "classes": 65759,
        "effective_attendances": 237770,
        "offered_places": 751107,
        "cancellations_with_refund": 86253,
        "absences_without_refund": 6775
      },
      {
        "year": 2019,
        "month": 9,
        "centers": 297,
        "classes": 79490,
        "effective_attendances": 325428,
        "offered_places": 904279,
        "cancellations_with_refund": 115386,
        "absences_without_refund": 9552
      },
      {
        "year": 2019,
        "month": 10,
        "centers": 304,
        "classes": 93771,
        "effective_attendances": 402309,
        "offered_places": 1057151,
        "cancellations_with_refund": 146069,
        "absences_without_refund": 12586
      },
      {
        "year": 2019,
        "month": 11,
        "centers": 313,
        "classes": 87362,
        "effective_attendances": 374665,
        "offered_places": 985279,
        "cancellations_with_refund": 134429,
        "absences_without_refund": 12069
      },
      {
        "year": 2019,
        "month": 12,
        "centers": 323,
        "classes": 81089,
        "effective_attendances": 328751,
        "offered_places": 923633,
        "cancellations_with_refund": 135001,
        "absences_without_refund": 12033
      },
      {
        "year": 2020,
        "month": 1,
        "centers": 331,
        "classes": 95912,
        "effective_attendances": 397217,
        "offered_places": 1079899,
        "cancellations_with_refund": 147067,
        "absences_without_refund": 12376
      },
      {
        "year": 2020,
        "month": 2,
        "centers": 344,
        "classes": 95081,
        "effective_attendances": 420319,
        "offered_places": 2074886,
        "cancellations_with_refund": 149191,
        "absences_without_refund": 12080
      },
      {
        "year": 2020,
        "month": 3,
        "centers": 352,
        "classes": 58532,
        "effective_attendances": 254063,
        "offered_places": 876128,
        "cancellations_with_refund": 85456,
        "absences_without_refund": 6708
      },
      {
        "year": 2020,
        "month": 4,
        "centers": 229,
        "classes": 12838,
        "effective_attendances": 69582,
        "offered_places": 525230,
        "cancellations_with_refund": 4805,
        "absences_without_refund": 657
      },
      {
        "year": 2020,
        "month": 5,
        "centers": 345,
        "classes": 32738,
        "effective_attendances": 77796,
        "offered_places": 547705,
        "cancellations_with_refund": 15970,
        "absences_without_refund": 1109
      },
      {
        "year": 2020,
        "month": 6,
        "centers": 424,
        "classes": 104963,
        "effective_attendances": 459751,
        "offered_places": 980206,
        "cancellations_with_refund": 173970,
        "absences_without_refund": 8530
      },
      {
        "year": 2020,
        "month": 7,
        "centers": 430,
        "classes": 125903,
        "effective_attendances": 552086,
        "offered_places": 1219215,
        "cancellations_with_refund": 217537,
        "absences_without_refund": 13572
      },
      {
        "year": 2020,
        "month": 8,
        "centers": 457,
        "classes": 112701,
        "effective_attendances": 470248,
        "offered_places": 1075243,
        "cancellations_with_refund": 184736,
        "absences_without_refund": 10976
      },
      {
        "year": 2020,
        "month": 9,
        "centers": 485,
        "classes": 137015,
        "effective_attendances": 620034,
        "offered_places": 1316909,
        "cancellations_with_refund": 248136,
        "absences_without_refund": 14967
      },
      {
        "year": 2020,
        "month": 10,
        "centers": 501,
        "classes": 144801,
        "effective_attendances": 681667,
        "offered_places": 1393466,
        "cancellations_with_refund": 282253,
        "absences_without_refund": 19583
      },
      {
        "year": 2020,
        "month": 11,
        "centers": 518,
        "classes": 133331,
        "effective_attendances": 607518,
        "offered_places": 1288753,
        "cancellations_with_refund": 242053,
        "absences_without_refund": 16810
      },
      {
        "year": 2020,
        "month": 12,
        "centers": 532,
        "classes": 139781,
        "effective_attendances": 629776,
        "offered_places": 1331202,
        "cancellations_with_refund": 281781,
        "absences_without_refund": 21161
      },
      {
        "year": 2021,
        "month": 1,
        "centers": 550,
        "classes": 117353,
        "effective_attendances": 495560,
        "offered_places": 1146694,
        "cancellations_with_refund": 231561,
        "absences_without_refund": 16983
      },
      {
        "year": 2021,
        "month": 2,
        "centers": 530,
        "classes": 109260,
        "effective_attendances": 504426,
        "offered_places": 1121165,
        "cancellations_with_refund": 194539,
        "absences_without_refund": 14832
      },
      {
        "year": 2021,
        "month": 3,
        "centers": 583,
        "classes": 175181,
        "effective_attendances": 833370,
        "offered_places": 1688743,
        "cancellations_with_refund": 339122,
        "absences_without_refund": 26180
      },
      {
        "year": 2021,
        "month": 4,
        "centers": 603,
        "classes": 173827,
        "effective_attendances": 882270,
        "offered_places": 1702685,
        "cancellations_with_refund": 347835,
        "absences_without_refund": 27936
      },
      {
        "year": 2021,
        "month": 5,
        "centers": 624,
        "classes": 187936,
        "effective_attendances": 952186,
        "offered_places": 1888334,
        "cancellations_with_refund": 377166,
        "absences_without_refund": 31962
      },
      {
        "year": 2021,
        "month": 6,
        "centers": 634,
        "classes": 196759,
        "effective_attendances": 952236,
        "offered_places": 1999601,
        "cancellations_with_refund": 413395,
        "absences_without_refund": 36725
      },
      {
        "year": 2021,
        "month": 7,
        "centers": 648,
        "classes": 193613,
        "effective_attendances": 832699,
        "offered_places": 1987385,
        "cancellations_with_refund": 389919,
        "absences_without_refund": 36093
      },
      {
        "year": 2021,
        "month": 8,
        "centers": 664,
        "classes": 171874,
        "effective_attendances": 690584,
        "offered_places": 1772827,
        "cancellations_with_refund": 292829,
        "absences_without_refund": 27707
      },
      {
        "year": 2021,
        "month": 9,
        "centers": 716,
        "classes": 213275,
        "effective_attendances": 981439,
        "offered_places": 2241364,
        "cancellations_with_refund": 406489,
        "absences_without_refund": 37495
      },
      {
        "year": 2021,
        "month": 10,
        "centers": 759,
        "classes": 215851,
        "effective_attendances": 1009624,
        "offered_places": 2316524,
        "cancellations_with_refund": 421920,
        "absences_without_refund": 41146
      },
      {
        "year": 2021,
        "month": 11,
        "centers": 772,
        "classes": 235918,
        "effective_attendances": 1086113,
        "offered_places": 2553549,
        "cancellations_with_refund": 439660,
        "absences_without_refund": 44164
      },
      {
        "year": 2021,
        "month": 12,
        "centers": 796,
        "classes": 221976,
        "effective_attendances": 864554,
        "offered_places": 2400405,
        "cancellations_with_refund": 436411,
        "absences_without_refund": 43122
      },
      {
        "year": 2022,
        "month": 1,
        "centers": 836,
        "classes": 235564,
        "effective_attendances": 926528,
        "offered_places": 2511883,
        "cancellations_with_refund": 388950,
        "absences_without_refund": 37003
      },
      {
        "year": 2022,
        "month": 2,
        "centers": 841,
        "classes": 239421,
        "effective_attendances": 1090585,
        "offered_places": 2570843,
        "cancellations_with_refund": 411914,
        "absences_without_refund": 38848
      },
      {
        "year": 2022,
        "month": 3,
        "centers": 873,
        "classes": 283332,
        "effective_attendances": 1325540,
        "offered_places": 3076345,
        "cancellations_with_refund": 517736,
        "absences_without_refund": 49492
      },
      {
        "year": 2022,
        "month": 4,
        "centers": 884,
        "classes": 241692,
        "effective_attendances": 1116646,
        "offered_places": 2662548,
        "cancellations_with_refund": 471381,
        "absences_without_refund": 44982
      },
      {
        "year": 2022,
        "month": 5,
        "centers": 896,
        "classes": 272839,
        "effective_attendances": 1260068,
        "offered_places": 3008783,
        "cancellations_with_refund": 495293,
        "absences_without_refund": 46659
      },
      {
        "year": 2022,
        "month": 6,
        "centers": 918,
        "classes": 277869,
        "effective_attendances": 1224220,
        "offered_places": 3075927,
        "cancellations_with_refund": 516893,
        "absences_without_refund": 49696
      },
      {
        "year": 2022,
        "month": 7,
        "centers": 930,
        "classes": 261599,
        "effective_attendances": 1073538,
        "offered_places": 2900605,
        "cancellations_with_refund": 450128,
        "absences_without_refund": 44139
      },
      {
        "year": 2022,
        "month": 8,
        "centers": 940,
        "classes": 243182,
        "effective_attendances": 943184,
        "offered_places": 2706993,
        "cancellations_with_refund": 376322,
        "absences_without_refund": 35863
      },
      {
        "year": 2022,
        "month": 9,
        "centers": 1003,
        "classes": 292223,
        "effective_attendances": 1256849,
        "offered_places": 3223118,
        "cancellations_with_refund": 498356,
        "absences_without_refund": 46409
      },
      {
        "year": 2022,
        "month": 10,
        "centers": 1032,
        "classes": 294772,
        "effective_attendances": 1359859,
        "offered_places": 3268580,
        "cancellations_with_refund": 530096,
        "absences_without_refund": 51157
      },
      {
        "year": 2022,
        "month": 11,
        "centers": 1048,
        "classes": 313220,
        "effective_attendances": 1435596,
        "offered_places": 3461517,
        "cancellations_with_refund": 562816,
        "absences_without_refund": 56783
      },
      {
        "year": 2022,
        "month": 12,
        "centers": 1066,
        "classes": 291967,
        "effective_attendances": 1175541,
        "offered_places": 3264094,
        "cancellations_with_refund": 554812,
        "absences_without_refund": 56815
      },
      {
        "year": 2023,
        "month": 1,
        "centers": 1116,
        "classes": 321808,
        "effective_attendances": 1412839,
        "offered_places": 3601365,
        "cancellations_with_refund": 545757,
        "absences_without_refund": 54762
      },
      {
        "year": 2023,
        "month": 2,
        "centers": 1130,
        "classes": 312564,
        "effective_attendances": 1403705,
        "offered_places": 3515945,
        "cancellations_with_refund": 545705,
        "absences_without_refund": 54647
      },
      {
        "year": 2023,
        "month": 3,
        "centers": 1145,
        "classes": 368771,
        "effective_attendances": 1700996,
        "offered_places": 4136098,
        "cancellations_with_refund": 637088,
        "absences_without_refund": 62608
      },
      {
        "year": 2023,
        "month": 4,
        "centers": 1163,
        "classes": 304677,
        "effective_attendances": 1404688,
        "offered_places": 3422485,
        "cancellations_with_refund": 540416,
        "absences_without_refund": 53298
      },
      {
        "year": 2023,
        "month": 5,
        "centers": 1197,
        "classes": 372396,
        "effective_attendances": 1729010,
        "offered_places": 4168027,
        "cancellations_with_refund": 649837,
        "absences_without_refund": 64947
      },
      {
        "year": 2023,
        "month": 6,
        "centers": 1217,
        "classes": 373174,
        "effective_attendances": 1659707,
        "offered_places": 4118881,
        "cancellations_with_refund": 663228,
        "absences_without_refund": 66076
      },
      {
        "year": 2023,
        "month": 7,
        "centers": 1238,
        "classes": 348483,
        "effective_attendances": 1476816,
        "offered_places": 3861754,
        "cancellations_with_refund": 582132,
        "absences_without_refund": 60094
      },
      {
        "year": 2023,
        "month": 8,
        "centers": 1220,
        "classes": 318324,
        "effective_attendances": 1246114,
        "offered_places": 3536775,
        "cancellations_with_refund": 502313,
        "absences_without_refund": 49683
      },
      {
        "year": 2023,
        "month": 9,
        "centers": 1305,
        "classes": 371621,
        "effective_attendances": 1655928,
        "offered_places": 4138460,
        "cancellations_with_refund": 638984,
        "absences_without_refund": 61451
      },
      {
        "year": 2023,
        "month": 10,
        "centers": 1345,
        "classes": 397954,
        "effective_attendances": 1905198,
        "offered_places": 4448376,
        "cancellations_with_refund": 701519,
        "absences_without_refund": 72689
      },
      {
        "year": 2023,
        "month": 11,
        "centers": 1368,
        "classes": 407660,
        "effective_attendances": 1928722,
        "offered_places": 4553629,
        "cancellations_with_refund": 729355,
        "absences_without_refund": 76182
      },
      {
        "year": 2023,
        "month": 12,
        "centers": 1380,
        "classes": 350395,
        "effective_attendances": 1473945,
        "offered_places": 3926715,
        "cancellations_with_refund": 674101,
        "absences_without_refund": 72717
      },
      {
        "year": 2024,
        "month": 1,
        "centers": 1449,
        "classes": 429789,
        "effective_attendances": 1937599,
        "offered_places": 4784676,
        "cancellations_with_refund": 732370,
        "absences_without_refund": 74074
      },
      {
        "year": 2024,
        "month": 2,
        "centers": 1472,
        "classes": 422105,
        "effective_attendances": 2026822,
        "offered_places": 4703433,
        "cancellations_with_refund": 754505,
        "absences_without_refund": 77627
      },
      {
        "year": 2024,
        "month": 3,
        "centers": 1497,
        "classes": 405425,
        "effective_attendances": 1951927,
        "offered_places": 4533781,
        "cancellations_with_refund": 774994,
        "absences_without_refund": 77648
      },
      {
        "year": 2024,
        "month": 4,
        "centers": 1533,
        "classes": 468451,
        "effective_attendances": 2276821,
        "offered_places": 5157426,
        "cancellations_with_refund": 859252,
        "absences_without_refund": 85985
      },
      {
        "year": 2024,
        "month": 5,
        "centers": 1567,
        "classes": 474887,
        "effective_attendances": 2269214,
        "offered_places": 5288529,
        "cancellations_with_refund": 886949,
        "absences_without_refund": 85982
      },
      {
        "year": 2024,
        "month": 6,
        "centers": 1592,
        "classes": 443647,
        "effective_attendances": 2058284,
        "offered_places": 4935645,
        "cancellations_with_refund": 840362,
        "absences_without_refund": 84952
      },
      {
        "year": 2024,
        "month": 7,
        "centers": 1604,
        "classes": 483081,
        "effective_attendances": 2129993,
        "offered_places": 5360817,
        "cancellations_with_refund": 890314,
        "absences_without_refund": 90102
      },
      {
        "year": 2024,
        "month": 8,
        "centers": 1604,
        "classes": 393587,
        "effective_attendances": 1567266,
        "offered_places": 4409717,
        "cancellations_with_refund": 640940,
        "absences_without_refund": 64976
      },
      {
        "year": 2024,
        "month": 9,
        "centers": 1748,
        "classes": 485743,
        "effective_attendances": 2250536,
        "offered_places": 5400147,
        "cancellations_with_refund": 871977,
        "absences_without_refund": 84413
      },
      {
        "year": 2024,
        "month": 10,
        "centers": 1793,
        "classes": 565001,
        "effective_attendances": 2720507,
        "offered_places": 6297758,
        "cancellations_with_refund": 1070226,
        "absences_without_refund": 109765
      },
      {
        "year": 2024,
        "month": 11,
        "centers": 1823,
        "classes": 513830,
        "effective_attendances": 2458287,
        "offered_places": 5739113,
        "cancellations_with_refund": 935904,
        "absences_without_refund": 98875
      },
      {
        "year": 2024,
        "month": 12,
        "centers": 1863,
        "classes": 479255,
        "effective_attendances": 2128378,
        "offered_places": 5408330,
        "cancellations_with_refund": 942515,
        "absences_without_refund": 104460
      },
      {
        "year": 2025,
        "month": 1,
        "centers": 1917,
        "classes": 555568,
        "effective_attendances": 2577291,
        "offered_places": 6181943,
        "cancellations_with_refund": 1010797,
        "absences_without_refund": 104925
      },
      {
        "year": 2025,
        "month": 2,
        "centers": 1959,
        "classes": 538516,
        "effective_attendances": 2643290,
        "offered_places": 6007074,
        "cancellations_with_refund": 974279,
        "absences_without_refund": 102851
      },
      {
        "year": 2025,
        "month": 3,
        "centers": 2010,
        "classes": 577792,
        "effective_attendances": 2866254,
        "offered_places": 6461807,
        "cancellations_with_refund": 1084270,
        "absences_without_refund": 114245
      },
      {
        "year": 2025,
        "month": 4,
        "centers": 2047,
        "classes": 565157,
        "effective_attendances": 2774481,
        "offered_places": 6304771,
        "cancellations_with_refund": 1118434,
        "absences_without_refund": 117324
      },
      {
        "year": 2025,
        "month": 5,
        "centers": 2079,
        "classes": 594012,
        "effective_attendances": 2861931,
        "offered_places": 6589731,
        "cancellations_with_refund": 1121663,
        "absences_without_refund": 116603
      },
      {
        "year": 2025,
        "month": 6,
        "centers": 2110,
        "classes": 589773,
        "effective_attendances": 2734687,
        "offered_places": 6521309,
        "cancellations_with_refund": 1111586,
        "absences_without_refund": 116656
      },
      {
        "year": 2025,
        "month": 7,
        "centers": 2114,
        "classes": 621370,
        "effective_attendances": 2747333,
        "offered_places": 6913835,
        "cancellations_with_refund": 1143311,
        "absences_without_refund": 116377
      },
      {
        "year": 2025,
        "month": 8,
        "centers": 2000,
        "classes": 471190,
        "effective_attendances": 1961190,
        "offered_places": 5580759,
        "cancellations_with_refund": 809841,
        "absences_without_refund": 81067
      },
      {
        "year": 2025,
        "month": 9,
        "centers": 2150,
        "classes": 626197,
        "effective_attendances": 3010574,
        "offered_places": 6981857,
        "cancellations_with_refund": 1182487,
        "absences_without_refund": 115315
      },
      {
        "year": 2025,
        "month": 10,
        "centers": 2147,
        "classes": 666296,
        "effective_attendances": 3341272,
        "offered_places": 7466122,
        "cancellations_with_refund": 1317582,
        "absences_without_refund": 134508
      },
      {
        "year": 2025,
        "month": 11,
        "centers": 2144,
        "classes": 607714,
        "effective_attendances": 3019712,
        "offered_places": 6833647,
        "cancellations_with_refund": 1170865,
        "absences_without_refund": 128371
      },
      {
        "year": 2025,
        "month": 12,
        "centers": 2145,
        "classes": 587099,
        "effective_attendances": 2694282,
        "offered_places": 6677585,
        "cancellations_with_refund": 1235953,
        "absences_without_refund": 138837
      },
      {
        "year": 2026,
        "month": 1,
        "centers": 2144,
        "classes": 596777,
        "effective_attendances": 2928033,
        "offered_places": 6839738,
        "cancellations_with_refund": 1179879,
        "absences_without_refund": 127011
      },
      {
        "year": 2026,
        "month": 2,
        "centers": 2141,
        "classes": 604192,
        "effective_attendances": 3103142,
        "offered_places": 6876930,
        "cancellations_with_refund": 1188642,
        "absences_without_refund": 125641
      },
      {
        "year": 2026,
        "month": 3,
        "centers": 2137,
        "classes": 667380,
        "effective_attendances": 3398672,
        "offered_places": 7611809,
        "cancellations_with_refund": 1321537,
        "absences_without_refund": 140184
      },
      {
        "year": 2026,
        "month": 4,
        "centers": 2142,
        "classes": 617312,
        "effective_attendances": 3153575,
        "offered_places": 7066818,
        "cancellations_with_refund": 1234533,
        "absences_without_refund": 127872
      },
      {
        "year": 2026,
        "month": 5,
        "centers": 2139,
        "classes": 622428,
        "effective_attendances": 3149713,
        "offered_places": 7142366,
        "cancellations_with_refund": 1212571,
        "absences_without_refund": 127331
      },
      {
        "year": 2026,
        "month": 6,
        "centers": 2136,
        "classes": 653224,
        "effective_attendances": 3186092,
        "offered_places": 7487673,
        "cancellations_with_refund": 1291037,
        "absences_without_refund": 135521
      },
      {
        "year": 2026,
        "month": 7,
        "centers": 2098,
        "classes": 318664,
        "effective_attendances": 1458387,
        "offered_places": 3641633,
        "cancellations_with_refund": 619950,
        "absences_without_refund": 62041
      }
    ],
    "by_weekday": [
      {
        "iso_weekday": 1,
        "centers": 2165,
        "classes": 5575746,
        "effective_attendances": 27609946,
        "offered_places": 61629710,
        "cancellations_with_refund": 8278693,
        "absences_without_refund": 919133
      },
      {
        "iso_weekday": 2,
        "centers": 2164,
        "classes": 5657269,
        "effective_attendances": 27140584,
        "offered_places": 62316191,
        "cancellations_with_refund": 9555852,
        "absences_without_refund": 966496
      },
      {
        "iso_weekday": 3,
        "centers": 2169,
        "classes": 5645987,
        "effective_attendances": 26381327,
        "offered_places": 62247197,
        "cancellations_with_refund": 10715589,
        "absences_without_refund": 1018633
      },
      {
        "iso_weekday": 4,
        "centers": 2166,
        "classes": 5494759,
        "effective_attendances": 24882379,
        "offered_places": 60518468,
        "cancellations_with_refund": 11097097,
        "absences_without_refund": 1067196
      },
      {
        "iso_weekday": 5,
        "centers": 2139,
        "classes": 4616919,
        "effective_attendances": 19058461,
        "offered_places": 51219586,
        "cancellations_with_refund": 9394415,
        "absences_without_refund": 898116
      },
      {
        "iso_weekday": 6,
        "centers": 1786,
        "classes": 1108530,
        "effective_attendances": 5678863,
        "offered_places": 14885298,
        "cancellations_with_refund": 2904140,
        "absences_without_refund": 296760
      },
      {
        "iso_weekday": 7,
        "centers": 875,
        "classes": 316212,
        "effective_attendances": 729784,
        "offered_places": 3898763,
        "cancellations_with_refund": 389022,
        "absences_without_refund": 40146
      }
    ],
    "center_peak_hour": [
      {
        "hour": 19,
        "centers": 733,
        "effective_attendances": 8283287
      },
      {
        "hour": 18,
        "centers": 553,
        "effective_attendances": 5667830
      },
      {
        "hour": 9,
        "centers": 359,
        "effective_attendances": 3689699
      },
      {
        "hour": 17,
        "centers": 140,
        "effective_attendances": 1171312
      },
      {
        "hour": 20,
        "centers": 133,
        "effective_attendances": 1141955
      },
      {
        "hour": 10,
        "centers": 132,
        "effective_attendances": 1396338
      },
      {
        "hour": 7,
        "centers": 39,
        "effective_attendances": 862691
      },
      {
        "hour": 8,
        "centers": 24,
        "effective_attendances": 191646
      }
    ],
    "low_attendance_by_hour_2025": [
      {
        "hour": 6,
        "centers": 268,
        "median_at_most_two_pct": 16.65,
        "median_empty_pct": 2.36,
        "median_attendances_per_class": 5.61
      },
      {
        "hour": 7,
        "centers": 1192,
        "median_at_most_two_pct": 15.71,
        "median_empty_pct": 1.9,
        "median_attendances_per_class": 5.74
      },
      {
        "hour": 8,
        "centers": 1485,
        "median_at_most_two_pct": 25.0,
        "median_empty_pct": 3.7,
        "median_attendances_per_class": 4.6
      },
      {
        "hour": 9,
        "centers": 1867,
        "median_at_most_two_pct": 14.29,
        "median_empty_pct": 2.15,
        "median_attendances_per_class": 6.0
      },
      {
        "hour": 10,
        "centers": 1764,
        "median_at_most_two_pct": 22.71,
        "median_empty_pct": 3.45,
        "median_attendances_per_class": 5.25
      },
      {
        "hour": 11,
        "centers": 1239,
        "median_at_most_two_pct": 39.09,
        "median_empty_pct": 6.35,
        "median_attendances_per_class": 3.84
      },
      {
        "hour": 12,
        "centers": 819,
        "median_at_most_two_pct": 59.46,
        "median_empty_pct": 8.33,
        "median_attendances_per_class": 2.49
      },
      {
        "hour": 13,
        "centers": 600,
        "median_at_most_two_pct": 48.08,
        "median_empty_pct": 6.41,
        "median_attendances_per_class": 2.93
      },
      {
        "hour": 14,
        "centers": 669,
        "median_at_most_two_pct": 32.49,
        "median_empty_pct": 3.81,
        "median_attendances_per_class": 4.02
      },
      {
        "hour": 15,
        "centers": 651,
        "median_at_most_two_pct": 33.33,
        "median_empty_pct": 4.91,
        "median_attendances_per_class": 3.99
      },
      {
        "hour": 16,
        "centers": 1244,
        "median_at_most_two_pct": 21.82,
        "median_empty_pct": 3.06,
        "median_attendances_per_class": 4.87
      },
      {
        "hour": 17,
        "centers": 1890,
        "median_at_most_two_pct": 11.61,
        "median_empty_pct": 1.69,
        "median_attendances_per_class": 6.29
      },
      {
        "hour": 18,
        "centers": 2017,
        "median_at_most_two_pct": 8.84,
        "median_empty_pct": 1.44,
        "median_attendances_per_class": 6.85
      },
      {
        "hour": 19,
        "centers": 2037,
        "median_at_most_two_pct": 8.28,
        "median_empty_pct": 1.63,
        "median_attendances_per_class": 7.06
      },
      {
        "hour": 20,
        "centers": 1834,
        "median_at_most_two_pct": 12.55,
        "median_empty_pct": 2.5,
        "median_attendances_per_class": 6.42
      },
      {
        "hour": 21,
        "centers": 811,
        "median_at_most_two_pct": 21.76,
        "median_empty_pct": 5.15,
        "median_attendances_per_class": 5.22
      }
    ],
    "low_attendance_sensitivity_2025": {
      "minimum_capacity": [
        {
          "places": 3,
          "centers": 2129,
          "classes": 5282246,
          "median_at_most_two_pct": 21.85
        },
        {
          "places": 5,
          "centers": 2094,
          "classes": 4938123,
          "median_at_most_two_pct": 18.29
        },
        {
          "places": 8,
          "centers": 1909,
          "classes": 4089085,
          "median_at_most_two_pct": 13.54
        },
        {
          "places": 10,
          "centers": 1706,
          "classes": 3421723,
          "median_at_most_two_pct": 11.5
        }
      ],
      "paired_noon_19h": [
        {
          "minimum_classes_each_hour": 10,
          "centers": 877,
          "median_difference_pp": 39.55,
          "centers_higher_at_noon_pct": 90.88
        },
        {
          "minimum_classes_each_hour": 20,
          "centers": 805,
          "median_difference_pp": 39.43,
          "centers_higher_at_noon_pct": 91.68
        },
        {
          "minimum_classes_each_hour": 40,
          "centers": 702,
          "median_difference_pp": 38.75,
          "centers_higher_at_noon_pct": 92.02
        },
        {
          "minimum_classes_each_hour": 80,
          "centers": 549,
          "median_difference_pp": 38.32,
          "centers_higher_at_noon_pct": 93.81
        }
      ],
      "paired_noon_19h_minimum_capacity": [
        {
          "places": 5,
          "centers": 805,
          "median_noon_at_most_two_pct": 59.46,
          "median_19h_at_most_two_pct": 12.27,
          "median_difference_pp": 39.43,
          "centers_higher_at_noon_pct": 91.68
        },
        {
          "places": 8,
          "centers": 635,
          "median_noon_at_most_two_pct": 54.71,
          "median_19h_at_most_two_pct": 7.44,
          "median_difference_pp": 38.87,
          "centers_higher_at_noon_pct": 90.71
        },
        {
          "places": 10,
          "centers": 519,
          "median_noon_at_most_two_pct": 51.92,
          "median_19h_at_most_two_pct": 5.84,
          "median_difference_pp": 38.32,
          "centers_higher_at_noon_pct": 90.75
        }
      ]
    }
  },
  "quality": {
    "suppressed_hours": 4,
    "suppressed_day_hours": 41,
    "suppressed_months": 0,
    "non_positive_capacity_classes": 159955,
    "effective_above_capacity_classes": 59887
  },
  "warnings": [
    "La hora de inicio ya representa la hora local del centro.",
    "La asistencia efectiva se infiere del estado final de las dos fechas; no usa lecturas de torno.",
    "Los nombres de disciplinas se conservan localmente, pero requieren normalización antes de compararlos públicamente.",
    "Las clases canceladas se conservan en SQL local y se excluyen de las series horarias principales."
  ],
  "findings": {
    "peak_hour_by_volume": 19,
    "peak_hour_effective_attendances": 19133605,
    "peak_hour_by_centers": 19,
    "centers_with_peak_at_19": 733,
    "monday_to_friday_attendance_change_pct": -31.0,
    "monday_to_friday_classes_change_pct": -17.2,
    "monday_attendances_per_class": 4.95,
    "friday_attendances_per_class": 4.13,
    "effective_attendance_pct": 69.5,
    "cancellation_with_refund_pct": 27.7,
    "absence_without_refund_pct": 2.8,
    "refund_share_of_non_attendance_pct": 91.0,
    "waitlist_notified_pct": 87.0,
    "waitlist_with_any_reservation_pct": 31.2,
    "waitlist_effective_attendance_pct": 20.6,
    "median_center_at_most_two_attendances_pct_2025": 18.29,
    "paired_noon_at_most_two_pct_2025": 59.46,
    "paired_19h_at_most_two_pct_2025": 12.27,
    "paired_noon_19h_difference_pp_2025": 39.43,
    "paired_centers_higher_at_noon_pct_2025": 91.68
  },
  "publication": {
    "version": "1.3",
    "date_published": "2026-07-17",
    "date_modified": "2026-07-18",
    "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/",
    "dataset_identifier": "observatorio-wodbuster-reservas-horarios-2026-v1.3",
    "articles": [
      {
        "id": "peak-hours",
        "title": "Las 19:00 son la hora punta del entrenamiento en España",
        "question": "¿A qué hora se concentra el entrenamiento?",
        "path": "articles/horas-punta.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/horas-punta/"
      },
      {
        "id": "monday-effect",
        "title": "Del lunes al viernes, la asistencia cae un 31 %",
        "question": "¿Existe un efecto lunes en los centros deportivos?",
        "path": "articles/efecto-lunes.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/efecto-lunes/"
      },
      {
        "id": "cancellations",
        "title": "Nueve de cada diez no asistencias recuperan el crédito",
        "question": "¿Cuántas reservas se cancelan a tiempo y cuántas pierden el crédito?",
        "path": "articles/cancelaciones.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/cancelaciones/"
      },
      {
        "id": "waiting-lists",
        "title": "Solo una de cada cinco entradas en lista termina en asistencia",
        "question": "¿Qué ocurre después de entrar en una lista de espera?",
        "path": "articles/listas-espera.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/listas-espera/"
      },
      {
        "id": "low-attendance-classes",
        "title": "Seis de cada diez clases de las 12:00 terminan con dos asistentes registrados o menos",
        "question": "¿Qué franjas concentran más clases con baja asistencia registrada?",
        "path": "articles/clases-baja-asistencia.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/clases-baja-asistencia/"
      },
      {
        "id": "peak-hours-regions",
        "title": "La hora punta se adelanta a las 18:00 en cinco comunidades",
        "question": "¿La hora punta es la misma en todas las comunidades?",
        "path": "articles/horas-punta-comunidades.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/horas-punta-comunidades/",
        "status": "validated"
      },
      {
        "id": "weekday-peak-shift",
        "title": "El viernes adelanta a las 18:00 la hora punta del entrenamiento",
        "question": "¿Cambia la hora punta a lo largo de la semana laborable?",
        "path": "articles/hora-punta-viernes.html",
        "canonical_url": "https://wodbuster.com/observatorio/reservas-horarios/hora-punta-viernes/",
        "status": "validated"
      }
    ]
  },
  "regional_peak_hours": {
    "definition": "Mediana del peso horario calculado primero dentro de cada centro y después dentro de cada comunidad.",
    "period": "2024-01-01/2025-12-31",
    "rules": {
      "minimum_classes_per_center_year": 100,
      "minimum_attendances_per_center_year": 500,
      "minimum_centers_per_community": 30,
      "maximum_largest_center_share_pct": 8.0
    },
    "sample": {
      "eligible_centers_2024": 1755,
      "eligible_centers_2025": 2130,
      "published_regions_2025": 10,
      "published_centers_2025": 1932
    },
    "regions_2025": [
      {
        "community": "Canarias",
        "centers": 135,
        "attendances": 1768784,
        "regional_peak_hour": 18,
        "median_center_peak_share_pct": 14.7,
        "centers_with_individual_peak_at_regional_hour_pct": 24.44,
        "median_morning_share_pct": 38.1,
        "median_evening_share_pct": 48.23,
        "median_evening_minus_morning_pp": 8.61,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 33,
            "centers_pct": 24.44
          },
          {
            "hour": 9,
            "centers": 31,
            "centers_pct": 22.96
          },
          {
            "hour": 17,
            "centers": 24,
            "centers_pct": 17.78
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 0.4
          },
          {
            "hour": 8,
            "share_pct": 5.74
          },
          {
            "hour": 9,
            "share_pct": 12.82
          },
          {
            "hour": 10,
            "share_pct": 7.7
          },
          {
            "hour": 11,
            "share_pct": 0.48
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 7.86
          },
          {
            "hour": 17,
            "share_pct": 14.19
          },
          {
            "hour": 18,
            "share_pct": 14.7
          },
          {
            "hour": 19,
            "share_pct": 13.05
          },
          {
            "hour": 20,
            "share_pct": 5.62
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 5.34
      },
      {
        "community": "Cataluña",
        "centers": 113,
        "attendances": 1783917,
        "regional_peak_hour": 18,
        "median_center_peak_share_pct": 16.39,
        "centers_with_individual_peak_at_regional_hour_pct": 35.4,
        "median_morning_share_pct": 31.88,
        "median_evening_share_pct": 52.88,
        "median_evening_minus_morning_pp": 20.01,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 40,
            "centers_pct": 35.4
          },
          {
            "hour": 19,
            "centers": 25,
            "centers_pct": 22.12
          },
          {
            "hour": 9,
            "centers": 21,
            "centers_pct": 18.58
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 4.53
          },
          {
            "hour": 8,
            "share_pct": 1.81
          },
          {
            "hour": 9,
            "share_pct": 11.63
          },
          {
            "hour": 10,
            "share_pct": 5.58
          },
          {
            "hour": 11,
            "share_pct": 1.04
          },
          {
            "hour": 12,
            "share_pct": 0.05
          },
          {
            "hour": 13,
            "share_pct": 0.13
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 2.93
          },
          {
            "hour": 16,
            "share_pct": 3.06
          },
          {
            "hour": 17,
            "share_pct": 12.62
          },
          {
            "hour": 18,
            "share_pct": 16.39
          },
          {
            "hour": 19,
            "share_pct": 14.45
          },
          {
            "hour": 20,
            "share_pct": 5.98
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 5.25
      },
      {
        "community": "Comunidad Valenciana",
        "centers": 346,
        "attendances": 5135021,
        "regional_peak_hour": 18,
        "median_center_peak_share_pct": 15.01,
        "centers_with_individual_peak_at_regional_hour_pct": 29.77,
        "median_morning_share_pct": 35.84,
        "median_evening_share_pct": 50.05,
        "median_evening_minus_morning_pp": 12.72,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 103,
            "centers_pct": 29.77
          },
          {
            "hour": 9,
            "centers": 78,
            "centers_pct": 22.54
          },
          {
            "hour": 19,
            "centers": 73,
            "centers_pct": 21.1
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 5.32
          },
          {
            "hour": 8,
            "share_pct": 6.15
          },
          {
            "hour": 9,
            "share_pct": 13.06
          },
          {
            "hour": 10,
            "share_pct": 5.28
          },
          {
            "hour": 11,
            "share_pct": 0.55
          },
          {
            "hour": 12,
            "share_pct": 0.01
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.47
          },
          {
            "hour": 15,
            "share_pct": 1.32
          },
          {
            "hour": 16,
            "share_pct": 2.37
          },
          {
            "hour": 17,
            "share_pct": 11.99
          },
          {
            "hour": 18,
            "share_pct": 15.01
          },
          {
            "hour": 19,
            "share_pct": 13.87
          },
          {
            "hour": 20,
            "share_pct": 7.23
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 1.64
      },
      {
        "community": "Islas Baleares",
        "centers": 78,
        "attendances": 907476,
        "regional_peak_hour": 18,
        "median_center_peak_share_pct": 18.27,
        "centers_with_individual_peak_at_regional_hour_pct": 38.46,
        "median_morning_share_pct": 34.88,
        "median_evening_share_pct": 53.21,
        "median_evening_minus_morning_pp": 16.5,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 30,
            "centers_pct": 38.46
          },
          {
            "hour": 17,
            "centers": 16,
            "centers_pct": 20.51
          },
          {
            "hour": 9,
            "centers": 12,
            "centers_pct": 15.38
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 4.2
          },
          {
            "hour": 8,
            "share_pct": 8.17
          },
          {
            "hour": 9,
            "share_pct": 12.33
          },
          {
            "hour": 10,
            "share_pct": 4.33
          },
          {
            "hour": 11,
            "share_pct": 0.11
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 8.92
          },
          {
            "hour": 17,
            "share_pct": 16.05
          },
          {
            "hour": 18,
            "share_pct": 18.27
          },
          {
            "hour": 19,
            "share_pct": 13.68
          },
          {
            "hour": 20,
            "share_pct": 2.58
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 4.46
      },
      {
        "community": "País Vasco",
        "centers": 40,
        "attendances": 502471,
        "regional_peak_hour": 18,
        "median_center_peak_share_pct": 13.61,
        "centers_with_individual_peak_at_regional_hour_pct": 30.0,
        "median_morning_share_pct": 34.21,
        "median_evening_share_pct": 43.01,
        "median_evening_minus_morning_pp": 8.63,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 12,
            "centers_pct": 30.0
          },
          {
            "hour": 19,
            "centers": 8,
            "centers_pct": 20.0
          },
          {
            "hour": 10,
            "centers": 7,
            "centers_pct": 17.5
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 0.06
          },
          {
            "hour": 8,
            "share_pct": 0.57
          },
          {
            "hour": 9,
            "share_pct": 6.06
          },
          {
            "hour": 10,
            "share_pct": 11.23
          },
          {
            "hour": 11,
            "share_pct": 4.41
          },
          {
            "hour": 12,
            "share_pct": 0.46
          },
          {
            "hour": 13,
            "share_pct": 0.06
          },
          {
            "hour": 14,
            "share_pct": 0.08
          },
          {
            "hour": 15,
            "share_pct": 1.26
          },
          {
            "hour": 16,
            "share_pct": 7.95
          },
          {
            "hour": 17,
            "share_pct": 11.62
          },
          {
            "hour": 18,
            "share_pct": 13.61
          },
          {
            "hour": 19,
            "share_pct": 11.24
          },
          {
            "hour": 20,
            "share_pct": 5.46
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 6.17
      },
      {
        "community": "Andalucía",
        "centers": 743,
        "attendances": 11523141,
        "regional_peak_hour": 19,
        "median_center_peak_share_pct": 15.37,
        "centers_with_individual_peak_at_regional_hour_pct": 32.3,
        "median_morning_share_pct": 36.13,
        "median_evening_share_pct": 52.12,
        "median_evening_minus_morning_pp": 15.57,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 240,
            "centers_pct": 32.3
          },
          {
            "hour": 9,
            "centers": 166,
            "centers_pct": 22.34
          },
          {
            "hour": 18,
            "centers": 140,
            "centers_pct": 18.84
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 2.54
          },
          {
            "hour": 8,
            "share_pct": 5.63
          },
          {
            "hour": 9,
            "share_pct": 11.87
          },
          {
            "hour": 10,
            "share_pct": 8.47
          },
          {
            "hour": 11,
            "share_pct": 1.69
          },
          {
            "hour": 12,
            "share_pct": 0.05
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.5
          },
          {
            "hour": 17,
            "share_pct": 10.05
          },
          {
            "hour": 18,
            "share_pct": 13.82
          },
          {
            "hour": 19,
            "share_pct": 15.37
          },
          {
            "hour": 20,
            "share_pct": 11.92
          },
          {
            "hour": 21,
            "share_pct": 1.67
          }
        ],
        "largest_center_attendance_share_pct": 1.62
      },
      {
        "community": "Castilla-La Mancha",
        "centers": 96,
        "attendances": 1563922,
        "regional_peak_hour": 19,
        "median_center_peak_share_pct": 16.34,
        "centers_with_individual_peak_at_regional_hour_pct": 32.29,
        "median_morning_share_pct": 33.47,
        "median_evening_share_pct": 57.28,
        "median_evening_minus_morning_pp": 24.29,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 34,
            "centers_pct": 35.42
          },
          {
            "hour": 19,
            "centers": 31,
            "centers_pct": 32.29
          },
          {
            "hour": 9,
            "centers": 14,
            "centers_pct": 14.58
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 4.72
          },
          {
            "hour": 8,
            "share_pct": 1.94
          },
          {
            "hour": 9,
            "share_pct": 12.73
          },
          {
            "hour": 10,
            "share_pct": 5.92
          },
          {
            "hour": 11,
            "share_pct": 0.55
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.36
          },
          {
            "hour": 17,
            "share_pct": 11.16
          },
          {
            "hour": 18,
            "share_pct": 15.97
          },
          {
            "hour": 19,
            "share_pct": 16.34
          },
          {
            "hour": 20,
            "share_pct": 12.9
          },
          {
            "hour": 21,
            "share_pct": 0.65
          }
        ],
        "largest_center_attendance_share_pct": 4.51
      },
      {
        "community": "Comunidad de Madrid",
        "centers": 231,
        "attendances": 3991152,
        "regional_peak_hour": 19,
        "median_center_peak_share_pct": 15.38,
        "centers_with_individual_peak_at_regional_hour_pct": 39.83,
        "median_morning_share_pct": 32.36,
        "median_evening_share_pct": 52.45,
        "median_evening_minus_morning_pp": 21.01,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 92,
            "centers_pct": 39.83
          },
          {
            "hour": 18,
            "centers": 55,
            "centers_pct": 23.81
          },
          {
            "hour": 9,
            "centers": 21,
            "centers_pct": 9.09
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 2.56
          },
          {
            "hour": 8,
            "share_pct": 2.45
          },
          {
            "hour": 9,
            "share_pct": 6.98
          },
          {
            "hour": 10,
            "share_pct": 9.04
          },
          {
            "hour": 11,
            "share_pct": 4.87
          },
          {
            "hour": 12,
            "share_pct": 1.61
          },
          {
            "hour": 13,
            "share_pct": 0.12
          },
          {
            "hour": 14,
            "share_pct": 2.42
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 0.59
          },
          {
            "hour": 17,
            "share_pct": 10.21
          },
          {
            "hour": 18,
            "share_pct": 14.25
          },
          {
            "hour": 19,
            "share_pct": 15.38
          },
          {
            "hour": 20,
            "share_pct": 10.63
          },
          {
            "hour": 21,
            "share_pct": 0.62
          }
        ],
        "largest_center_attendance_share_pct": 2.73
      },
      {
        "community": "Galicia",
        "centers": 54,
        "attendances": 839896,
        "regional_peak_hour": 19,
        "median_center_peak_share_pct": 15.61,
        "centers_with_individual_peak_at_regional_hour_pct": 22.22,
        "median_morning_share_pct": 33.34,
        "median_evening_share_pct": 52.34,
        "median_evening_minus_morning_pp": 18.28,
        "top_individual_peak_hours": [
          {
            "hour": 18,
            "centers": 14,
            "centers_pct": 25.93
          },
          {
            "hour": 19,
            "centers": 12,
            "centers_pct": 22.22
          },
          {
            "hour": 20,
            "centers": 10,
            "centers_pct": 18.52
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 0.5
          },
          {
            "hour": 8,
            "share_pct": 2.16
          },
          {
            "hour": 9,
            "share_pct": 9.91
          },
          {
            "hour": 10,
            "share_pct": 11.29
          },
          {
            "hour": 11,
            "share_pct": 3.85
          },
          {
            "hour": 12,
            "share_pct": 0.24
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 2.02
          },
          {
            "hour": 17,
            "share_pct": 10.0
          },
          {
            "hour": 18,
            "share_pct": 12.93
          },
          {
            "hour": 19,
            "share_pct": 15.61
          },
          {
            "hour": 20,
            "share_pct": 13.11
          },
          {
            "hour": 21,
            "share_pct": 5.11
          }
        ],
        "largest_center_attendance_share_pct": 4.48
      },
      {
        "community": "Región de Murcia",
        "centers": 96,
        "attendances": 1480712,
        "regional_peak_hour": 19,
        "median_center_peak_share_pct": 15.45,
        "centers_with_individual_peak_at_regional_hour_pct": 42.71,
        "median_morning_share_pct": 36.02,
        "median_evening_share_pct": 52.73,
        "median_evening_minus_morning_pp": 17.5,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 41,
            "centers_pct": 42.71
          },
          {
            "hour": 9,
            "centers": 17,
            "centers_pct": 17.71
          },
          {
            "hour": 18,
            "centers": 16,
            "centers_pct": 16.67
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 7.58
          },
          {
            "hour": 8,
            "share_pct": 5.08
          },
          {
            "hour": 9,
            "share_pct": 12.62
          },
          {
            "hour": 10,
            "share_pct": 5.94
          },
          {
            "hour": 11,
            "share_pct": 1.07
          },
          {
            "hour": 12,
            "share_pct": 0.15
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.97
          },
          {
            "hour": 17,
            "share_pct": 10.98
          },
          {
            "hour": 18,
            "share_pct": 13.47
          },
          {
            "hour": 19,
            "share_pct": 15.45
          },
          {
            "hour": 20,
            "share_pct": 11.58
          },
          {
            "hour": 21,
            "share_pct": 0.23
          }
        ],
        "largest_center_attendance_share_pct": 4.4
      }
    ],
    "stability": [
      {
        "community": "Canarias",
        "centers_2025": 135,
        "peak_hour_2025": 18,
        "centers_2024": 111,
        "peak_hour_2024": 18,
        "same_peak": true
      },
      {
        "community": "Cataluña",
        "centers_2025": 113,
        "peak_hour_2025": 18,
        "centers_2024": 93,
        "peak_hour_2024": 18,
        "same_peak": true
      },
      {
        "community": "Comunidad Valenciana",
        "centers_2025": 346,
        "peak_hour_2025": 18,
        "centers_2024": 283,
        "peak_hour_2024": 18,
        "same_peak": true
      },
      {
        "community": "Islas Baleares",
        "centers_2025": 78,
        "peak_hour_2025": 18,
        "centers_2024": 66,
        "peak_hour_2024": 18,
        "same_peak": true
      },
      {
        "community": "País Vasco",
        "centers_2025": 40,
        "peak_hour_2025": 18,
        "centers_2024": 0,
        "peak_hour_2024": null,
        "same_peak": false
      },
      {
        "community": "Andalucía",
        "centers_2025": 743,
        "peak_hour_2025": 19,
        "centers_2024": 609,
        "peak_hour_2024": 19,
        "same_peak": true
      },
      {
        "community": "Castilla-La Mancha",
        "centers_2025": 96,
        "peak_hour_2025": 19,
        "centers_2024": 83,
        "peak_hour_2024": 19,
        "same_peak": true
      },
      {
        "community": "Comunidad de Madrid",
        "centers_2025": 231,
        "peak_hour_2025": 19,
        "centers_2024": 184,
        "peak_hour_2024": 19,
        "same_peak": true
      },
      {
        "community": "Galicia",
        "centers_2025": 54,
        "peak_hour_2025": 19,
        "centers_2024": 47,
        "peak_hour_2024": 19,
        "same_peak": true
      },
      {
        "community": "Región de Murcia",
        "centers_2025": 96,
        "peak_hour_2025": 19,
        "centers_2024": 79,
        "peak_hour_2024": 19,
        "same_peak": true
      }
    ],
    "range_2025": {
      "earliest_peak_hour": 18,
      "latest_peak_hour": 19,
      "regions_with_18_peak": 5,
      "regions_with_19_peak": 5,
      "regions_with_20_peak": 0,
      "same_peak_as_2024": 9
    },
    "excluded_regions": {
      "2024": [
        "Cantabria",
        "País Vasco",
        "La Rioja",
        "Asturias",
        "Aragón",
        "Castilla y León",
        "Extremadura",
        "Navarra",
        "Melilla",
        "Ceuta"
      ],
      "2025": [
        "Asturias",
        "Aragón",
        "Castilla y León",
        "Navarra",
        "La Rioja",
        "Extremadura",
        "Cantabria",
        "Melilla",
        "Ceuta"
      ]
    },
    "limitations": [
      "La comunidad se aproxima con el código postal de facturación del centro.",
      "La hora representa la hora local y no requiere conversión de zona horaria.",
      "La hora punta describe asistencia observada y depende también de la oferta programada.",
      "Las comunidades con menos de 30 centros o concentración excesiva no se publican."
    ]
  },
  "weekday_peak_shift": {
    "definition": {
      "unit": "Peso de cada hora dentro de las asistencias anuales de cada centro y día laborable.",
      "scope": "Lunes a viernes; sábado ya dispone de un análisis específico."
    },
    "period": "2024-01-01/2025-12-31",
    "rules": {
      "minimum_classes_per_center_weekday_year": 50,
      "minimum_attendances_per_center_weekday_year": 250,
      "minimum_centers_per_public_day": 100,
      "maximum_largest_center_share_pct": 3.0
    },
    "sample": {
      "eligible_center_days": {
        "2024": 8193,
        "2025": 10138
      }
    },
    "days_2024": [
      {
        "iso_weekday": 1,
        "day": "Lunes",
        "centers": 1682,
        "attendances": 5551716,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.63,
        "median_share_at_18_pct": 15.29,
        "median_share_at_19_pct": 16.63,
        "median_18_minus_19_pp": -0.73,
        "centers_with_18_above_19_pct": 39.77,
        "centers_with_individual_peak_at_day_peak_pct": 37.46,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 630,
            "centers_pct": 37.46
          },
          {
            "hour": 18,
            "centers": 424,
            "centers_pct": 25.21
          },
          {
            "hour": 20,
            "centers": 259,
            "centers_pct": 15.4
          },
          {
            "hour": 17,
            "centers": 144,
            "centers_pct": 8.56
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 1.28
          },
          {
            "hour": 8,
            "share_pct": 3.51
          },
          {
            "hour": 9,
            "share_pct": 9.63
          },
          {
            "hour": 10,
            "share_pct": 5.5
          },
          {
            "hour": 11,
            "share_pct": 0.59
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 0.82
          },
          {
            "hour": 17,
            "share_pct": 11.13
          },
          {
            "hour": 18,
            "share_pct": 15.29
          },
          {
            "hour": 19,
            "share_pct": 16.63
          },
          {
            "hour": 20,
            "share_pct": 12.93
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.69
      },
      {
        "iso_weekday": 2,
        "day": "Martes",
        "centers": 1678,
        "attendances": 5374303,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.15,
        "median_share_at_18_pct": 14.85,
        "median_share_at_19_pct": 16.15,
        "median_18_minus_19_pp": -0.77,
        "centers_with_18_above_19_pct": 40.88,
        "centers_with_individual_peak_at_day_peak_pct": 35.16,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 590,
            "centers_pct": 35.16
          },
          {
            "hour": 18,
            "centers": 427,
            "centers_pct": 25.45
          },
          {
            "hour": 20,
            "centers": 234,
            "centers_pct": 13.95
          },
          {
            "hour": 9,
            "centers": 141,
            "centers_pct": 8.4
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 0.88
          },
          {
            "hour": 8,
            "share_pct": 3.7
          },
          {
            "hour": 9,
            "share_pct": 10.35
          },
          {
            "hour": 10,
            "share_pct": 5.97
          },
          {
            "hour": 11,
            "share_pct": 0.75
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 0.91
          },
          {
            "hour": 17,
            "share_pct": 10.46
          },
          {
            "hour": 18,
            "share_pct": 14.85
          },
          {
            "hour": 19,
            "share_pct": 16.15
          },
          {
            "hour": 20,
            "share_pct": 12.43
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.69
      },
      {
        "iso_weekday": 3,
        "day": "Miércoles",
        "centers": 1662,
        "attendances": 5046316,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.29,
        "median_share_at_18_pct": 14.79,
        "median_share_at_19_pct": 16.29,
        "median_18_minus_19_pp": -0.87,
        "centers_with_18_above_19_pct": 41.82,
        "centers_with_individual_peak_at_day_peak_pct": 35.86,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 596,
            "centers_pct": 35.86
          },
          {
            "hour": 18,
            "centers": 403,
            "centers_pct": 24.25
          },
          {
            "hour": 20,
            "centers": 191,
            "centers_pct": 11.49
          },
          {
            "hour": 9,
            "centers": 145,
            "centers_pct": 8.72
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 1.59
          },
          {
            "hour": 8,
            "share_pct": 4.02
          },
          {
            "hour": 9,
            "share_pct": 9.98
          },
          {
            "hour": 10,
            "share_pct": 5.58
          },
          {
            "hour": 11,
            "share_pct": 0.72
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 0.86
          },
          {
            "hour": 17,
            "share_pct": 11.04
          },
          {
            "hour": 18,
            "share_pct": 14.79
          },
          {
            "hour": 19,
            "share_pct": 16.29
          },
          {
            "hour": 20,
            "share_pct": 11.83
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.68
      },
      {
        "iso_weekday": 4,
        "day": "Jueves",
        "centers": 1668,
        "attendances": 4905675,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.27,
        "median_share_at_18_pct": 14.95,
        "median_share_at_19_pct": 16.27,
        "median_18_minus_19_pp": -0.67,
        "centers_with_18_above_19_pct": 42.57,
        "centers_with_individual_peak_at_day_peak_pct": 35.85,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 598,
            "centers_pct": 35.85
          },
          {
            "hour": 18,
            "centers": 444,
            "centers_pct": 26.62
          },
          {
            "hour": 20,
            "centers": 197,
            "centers_pct": 11.81
          },
          {
            "hour": 9,
            "centers": 132,
            "centers_pct": 7.91
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 0.84
          },
          {
            "hour": 8,
            "share_pct": 3.53
          },
          {
            "hour": 9,
            "share_pct": 10.25
          },
          {
            "hour": 10,
            "share_pct": 5.72
          },
          {
            "hour": 11,
            "share_pct": 0.55
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.03
          },
          {
            "hour": 17,
            "share_pct": 10.69
          },
          {
            "hour": 18,
            "share_pct": 14.95
          },
          {
            "hour": 19,
            "share_pct": 16.27
          },
          {
            "hour": 20,
            "share_pct": 12.12
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.67
      },
      {
        "iso_weekday": 5,
        "day": "Viernes",
        "centers": 1503,
        "attendances": 3572411,
        "center_balanced_peak_hour": 18,
        "median_share_at_peak_pct": 14.19,
        "median_share_at_18_pct": 14.19,
        "median_share_at_19_pct": 10.67,
        "median_18_minus_19_pp": 2.63,
        "centers_with_18_above_19_pct": 65.47,
        "centers_with_individual_peak_at_day_peak_pct": 20.09,
        "top_individual_peak_hours": [
          {
            "hour": 9,
            "centers": 380,
            "centers_pct": 25.28
          },
          {
            "hour": 18,
            "centers": 302,
            "centers_pct": 20.09
          },
          {
            "hour": 17,
            "centers": 236,
            "centers_pct": 15.7
          },
          {
            "hour": 19,
            "centers": 144,
            "centers_pct": 9.58
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 3.17
          },
          {
            "hour": 8,
            "share_pct": 5.78
          },
          {
            "hour": 9,
            "share_pct": 14.09
          },
          {
            "hour": 10,
            "share_pct": 8.6
          },
          {
            "hour": 11,
            "share_pct": 1.24
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.12
          },
          {
            "hour": 17,
            "share_pct": 12.48
          },
          {
            "hour": 18,
            "share_pct": 14.19
          },
          {
            "hour": 19,
            "share_pct": 10.67
          },
          {
            "hour": 20,
            "share_pct": 0.32
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.78
      }
    ],
    "days_2025": [
      {
        "iso_weekday": 1,
        "day": "Lunes",
        "centers": 2059,
        "attendances": 6899451,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.51,
        "median_share_at_18_pct": 15.11,
        "median_share_at_19_pct": 16.51,
        "median_18_minus_19_pp": -0.74,
        "centers_with_18_above_19_pct": 40.7,
        "centers_with_individual_peak_at_day_peak_pct": 37.98,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 782,
            "centers_pct": 37.98
          },
          {
            "hour": 18,
            "centers": 519,
            "centers_pct": 25.21
          },
          {
            "hour": 20,
            "centers": 268,
            "centers_pct": 13.02
          },
          {
            "hour": 17,
            "centers": 183,
            "centers_pct": 8.89
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 1.84
          },
          {
            "hour": 8,
            "share_pct": 3.95
          },
          {
            "hour": 9,
            "share_pct": 9.92
          },
          {
            "hour": 10,
            "share_pct": 5.75
          },
          {
            "hour": 11,
            "share_pct": 0.55
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.3
          },
          {
            "hour": 17,
            "share_pct": 11.48
          },
          {
            "hour": 18,
            "share_pct": 15.11
          },
          {
            "hour": 19,
            "share_pct": 16.51
          },
          {
            "hour": 20,
            "share_pct": 12.36
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.53
      },
      {
        "iso_weekday": 2,
        "day": "Martes",
        "centers": 2064,
        "attendances": 7020335,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.44,
        "median_share_at_18_pct": 15.2,
        "median_share_at_19_pct": 16.44,
        "median_18_minus_19_pp": -0.49,
        "centers_with_18_above_19_pct": 43.36,
        "centers_with_individual_peak_at_day_peak_pct": 36.87,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 761,
            "centers_pct": 36.87
          },
          {
            "hour": 18,
            "centers": 539,
            "centers_pct": 26.11
          },
          {
            "hour": 20,
            "centers": 223,
            "centers_pct": 10.8
          },
          {
            "hour": 17,
            "centers": 185,
            "centers_pct": 8.96
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 1.63
          },
          {
            "hour": 8,
            "share_pct": 3.96
          },
          {
            "hour": 9,
            "share_pct": 10.02
          },
          {
            "hour": 10,
            "share_pct": 5.61
          },
          {
            "hour": 11,
            "share_pct": 0.43
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.41
          },
          {
            "hour": 17,
            "share_pct": 11.16
          },
          {
            "hour": 18,
            "share_pct": 15.2
          },
          {
            "hour": 19,
            "share_pct": 16.44
          },
          {
            "hour": 20,
            "share_pct": 11.73
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.53
      },
      {
        "iso_weekday": 3,
        "day": "Miércoles",
        "centers": 2069,
        "attendances": 6750566,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 15.73,
        "median_share_at_18_pct": 14.68,
        "median_share_at_19_pct": 15.73,
        "median_18_minus_19_pp": -0.47,
        "centers_with_18_above_19_pct": 43.93,
        "centers_with_individual_peak_at_day_peak_pct": 32.67,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 676,
            "centers_pct": 32.67
          },
          {
            "hour": 18,
            "centers": 487,
            "centers_pct": 23.54
          },
          {
            "hour": 9,
            "centers": 213,
            "centers_pct": 10.29
          },
          {
            "hour": 20,
            "centers": 210,
            "centers_pct": 10.15
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 2.22
          },
          {
            "hour": 8,
            "share_pct": 4.5
          },
          {
            "hour": 9,
            "share_pct": 10.53
          },
          {
            "hour": 10,
            "share_pct": 6.21
          },
          {
            "hour": 11,
            "share_pct": 0.7
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.27
          },
          {
            "hour": 17,
            "share_pct": 11.21
          },
          {
            "hour": 18,
            "share_pct": 14.68
          },
          {
            "hour": 19,
            "share_pct": 15.73
          },
          {
            "hour": 20,
            "share_pct": 11.2
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.52
      },
      {
        "iso_weekday": 4,
        "day": "Jueves",
        "centers": 2060,
        "attendances": 6265723,
        "center_balanced_peak_hour": 19,
        "median_share_at_peak_pct": 16.32,
        "median_share_at_18_pct": 15.06,
        "median_share_at_19_pct": 16.32,
        "median_18_minus_19_pp": -0.45,
        "centers_with_18_above_19_pct": 44.13,
        "centers_with_individual_peak_at_day_peak_pct": 34.08,
        "top_individual_peak_hours": [
          {
            "hour": 19,
            "centers": 702,
            "centers_pct": 34.08
          },
          {
            "hour": 18,
            "centers": 550,
            "centers_pct": 26.7
          },
          {
            "hour": 20,
            "centers": 206,
            "centers_pct": 10.0
          },
          {
            "hour": 17,
            "centers": 187,
            "centers_pct": 9.08
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 1.54
          },
          {
            "hour": 8,
            "share_pct": 3.93
          },
          {
            "hour": 9,
            "share_pct": 10.31
          },
          {
            "hour": 10,
            "share_pct": 6.12
          },
          {
            "hour": 11,
            "share_pct": 0.53
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.47
          },
          {
            "hour": 17,
            "share_pct": 11.07
          },
          {
            "hour": 18,
            "share_pct": 15.06
          },
          {
            "hour": 19,
            "share_pct": 16.32
          },
          {
            "hour": 20,
            "share_pct": 11.7
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.51
      },
      {
        "iso_weekday": 5,
        "day": "Viernes",
        "centers": 1886,
        "attendances": 4659341,
        "center_balanced_peak_hour": 18,
        "median_share_at_peak_pct": 14.44,
        "median_share_at_18_pct": 14.44,
        "median_share_at_19_pct": 10.23,
        "median_18_minus_19_pp": 2.82,
        "centers_with_18_above_19_pct": 66.97,
        "centers_with_individual_peak_at_day_peak_pct": 20.57,
        "top_individual_peak_hours": [
          {
            "hour": 9,
            "centers": 479,
            "centers_pct": 25.4
          },
          {
            "hour": 18,
            "centers": 388,
            "centers_pct": 20.57
          },
          {
            "hour": 17,
            "centers": 304,
            "centers_pct": 16.12
          },
          {
            "hour": 19,
            "centers": 184,
            "centers_pct": 9.76
          }
        ],
        "hour_profile_median_center_share_pct": [
          {
            "hour": 6,
            "share_pct": 0.0
          },
          {
            "hour": 7,
            "share_pct": 3.89
          },
          {
            "hour": 8,
            "share_pct": 6.53
          },
          {
            "hour": 9,
            "share_pct": 14.26
          },
          {
            "hour": 10,
            "share_pct": 8.35
          },
          {
            "hour": 11,
            "share_pct": 0.93
          },
          {
            "hour": 12,
            "share_pct": 0.0
          },
          {
            "hour": 13,
            "share_pct": 0.0
          },
          {
            "hour": 14,
            "share_pct": 0.0
          },
          {
            "hour": 15,
            "share_pct": 0.0
          },
          {
            "hour": 16,
            "share_pct": 1.43
          },
          {
            "hour": 17,
            "share_pct": 12.83
          },
          {
            "hour": 18,
            "share_pct": 14.44
          },
          {
            "hour": 19,
            "share_pct": 10.23
          },
          {
            "hour": 20,
            "share_pct": 0.0
          },
          {
            "hour": 21,
            "share_pct": 0.0
          }
        ],
        "largest_center_attendance_share_pct": 0.55
      }
    ],
    "stability": [
      {
        "iso_weekday": 1,
        "day": "Lunes",
        "peak_hour_2024": 19,
        "peak_hour_2025": 19,
        "same_peak": true
      },
      {
        "iso_weekday": 2,
        "day": "Martes",
        "peak_hour_2024": 19,
        "peak_hour_2025": 19,
        "same_peak": true
      },
      {
        "iso_weekday": 3,
        "day": "Miércoles",
        "peak_hour_2024": 19,
        "peak_hour_2025": 19,
        "same_peak": true
      },
      {
        "iso_weekday": 4,
        "day": "Jueves",
        "peak_hour_2024": 19,
        "peak_hour_2025": 19,
        "same_peak": true
      },
      {
        "iso_weekday": 5,
        "day": "Viernes",
        "peak_hour_2024": 18,
        "peak_hour_2025": 18,
        "same_peak": true
      }
    ],
    "limitations": [
      "La hora representa la hora local del centro.",
      "La distribución observada combina oferta programada y respuesta de los usuarios.",
      "La comparación no identifica la hora que tendría más demanda si todas ofrecieran la misma capacidad.",
      "Cada centro-día debe superar mínimos anuales de clases y asistencias para entrar en el benchmark."
    ]
  }
}