{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5de0-76bd-a167-6eb73ea85909",
  "slug": "ad6a7486ad7a2d21",
  "title": "U.S. Podcast Advertising Revenue Study",
  "subtitle": "IAB",
  "author": "IAB",
  "pageCount": 22,
  "kind": "consulting-deck",
  "orientation": "landscape",
  "aspectRatio": 1.778,
  "document": {
    "id": "019dd923-5de0-76bd-a167-6eb73ea85909",
    "slug": "ad6a7486ad7a2d21",
    "title": "U.S. Podcast Advertising Revenue Study",
    "rawTitle": "U.S. Podcast Advertising Revenue Study",
    "authorId": "PwC",
    "authorName": "IAB",
    "authorDisplay": "IAB",
    "kind": {
      "slug": "consulting-deck",
      "label": "Consulting deck"
    },
    "sourceType": {
      "slug": "strategy_consulting",
      "label": "Strategy consulting"
    },
    "fileName": "IAB_2022_Podcast_Advertising_Revenue_Report_2023.pdf",
    "sourceUrl": "https://www.iab.com/wp-content/uploads/2023/05/IAB_2022_Podcast_Advertising_Revenue_Report_2023.pdf",
    "sourceDate": "2023-05-15 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-24 07:54:30+00",
    "status": "ready",
    "pageCount": 22,
    "orientation": "landscape",
    "aspectRatio": 1.778,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/ad6a7486ad7a2d21",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 22,
    "pagesIndexed": 22,
    "pagesWithImages": 22,
    "pagesWithMetadata": 22,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 104,
    "chartCount": 5,
    "metricSlides": 0,
    "toolMatches": 67,
    "documentToolMatches": 0,
    "frameworkMatches": 0,
    "arcMatches": 1,
    "beatMatches": 3,
    "loopMatches": 4,
    "patternMatches": 0,
    "storymakersMatch": true,
    "scoreAvailable": true,
    "reviewAvailable": true,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": false,
    "pitchdeckProfileAvailable": false
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
        "evidence": "Deck moves from market-sizing facts (pp 6-9) to category/genre implications (pp 10-12) to recommendations (pp 13-15).",
        "isPrimary": true,
        "confidence": 72,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "beats": [
      {
        "to": 9,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 6,
        "name": "The Facts (What)",
        "beatId": "019de8d5-cdd4-776a-81d5-4b71b01538a9",
        "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
        "beatType": null,
        "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      },
      {
        "to": 12,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 10,
        "name": "The Implications (So What)",
        "beatId": "019de8d5-cdfe-74cd-8cd2-1d9398b5d8ac",
        "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
        "beatType": null,
        "evidence": "Ad Categories & Content Genres analysis showing diversification and news decline.",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      },
      {
        "to": 15,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 13,
        "name": "The Action (Now What)",
        "beatId": "019de8d5-ce27-72ce-ac9e-7438afaf7c87",
        "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
        "beatType": null,
        "evidence": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics.",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      }
    ],
    "loops": [
      {
        "to": 5,
        "from": 3,
        "loop": {
          "name": "03_aha_moment",
          "slug": "03-aha-moment",
          "status": "active",
          "bestFor": "Data-heavy sections, research findings, analytical arguments",
          "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Problem/Question -> What the Data Shows -> The Insight",
          "description": "Establish a tension, present data, then deliver the insight that changes everything",
          "familyLabel": null,
          "categoryName": "Narrative",
          "categorySlug": "narrative"
        },
        "matchId": "019de8d5-ce51-73a3-9014-40abab15dd6f",
        "evidence": "Foreword poses economic-headwinds question; exec summary delivers the +26% / 2x faster insight.",
        "position": 1,
        "objective": "Set up the headline insight: podcast advertising defied macro headwinds",
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 9,
        "from": 7,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019de8d5-ce7c-71bd-9009-590d0a938b00",
        "evidence": "Three charts (2015-2022 growth, Q4 share, 2023-2025 projection) converge on doubling by 2025.",
        "position": 2,
        "objective": "Stack revenue evidence to conclude the market is on a strong trajectory",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 12,
        "from": 11,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de8d5-cea7-7421-867f-8e8ef803dc16",
        "evidence": "Grouped bar charts split revenue by industry category and content genre 2021 vs 2022.",
        "position": 3,
        "objective": "Show advertiser diversification and genre rotation by segment",
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 15,
        "from": 14,
        "loop": {
          "name": "41_so_what_cascade",
          "slug": "41-so-what-cascade",
          "status": "active",
          "bestFor": "Data presentations, executive summaries, driving to recommendations",
          "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
          "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de8d5-ced0-7622-8f44-4e252bcf3fc7",
        "evidence": "Numbered developments (programmatic, brand safety, attention) each paired with recommended action.",
        "position": 4,
        "objective": "Translate industry developments into recommended actions for advertisers",
        "confidence": 62,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "SCQA Framework",
          "slug": "scqa-framework",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
          "version": 1,
          "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
          "description": "Situation, Complication, Question, Answer - structured problem framing",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-cefa-70cd-94c0-377b88b85991",
        "evidence": "Foreword sets situation (macro), complication (headwinds), question (resilience?), answer (+26%).",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Pyramid Principle",
          "slug": "pyramid-principle",
          "status": "active",
          "bestFor": "When the document has a single governing decision or recommendation the reader is asked to accept, and the case can be decomposed into a small number of clean groups. Strategy decks, board memos, investment committee papers.",
          "canonId": "019dd956-7cbd-7219-a477-c871e2bc1aff",
          "version": 1,
          "bodyDocId": "88b6ac56-b880-46f9-8621-ef3491ab6235",
          "description": "Lead with the answer; group three to five MECE supports beneath it; recurse one level down. Top-down hierarchical structure for any document with a single recommendation.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-cfa5-7259-bbfc-5ef85e61b399",
        "evidence": "Two top-line claims (growth; advertiser diversification) each with supporting bullets.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "When the document has a single governing decision or recommendation the reader is asked to accept, and the case can be decomposed into a small number of clean groups. Strategy decks, board memos, investment committee papers.",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": "Solves the two failure modes of expert communication at once: (1) the long climb where readers wait pages for the answer, and (2) logical mush from non-MECE groupings. Progressive disclosure lets a reader stop at any depth and get the right information.",
        "antipattern": "Chronological structure (\"what we did, what we found, what we conclude\") instead of logical hierarchy. Top-of-pyramid that is a topic (\"strategic options\") instead of an answer (\"pursue Option B because...\"). Non-MECE supports that overlap or fail to cover the universe.",
        "cardinality": null,
        "narrativePurpose": "Transfer conviction with minimum reader effort by mirroring how decision-makers consume information: answer first, scaffolding behind."
      },
      {
        "tool": {
          "name": "Chunking",
          "slug": "chunking",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
          "version": 1,
          "bodyDocId": null,
          "description": "Information grouped into chunks is remembered better - structure content in digestible units",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-cfcf-7029-bbe4-aabea3afc37d",
        "evidence": "Content grouped into two clear themed chunks with sub-bullets.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de8d5-d04d-71fb-bc48-fb54544a8d1b",
        "evidence": "Context (headwinds) -> conflict -> insight (growth) -> implication (diversification).",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 55,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Pairs",
          "slug": "contrast-pairs",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
          "version": 1,
          "bodyDocId": null,
          "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de8d5-d279-7388-9893-2ece66baf9c6",
        "evidence": "Q4 historical share contrasted with 2022 dip.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chunking",
          "slug": "chunking",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
          "version": 1,
          "bodyDocId": null,
          "description": "Information grouped into chunks is remembered better - structure content in digestible units",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d5cf-7030-b61c-797dc1373a26",
        "evidence": "Two numbered, boxed recommendations split content into digestible chunks.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chunking",
          "slug": "chunking",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
          "version": 1,
          "bodyDocId": null,
          "description": "Information grouped into chunks is remembered better - structure content in digestible units",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d679-74dd-9c86-f901ae086660",
        "evidence": "Two numbered recommendation blocks parallel slide 14.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chunking",
          "slug": "chunking",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
          "version": 1,
          "bodyDocId": null,
          "description": "Information grouped into chunks is remembered better - structure content in digestible units",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d74f-77ae-afb1-d37a480248a4",
        "evidence": "Two-column split (Industry Category vs Content Genre) groups taxonomy.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Slide recipe: Cover",
          "slug": "cover-slide",
          "status": "active",
          "bestFor": null,
          "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
          "version": 1,
          "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
          "description": "The first ten seconds. Build it deliberately.",
          "familyLabel": "slide-recipe",
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "designer",
        "layer": "slide",
        "agents": [
          "designer"
        ],
        "matchId": "236fa058-b4cb-4389-abff-bec6740cf750",
        "evidence": "U.S. Podcast Advertising Revenue Study",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:32:05.54683+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Core Message Extraction",
          "slug": "core-message-extraction",
          "status": "active",
          "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
          "version": 1,
          "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
          "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-cf25-7232-9e58-920e1fc1235c",
        "evidence": "Callout box quotes the +26% / $1.8B resilience headline.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
        "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
        "cardinality": null,
        "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
      },
      {
        "tool": {
          "name": "Emotional Appeal",
          "slug": "emotional-appeal",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
          "version": 1,
          "bodyDocId": null,
          "description": "Connecting to audience feelings rather than just logic",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de8d5-cf79-724d-aeb4-4e9c297457de",
        "evidence": "Frames market as showing 'resilience' against headwinds.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 55,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Executive summary",
          "slug": "executive-summary",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
          "version": 1,
          "bodyDocId": null,
          "description": "A condensed view of the entire argument on a single slide / block.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "7db4200e-9a04-47c8-99df-6c576a55a2f0",
        "evidence": "Foreword",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:32:05.664846+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-cf4f-7753-bcce-1142e015577d",
        "evidence": "Foreword body explicitly answers why the report matters to stakeholders.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Executive summary",
          "slug": "executive-summary",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
          "version": 1,
          "bodyDocId": null,
          "description": "A condensed view of the entire argument on a single slide / block.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "d0603003-8b65-49b6-9661-64f59b5f6d79",
        "evidence": "Executive Summary",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:32:05.783493+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d023-77dc-95ec-87428de233aa",
        "evidence": "Each line states an implication, not a topic.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Typography Hierarchy",
          "slug": "typography-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
          "version": 1,
          "bodyDocId": null,
          "description": "Using font size, weight, and style to create reading order",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-cff9-72cf-bb6c-1c7313a9dcbb",
        "evidence": "Bold lead lines vs lighter bullets create reading order.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d077-745a-b579-af296e297ea5",
        "evidence": "Title states insight: 'posted strong growth in 2022, +26% to $1.8B'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 92,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "AIDA Model",
          "slug": "aida-model",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-86fc-773c-813f-d416714b8413",
          "version": 1,
          "bodyDocId": null,
          "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "7121ac58-b375-4db2-810e-8c9ae543d659",
        "evidence": "The slide presents a clear and concise message, grabbing the audience's attention with a surprising statistic and providing a brief overview of the current state of podcast ad revenues.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:31:56.785918+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d14c-74dd-a239-4de8a65c803f",
        "evidence": "Each bar labeled with $ value and green growth-% triangle.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "74cd1efb-5fdf-4299-b2d8-554b748b248b",
        "evidence": "The bar chart is simple and easy to read, with a clear title and labels, effectively eliminating chartjunk.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:31:56.822524+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d0ca-75cf-adaa-6736928e80a0",
        "evidence": "Vertical bar chart appropriate for time series of revenue.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d0f7-725f-abe9-c61c7a2f50f2",
        "evidence": "2022 bar in red against black historical bars.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Principle",
          "slug": "contrast-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
          "version": 1,
          "bodyDocId": null,
          "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d178-7521-be85-3ce9bb2ecefd",
        "evidence": "Red callout bracket and red 2022 bar emphasize the headline.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data-Ink Ratio",
          "slug": "data-ink-ratio",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
          "version": 1,
          "bodyDocId": null,
          "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d1a2-711c-a934-25882b223c22",
        "evidence": "Minimal gridlines, no axis lines, clean labels.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d0a0-72eb-8050-bea35de9ffe3",
        "evidence": "Red sub-headline gives the so-what: '2x faster than total internet ad revenue'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Von Restorff Effect",
          "slug": "von-restorff-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
          "version": 1,
          "bodyDocId": null,
          "description": "Items that stand out are noticed and remembered - make key points visually distinct",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d123-7499-a953-4a62ac4aae0f",
        "evidence": "Red 2022 bar stands out from row of black bars.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d1cd-7340-8174-cdf2701b7902",
        "evidence": "Title states the finding: 'Q4 share fell to 29%, lowest in six years'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d250-73d5-9d0f-643f852a5b74",
        "evidence": "Quarter labels and percentage points called out on lines.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "a2abf9af-8d86-45c4-877f-68a43cbae686",
        "evidence": "The slide compares the current state of Q4's revenue share to the previous years, creating a before-after bridge.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:31:56.894748+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d221-72f3-89b6-176a436cc5a5",
        "evidence": "Multi-line quarterly chart fits seasonality comparison.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d1f7-726e-ad0c-aba973e43331",
        "evidence": "Callout interprets decline as overall ad-spend deceleration.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d2a3-77d9-bd4e-df399754b50f",
        "evidence": "Title declares: 'projected to more than double... approach $4B'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 92,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d34e-72e9-9b8c-b393466ffb07",
        "evidence": "Each bar labeled with $ value and green YoY growth triangle.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Big Idea Formula",
          "slug": "big-idea-formula",
          "status": "active",
          "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
          "version": 1,
          "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
          "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "bf4b811f-8205-4aa5-993d-5f75b3ce830f",
        "evidence": "The slide presents a clear and concise message, stating that podcast revenues are projected to more than double between 2022-2025 and approach $4B.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:31:56.966811+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
        "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d2cd-7439-8139-fcb3c4a78542",
        "evidence": "Bar chart appropriate for historical+projection comparison.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "89df02cc-e753-459f-a128-f9e48e777213",
        "evidence": "The bar chart is used to effectively display the growth projections, making it easy to understand and visualize the data.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:31:57.00263+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d2fa-74fb-8466-3495ebd04674",
        "evidence": "Black bars for historical (2020-22), red bars for projections (2023-25).",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Principle",
          "slug": "contrast-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
          "version": 1,
          "bodyDocId": null,
          "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d324-71cb-9bec-73359c79974e",
        "evidence": "Color contrast separates fact from forecast.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Visual Hierarchy",
          "slug": "visual-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
          "version": 1,
          "bodyDocId": null,
          "description": "Order of perception through Size > Color > Position > Weight > Space",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d378-739f-839d-e5314ef244e4",
        "evidence": "Ascending bar heights reinforce the doubling story.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Section divider",
          "slug": "section-divider",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
          "version": 1,
          "bodyDocId": null,
          "description": "A transitional slide marking the start of a new section.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "8bbb503f-c0b1-4c89-af13-cf26df3d0712",
        "evidence": "title/headline: Ad Categories & Content Genres",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-17 03:17:51.03159+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d3a7-778f-ba92-6ba268d24a5e",
        "evidence": "Title makes the claim 'wide range of advertising categories that podcasting appeals to'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d481-706c-93a6-3aa33f85082e",
        "evidence": "Percentage labels on each bar.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d3ff-700f-b732-7195273bdb42",
        "evidence": "Grouped bar chart compares 2021 vs 2022 by category.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d456-75aa-8004-988edb5eb338",
        "evidence": "Two-color encoding (black 2021, red 2022) consistent across deck.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d42c-7038-80d6-c69b690ffe9a",
        "evidence": "Repeated paired bars across categories enable scan comparison.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d3d6-77d9-bb04-95cafd150a39",
        "evidence": "Callout extracts insight: 'Other' aggregates to 28% — diversification.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "06696611-51ea-4f18-8a19-8598455bcdfe",
        "evidence": "Similar to slide 5, the chart groups ad revenue percentage shares by content genre, somewhat resembling a matrix.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:31:57.114615+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d4aa-709b-8f06-a980920aa8a2",
        "evidence": "Title states reversal: 'News is no longer the top revenue genre'.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 92,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d57d-7218-b9e3-3254fbcb7145",
        "evidence": "Each bar carries its percentage label.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d4fe-737d-a17c-fdcba726b20c",
        "evidence": "Grouped bar chart fits the year-over-year shift comparison.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d527-75cc-98b4-ecd89ab7bd2e",
        "evidence": "Black for 2021, red for 2022 bars.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Principle",
          "slug": "contrast-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
          "version": 1,
          "bodyDocId": null,
          "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d552-75e8-8258-0e97cac0d124",
        "evidence": "Direct visual contrast of two years per genre.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Core Message Extraction",
          "slug": "core-message-extraction",
          "status": "active",
          "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
          "version": 1,
          "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
          "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d5a6-7219-ba66-02c2697e9bff",
        "evidence": "Headline isolates a single reversal as the key insight.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
        "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
        "cardinality": null,
        "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d4d4-767e-bd21-fde166d686e0",
        "evidence": "Callout explains why: events returned, election cycle ended.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Section divider",
          "slug": "section-divider",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
          "version": 1,
          "bodyDocId": null,
          "description": "A transitional slide marking the start of a new section.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "e66afd42-5e1b-4dc5-898b-07a56062f7d8",
        "evidence": "title/headline: Key Industry Developments & Recommendations",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-17 03:17:51.1+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Call to action",
          "slug": "call-to-action",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4bbb-702a-9ead-82daf188bb7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Explicit prescription of what the audience should do next.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "14795b17-fbc2-4abd-a8f6-4b40d39fe1c6",
        "evidence": "The callout seems to be emphasizing a key point, potentially leading to a call to action.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-17 03:17:50.956485+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Core Message Extraction",
          "slug": "core-message-extraction",
          "status": "active",
          "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
          "version": 1,
          "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
          "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de8d5-d64f-748a-96a1-9a98b872640c",
        "evidence": "Lead red sentence frames why advertisers turn to podcasts.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
        "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
        "cardinality": null,
        "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
      },
      {
        "tool": {
          "name": "Law of Proximity",
          "slug": "law-of-proximity",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf73-719c-b493-9d33377a81a7",
          "version": 1,
          "bodyDocId": null,
          "description": "Close elements are perceived as related - group related content spatially",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d626-7359-94c7-cf3a75daf10c",
        "evidence": "Each recommendation bounded in its own box grouping related text.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "0f3219bb-6d81-4a34-acaa-1e74ca9ff40d",
        "evidence": "The slide contains a list/bullet points with key industry developments and recommendations.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-17 03:17:50.919437+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Typography Hierarchy",
          "slug": "typography-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
          "version": 1,
          "bodyDocId": null,
          "description": "Using font size, weight, and style to create reading order",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d5f9-7388-9383-8b86f1188acc",
        "evidence": "Bold red headers, body text, indented sub-bullets.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Law of Proximity",
          "slug": "law-of-proximity",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf73-719c-b493-9d33377a81a7",
          "version": 1,
          "bodyDocId": null,
          "description": "Close elements are perceived as related - group related content spatially",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d6cf-7022-a0c1-2e602353e23e",
        "evidence": "Boxed groupings keep each initiative visually self-contained.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Law of Similarity",
          "slug": "law-of-similarity",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c025-70d9-a411-8efa41ae179b",
          "version": 1,
          "bodyDocId": null,
          "description": "Similar-looking elements perceived as related - consistent styling for related concepts",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d6f9-7642-87c7-64a316d291fb",
        "evidence": "Same template as slide 14 signals continuation of recommendations.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "28536f6b-891c-4273-881a-27f591f20a29",
        "evidence": "The slide contains list/bullet points with key industry developments and recommendations.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-17 03:17:51.030494+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Typography Hierarchy",
          "slug": "typography-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
          "version": 1,
          "bodyDocId": null,
          "description": "Using font size, weight, and style to create reading order",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d6a5-744e-a3a6-e208518fb035",
        "evidence": "Header / body / bullet hierarchy mirrors prior slide.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data-Ink Ratio",
          "slug": "data-ink-ratio",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
          "version": 1,
          "bodyDocId": null,
          "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de8d5-d724-703a-9e5e-c749d8ea9119",
        "evidence": "Plain definitions table without decoration.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 13:16:58.964925+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Table data",
          "slug": "table-data",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4fab-7168-a82f-b847350a006d",
          "version": 1,
          "bodyDocId": null,
          "description": "Tabular layouts of structured data.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "4480bd0b-4c8f-46bc-8d9a-b6d82f3b5501",
        "evidence": "The slide contains a table/data with definitions and survey options.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-17 03:17:51.138242+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "a3e9a071-7de1-4ca5-8f0d-37694f934812",
        "evidence": "The slide contains list/bullet points with study scope and methodology.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-17 03:17:51.21023+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      }
    ],
    "frameworks": [],
    "patterns": []
  },
  "storymakers": {
    "model": "claude-cli",
    "backend": "claude",
    "rawJson": {
      "arc": {
        "id": 11,
        "slug": "triple-take",
        "beats": [
          {
            "name": "The Facts (What)",
            "end_page": 9,
            "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
            "position": 1,
            "start_page": 6
          },
          {
            "name": "The Implications (So What)",
            "end_page": 12,
            "evidence": "Ad Categories & Content Genres analysis showing diversification and news decline.",
            "position": 2,
            "start_page": 10
          },
          {
            "name": "The Action (Now What)",
            "end_page": 15,
            "evidence": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics.",
            "position": 3,
            "start_page": 13
          }
        ],
        "evidence": "Deck moves from market-sizing facts (pp 6-9) to category/genre implications (pp 10-12) to recommendations (pp 13-15).",
        "confidence": 72
      },
      "loops": [
        {
          "id": 3,
          "slug": "03-aha-moment",
          "end_page": 5,
          "evidence": "Foreword poses economic-headwinds question; exec summary delivers the +26% / 2x faster insight.",
          "position": 1,
          "objective": "Set up the headline insight: podcast advertising defied macro headwinds",
          "confidence": 65,
          "start_page": 3
        },
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 9,
          "evidence": "Three charts (2015-2022 growth, Q4 share, 2023-2025 projection) converge on doubling by 2025.",
          "position": 2,
          "objective": "Stack revenue evidence to conclude the market is on a strong trajectory",
          "confidence": 70,
          "start_page": 7
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 12,
          "evidence": "Grouped bar charts split revenue by industry category and content genre 2021 vs 2022.",
          "position": 3,
          "objective": "Show advertiser diversification and genre rotation by segment",
          "confidence": 78,
          "start_page": 11
        },
        {
          "id": 41,
          "slug": "41-so-what-cascade",
          "end_page": 15,
          "evidence": "Numbered developments (programmatic, brand safety, attention) each paired with recommended action.",
          "position": 4,
          "objective": "Translate industry developments into recommended actions for advertisers",
          "confidence": 62,
          "start_page": 14
        }
      ],
      "slide_tools": [
        {
          "tools": [
            {
              "id": 1,
              "slug": "scqa-framework",
              "layer": "Block",
              "evidence": "Foreword sets situation (macro), complication (headwinds), question (resilience?), answer (+26%).",
              "confidence": 60
            },
            {
              "id": 153,
              "slug": "core-message-extraction",
              "layer": "Slide",
              "evidence": "Callout box quotes the +26% / $1.8B resilience headline.",
              "confidence": 80
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Foreword body explicitly answers why the report matters to stakeholders.",
              "confidence": 70
            },
            {
              "id": 156,
              "slug": "emotional-appeal",
              "layer": "Slide",
              "evidence": "Frames market as showing 'resilience' against headwinds.",
              "confidence": 55
            }
          ],
          "page_number": 3
        },
        {
          "tools": [
            {
              "id": 3,
              "slug": "pyramid-principle",
              "layer": "Block",
              "evidence": "Two top-line claims (growth; advertiser diversification) each with supporting bullets.",
              "confidence": 75
            },
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "Content grouped into two clear themed chunks with sub-bullets.",
              "confidence": 80
            },
            {
              "id": 149,
              "slug": "typography-hierarchy",
              "layer": "Slide",
              "evidence": "Bold lead lines vs lighter bullets create reading order.",
              "confidence": 80
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Each line states an implication, not a topic.",
              "confidence": 70
            },
            {
              "id": 80,
              "slug": "data-story-arc",
              "layer": "Loop",
              "evidence": "Context (headwinds) -> conflict -> insight (growth) -> implication (diversification).",
              "confidence": 55
            }
          ],
          "page_number": 5
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states insight: 'posted strong growth in 2022, +26% to $1.8B'.",
              "confidence": 92
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Red sub-headline gives the so-what: '2x faster than total internet ad revenue'.",
              "confidence": 85
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Vertical bar chart appropriate for time series of revenue.",
              "confidence": 85
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "2022 bar in red against black historical bars.",
              "confidence": 88
            },
            {
              "id": 158,
              "slug": "von-restorff-effect",
              "layer": "Slide",
              "evidence": "Red 2022 bar stands out from row of black bars.",
              "confidence": 85
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Each bar labeled with $ value and green growth-% triangle.",
              "confidence": 90
            },
            {
              "id": 159,
              "slug": "contrast-principle",
              "layer": "Slide",
              "evidence": "Red callout bracket and red 2022 bar emphasize the headline.",
              "confidence": 80
            },
            {
              "id": 125,
              "slug": "data-ink-ratio",
              "layer": "Slide",
              "evidence": "Minimal gridlines, no axis lines, clean labels.",
              "confidence": 70
            }
          ],
          "page_number": 7
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states the finding: 'Q4 share fell to 29%, lowest in six years'.",
              "confidence": 90
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Callout interprets decline as overall ad-spend deceleration.",
              "confidence": 75
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Multi-line quarterly chart fits seasonality comparison.",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Quarter labels and percentage points called out on lines.",
              "confidence": 75
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "Q4 historical share contrasted with 2022 dip.",
              "confidence": 60
            }
          ],
          "page_number": 8
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title declares: 'projected to more than double... approach $4B'.",
              "confidence": 92
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Bar chart appropriate for historical+projection comparison.",
              "confidence": 85
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Black bars for historical (2020-22), red bars for projections (2023-25).",
              "confidence": 90
            },
            {
              "id": 159,
              "slug": "contrast-principle",
              "layer": "Slide",
              "evidence": "Color contrast separates fact from forecast.",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Each bar labeled with $ value and green YoY growth triangle.",
              "confidence": 88
            },
            {
              "id": 132,
              "slug": "visual-hierarchy",
              "layer": "Slide",
              "evidence": "Ascending bar heights reinforce the doubling story.",
              "confidence": 70
            }
          ],
          "page_number": 9
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title makes the claim 'wide range of advertising categories that podcasting appeals to'.",
              "confidence": 80
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Callout extracts insight: 'Other' aggregates to 28% — diversification.",
              "confidence": 75
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Grouped bar chart compares 2021 vs 2022 by category.",
              "confidence": 85
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Repeated paired bars across categories enable scan comparison.",
              "confidence": 65
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Two-color encoding (black 2021, red 2022) consistent across deck.",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Percentage labels on each bar.",
              "confidence": 80
            }
          ],
          "page_number": 11
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states reversal: 'News is no longer the top revenue genre'.",
              "confidence": 92
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Callout explains why: events returned, election cycle ended.",
              "confidence": 80
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Grouped bar chart fits the year-over-year shift comparison.",
              "confidence": 85
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Black for 2021, red for 2022 bars.",
              "confidence": 85
            },
            {
              "id": 159,
              "slug": "contrast-principle",
              "layer": "Slide",
              "evidence": "Direct visual contrast of two years per genre.",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Each bar carries its percentage label.",
              "confidence": 85
            },
            {
              "id": 153,
              "slug": "core-message-extraction",
              "layer": "Slide",
              "evidence": "Headline isolates a single reversal as the key insight.",
              "confidence": 70
            }
          ],
          "page_number": 12
        },
        {
          "tools": [
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "Two numbered, boxed recommendations split content into digestible chunks.",
              "confidence": 80
            },
            {
              "id": 149,
              "slug": "typography-hierarchy",
              "layer": "Slide",
              "evidence": "Bold red headers, body text, indented sub-bullets.",
              "confidence": 75
            },
            {
              "id": 160,
              "slug": "law-of-proximity",
              "layer": "Slide",
              "evidence": "Each recommendation bounded in its own box grouping related text.",
              "confidence": 80
            },
            {
              "id": 153,
              "slug": "core-message-extraction",
              "layer": "Slide",
              "evidence": "Lead red sentence frames why advertisers turn to podcasts.",
              "confidence": 60
            }
          ],
          "page_number": 14
        },
        {
          "tools": [
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "Two numbered recommendation blocks parallel slide 14.",
              "confidence": 80
            },
            {
              "id": 149,
              "slug": "typography-hierarchy",
              "layer": "Slide",
              "evidence": "Header / body / bullet hierarchy mirrors prior slide.",
              "confidence": 75
            },
            {
              "id": 160,
              "slug": "law-of-proximity",
              "layer": "Slide",
              "evidence": "Boxed groupings keep each initiative visually self-contained.",
              "confidence": 75
            },
            {
              "id": 161,
              "slug": "law-of-similarity",
              "layer": "Slide",
              "evidence": "Same template as slide 14 signals continuation of recommendations.",
              "confidence": 70
            }
          ],
          "page_number": 15
        },
        {
          "tools": [
            {
              "id": 125,
              "slug": "data-ink-ratio",
              "layer": "Slide",
              "evidence": "Plain definitions table without decoration.",
              "confidence": 65
            },
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "Two-column split (Industry Category vs Content Genre) groups taxonomy.",
              "confidence": 70
            }
          ],
          "page_number": 17
        }
      ],
      "slides_seen": 22,
      "deck_summary": "PwC/IAB market study loosely follows Triple Take (facts -> implications -> action) with strong action-titled charts and consistent color encoding, but the 'action' beat is light — industry developments rather than concrete advertiser plays.",
      "secondary_arcs": [],
      "images_inspected": 4,
      "slide_frameworks": []
    },
    "matchedAt": "2026-05-02 13:16:59.131+00",
    "slidesSeen": 22,
    "deckSummary": "PwC/IAB market study loosely follows Triple Take (facts -> implications -> action) with strong action-titled charts and consistent color encoding, but the 'action' beat is light — industry developments rather than concrete advertiser plays.",
    "imagesInspected": 4,
    "extractionSeconds": 303.739
  },
  "score": {
    "backend": "claude",
    "scoredAt": "2026-05-02 07:08:48.405+00",
    "subScores": {
      "scqa_arc": 55,
      "action_titles": 82,
      "mece_structure": 70,
      "closing_strength": 40,
      "evidence_quality": 80,
      "clarity_of_thesis": 75,
      "production_quality": 75,
      "visual_storytelling": 72
    },
    "totalScore": 68,
    "coveragePct": 100,
    "explanations": {
      "scqa_arc": "Situation and analysis are clear, but the 'Complication' and 'Question' are weak—the deck reads as a data report with appended recommendations rather than a tensioned narrative.",
      "action_titles": "Mid-deck slides use strong insight-bearing titles, e.g. slide 12: 'News is no longer the top revenue genre—for the first time since 2018', though section dividers and front/back matter remain topic labels.",
      "mece_structure": "Three sections (market sizing, ad categories/genres, industry developments) are reasonably distinct, but recommendations slides 14 and 15 share the same title and overlap in scope.",
      "closing_strength": "The deck ends with an Appendix and a generic 'Thank you' (slide 22)—no consolidated recommendation slide, CTA, or next-steps summary closes the main narrative.",
      "evidence_quality": "Claims are consistently backed by charts with footnotes (slides 7, 8, 9, 11, 12 carry 6–24 data points each) and methodology is disclosed in slides 17–19.",
      "clarity_of_thesis": "Foreword (slide 3) and Executive Summary (slide 5) establish the thesis declaratively—podcast ad revenue grew 26% YoY to $1.8B—within the first 5 slides.",
      "production_quality": "Consistent PwC framework, disciplined footnotes, action-title density on analytical slides, but several overcrowded slides (7, 8, 11, 12 flagged density=overcrowded) hurt readability.",
      "visual_storytelling": "Slides 7, 9, 11, 12 pair the right chart type (bar/grouped bar) with the message and use color highlighting (red 2022 bar) to direct attention; section dividers rely on stock photos rather than narrative bridges."
    },
    "slidesAnalyzed": 22
  },
  "review": {
    "backend": null,
    "verdict": "A competent industry-research report with answer-first openings and quantified action titles on the analytics, but the recommendations and close are weak — use slides 7, 8, and 12 as Storymakers exemplars of declarative titling, not the deck as a whole.",
    "reviewedAt": "2026-04-25 08:17:50+00",
    "slidesSeen": 22,
    "suggestions": [
      "Rewrite p.14 and p.15 titles as declarative recommendations (e.g., 'Buyers should lean into sports, comedy, and society genres as news demand normalizes') instead of repeating the section label",
      "Add a one-slide 'Complication' between p.5 and p.6 making macro-ad-spend pressure concrete (Q4 deceleration, category mix shift) so the +26% growth lands as a tension-resolution, not a foregone conclusion",
      "Replace the 'Thank you' (p.22) with a closing slide stating the 2025 ~$4B implication and the 2-3 actions advertisers and publishers should take now"
    ],
    "closingScore": 55,
    "openingScore": 72,
    "topStrengths": [
      "Quantified, declarative action titles on the analytical slides (p.7, p.8, p.9, p.12) state the takeaway in the title itself",
      "Clear three-pillar spine via section dividers on p.6, p.10, p.13 covering size → composition → implications",
      "Answer-first opening: the +26% / $1.8B headline appears in both the Foreword (p.3) and Executive Summary (p.5)"
    ],
    "topWeaknesses": [
      "Recommendation slides (p.14, p.15) carry the section-divider label as their action title, hiding the actual insight",
      "No genuine Complication: macro headwinds are mentioned then immediately defused, so the deck lacks narrative tension",
      "Closing trails into appendix/contacts (p.16-22) with a generic 'Thank you' rather than a memorable parting thought or explicit next steps"
    ],
    "narrativeScore": 68,
    "pillarCritique": "Three section dividers (p.6 Market Size, p.10 Ad Categories & Genres, p.13 Recommendations) form a roughly MECE spine — sizing, composition, implications — though the recommendations 'pillar' is really an outro, not a parallel analytical bucket.",
    "closingCritique": "Slides 14-15 are titled 'Key Industry Developments & Recommendations' but the action titles are recycled section labels rather than a crisp call-to-action, and the deck then trails off into appendix and contacts (16-22) with a generic 'Thank you' instead of a memorable close.",
    "openingCritique": "The Foreword (p.3) and Exec Summary (p.5) both lead with the headline answer ($1.8B, +26%, 2x digital ad growth), which is a strong Storymakers move; however, slides 1-2 and 4 are pure front-matter, so the thesis only crystallizes on slide 3 and costs early momentum.",
    "extractionSeconds": 46.858505,
    "narrativeCritique": "The deck has a recognizable arc — Foreword/Exec Summary (setup) → Market Size (situation) → Ad Categories & Genres (analysis) → Industry Developments & Recommendations (resolution) — but it reads more like a research report than a tension-driven story; there is no real Complication act, since macro headwinds are acknowledged then immediately defused on p.7.",
    "titleQualityScore": 70,
    "titleQualityCritique": "Several action titles are genuinely declarative and insight-bearing (p.7 'podcast ad revenues posted strong growth in 2022, +26% to $1.8B'; p.8 \"Q4's share of revenue fell to 29%—the lowest level seen in the last six years\"; p.12 'News is no longer the top revenue genre—for the first time since 2018'), but the recommendations slides (p.14-15) regress to the topic-label 'Key Industry Developments & Recommendations' with no insight in the title."
  },
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/h4UhqRbML_5WW9jCMqjPaJq2DAcV4jUvOxX0Hs0mIM4/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hZDZhNzQ4NmFkN2EyZDIxL3AwMDEuanBn",
      "rawType": "cover",
      "block": null,
      "metadata": {
        "slideType": "cover",
        "slideTypeCanon": {
          "name": "Cover",
          "slug": "cover",
          "status": "active",
          "canonId": "019de52d-05f2-729d-9f93-e0504f0a2410",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 13,
        "componentCount": 4,
        "textChars": 97,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:32.75+00",
          "seconds": 2.221,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/1",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-1",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.03,
            "y": 0.85
          },
          "kind": "image",
          "text": "pwc",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.75+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3af3b948-df15-4f58-bcd9-9ef0d179224f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.03,
            "y": 0.03
          },
          "kind": "image",
          "text": "iab.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.75+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "848fff82-9ebe-4d07-97fc-9b0a88aa2a05",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.4,
            "x": 0.05,
            "y": 0.64
          },
          "kind": "paragraph",
          "text": "2022 Revenue & 2023-2025 Growth Projections\nMay 2023",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.75+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d42e61d9-37ef-48f7-8d81-194690aeb095",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.05,
            "y": 0.38
          },
          "kind": "title",
          "text": "U.S. Podcast Advertising Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.75+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "16ca3e02-d599-4c74-b525-f1bbf0b38ad5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Slide recipe: Cover",
            "slug": "cover-slide",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
            "version": 1,
            "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
            "description": "The first ten seconds. Build it deliberately.",
            "familyLabel": "slide-recipe",
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "designer",
          "layer": "slide",
          "agents": [
            "designer"
          ],
          "matchId": "236fa058-b4cb-4389-abff-bec6740cf750",
          "evidence": "U.S. Podcast Advertising Revenue Study",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:32:05.54683+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/DvaztF3CwpQz3XcnTfltETHSF57LsKYt3ivpYxazPfI/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hZDZhNzQ4NmFkN2EyZDIxL3AwMDEuanBn",
      "imagePathAlt": "https://imgproxy.kitesheet.com/9VSYfPjCsk7N3qSsRBtkUt5EdcxdNPVvBaNsmQY96UQ/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hZDZhNzQ4NmFkN2EyZDIxL3AwMDEucG5n",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/xKyZlndBMedpe0jil8t_r_Ft9xPygKjj24qZKiCuCoc/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hZDZhNzQ4NmFkN2EyZDIxL3AwMDEucG5n"
    },
    {
      "page": 2,
      "type": "setup",
      "function": "front_matter",
      "rawType": "table_of_contents",
      "block": null,
      "metadata": {
        "slideType": "table_of_contents",
        "slideTypeCanon": {
          "name": "Table of contents",
          "slug": "table_of_contents",
          "status": "active",
          "canonId": "019de52d-0643-721b-9b85-69676bb85cf8",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 21,
        "componentCount": 4,
        "textChars": 297,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo",
          "numbered_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:32.76+00",
          "seconds": 2.226,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/2",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-2",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 0.41,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.76+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3098c943-f331-405b-b74c-fb6d9cc9de76",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.3,
            "x": 0.49,
            "y": 0.6
          },
          "kind": "list",
          "text": "Definitions and Survey Options\nStudy Scope and Methodology\nAbout this Study\nAbout IAB and PwC\nContacts: IAB and PwC",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.76+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "05167e9c-a90e-4036-9acf-1c6be236396f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.51,
            "x": 0.46,
            "y": 0.24
          },
          "kind": "list",
          "text": "Foreword 3\nSponsor Thank You 4\nExecutive Summary 5\nMarket Size & Growth 6\nAd Categories & Content Genres 8\nKey Industry Developments & Recommendations 13\nAppendix 17",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.76+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6185edba-e36a-480d-ae73-ddba068248bf",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.45,
            "x": 0.52,
            "y": 0.04
          },
          "kind": "title",
          "text": "Table of Contents",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:32.76+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ef4278f3-8282-4fe4-8bf1-b076a24415b1",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "setup",
      "title": "The slide serves as a preface to the IAB/PwC podcast ad revenue study.",
      "function": "summarize",
      "rawType": "executive_summary",
      "block": null,
      "metadata": {
        "slideType": "executive_summary",
        "slideTypeCanon": {
          "name": "Executive summary",
          "slug": "executive_summary",
          "status": "active",
          "canonId": "019de52d-06be-73ff-81b3-f99fe7f0025e",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 78,
        "componentCount": 8,
        "textChars": 1181,
        "nDataPoints": 3,
        "notes": "The slide serves as a preface to the IAB/PwC podcast ad revenue study.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "bullet_list",
          "callout_box"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 21:23:30.254+00",
          "seconds": 3.593,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/3",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-3",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.7,
            "w": 0.28,
            "x": 0.68,
            "y": 0.18
          },
          "kind": "callout",
          "text": "How to Leverage This Report: This seventh annual IAB U.S. Podcast Advertising Revenue study... quantifies annual podcast advertising revenues... analyzes revenue share... and forecasts future revenues through 2025.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "428888f9-6a2a-45c8-b908-00ccf10fbaf6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "Despite these macroeconomic factors, U.S. podcast ad revenues showed resilience by growing 26% year-over-year to $1.8 billion.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:52+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-3b2952ab9fff",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.45,
            "x": 0.125,
            "y": 0.42
          },
          "kind": "list",
          "text": "Podcasting ad revenues in 2022 were driven by: A listenership that continues to expand, diversify, and increase total time spent; Podcast creators meeting consumer demand; Existing and new advertisers increasing ad spend.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "64260670-7595-43ad-8c09-20924fb52053",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "U.S. podcast ad revenue: $1.8 billion",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:52+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-3d13b66328be",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.45,
            "x": 0.125,
            "y": 0.27
          },
          "kind": "paragraph",
          "text": "Despite these macroeconomic factors, U.S. podcast ad revenues showed resilience by growing 26% year-over-year to $1.8 billion. In fact, podcasting continues to be one of the fastest growing digital channels, outpacing the total internet ad market (+11% year-over-year*).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0fe2dea5-073b-494c-bbdb-988baad896f0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.45,
            "x": 0.125,
            "y": 0.15
          },
          "kind": "paragraph",
          "text": "Following a year of unprecedented growth for the overall digital advertising industry in 2021, 2022 was a year of headwinds related to a slowing economy resulting in pullbacks on advertising and marketing spend.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "49a3ccbb-7283-49e9-b73a-69c93ef4b9cb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.125,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "PwC | IAB FY 2022 Podcast Ad Revenue Study *2022 PwC / IAB Internet Advertising Revenue Report",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "280dbf7f-54db-4cd2-a6db-d661ee1c1a06",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.15,
            "x": 0.125,
            "y": 0.05
          },
          "kind": "title",
          "text": "Foreword",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:30.254+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "66d360e3-839d-46d1-b9b0-550c8497c682",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "SCQA Framework",
            "slug": "scqa-framework",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
            "version": 1,
            "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
            "description": "Situation, Complication, Question, Answer - structured problem framing",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-cefa-70cd-94c0-377b88b85991",
          "evidence": "Foreword sets situation (macro), complication (headwinds), question (resilience?), answer (+26%).",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Core Message Extraction",
            "slug": "core-message-extraction",
            "status": "active",
            "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
            "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
            "version": 1,
            "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
            "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-cf25-7232-9e58-920e1fc1235c",
          "evidence": "Callout box quotes the +26% / $1.8B resilience headline.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
          "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
          "cardinality": null,
          "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
        },
        {
          "tool": {
            "name": "Emotional Appeal",
            "slug": "emotional-appeal",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
            "version": 1,
            "bodyDocId": null,
            "description": "Connecting to audience feelings rather than just logic",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de8d5-cf79-724d-aeb4-4e9c297457de",
          "evidence": "Frames market as showing 'resilience' against headwinds.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 55,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Executive summary",
            "slug": "executive-summary",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
            "version": 1,
            "bodyDocId": null,
            "description": "A condensed view of the entire argument on a single slide / block.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "7db4200e-9a04-47c8-99df-6c576a55a2f0",
          "evidence": "Foreword",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:32:05.664846+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-cf4f-7753-bcce-1142e015577d",
          "evidence": "Foreword body explicitly answers why the report matters to stakeholders.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 5,
          "from": 3,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce51-73a3-9014-40abab15dd6f",
          "evidence": "Foreword poses economic-headwinds question; exec summary delivers the +26% / 2x faster insight.",
          "position": 1,
          "objective": "Set up the headline insight: podcast advertising defied macro headwinds",
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 4,
      "type": "setup",
      "title": "Includes a legal disclaimer regarding trademarks at the bottom.",
      "function": "front_matter",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 17,
        "componentCount": 3,
        "textChars": 309,
        "nDataPoints": 0,
        "notes": "Includes a legal disclaimer regarding trademarks at the bottom.",
        "elementsJson": [
          "logo_grid",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:33.219+00",
          "seconds": 2.566,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/4",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-4",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.03,
            "w": 0.82,
            "x": 0.03,
            "y": 0.91
          },
          "kind": "disclaimer",
          "text": "Any trademarks included are trademarks of their respective owners and are not affiliated with, nor endorsed by, PricewaterhouseCoopers LLP, its subsidiaries or affiliates",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.219+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f48b5a33-48e2-47b3-9d8b-3752d00752ea",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.78,
            "x": 0.11,
            "y": 0.2
          },
          "kind": "image",
          "text": "Sponsor logos: Adswizz, Cumulus, Soundrise, iHeart, NPR, Wondery, Spotify",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo grid",
              "slug": "logo-grid",
              "status": "active",
              "canonId": "019de52c-fdd7-7409-93e5-81280a8ca215",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo-grid",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.219+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9ad867f8-d05a-4b13-ba9f-2bc8a38abb9f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.94,
            "x": 0.03,
            "y": 0.06
          },
          "kind": "title",
          "text": "Thanks to the 2022 U.S. Podcast Advertising Revenue Study Sponsors",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.219+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c46c39f3-134e-4589-bd27-a1c81dff147c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 5,
          "from": 3,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce51-73a3-9014-40abab15dd6f",
          "evidence": "Foreword poses economic-headwinds question; exec summary delivers the +26% / 2x faster insight.",
          "position": 1,
          "objective": "Set up the headline insight: podcast advertising defied macro headwinds",
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 5,
      "type": "setup",
      "function": "summarize",
      "rawType": "executive_summary",
      "block": null,
      "metadata": {
        "slideType": "executive_summary",
        "slideTypeCanon": {
          "name": "Executive summary",
          "slug": "executive_summary",
          "status": "active",
          "canonId": "019de52d-06be-73ff-81b3-f99fe7f0025e",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 83,
        "componentCount": 9,
        "textChars": 1086,
        "nDataPoints": 4,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "paragraph",
          "photo",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:34.118+00",
          "seconds": 3.445,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/5",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-5",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Up 26% year-over-year, podcasting continues to be one of the fastest growing digital channels—growing two times faster than digital advertising overall (+11%*).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-ad28b32ac366",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.875,
            "w": 0.318,
            "x": 0.682,
            "y": 0.125
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fcf84716-1540-4a0a-aa65-5c6d95c4bb3f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.03,
            "y": 0.28
          },
          "kind": "list",
          "text": "Up 26% year-over-year, podcasting continues to be one of the fastest growing digital channels—growing two times faster than digital advertising overall (+11%*).\nRevenues are projected to more than double between 2022-2025 to ~$4 billion.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1204f821-cdb6-405e-9d48-b0c319531691",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.03,
            "y": 0.62
          },
          "kind": "list",
          "text": "Advertisers across a collection of small categories are driving 28% of all revenues—indicating that the value of the channel is widely recognized.\nFor the first time since 2018, news is no longer the top revenue genre as the return of live, in-person sporting and lifestyle events generated greater interest while interest in news and political opinion content abated.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9185bf41-2ef5-4c27-8d8d-ead8cfcb793f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Year-over-year revenue growth: 26%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-b11f67ca015e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.6,
            "x": 0.03,
            "y": 0.55
          },
          "kind": "paragraph",
          "text": "Revenue growth is being fueled by investment from advertisers across multiple categories and genres.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "07fb408a-c15d-4017-a609-bfc2eb29b5bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.6,
            "x": 0.03,
            "y": 0.21
          },
          "kind": "paragraph",
          "text": "Despite economic headwinds, podcast ad revenues posted significant growth in 2022.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dd34038e-21d6-49e2-9dc3-4213266375f5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.03,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "*IAB 2022 Internet Advertising Revenue Report\nPwC I IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1f26c191-8ca2-4db6-82a8-464bbd59f3a4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.03,
            "y": 0.03
          },
          "kind": "title",
          "text": "Executive Summary",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.118+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a60f9d9a-d740-4365-a7b0-f6755967d1af",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Pyramid Principle",
            "slug": "pyramid-principle",
            "status": "active",
            "bestFor": "When the document has a single governing decision or recommendation the reader is asked to accept, and the case can be decomposed into a small number of clean groups. Strategy decks, board memos, investment committee papers.",
            "canonId": "019dd956-7cbd-7219-a477-c871e2bc1aff",
            "version": 1,
            "bodyDocId": "88b6ac56-b880-46f9-8621-ef3491ab6235",
            "description": "Lead with the answer; group three to five MECE supports beneath it; recurse one level down. Top-down hierarchical structure for any document with a single recommendation.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-cfa5-7259-bbfc-5ef85e61b399",
          "evidence": "Two top-line claims (growth; advertiser diversification) each with supporting bullets.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "When the document has a single governing decision or recommendation the reader is asked to accept, and the case can be decomposed into a small number of clean groups. Strategy decks, board memos, investment committee papers.",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": "Solves the two failure modes of expert communication at once: (1) the long climb where readers wait pages for the answer, and (2) logical mush from non-MECE groupings. Progressive disclosure lets a reader stop at any depth and get the right information.",
          "antipattern": "Chronological structure (\"what we did, what we found, what we conclude\") instead of logical hierarchy. Top-of-pyramid that is a topic (\"strategic options\") instead of an answer (\"pursue Option B because...\"). Non-MECE supports that overlap or fail to cover the universe.",
          "cardinality": null,
          "narrativePurpose": "Transfer conviction with minimum reader effort by mirroring how decision-makers consume information: answer first, scaffolding behind."
        },
        {
          "tool": {
            "name": "Chunking",
            "slug": "chunking",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
            "version": 1,
            "bodyDocId": null,
            "description": "Information grouped into chunks is remembered better - structure content in digestible units",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-cfcf-7029-bbe4-aabea3afc37d",
          "evidence": "Content grouped into two clear themed chunks with sub-bullets.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de8d5-d04d-71fb-bc48-fb54544a8d1b",
          "evidence": "Context (headwinds) -> conflict -> insight (growth) -> implication (diversification).",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 55,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Executive summary",
            "slug": "executive-summary",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
            "version": 1,
            "bodyDocId": null,
            "description": "A condensed view of the entire argument on a single slide / block.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "d0603003-8b65-49b6-9661-64f59b5f6d79",
          "evidence": "Executive Summary",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:32:05.783493+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d023-77dc-95ec-87428de233aa",
          "evidence": "Each line states an implication, not a topic.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        },
        {
          "tool": {
            "name": "Typography Hierarchy",
            "slug": "typography-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
            "version": 1,
            "bodyDocId": null,
            "description": "Using font size, weight, and style to create reading order",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-cff9-72cf-bb6c-1c7313a9dcbb",
          "evidence": "Bold lead lines vs lighter bullets create reading order.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 5,
          "from": 3,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce51-73a3-9014-40abab15dd6f",
          "evidence": "Foreword poses economic-headwinds question; exec summary delivers the +26% / 2x faster insight.",
          "position": 1,
          "objective": "Set up the headline insight: podcast advertising defied macro headwinds",
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 6,
      "type": "setup",
      "function": "front_matter",
      "rawType": "cover",
      "block": null,
      "metadata": {
        "slideType": "cover",
        "slideTypeCanon": {
          "name": "Cover",
          "slug": "cover",
          "status": "active",
          "canonId": "019de52d-05f2-729d-9f93-e0504f0a2410",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 4,
        "componentCount": 2,
        "textChars": 85,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:34.905+00",
          "seconds": 4.187,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/6",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-6",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 1,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "80e66237-edfb-445f-9de2-42a84d6d4edd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.05,
            "y": 0.4
          },
          "kind": "title",
          "text": "Market Size and Growth: U.S. 2022 Advertising Revenues & 2023-2025 Growth Projections",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0f43ad49-274d-49c0-bb1b-dda8ebb9bd0c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Facts (What)",
          "beatId": "019de8d5-cdd4-776a-81d5-4b71b01538a9",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 7,
      "type": "analysis",
      "title": "The chart uses a red bar for the most recent year (2022) to emphasize the current data point.",
      "function": "quantify_impact",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "quantify_impact",
        "functionCanon": {
          "name": "Quantify impact",
          "slug": "quantify_impact",
          "status": "active",
          "canonId": "019de52d-1630-720d-b57d-fa7f76bebd8d",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 68,
        "componentCount": 7,
        "textChars": 758,
        "nDataPoints": 15,
        "notes": "The chart uses a red bar for the most recent year (2022) to emphasize the current data point.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "callout_box",
          "bar_chart_vertical",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:34.25+00",
          "seconds": 3.333,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/7",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-7",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.32,
            "x": 0.03,
            "y": 0.25
          },
          "kind": "callout",
          "text": "Podcasting continues to be one of the fastest growing digital channels—posting higher growth rates than social media (4%), paid search (8%), display (12%), digital video (19%), and digital audio overall (21%).*",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "de4e4ed6-0137-494e-ad8e-03892560aa77",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "Podcasting continues to be one of the fastest growing digital channels—posting higher growth rates than social media (4%), paid search (8%), display (12%), digital video (19%), and digital audio overall (21%).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-d00a41c4dbd4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.35,
            "y": 0.25
          },
          "kind": "chart",
          "text": "U.S. Market Podcast Ad Revenues (2015-2022, $ millions)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "da302c7f-3ba7-4fa4-b691-788ed3ed0ff7",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Podcast ad revenue: $1.8B",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-d4c0e92d7fe5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.6,
            "x": 0.03,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "Revenues grew more than twice as fast as total internet ad revenue (+11%).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "20619c7e-231f-4efb-a998-ea25b92fba9e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.03,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "*2022 PwC / IAB Internet Advertising Revenue Report\nPwC I IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": {
            "numbered": true
          },
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a5921b25-3a9c-4338-b728-31cdda8f0ede",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.94,
            "x": 0.03,
            "y": 0.03
          },
          "kind": "title",
          "text": "Despite economic headwinds, podcast ad revenues posted strong growth in 2022, +26% to $1.8B",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:34.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "94a92519-7c62-409e-bdf5-2d953f6213ce",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d077-745a-b579-af296e297ea5",
          "evidence": "Title states insight: 'posted strong growth in 2022, +26% to $1.8B'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 92,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "AIDA Model",
            "slug": "aida-model",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-86fc-773c-813f-d416714b8413",
            "version": 1,
            "bodyDocId": null,
            "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "7121ac58-b375-4db2-810e-8c9ae543d659",
          "evidence": "The slide presents a clear and concise message, grabbing the audience's attention with a surprising statistic and providing a brief overview of the current state of podcast ad revenues.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:31:56.785918+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d14c-74dd-a239-4de8a65c803f",
          "evidence": "Each bar labeled with $ value and green growth-% triangle.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "74cd1efb-5fdf-4299-b2d8-554b748b248b",
          "evidence": "The bar chart is simple and easy to read, with a clear title and labels, effectively eliminating chartjunk.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:31:56.822524+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d0ca-75cf-adaa-6736928e80a0",
          "evidence": "Vertical bar chart appropriate for time series of revenue.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d0f7-725f-abe9-c61c7a2f50f2",
          "evidence": "2022 bar in red against black historical bars.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Principle",
            "slug": "contrast-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
            "version": 1,
            "bodyDocId": null,
            "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d178-7521-be85-3ce9bb2ecefd",
          "evidence": "Red callout bracket and red 2022 bar emphasize the headline.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data-Ink Ratio",
            "slug": "data-ink-ratio",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
            "version": 1,
            "bodyDocId": null,
            "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d1a2-711c-a934-25882b223c22",
          "evidence": "Minimal gridlines, no axis lines, clean labels.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d0a0-72eb-8050-bea35de9ffe3",
          "evidence": "Red sub-headline gives the so-what: '2x faster than total internet ad revenue'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        },
        {
          "tool": {
            "name": "Von Restorff Effect",
            "slug": "von-restorff-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
            "version": 1,
            "bodyDocId": null,
            "description": "Items that stand out are noticed and remembered - make key points visually distinct",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d123-7499-a953-4a62ac4aae0f",
          "evidence": "Red 2022 bar stands out from row of black bars.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Facts (What)",
          "beatId": "019de8d5-cdd4-776a-81d5-4b71b01538a9",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce7c-71bd-9009-590d0a938b00",
          "evidence": "Three charts (2015-2022 growth, Q4 share, 2023-2025 projection) converge on doubling by 2025.",
          "position": 2,
          "objective": "Stack revenue evidence to conclude the market is on a strong trajectory",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "analysis",
      "title": "The chart tracks four quarters (Q1-Q4) over six years. The red line indicates a decline in Q4 share, attributed to overall ad spend deceleration.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 57,
        "componentCount": 6,
        "textChars": 620,
        "nDataPoints": 24,
        "notes": "The chart tracks four quarters (Q1-Q4) over six years. The red line indicates a decline in Q4 share, attributed to overall ad spend deceleration.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:33.393+00",
          "seconds": 2.346,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/8",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-8",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Typically the quarter with the largest share by far, Q4's decreased share in 2022 reflects the overall deceleration in ad spend as the year progressed.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854e-0e04269ea199",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.7,
            "x": 0.15,
            "y": 0.32
          },
          "kind": "chart",
          "text": "U.S. Market Podcast Ad Revenue Percentage Share by Quarter (2017- 2022)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.393+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a94dd3b5-ed43-4712-a2a9-ad0da6946765",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Revenue share percentage: 29%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854e-1133ea18717c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.94,
            "x": 0.03,
            "y": 0.17
          },
          "kind": "paragraph",
          "text": "Typically the quarter with the largest share by far, Q4's decreased share in 2022 reflects the overall deceleration in ad spend as the year progressed.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.393+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ec7c9b8c-0f8a-473b-ac6d-d88bdb2170dd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.03,
            "y": 0.092
          },
          "kind": "source-note",
          "text": "Note: 1| Based on self-reported data 2| Percentage share total may not equal 100% due to rounding. PwC | IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.393+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ccfe9ce4-956d-425d-99db-190d40623534",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.85,
            "x": 0.03,
            "y": 0.06
          },
          "kind": "title",
          "text": "Q4's share of revenue fell to 29%—the lowest level seen in the last six years",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.393+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b5e81261-45bb-4d8f-aac4-47cec0e72b0c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Contrast Pairs",
            "slug": "contrast-pairs",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
            "version": 1,
            "bodyDocId": null,
            "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de8d5-d279-7388-9893-2ece66baf9c6",
          "evidence": "Q4 historical share contrasted with 2022 dip.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d1cd-7340-8174-cdf2701b7902",
          "evidence": "Title states the finding: 'Q4 share fell to 29%, lowest in six years'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d250-73d5-9d0f-643f852a5b74",
          "evidence": "Quarter labels and percentage points called out on lines.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "a2abf9af-8d86-45c4-877f-68a43cbae686",
          "evidence": "The slide compares the current state of Q4's revenue share to the previous years, creating a before-after bridge.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:31:56.894748+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d221-72f3-89b6-176a436cc5a5",
          "evidence": "Multi-line quarterly chart fits seasonality comparison.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d1f7-726e-ad0c-aba973e43331",
          "evidence": "Callout interprets decline as overall ad-spend deceleration.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Facts (What)",
          "beatId": "019de8d5-cdd4-776a-81d5-4b71b01538a9",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce7c-71bd-9009-590d0a938b00",
          "evidence": "Three charts (2015-2022 growth, Q4 share, 2023-2025 projection) converge on doubling by 2025.",
          "position": 2,
          "objective": "Stack revenue evidence to conclude the market is on a strong trajectory",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "resolution",
      "title": "The chart distinguishes between historical data (black bars) and estimates (red bars).",
      "function": "size_opportunity",
      "rawType": "market_sizing",
      "block": null,
      "metadata": {
        "slideType": "market_sizing",
        "slideTypeCanon": {
          "name": "Market sizing",
          "slug": "market_sizing",
          "status": "active",
          "canonId": "019de52d-08c8-756c-8664-733b73a7ee7b",
          "version": 1,
          "description": null
        },
        "function": "size_opportunity",
        "functionCanon": {
          "name": "Size opportunity",
          "slug": "size_opportunity",
          "status": "active",
          "canonId": "019de52d-147b-7568-8828-a74a27697618",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 24,
        "componentCount": 4,
        "textChars": 234,
        "nDataPoints": 6,
        "notes": "The chart distinguishes between historical data (black bars) and estimates (red bars).",
        "elementsJson": [
          "headline_text",
          "bar_chart_vertical"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:36.161+00",
          "seconds": 4.814,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/9",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-9",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.2
          },
          "kind": "chart",
          "text": "U.S. Market Podcast Ad Revenues Growth Projections (2023-2025, $ millions)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.161+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2b74a6ed-6438-4a83-a1ad-25d06decada4",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "U.S. Podcast Ad Revenue: $3,982.8",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:52+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-704dbeedf704",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.2,
            "x": 0.03,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "PwC | IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.161+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1d3a909d-ced3-4261-ada2-59fa08a2fcc7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.9,
            "x": 0.03,
            "y": 0.03
          },
          "kind": "title",
          "text": "Podcast revenues are projected to more than double between 2022-2025 and approach $4B",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.161+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "454e279c-54ad-405c-a8f4-8a2c7a5309ba",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d2a3-77d9-bd4e-df399754b50f",
          "evidence": "Title declares: 'projected to more than double... approach $4B'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 92,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d34e-72e9-9b8c-b393466ffb07",
          "evidence": "Each bar labeled with $ value and green YoY growth triangle.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Big Idea Formula",
            "slug": "big-idea-formula",
            "status": "active",
            "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
            "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
            "version": 1,
            "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
            "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "bf4b811f-8205-4aa5-993d-5f75b3ce830f",
          "evidence": "The slide presents a clear and concise message, stating that podcast revenues are projected to more than double between 2022-2025 and approach $4B.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:31:56.966811+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
          "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d2cd-7439-8139-fcb3c4a78542",
          "evidence": "Bar chart appropriate for historical+projection comparison.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "89df02cc-e753-459f-a128-f9e48e777213",
          "evidence": "The bar chart is used to effectively display the growth projections, making it easy to understand and visualize the data.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:31:57.00263+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d2fa-74fb-8466-3495ebd04674",
          "evidence": "Black bars for historical (2020-22), red bars for projections (2023-25).",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Principle",
            "slug": "contrast-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
            "version": 1,
            "bodyDocId": null,
            "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d324-71cb-9bec-73359c79974e",
          "evidence": "Color contrast separates fact from forecast.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Visual Hierarchy",
            "slug": "visual-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
            "version": 1,
            "bodyDocId": null,
            "description": "Order of perception through Size > Color > Position > Weight > Space",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d378-739f-839d-e5314ef244e4",
          "evidence": "Ascending bar heights reinforce the doubling story.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Facts (What)",
          "beatId": "019de8d5-cdd4-776a-81d5-4b71b01538a9",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Market Size & Growth section: revenue charts, Q4 share, projections.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de8d5-ce7c-71bd-9009-590d0a938b00",
          "evidence": "Three charts (2015-2022 growth, Q4 share, 2023-2025 projection) converge on doubling by 2025.",
          "position": 2,
          "objective": "Stack revenue evidence to conclude the market is on a strong trajectory",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 2,
        "componentCount": 2,
        "textChars": 30,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:37.851+00",
          "seconds": 6.421,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/10",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-10",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 1,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "88bf7d6f-0a94-4efb-b614-1fb9aceb0fb6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.05,
            "y": 0.4
          },
          "kind": "title",
          "text": "Ad Categories & Content Genres",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42c067a0-ef7a-4ae0-830c-7a3138c097d8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Section divider",
            "slug": "section-divider",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
            "version": 1,
            "bodyDocId": null,
            "description": "A transitional slide marking the start of a new section.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "8bbb503f-c0b1-4c89-af13-cf26df3d0712",
          "evidence": "title/headline: Ad Categories & Content Genres",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-17 03:17:51.03159+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 12,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 10,
          "name": "The Implications (So What)",
          "beatId": "019de8d5-cdfe-74cd-8cd2-1d9398b5d8ac",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Ad Categories & Content Genres analysis showing diversification and news decline.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 11,
      "type": "analysis",
      "title": "The chart uses a grouped bar format to show year-over-year changes in industry share.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 61,
        "componentCount": 6,
        "textChars": 790,
        "nDataPoints": 24,
        "notes": "The chart uses a grouped bar format to show year-over-year changes in industry share.",
        "elementsJson": [
          "headline_text",
          "bar_chart_grouped",
          "callout_box",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:36.942+00",
          "seconds": 5.442,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/11",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-11",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.4,
            "w": 0.35,
            "x": 0.63,
            "y": 0.2
          },
          "kind": "callout",
          "text": "\"Other\" includes multiple, low revenue categories that in aggregate account for a greater share (28%) than each of the individual, high revenue categories. The volume of low revenue categories reflects the channel's overall growth and accessibility.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.942+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7382d8f9-2a3e-40d7-ad6b-34d8acf2c239",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "“Other” includes multiple, low revenue categories that in aggregate account for a greater share (28%) than each of the individual, high revenue categories.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:52+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-56bdf29610f7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.05,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Podcast Ad Revenue Percentage Share by Industry Category (2021-2022)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.942+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5c0931dd-04b0-4d2c-acc1-135028873cb4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.95,
            "x": 0.04,
            "y": 0.85
          },
          "kind": "disclaimer",
          "text": "Note: 1| Data in bars are rounded 2| Based on self-reported data 3| Excludes Retail DTC due to a lack of submission data for this particular category YoY. *Other includes... **U.S. Department of Commerce, 2/17/23",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.942+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3c2a27c2-bb64-4ba4-b709-3ce63c8f1280",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Ad Revenue Percentage Share: 28%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:52+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-595804c8d44f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.8,
            "x": 0.03,
            "y": 0.07
          },
          "kind": "title",
          "text": "There is a wide range of advertising categories that podcasting appeals to",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.942+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "980e2c9d-ac68-45eb-aeb7-37af2baad9a6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d3a7-778f-ba92-6ba268d24a5e",
          "evidence": "Title makes the claim 'wide range of advertising categories that podcasting appeals to'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d481-706c-93a6-3aa33f85082e",
          "evidence": "Percentage labels on each bar.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d3ff-700f-b732-7195273bdb42",
          "evidence": "Grouped bar chart compares 2021 vs 2022 by category.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d456-75aa-8004-988edb5eb338",
          "evidence": "Two-color encoding (black 2021, red 2022) consistent across deck.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d42c-7038-80d6-c69b690ffe9a",
          "evidence": "Repeated paired bars across categories enable scan comparison.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d3d6-77d9-bb04-95cafd150a39",
          "evidence": "Callout extracts insight: 'Other' aggregates to 28% — diversification.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 12,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 10,
          "name": "The Implications (So What)",
          "beatId": "019de8d5-cdfe-74cd-8cd2-1d9398b5d8ac",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Ad Categories & Content Genres analysis showing diversification and news decline.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 12,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de8d5-cea7-7421-867f-8e8ef803dc16",
          "evidence": "Grouped bar charts split revenue by industry category and content genre 2021 vs 2022.",
          "position": 3,
          "objective": "Show advertiser diversification and genre rotation by segment",
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "type": "analysis",
      "title": "The slide highlights a shift in podcast ad revenue away from news toward sports, society, and comedy.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 56,
        "componentCount": 5,
        "textChars": 968,
        "nDataPoints": 22,
        "notes": "The slide highlights a shift in podcast ad revenue away from news toward sports, society, and comedy.",
        "elementsJson": [
          "headline_text",
          "bar_chart_grouped",
          "callout_box",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:38.172+00",
          "seconds": 6.668,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/12",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-12",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.35,
            "w": 0.32,
            "x": 0.65,
            "y": 0.25
          },
          "kind": "callout",
          "text": "Sports, society and culture, and comedy revenues have overtaken news as major live, in-person sporting and lifestyle events returned, while news and political opinion content slowed.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:38.172+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2c842574-61d6-474a-83e8-296cf9db5e5f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.05,
            "y": 0.23
          },
          "kind": "chart",
          "text": "Podcast Ad Revenue Percentage Share by Content Genre (2021-2022)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:38.172+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b828d44d-62d0-49c9-b1c0-63738354cd46",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.95,
            "x": 0.03,
            "y": 0.85
          },
          "kind": "disclaimer",
          "text": "Note: 1| Data in bars are rounded 2| Based on self-reported data 3| Excludes Other (21%) which is largely driven by one respondent's heavy investment. Additional genres not shown: Religion & Spirituality (0.5%), Technology (0.6%), Science (0.4%), Fiction (0.4%), Kids & Family (0.3%), Education (0.1%) and, Leisure (0.02%). *Reconciled to align with 2019 genre categories: News includes 2022 News (11.9%), Political Opinion Left (0.0%), Political Opinion Right (0.0%), Political Opinion Center (0.1%); Health & Fitness includes 2022 Physical Health & Fitness (0.4%), Mental / Emotional Health (1.3%) **Axios, 1/3/23; 7/12/22",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:38.172+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4daaecac-a661-4bc3-ae51-d8c3d3559022",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Revenue share percentage: 19%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-f48ae93ea7d6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.78,
            "x": 0.03,
            "y": 0.07
          },
          "kind": "title",
          "text": "News is no longer the top revenue genre—for the first time since 2018",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:38.172+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "63f33624-860f-476f-a4cc-96ce6a132855",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "06696611-51ea-4f18-8a19-8598455bcdfe",
          "evidence": "Similar to slide 5, the chart groups ad revenue percentage shares by content genre, somewhat resembling a matrix.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:31:57.114615+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d4aa-709b-8f06-a980920aa8a2",
          "evidence": "Title states reversal: 'News is no longer the top revenue genre'.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 92,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d57d-7218-b9e3-3254fbcb7145",
          "evidence": "Each bar carries its percentage label.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d4fe-737d-a17c-fdcba726b20c",
          "evidence": "Grouped bar chart fits the year-over-year shift comparison.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d527-75cc-98b4-ecd89ab7bd2e",
          "evidence": "Black for 2021, red for 2022 bars.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Principle",
            "slug": "contrast-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
            "version": 1,
            "bodyDocId": null,
            "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d552-75e8-8258-0e97cac0d124",
          "evidence": "Direct visual contrast of two years per genre.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Core Message Extraction",
            "slug": "core-message-extraction",
            "status": "active",
            "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
            "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
            "version": 1,
            "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
            "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d5a6-7219-ba66-02c2697e9bff",
          "evidence": "Headline isolates a single reversal as the key insight.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
          "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
          "cardinality": null,
          "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d4d4-767e-bd21-fde166d686e0",
          "evidence": "Callout explains why: events returned, election cycle ended.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 12,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 10,
          "name": "The Implications (So What)",
          "beatId": "019de8d5-cdfe-74cd-8cd2-1d9398b5d8ac",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Ad Categories & Content Genres analysis showing diversification and news decline.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 12,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de8d5-cea7-7421-867f-8e8ef803dc16",
          "evidence": "Grouped bar charts split revenue by industry category and content genre 2021 vs 2022.",
          "position": 3,
          "objective": "Show advertiser diversification and genre rotation by segment",
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 3,
        "componentCount": 2,
        "textChars": 43,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:33.69+00",
          "seconds": 2.145,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/13",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-13",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 1,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.69+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "49fb3566-4ccf-4eb8-be70-5a5e47c6907e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.05,
            "y": 0.4
          },
          "kind": "title",
          "text": "Key Industry Developments & Recommendations",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.69+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e28851d6-0406-46a5-94e9-6dffec7db015",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Section divider",
            "slug": "section-divider",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
            "version": 1,
            "bodyDocId": null,
            "description": "A transitional slide marking the start of a new section.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "e66afd42-5e1b-4dc5-898b-07a56062f7d8",
          "evidence": "title/headline: Key Industry Developments & Recommendations",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-17 03:17:51.1+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 15,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 13,
          "name": "The Action (Now What)",
          "beatId": "019de8d5-ce27-72ce-ac9e-7438afaf7c87",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 14,
      "type": "analysis",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 62,
        "componentCount": 6,
        "textChars": 1821,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "paragraph",
          "numbered_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 21:23:33.928+00",
          "seconds": 7.127,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/14",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-14",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "It is evident that, even in a down economy, advertisers turn to podcasting as a channel to meet the increased listener demand for diverse, engaging content that aligns with their interests.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 16:34:48+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-3be8-755a-95d8-8a2b09c4c71a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.03,
            "y": 0.95
          },
          "kind": "disclaimer",
          "text": "PwC | IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:33.928+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "26fee4f6-5eb1-40dd-b594-9e214eb6eee4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.46,
            "x": 0.03,
            "y": 0.45
          },
          "kind": "list",
          "text": "1. Growth in Programmatic Buying: Programmatic buying is expected to grow in response to advertiser demand for contextual audience targeting that enables the generation of advanced user insights. To power this growth, IAB and IAB Tech Lab are facilitating buyer-seller collaboration to standardize signals and enable the ecosystem to provide the same level of transparency into podcast that advertisers have into other digital channels. Review and contribute to IAB’s guidelines for Programmatic Signaling for Podcast Inventory—open for public comment.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:33.928+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91b503aa-2459-46f8-a05e-459819bf9db0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.46,
            "x": 0.51,
            "y": 0.45
          },
          "kind": "list",
          "text": "2. Advancements in Brand Safety: Last year, the podcast industry made great advancements in brand safety and suitability targeting solutions via contextual transcript analysis—including the opportunity to exclude individual podcast episodes. As a result, advertiser awareness of these solutions are expected to grow and thus, advertisers will be more likely to tap into them. To aid in this process, IAB is proposing the creation of a centralized Transcription Clearing House to enable podcast ad tech providers to more easily provide brand safety and suitability results to advertisers at scale—and therefore further support programmatic activations.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:33.928+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9b7ab964-bdcb-4e60-83e0-c4aae5e81d7b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.94,
            "x": 0.03,
            "y": 0.14
          },
          "kind": "paragraph",
          "text": "It is evident that, even in a down economy, advertisers turn to podcasting as a channel to meet the increased listener demand for diverse, engaging content that aligns with their interests. As the podcast advertising landscape matures, below are a few key industry developments followed by recommendations for how to capitalize on these trends.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:33.928+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "591e8e62-7cf2-4f94-8e1f-7ce56252c6bc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.5,
            "x": 0.03,
            "y": 0.06
          },
          "kind": "title",
          "text": "Key Industry Developments & Recommendations",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 21:23:33.928+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45b823b3-3997-41c1-9ad9-6c0a823b7fd6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chunking",
            "slug": "chunking",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
            "version": 1,
            "bodyDocId": null,
            "description": "Information grouped into chunks is remembered better - structure content in digestible units",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d5cf-7030-b61c-797dc1373a26",
          "evidence": "Two numbered, boxed recommendations split content into digestible chunks.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Call to action",
            "slug": "call-to-action",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4bbb-702a-9ead-82daf188bb7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Explicit prescription of what the audience should do next.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "14795b17-fbc2-4abd-a8f6-4b40d39fe1c6",
          "evidence": "The callout seems to be emphasizing a key point, potentially leading to a call to action.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-17 03:17:50.956485+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Core Message Extraction",
            "slug": "core-message-extraction",
            "status": "active",
            "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
            "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
            "version": 1,
            "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
            "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d64f-748a-96a1-9a98b872640c",
          "evidence": "Lead red sentence frames why advertisers turn to podcasts.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
          "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
          "cardinality": null,
          "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
        },
        {
          "tool": {
            "name": "Law of Proximity",
            "slug": "law-of-proximity",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf73-719c-b493-9d33377a81a7",
            "version": 1,
            "bodyDocId": null,
            "description": "Close elements are perceived as related - group related content spatially",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d626-7359-94c7-cf3a75daf10c",
          "evidence": "Each recommendation bounded in its own box grouping related text.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "0f3219bb-6d81-4a34-acaa-1e74ca9ff40d",
          "evidence": "The slide contains a list/bullet points with key industry developments and recommendations.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-17 03:17:50.919437+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Typography Hierarchy",
            "slug": "typography-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
            "version": 1,
            "bodyDocId": null,
            "description": "Using font size, weight, and style to create reading order",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d5f9-7388-9383-8b86f1188acc",
          "evidence": "Bold red headers, body text, indented sub-bullets.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 15,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 13,
          "name": "The Action (Now What)",
          "beatId": "019de8d5-ce27-72ce-ac9e-7438afaf7c87",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 15,
          "from": 14,
          "loop": {
            "name": "41_so_what_cascade",
            "slug": "41-so-what-cascade",
            "status": "active",
            "bestFor": "Data presentations, executive summaries, driving to recommendations",
            "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
            "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
            "familyLabel": null
          },
          "matchId": "019de8d5-ced0-7622-8f44-4e252bcf3fc7",
          "evidence": "Numbered developments (programmatic, brand safety, attention) each paired with recommended action.",
          "position": 4,
          "objective": "Translate industry developments into recommended actions for advertisers",
          "confidence": 62,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 15,
      "type": "analysis",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 51,
        "componentCount": 5,
        "textChars": 1257,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "numbered_list",
          "callout_box",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:40.774+00",
          "seconds": 8.809,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/15",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-15",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "As the overall digital advertising measurement discussion evolves from an opportunity-to-see/listen to attention and business outcomes, podcast advertising is expected to further interest ad buyers looking to reach consumers who are highly engaged.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:47:53+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa3-77ce-854d-994e10804bae",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.38,
            "x": 0.58,
            "y": 0.28
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:40.774+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5296a0ef-ecc6-49a3-9725-81ad0c15cb20",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.48,
            "x": 0.03,
            "y": 0.65
          },
          "kind": "list",
          "text": "Coming in Q4: IAB’s Podcast Report Part II: Stay tuned for IAB’s 2023 Podcast Report Part II which will examine the drivers, strategies, and tactics related to 2022 revenues as well as, for the first time ever, reveal insights from the current year’s (2023) performance. The report will be released at IAB’s Audio Leadership Gathering in October.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:40.774+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "308d44fa-6cf8-472f-af34-ce4afc2d2d6e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.48,
            "x": 0.03,
            "y": 0.22
          },
          "kind": "list",
          "text": "The Rise of the Attention Economy: As the overall digital advertising measurement discussion evolves from an opportunity-to-see/listen to attention and business outcomes, podcast advertising is expected to further interest ad buyers looking to reach consumers who are highly engaged and leaned into the content they’re consuming. IAB is spearheading initiatives to set standards/benchmarks for how new attention metrics can be applied across media channels, including podcasting, and inform media channel mixes. Join IAB’s “Attention Task Force” to be part of the conversation. Go here to learn more and here to sign up.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:40.774+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c8d7bc50-3d4e-4bac-88f0-7db28c1a5d16",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.03,
            "y": 0.05
          },
          "kind": "title",
          "text": "Key Industry Developments & Recommendations",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:40.774+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "57f7631b-0065-4295-92e7-b260bae9201d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chunking",
            "slug": "chunking",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
            "version": 1,
            "bodyDocId": null,
            "description": "Information grouped into chunks is remembered better - structure content in digestible units",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d679-74dd-9c86-f901ae086660",
          "evidence": "Two numbered recommendation blocks parallel slide 14.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Law of Proximity",
            "slug": "law-of-proximity",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf73-719c-b493-9d33377a81a7",
            "version": 1,
            "bodyDocId": null,
            "description": "Close elements are perceived as related - group related content spatially",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d6cf-7022-a0c1-2e602353e23e",
          "evidence": "Boxed groupings keep each initiative visually self-contained.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Law of Similarity",
            "slug": "law-of-similarity",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c025-70d9-a411-8efa41ae179b",
            "version": 1,
            "bodyDocId": null,
            "description": "Similar-looking elements perceived as related - consistent styling for related concepts",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d6f9-7642-87c7-64a316d291fb",
          "evidence": "Same template as slide 14 signals continuation of recommendations.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "28536f6b-891c-4273-881a-27f591f20a29",
          "evidence": "The slide contains list/bullet points with key industry developments and recommendations.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-17 03:17:51.030494+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Typography Hierarchy",
            "slug": "typography-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ba98-77ab-9513-ff2344da8bc7",
            "version": 1,
            "bodyDocId": null,
            "description": "Using font size, weight, and style to create reading order",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d6a5-744e-a3a6-e208518fb035",
          "evidence": "Header / body / bullet hierarchy mirrors prior slide.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 15,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 13,
          "name": "The Action (Now What)",
          "beatId": "019de8d5-ce27-72ce-ac9e-7438afaf7c87",
          "matchId": "019de8d5-cda9-774c-85b6-bcf8d9eae95d",
          "beatType": null,
          "evidence": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        }
      ],
      "loops": [
        {
          "to": 15,
          "from": 14,
          "loop": {
            "name": "41_so_what_cascade",
            "slug": "41-so-what-cascade",
            "status": "active",
            "bestFor": "Data presentations, executive summaries, driving to recommendations",
            "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
            "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
            "familyLabel": null
          },
          "matchId": "019de8d5-ced0-7622-8f44-4e252bcf3fc7",
          "evidence": "Numbered developments (programmatic, brand safety, attention) each paired with recommended action.",
          "position": 4,
          "objective": "Translate industry developments into recommended actions for advertisers",
          "confidence": 62,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 16,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix",
      "block": null,
      "metadata": {
        "slideType": "appendix",
        "slideTypeCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-0762-71f8-b564-89ab863301cc",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 2,
        "componentCount": 2,
        "textChars": 38,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:33.973+00",
          "seconds": 2.007,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/16",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-16",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 1,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": "Two people recording a podcast",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.973+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f469e8c1-07c3-471e-ae7c-23739f9e2779",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.25,
            "x": 0.07,
            "y": 0.16
          },
          "kind": "title",
          "text": "Appendix",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.973+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a198d288-4ab4-433e-ac49-5ba728a8f095",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 17,
      "type": "setup",
      "function": "summarize",
      "rawType": "appendix_data",
      "block": null,
      "metadata": {
        "slideType": "appendix_data",
        "slideTypeCanon": {
          "name": "Appendix data",
          "slug": "appendix_data",
          "status": "active",
          "canonId": "019de52d-078a-745b-9ee4-c15f2f539acd",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 18,
        "componentCount": 3,
        "textChars": 339,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "data_table"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:33.845+00",
          "seconds": 1.832,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/17",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-17",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.036,
            "y": 0.95
          },
          "kind": "paragraph",
          "text": "PwC | IAB FY 2022 Podcast Ad Revenue Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.845+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e2f91765-05b2-4a50-90d5-872a9cdc8e51",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.886,
            "x": 0.057,
            "y": 0.224
          },
          "kind": "table",
          "text": "Terminology, Definition, Survey Options. Industry Category, Business categories into which Podcast advertisers may be grouped, [List of categories]. Content Genre, Categories of thematic subject matter into which Podcast programming may be assigned, [List of genres].",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.845+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8937b043-db3e-4f3b-a36d-e84ca6346f89",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.44,
            "x": 0.036,
            "y": 0.06
          },
          "kind": "title",
          "text": "Definitions and Survey Options",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:33.845+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "720bd1fa-6d9d-4c91-b872-8b5c8ecd1b8a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chunking",
            "slug": "chunking",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-abab-72ce-b64c-2924cc83cf39",
            "version": 1,
            "bodyDocId": null,
            "description": "Information grouped into chunks is remembered better - structure content in digestible units",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de8d5-d74f-77ae-afb1-d37a480248a4",
          "evidence": "Two-column split (Industry Category vs Content Genre) groups taxonomy.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data-Ink Ratio",
            "slug": "data-ink-ratio",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
            "version": 1,
            "bodyDocId": null,
            "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de8d5-d724-703a-9e5e-c749d8ea9119",
          "evidence": "Plain definitions table without decoration.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 13:16:58.964925+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Table data",
            "slug": "table-data",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4fab-7168-a82f-b847350a006d",
            "version": 1,
            "bodyDocId": null,
            "description": "Tabular layouts of structured data.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "4480bd0b-4c8f-46bc-8d9a-b6d82f3b5501",
          "evidence": "The slide contains a table/data with definitions and survey options.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-17 03:17:51.138242+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 18,
      "type": "setup",
      "function": "summarize",
      "rawType": "appendix_methodology",
      "block": null,
      "metadata": {
        "slideType": "appendix_methodology",
        "slideTypeCanon": {
          "name": "Appendix methodology",
          "slug": "appendix_methodology",
          "status": "active",
          "canonId": "019de52d-07d9-726c-8599-167f2d2ffaa7",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 74,
        "componentCount": 8,
        "textChars": 1176,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:36.091+00",
          "seconds": 3.965,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/18",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-18",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.35,
            "w": 0.45,
            "x": 0.035,
            "y": 0.48
          },
          "kind": "list",
          "text": "Key aspects to create this study include: Designing the process to maintain participant anonymity; Designing each survey based on relevant industry topics; Obtaining advertising revenue data directly; Data variance; 2022 market sizing; U.S. only scope.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7c434f03-5808-4733-b14a-1f94c75ebcc4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.36,
            "x": 0.6,
            "y": 0.38
          },
          "kind": "list",
          "text": "Compiling a database of the largest Podcast advertising revenue generators; Conducting one quantitative online survey; Requesting and compiling specific data items; Performing a Podcast advertising market sizing in 2022; Analysing the findings.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c904f1eb-1b42-4cd1-9ff9-6e3913d16b56",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.45,
            "x": 0.035,
            "y": 0.37
          },
          "kind": "paragraph",
          "text": "A short survey was distributed to Podcast companies in early 2023 with four key questions; understanding 2022 Podcast advertising revenues, forecasted revenue growth from 2023-2025 as well as revenue by industry category and content genre.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "46b64d45-e3d4-41b0-80bf-35abf92ec779",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.36,
            "x": 0.6,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "The methodology evolved from the methodology used to create the full-year internet advertising revenue report since 1996. The reporting process includes:",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4ea52a65-5c0b-44f3-8da0-6725304814be",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.45,
            "x": 0.035,
            "y": 0.27
          },
          "kind": "paragraph",
          "text": "The Podcast Advertising Revenue Study is part of an ongoing IAB mission to provide a barometer of Podcast advertising growth in the U.S. IAB is committed to achieve differentiation from existing estimates and accomplish industry-wide acceptance.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a9c6875e-459d-497f-b4e8-6c3d938c4a8f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.13,
            "x": 0.6,
            "y": 0.22
          },
          "kind": "title",
          "text": "Methodology",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "475513a1-bfcb-47df-8ab0-7bb493dcf1a7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.43,
            "x": 0.035,
            "y": 0.05
          },
          "kind": "title",
          "text": "Study Scope and Methodology",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7d889965-b791-4a9a-aa70-2fd009c7cbd6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.07,
            "x": 0.035,
            "y": 0.21
          },
          "kind": "title",
          "text": "Scope",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:36.091+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "adbfb08b-dea2-4fa4-821f-2f54d9f88eb8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "a3e9a071-7de1-4ca5-8f0d-37694f934812",
          "evidence": "The slide contains list/bullet points with study scope and methodology.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-17 03:17:51.21023+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 19,
      "type": "setup",
      "function": "summarize",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 38,
        "componentCount": 3,
        "textChars": 1019,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview",
          "runId": null,
          "at": "2026-07-17 03:21:44.123+00",
          "seconds": 2.291,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/19",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-19",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.2,
            "w": 0.82,
            "x": 0.09,
            "y": 0.35
          },
          "kind": "paragraph",
          "text": "IAB U.S. Podcast Advertising Study is prepared by PricewaterhouseCoopers LLP (\"PwC\") on an ongoing basis, with results released annually. Commissioned by the Interactive Advertising Bureau's (IAB) Audio Industry Working Group in 2017, this study uses data and information reported directly to PwC from companies that generate revenue on Podcast platforms. The results reported are considered to be a reasonable measurement of Podcast advertising revenues because much of the data is compiled directly from the revenue generating companies.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "description",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:21:44.123+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "08006261-2342-476d-9e3b-ffbdf35a6b3f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.82,
            "x": 0.09,
            "y": 0.54
          },
          "kind": "paragraph",
          "text": "The report is conducted independently by PwC, including research by their in-house market research team, PwC Research, on behalf of the IAB. PwC does not audit the information and provides no opinion or other form of assurance with respect to the information. Only aggregate results are published, and individual company information is held in strict confidence with PwC. Further details regarding scope and methodology are provided in the appendix of this report.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "description",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:21:44.123+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8eb23a45-0906-4849-ab4d-4490b209ef78",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.035,
            "y": 0.05
          },
          "kind": "title",
          "text": "About this Study",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:21:44.123+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c31f080c-7cee-4a2e-a9c3-09e9c5063b9f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 20,
      "type": "appendix",
      "function": "establish_context",
      "rawType": "appendix",
      "block": null,
      "metadata": {
        "slideType": "appendix",
        "slideTypeCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-0762-71f8-b564-89ab863301cc",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 5,
        "textChars": 567,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "logo_grid",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:37.893+00",
          "seconds": 5.494,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/20",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-20",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.13,
            "x": 0.035,
            "y": 0.585
          },
          "kind": "image",
          "text": "PwC logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.893+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1fdaafb9-f54c-41ea-b11d-209ff90a69c7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.13,
            "x": 0.035,
            "y": 0.285
          },
          "kind": "image",
          "text": "IAB logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.893+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f09f21e-7e5e-4399-bac5-88ebe4eb8b4d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.8,
            "x": 0.165,
            "y": 0.59
          },
          "kind": "paragraph",
          "text": "As business, accounting, and tax advisors to many of the world's leading technology, media, and telecommunications (TMT) companies, PwC (www.pwc.com/us/tmt) has an insider's view of trends and developments driving the industry...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.893+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5840135a-9ad2-4358-9e5c-82d4c9c7f104",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.8,
            "x": 0.165,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "The Interactive Advertising Bureau empowers the media and marketing industries to thrive in the digital economy. Its membership comprises more than 700 leading media companies, brands, agencies, and the technology firms responsible for selling, delivering, and optimizing digital ad marketing campaigns...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.893+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a2c11536-003c-417b-8829-c25b2bf15277",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.29,
            "x": 0.035,
            "y": 0.05
          },
          "kind": "title",
          "text": "About IAB and PwC",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:37.893+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "22f690be-baf8-444b-be56-122716aea556",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 21,
      "type": "appendix",
      "function": "other",
      "rawType": "appendix",
      "block": null,
      "metadata": {
        "slideType": "appendix",
        "slideTypeCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-0762-71f8-b564-89ab863301cc",
          "version": 1,
          "description": null
        },
        "function": "other",
        "functionCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-15e1-75bc-99dc-07732380e2ce",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 62,
        "componentCount": 8,
        "textChars": 567,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "logo_grid",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:35.453+00",
          "seconds": 2.719,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/21",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-21",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.07,
            "w": 0.928,
            "x": 0.036,
            "y": 0.865
          },
          "kind": "disclaimer",
          "text": "PwC has exercised reasonable care in the collecting, processing and reporting of this information but has not independently verified, validated, or audited the data to verify the accuracy or completeness of the information.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ae85d7bd-f25e-477a-bf89-ffb8e8d1d62b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.105,
            "x": 0.516,
            "y": 0.197
          },
          "kind": "image",
          "text": "PwC logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2e5ff60b-aa40-47a5-b903-45fe015c265a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.185,
            "x": 0.094,
            "y": 0.225
          },
          "kind": "image",
          "text": "IAB logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9dd8144c-ec39-40bd-96f7-0b37206a1ea8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.516,
            "y": 0.402
          },
          "kind": "list",
          "text": "CJ Bangah, Digital Platform Subsector Leader, christina.j.bangah@pwc.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "389c92ba-cd5c-4b4f-b4fa-836affe23c90",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.094,
            "y": 0.402
          },
          "kind": "list",
          "text": "Chris Bruderle, Vice President, Industry Insights & Content Strategy, chris@iab.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9229f23f-80bf-433b-8689-a2c70e9849e7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.094,
            "y": 0.638
          },
          "kind": "list",
          "text": "Meredith Guiness, Senior Manager, Research & Insights, meredith@iab.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b4893288-a4db-499b-a5d1-1c210b2de6b9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.516,
            "y": 0.638
          },
          "kind": "list",
          "text": "Stephen Krasnow, Senior Manager, Customer Transformation, stephen.krasnow@pwc.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ebc9d25d-5d40-4872-b5fb-deda76f317b3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.335,
            "x": 0.036,
            "y": 0.06
          },
          "kind": "title",
          "text": "Contacts: IAB and PwC",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e353a8c3-416c-44c1-8d6b-005240e8399f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 22,
      "type": "setup",
      "function": "summarize",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 18,
        "componentCount": 2,
        "textChars": 400,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 18:43:35.043+00",
          "seconds": 2.245,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5de0-76bd-a167-6eb73ea85909/22",
        "deck": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909",
        "deckAnchor": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909#slide-22",
        "deckJson": "/decks/019dd923-5de0-76bd-a167-6eb73ea85909.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.96,
            "x": 0.02,
            "y": 0.9
          },
          "kind": "disclaimer",
          "text": "© 2023 PwC. All rights reserved. PwC refers to the U.S. member firm or one of its subsidiaries or affiliates, and may sometimes refer to the PwC network. Each member firm is a separate legal entity. Please see www.pwc.com/structure for further details. This content is for general information purposes only, and should not be used as a substitute for consultation with professional advisors.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.043+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a94182b9-4455-498a-b981-f8c681110622",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.25,
            "x": 0.05,
            "y": 0.2
          },
          "kind": "title",
          "text": "Thank you",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 18:43:35.043+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "35fb1c29-12cb-47a6-a8a0-a6c6a4a2537b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 6,
      "to": 9,
      "label": "The Facts (What)",
      "description": "Market Size & Growth section: revenue charts, Q4 share, projections."
    },
    {
      "from": 10,
      "to": 12,
      "label": "The Implications (So What)",
      "description": "Ad Categories & Content Genres analysis showing diversification and news decline."
    },
    {
      "from": 13,
      "to": 15,
      "label": "The Action (Now What)",
      "description": "Key Industry Developments & Recommendations: programmatic, brand safety, attention metrics."
    }
  ],
  "loops": [
    {
      "from": 3,
      "to": 5,
      "label": "Aha Moment",
      "description": "Set up the headline insight: podcast advertising defied macro headwinds"
    },
    {
      "from": 7,
      "to": 9,
      "label": "Pattern Hunter",
      "description": "Stack revenue evidence to conclude the market is on a strong trajectory"
    },
    {
      "from": 11,
      "to": 12,
      "label": "Segmentation Split",
      "description": "Show advertiser diversification and genre rotation by segment"
    },
    {
      "from": 14,
      "to": 15,
      "label": "So What Cascade",
      "description": "Translate industry developments into recommended actions for advertisers"
    }
  ]
}