{
  "routine": {
    "title": "Min-Max 4x D2 — Upper (W4)",
    "exercises": [
      {
        "exercise_template_id": "79EF4E4F",
        "notes": "W4: 5-10 min cardio liviano para subir temperatura. No agotarse.",
        "rest_seconds": 0,
        "sets": [
          {
            "type": "normal",
            "weight_kg": null,
            "reps": null,
            "duration_seconds": 660
          }
        ]
      },
      {
        "exercise_template_id": "4E5257DE",
        "notes": "W4: 52→54.5 top / 45→47.5 backoff. RPE ≤9.5 en top, backoff a 0-1 RIR. Close-Grip Lat Pulldown, inclinarse ~15° y tirar codos abajo.",
        "rest_seconds": 180,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 25,
            "reps": null,
            "rep_range": { "start": 8 }
          },
          {
            "type": "warmup",
            "weight_kg": 39,
            "reps": null,
            "rep_range": { "start": 5 }
          },
          {
            "type": "normal",
            "weight_kg": 54.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 47.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          }
        ]
      },
      {
        "exercise_template_id": "1DF4A847",
        "notes": "W4: 52→54.5 top set. Backoff mantiene 52. RPE ≤9.5. Seated Row Machine, codos ~45°, apretar escápulas.",
        "rest_seconds": 180,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 32,
            "reps": null,
            "rep_range": { "start": 8 }
          },
          {
            "type": "warmup",
            "weight_kg": 39,
            "reps": null,
            "rep_range": { "start": 6 }
          },
          {
            "type": "normal",
            "weight_kg": 54.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 52,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          }
        ]
      },
      {
        "exercise_template_id": "ABEC557F",
        "notes": "W4: 18→20. 1 work set 6-8 estricto. W2 hizo 18×10 — ahora más peso, menos reps, calidad. Encoger hacia orejas, straps si hace falta.",
        "rest_seconds": 90,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 10,
            "reps": null,
            "rep_range": { "start": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 20,
            "reps": null,
            "rep_range": { "start": 6, "end": 8 }
          }
        ]
      },
      {
        "exercise_template_id": "7EB3F7C3",
        "notes": "W4: 40→42.5 top / 35→37.5 backoff. RPE ≤9.5 top, backoff a RIR 1-2. Machine Chest Press, pausa 1s abajo, pecho tensionado.",
        "rest_seconds": 180,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 25,
            "reps": null,
            "rep_range": { "start": 10 }
          },
          {
            "type": "warmup",
            "weight_kg": 30,
            "reps": null,
            "rep_range": { "start": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 37.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 42.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          }
        ]
      },
      {
        "exercise_template_id": "DE68C825",
        "notes": "W4: top set 5→7.5. 2 work sets 8-10. Cable a altura cadera, estirar abajo, controlado. Si 7.5 muy pesado, volver a 5 y subir reps.",
        "rest_seconds": 90,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 2.5,
            "reps": null,
            "rep_range": { "start": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 2.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 7.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          }
        ]
      },
      {
        "exercise_template_id": "DCF3B31B",
        "notes": "W4: mantener. 3 sets 8-12, controlado.",
        "rest_seconds": 90,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": null,
            "reps": 8
          },
          {
            "type": "normal",
            "weight_kg": null,
            "reps": 8
          },
          {
            "type": "normal",
            "weight_kg": null,
            "reps": 8
          }
        ]
      },
      {
        "exercise_template_id": "BE640BA0",
        "notes": "W4: 15→17.5 ambos work sets. 2 sets 8-10. Codos altos, rear delt/escápulas, sin tirar con lumbar.",
        "rest_seconds": 90,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": 10,
            "reps": null,
            "rep_range": { "start": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 17.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          },
          {
            "type": "normal",
            "weight_kg": 17.5,
            "reps": null,
            "rep_range": { "start": 8, "end": 10 }
          }
        ]
      },
      {
        "exercise_template_id": "98237BA2",
        "notes": "W4: mantener. Extra fuera del bloque Jeff. 2 sets 8-12, controlado, sin balanceo.",
        "rest_seconds": 90,
        "sets": [
          {
            "type": "warmup",
            "weight_kg": null,
            "reps": null,
            "rep_range": { "start": 12 }
          },
          {
            "type": "normal",
            "weight_kg": null,
            "reps": null,
            "rep_range": { "start": 8, "end": 12 }
          },
          {
            "type": "normal",
            "weight_kg": null,
            "reps": null,
            "rep_range": { "start": 8, "end": 12 }
          }
        ]
      }
    ]
  }
}
