{
  "report_rows": [
    {
      "kpi": "Q2 2026 FFO per share",
      "prediction": "BEAT",
      "answer": "pred ~$0.47 vs. cons $0.46",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "Q2 2026 Same-property NOI growth (YoY)",
      "prediction": "BEAT",
      "answer": "pred ~3.3% vs. cons ~2.8%",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "Q2 2026 Total revenue",
      "prediction": "IN-LINE",
      "answer": "pred ~$548M vs. cons $545M",
      "confidence": "MEDIUM"
    }
  ],
  "guide_rows": [
    {
      "kpi": "FY2026 FFO/share guidance",
      "prediction": "BETTER",
      "answer": "guide ~$1.83-$1.86 vs. cons $1.825 (FY2026)",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "FY2026 Same-property NOI growth guidance",
      "prediction": "BETTER",
      "answer": "guide ~3.0%-3.6% vs. cons ~3.15% (FY2026)",
      "confidence": "MEDIUM"
    },
    {
      "kpi": "FY2026 Credit-loss assumption guidance",
      "prediction": "BETTER",
      "answer": "guide ~60-85 bps vs. cons ~77 bps (FY2026)",
      "confidence": "LOW"
    }
  ],
  "day1_residual_pct": 0.8,
  "day1_confidence": "MEDIUM",
  "day5_residual_pct": -0.3,
  "day5_path": "FADE",
  "day5_rationale": "Setup mirrors Q1: a low-bar beat-and-raise is largely pre-anticipated (SNO pipeline conversion math already telegraphed by management, consensus FFO stuck at $0.46 for 3+ months), and the stock has already run ~27% into the print (peaked $26.38 in late July before pulling back to $25.42). Q1's earnings reaction showed exactly this pattern: a modest 1-2 day pop followed by give-back over the rest of the week as no incremental surprise emerged beyond what was guided. Expect a similar initial positive reaction on the beat/raise that fades as investors rotate to 2H26 refinancing/credit-loss risk and valuation-discount debate rather than sustained re-rating.",
  "day5_confidence": "MEDIUM"
}