{
  "report_rows": [
    {
      "kpi": "Q2 EPS",
      "prediction": "BEAT",
      "answer": "pred ~$1.55 vs. cons $1.49",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "Q2 Revenue",
      "prediction": "BEAT",
      "answer": "pred ~$1.43B vs. cons $1.40B",
      "confidence": "LOW"
    },
    {
      "kpi": "Retail sales/load growth (YoY)",
      "prediction": "BEAT",
      "answer": "pred ~7% vs. cons ~5%",
      "confidence": "MEDIUM"
    }
  ],
  "guide_rows": [
    {
      "kpi": "FY2026 EPS guidance (weather-normalized)",
      "prediction": "UNCHANGED",
      "answer": "guide ~$4.55\u2013$4.75 (mid $4.65) vs. cons $4.65 (FY2026)",
      "confidence": "HIGH"
    },
    {
      "kpi": "FY2026 retail sales growth guidance",
      "prediction": "UNCHANGED",
      "answer": "guide ~4\u20136% vs. cons ~5% (FY2026)",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "APS rate case outcome (ROE/net increase, FRAM)",
      "prediction": "UNKNOWN",
      "answer": "APS ask ~$611M net / 10.70% ROE vs. Staff ~$506M / 9.55% ROE (ROO/decision Q4 2026)",
      "confidence": "LOW"
    },
    {
      "kpi": "Long-term EPS CAGR / 2026 IRP capex signal",
      "prediction": "UNCHANGED",
      "answer": "guide 5\u20137% LT EPS CAGR vs. cons ~6% (through 2030); IRP capex upsize deferred to post-rate-case",
      "confidence": "MEDIUM"
    }
  ],
  "day1_residual_pct": 0.8,
  "day1_confidence": "LOW",
  "day5_residual_pct": -0.5,
  "day5_path": "FADE",
  "day5_rationale": "A hot-Arizona-summer Q2 beat is largely weather-driven, and since FY guidance is weather-normalized management reaffirms rather than raises, so there are no meaningful upward out-period estimate revisions. The stock already ran to ~$109 in mid-July and has pulled back ~8% into the print on sector (XLU) weakness, and the rate-case ROO overhang (wide APS-vs-Staff ROE gap) caps upside. Initial weather pop fades as estimates hold flat and defensive utility bid rotates elsewhere.",
  "day5_confidence": "LOW"
}