{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5e88-73ef-bd5c-b82d3deac1f2",
  "slug": "6d4641ef060fa717",
  "title": "2017 Accel The Factory is Cranking",
  "subtitle": "Accel",
  "author": "Accel",
  "pageCount": 25,
  "kind": "consulting-deck",
  "orientation": "landscape",
  "aspectRatio": 1.778,
  "document": {
    "id": "019dd923-5e88-73ef-bd5c-b82d3deac1f2",
    "slug": "6d4641ef060fa717",
    "title": "2017 Accel The Factory is Cranking",
    "rawTitle": "2017 Accel The Factory is Cranking",
    "authorId": "Accel",
    "authorName": "Accel",
    "authorDisplay": "Accel",
    "kind": {
      "slug": "consulting-deck",
      "label": "Consulting deck"
    },
    "sourceType": {
      "slug": "vc_research",
      "label": "VC research"
    },
    "fileName": "2017-Accel-The-Factory-is-Cranking.pdf",
    "sourceUrl": null,
    "sourceDate": "2017-01-01 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-25 11:55:48+00",
    "status": "ready",
    "pageCount": 25,
    "orientation": "landscape",
    "aspectRatio": 1.778,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/6d4641ef060fa717",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 25,
    "pagesIndexed": 25,
    "pagesWithImages": 25,
    "pagesWithMetadata": 25,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 120,
    "chartCount": 20,
    "metricSlides": 0,
    "toolMatches": 53,
    "documentToolMatches": 0,
    "frameworkMatches": 6,
    "arcMatches": 2,
    "beatMatches": 7,
    "loopMatches": 3,
    "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": "019de06b-aecc-7241-9873-050b43507aae",
        "evidence": "Deck mirrors agenda's three sections: market facts (5-16), Top-100 implications (18-21), 2018 actions (23).",
        "isPrimary": true,
        "confidence": 72,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "arc": {
          "name": "The Mountain",
          "slug": "mountain",
          "status": "active",
          "bestFor": "Case studies, success stories, dramatic reveals",
          "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
        "evidence": "Builds tension across market data, climaxes at Euroscape map (p19), resolves with 2018 outlook.",
        "isPrimary": false,
        "confidence": 55,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "beats": [
      {
        "to": 16,
        "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": 2,
        "name": "The Facts (What)",
        "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
        "matchId": "019de06b-aecc-7241-9873-050b43507aae",
        "beatType": null,
        "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      },
      {
        "to": 21,
        "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": 18,
        "name": "The Implications (So What)",
        "beatId": "019de06b-af32-704e-a842-41bb4146a7e7",
        "matchId": "019de06b-aecc-7241-9873-050b43507aae",
        "beatType": null,
        "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      },
      {
        "to": 23,
        "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": 23,
        "name": "The Action (Now What)",
        "beatId": "019de06b-af66-773e-a50d-6c7916d18c0d",
        "matchId": "019de06b-aecc-7241-9873-050b43507aae",
        "beatType": null,
        "evidence": "'Crystal balling 2018' lists forward investment themes.",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 72
      },
      {
        "to": 4,
        "arc": {
          "name": "The Mountain",
          "slug": "mountain",
          "status": "active",
          "bestFor": "Case studies, success stories, dramatic reveals",
          "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 1,
        "name": "Setup & Stakes",
        "beatId": "019de06b-afc9-7123-a55d-c5c9ea2613a0",
        "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
        "beatType": null,
        "evidence": "Cover, portfolio scale, agenda set the stakes.",
        "position": 1,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 16,
        "arc": {
          "name": "The Mountain",
          "slug": "mountain",
          "status": "active",
          "bestFor": "Case studies, success stories, dramatic reveals",
          "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 5,
        "name": "Rising Action",
        "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
        "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
        "beatType": null,
        "evidence": "Layered evidence about SaaS market and EU vs US.",
        "position": 2,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 21,
        "arc": {
          "name": "The Mountain",
          "slug": "mountain",
          "status": "active",
          "bestFor": "Case studies, success stories, dramatic reveals",
          "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 17,
        "name": "Climax",
        "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
        "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
        "beatType": null,
        "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
        "position": 3,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 25,
        "arc": {
          "name": "The Mountain",
          "slug": "mountain",
          "status": "active",
          "bestFor": "Case studies, success stories, dramatic reveals",
          "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 22,
        "name": "Resolution",
        "beatId": "019de06b-b0a5-7044-a993-83d36bed5151",
        "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
        "beatType": null,
        "evidence": "Crystal Balling, thank-you, disclaimer close out.",
        "position": 4,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      }
    ],
    "loops": [
      {
        "to": 9,
        "from": 5,
        "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
        "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
        "position": 1,
        "objective": "Stack independent evidence that SaaS market is hot",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 16,
        "from": 10,
        "loop": {
          "name": "04_tale_two_worlds",
          "slug": "04-tale-two-worlds",
          "status": "active",
          "bestFor": "Competitive analysis, benchmarking, case for change",
          "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
          "description": "Show the gap between two states to drive urgency or highlight opportunity",
          "familyLabel": null,
          "categoryName": "Comparison",
          "categorySlug": "comparison"
        },
        "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
        "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
        "position": 2,
        "objective": "Position EU SaaS as comparable to US benchmark",
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 21,
        "from": 18,
        "loop": {
          "name": "06_zoom_in",
          "slug": "06-zoom-in",
          "status": "active",
          "bestFor": "Technical deep-dives, case studies, detailed analysis",
          "canonId": "019dd956-6846-74db-82be-dff5b058b072",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
          "description": "Start broad, then progressively focus on specific details that prove your point",
          "familyLabel": null,
          "categoryName": "Analysis",
          "categorySlug": "analysis"
        },
        "matchId": "019de06b-b13b-75a0-8da3-7cb3fe724690",
        "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
        "position": 3,
        "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Social Proof",
          "slug": "social-proof",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
          "version": 1,
          "bodyDocId": null,
          "description": "People adapt behavior based on what others do - show adoption and testimonials",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b1d5-71cd-95de-28990d00f7fe",
        "evidence": "Portfolio company logos signal traction.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "The Rule of Three",
          "slug": "the-rule-of-three",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
          "version": 1,
          "bodyDocId": null,
          "description": "Ideas presented in threes are more memorable and satisfying",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b2e8-73b8-91e3-beb743214f70",
        "evidence": "Three-item agenda list.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Social Proof",
          "slug": "social-proof",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
          "version": 1,
          "bodyDocId": null,
          "description": "People adapt behavior based on what others do - show adoption and testimonials",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b4c2-7377-a04c-91b9c0bf717d",
        "evidence": "Logos of public SMB software companies validate scale.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Social Proof",
          "slug": "social-proof",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
          "version": 1,
          "bodyDocId": null,
          "description": "People adapt behavior based on what others do - show adoption and testimonials",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b5a5-746c-b620-1a27bae68b64",
        "evidence": "Logo grid of recent IPOs as proof points.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b6f9-733e-9937-9e4badcd5c82",
        "evidence": "Bars compare 2008-10 vs 2014-16 EU SaaS company creation.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Social Proof",
          "slug": "social-proof",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
          "version": 1,
          "bodyDocId": null,
          "description": "People adapt behavior based on what others do - show adoption and testimonials",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-bb46-737c-ac7f-84ef2da9e481",
        "evidence": "Hundreds of company logos signal market depth.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "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": "019de06b-b319-7423-a8ee-5fd6770b3a23",
        "evidence": "Agenda chunks deck into three sections.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "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": "019de06b-b3e1-718b-bf9a-230e9f10e1b8",
        "evidence": "Dual bars: Software (declining) vs SaaS (growing).",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Inductive Reasoning",
          "slug": "inductive-reasoning",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-99c6-705e-94cc-76a504c3da37",
          "version": 1,
          "bodyDocId": null,
          "description": "Grouping similar evidence to form a conclusion (Evidence → Pattern → Conclusion)",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de06b-b34d-720b-8600-ed95abc9a7ea",
        "evidence": "First slide of pattern-hunter loop assembling market evidence.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Parallel Structure",
          "slug": "parallel-structure",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9f34-762a-93b7-1d8e84bbd153",
          "version": 1,
          "bodyDocId": null,
          "description": "Using similar grammatical structure for related ideas",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de06b-b641-707a-b375-3f3da4acb6ea",
        "evidence": "Same chart structure repeated across three regions.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "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": "019de06b-b697-7329-87a4-7257ac426989",
        "evidence": "First slide of tale-of-two-worlds loop comparing eras and geographies.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Callback",
          "slug": "callback",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
          "version": 1,
          "bodyDocId": null,
          "description": "Referencing earlier content for payoff and cohesion",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b766-734a-8649-a0436ba4560f",
        "evidence": "'... and we follow suit' picks up p10's '...is cranking' phrase.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "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": "019de06b-b8a4-708f-8026-f18cfca160fd",
        "evidence": "EU (blue) vs US (black) growth trajectories overlaid.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "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": "019de06b-b913-764b-8991-0a6b73765969",
        "evidence": "Continues EU vs US comparison theme.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "019de06b-ba0e-7159-83c3-991b364ed9d8",
        "evidence": "First zoom-in slide chunks 1000+ universe into 5 criteria.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Foreshadowing",
          "slug": "foreshadowing",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a406-7159-bb8c-aeef05df2563",
          "version": 1,
          "bodyDocId": null,
          "description": "Planting hints of what's to come for later payoff",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-bcbd-778d-8584-d2fd556b9964",
        "evidence": "Names categories Accel will pursue next year.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 23,
        "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": "b0059525-b8d5-45c0-b436-b8c0f8986e69",
        "evidence": "The title/action-title is prominent and action-oriented.",
        "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": 0.8,
        "extraction": {
          "at": "2026-07-16 21:55:52.970846+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "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": "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": "fd92c3c0-3e0d-424a-bf82-ea7ecd266fcf",
        "evidence": "This slide has a title/action-title and a callout, typical of a cover slide.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:55:52.928743+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": "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": "019de06b-b16e-7290-a2ca-11e2192d20c8",
        "evidence": "Callout '135 SaaS investments today and counting...' states insight.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "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": "Picture Superiority Effect",
          "slug": "picture-superiority-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
          "version": 1,
          "bodyDocId": null,
          "description": "Pictures remembered 6x better than words - prioritize visuals over text",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de06b-b1a2-710a-9e6d-b731af0653fc",
        "evidence": "World map with company logos vs text.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 82,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "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": "019de06b-b206-7421-943d-57785bf593a6",
        "evidence": "Title states '$2.5 Billion Invested in Cloud Companies'.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "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": "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": "019de06b-b280-72ac-983d-bcf20a91dfb5",
        "evidence": "Vertical bars chosen for time-series of cumulative investment.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b2b6-7738-a105-602fce974eff",
        "evidence": "Specific dollar amount '$2.5bn' anchors the claim.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "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": "019de06b-b37f-7730-a3ce-a5aa8b013951",
        "evidence": "Title 'SaaS continues to eat Software' states the insight.",
        "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-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "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": "019de06b-b413-748e-b0fc-7f997250bd91",
        "evidence": "Callouts mark Salesforce launch, Peak 2014, +$19B/-$5B.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-b3af-73c1-82d0-90f3cadadf5a",
        "evidence": "'Eat Software' borrows Andreessen's metaphor.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "019de06b-b48c-7628-9b03-19f2d36e339a",
        "evidence": "Title 'SMB is getting real' states insight.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "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": "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": "019de06b-b4f7-73d7-b840-aa8d5ddb5fb5",
        "evidence": "Title 'Cloud Index grew 350% since 2011' is the headline.",
        "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": 88,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "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": "019de06b-b540-7071-b01c-db19da0e7c2f",
        "evidence": "Indexed line chart for relative performance.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 72,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "019de06b-b574-70fa-9420-60e3a0bbf8d8",
        "evidence": "Title 'IPO window is open: 12 IPOs in 2015-17'.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "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": "019de06b-b5dd-766d-ba7c-5ac7e79bd947",
        "evidence": "Title 'Healthy private funding' states verdict.",
        "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-04-30 22:04:06.314874+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": "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": "019de06b-b60f-76d4-9bff-b77508e22740",
        "evidence": "Three regional panels (NA, EU, India) with parallel charts.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "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": "019de06b-b6c7-7165-8010-baf60e17d97a",
        "evidence": "Title 'EU SaaS factory is cranking...' states insight.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "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": "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": "019de06b-b731-7028-b112-e3c49c307937",
        "evidence": "Title '...and we follow suit' completes prior slide's insight.",
        "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-04-30 22:04:06.314874+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": "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": "019de06b-b799-77ec-855b-06e37cb48f3e",
        "evidence": "Title 'EU/US funding gap still exists' states finding.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+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": "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": "019de06b-b7cb-745e-8912-ae4fd0f22987",
        "evidence": "Consistent color coding US vs EU.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "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": "019de06b-b7ff-70d0-afe9-df6319f94435",
        "evidence": "Title 'EU companies compare well on growth rates' states insight.",
        "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": 88,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "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": "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": "019de06b-b830-7728-8661-2db196c2c1e2",
        "evidence": "Black US vs blue EU lines visible on chart.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "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": "019de06b-b8e0-7129-8e9a-1298fab0ce17",
        "evidence": "Black US / blue EU bars.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 82,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "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": "019de06b-b944-77c9-8f3f-abdf465f8712",
        "evidence": "Same visual language ties slides 13-14 together.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "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": "019de06b-b977-7695-bd53-2ed017909a41",
        "evidence": "Title '...appears to be more capital efficient' states verdict.",
        "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": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "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": "019de06b-b9ab-74cb-af01-ba5f987642a8",
        "evidence": "Country flags annotate each bar.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "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": "019de06b-b9dd-762f-8773-4e6fcfd7de4a",
        "evidence": "Title 'Headcount growth driven by business model'.",
        "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": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "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": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-ba40-72b4-8749-3c019b51231e",
        "evidence": "Hard numbers '1,000+ companies, 12+ countries'.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Gestalt Principles",
          "slug": "gestalt-principles",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b266-7631-9b7e-44d83bd5d4f3",
          "version": 1,
          "bodyDocId": null,
          "description": "Proximity, Similarity, Enclosure, Continuity, Closure, Connection - how humans perceive visual groups",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer",
          "Architect"
        ],
        "matchId": "019de06b-bae1-71f1-99c7-2a6e4017d47f",
        "evidence": "Logos grouped by category with clear enclosures.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "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": "019de06b-bb12-7436-89ba-79d4926fbbfb",
        "evidence": "Functional clusters use spatial proximity.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Picture Superiority Effect",
          "slug": "picture-superiority-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
          "version": 1,
          "bodyDocId": null,
          "description": "Pictures remembered 6x better than words - prioritize visuals over text",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de06b-baaf-767c-918f-c2695eaab634",
        "evidence": "Logo grid replaces dense text descriptions.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "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": "019de06b-bba9-75e4-bb0f-8a12c36923b6",
        "evidence": "Consistent color palette across the four pies.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "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": "019de06b-bb77-74cc-9fc9-349e5497f37a",
        "evidence": "Four pie charts in same format for parallel reading.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "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": "019de06b-bbe2-75ce-b01e-ddd9c395ca70",
        "evidence": "Title 'Marketing is dominating, Vertical SaaS is emerging'.",
        "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-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "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": "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": "019de06b-bc14-7738-84be-9081af2a4aba",
        "evidence": "Blue Euroscape vs black US bars throughout.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "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": "019de06b-bc46-749b-be03-7fcd6ff3b53b",
        "evidence": "Right-rail callouts spell out the so-whats explicitly.",
        "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": 78,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "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": "Closing Techniques",
          "slug": "closing-techniques",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
          "version": 1,
          "bodyDocId": null,
          "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de06b-bcee-747e-b2e9-e2a0cf66654d",
        "evidence": "Thank-you slide with contact info.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 24,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "706c347c-f144-4bf4-a0d8-9325195bc4f2",
        "evidence": "Geographic distribution of investments on a world map",
        "framework": null,
        "confidence": 1,
        "extraction": {
          "at": "2026-05-02 17:44:26.167+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "frameworkName": "map-spatial"
      },
      {
        "matchId": "16b097d7-94e7-4073-821e-024168eaae05",
        "evidence": "Comparing growth rates of US vs EU companies",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:44:26.175+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "frameworkName": "comparison-frame"
      },
      {
        "matchId": "daea8b57-6453-4612-9e7e-f6a628345565",
        "evidence": "Comparing headcount efficiency across different business models",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:44:26.099+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "frameworkName": "comparison-frame"
      },
      {
        "matchId": "de8c0e3d-85df-4b57-b14e-28d669f41bb6",
        "evidence": "Categorization of companies by industry and function",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:44:26.77+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "frameworkName": "market-landscape"
      },
      {
        "matchId": "019de06b-bd21-742b-9ea9-4a36cd1c9e82",
        "evidence": "Classic VC market map: logos arranged by functional category and vertical.",
        "framework": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "frameworkName": "Market Map"
      },
      {
        "matchId": "019de06b-bd56-778c-a679-9cb66d4ed6e7",
        "evidence": "Side-by-side category share Euroscape vs US Top 300.",
        "framework": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-30 22:04:06.314874+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "frameworkName": "Sector Benchmark"
      }
    ],
    "patterns": []
  },
  "storymakers": {
    "model": "claude-cli",
    "backend": "claude",
    "rawJson": {
      "arc": {
        "id": 11,
        "slug": "triple-take",
        "beats": [
          {
            "name": "The Facts (What)",
            "end_page": 16,
            "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
            "position": 1,
            "start_page": 2
          },
          {
            "name": "The Implications (So What)",
            "end_page": 21,
            "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
            "position": 2,
            "start_page": 18
          },
          {
            "name": "The Action (Now What)",
            "end_page": 23,
            "evidence": "'Crystal balling 2018' lists forward investment themes.",
            "position": 3,
            "start_page": 23
          }
        ],
        "evidence": "Deck mirrors agenda's three sections: market facts (5-16), Top-100 implications (18-21), 2018 actions (23).",
        "confidence": 72
      },
      "loops": [
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 9,
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "start_page": 5
        },
        {
          "id": 4,
          "slug": "04-tale-two-worlds",
          "end_page": 16,
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "start_page": 10
        },
        {
          "id": 6,
          "slug": "06-zoom-in",
          "end_page": 21,
          "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
          "position": 3,
          "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
          "confidence": 75,
          "start_page": 18
        }
      ],
      "slide_tools": [
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout '135 SaaS investments today and counting...' states insight.",
              "confidence": 85
            },
            {
              "id": 165,
              "slug": "picture-superiority-effect",
              "layer": "Slide",
              "evidence": "World map with company logos vs text.",
              "confidence": 82
            },
            {
              "id": 72,
              "slug": "social-proof",
              "layer": "Block",
              "evidence": "Portfolio company logos signal traction.",
              "confidence": 75
            }
          ],
          "page_number": 2
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states '$2.5 Billion Invested in Cloud Companies'.",
              "confidence": 85
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Vertical bars chosen for time-series of cumulative investment.",
              "confidence": 70
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Specific dollar amount '$2.5bn' anchors the claim.",
              "confidence": 70
            }
          ],
          "page_number": 3
        },
        {
          "tools": [
            {
              "id": 34,
              "slug": "the-rule-of-three",
              "layer": "Block",
              "evidence": "Three-item agenda list.",
              "confidence": 78
            },
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "Agenda chunks deck into three sections.",
              "confidence": 70
            }
          ],
          "page_number": 4
        },
        {
          "tools": [
            {
              "id": 74,
              "slug": "inductive-reasoning",
              "layer": "Loop",
              "evidence": "First slide of pattern-hunter loop assembling market evidence.",
              "confidence": 75
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'SaaS continues to eat Software' states the insight.",
              "confidence": 90
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Eat Software' borrows Andreessen's metaphor.",
              "confidence": 88
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "Dual bars: Software (declining) vs SaaS (growing).",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Callouts mark Salesforce launch, Peak 2014, +$19B/-$5B.",
              "confidence": 85
            }
          ],
          "page_number": 5
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'SMB is getting real' states insight.",
              "confidence": 85
            },
            {
              "id": 72,
              "slug": "social-proof",
              "layer": "Block",
              "evidence": "Logos of public SMB software companies validate scale.",
              "confidence": 70
            }
          ],
          "page_number": 6
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Cloud Index grew 350% since 2011' is the headline.",
              "confidence": 88
            },
            {
              "id": 39,
              "slug": "benchmark-gap",
              "layer": "Loop",
              "evidence": "Cloud Index plotted against NASDAQ/S&P/Dow shows gap.",
              "confidence": 70
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Indexed line chart for relative performance.",
              "confidence": 72
            }
          ],
          "page_number": 7
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'IPO window is open: 12 IPOs in 2015-17'.",
              "confidence": 85
            },
            {
              "id": 72,
              "slug": "social-proof",
              "layer": "Block",
              "evidence": "Logo grid of recent IPOs as proof points.",
              "confidence": 78
            }
          ],
          "page_number": 8
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Healthy private funding' states verdict.",
              "confidence": 80
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Three regional panels (NA, EU, India) with parallel charts.",
              "confidence": 85
            },
            {
              "id": 87,
              "slug": "parallel-structure",
              "layer": "Loop",
              "evidence": "Same chart structure repeated across three regions.",
              "confidence": 78
            }
          ],
          "page_number": 9
        },
        {
          "tools": [
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "First slide of tale-of-two-worlds loop comparing eras and geographies.",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'EU SaaS factory is cranking...' states insight.",
              "confidence": 85
            },
            {
              "id": 26,
              "slug": "before-after-bridge",
              "layer": "Block",
              "evidence": "Bars compare 2008-10 vs 2014-16 EU SaaS company creation.",
              "confidence": 78
            }
          ],
          "page_number": 10
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title '...and we follow suit' completes prior slide's insight.",
              "confidence": 80
            },
            {
              "id": 98,
              "slug": "callback",
              "layer": "Loop",
              "evidence": "'... and we follow suit' picks up p10's '...is cranking' phrase.",
              "confidence": 75
            }
          ],
          "page_number": 11
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'EU/US funding gap still exists' states finding.",
              "confidence": 85
            },
            {
              "id": 39,
              "slug": "benchmark-gap",
              "layer": "Loop",
              "evidence": "Grouped bars Euroscape vs US Top 300 across stages.",
              "confidence": 82
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Consistent color coding US vs EU.",
              "confidence": 80
            }
          ],
          "page_number": 12
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'EU companies compare well on growth rates' states insight.",
              "confidence": 88
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Black US vs blue EU lines visible on chart.",
              "confidence": 90
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "EU (blue) vs US (black) growth trajectories overlaid.",
              "confidence": 80
            }
          ],
          "page_number": 13
        },
        {
          "tools": [
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Black US / blue EU bars.",
              "confidence": 82
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "Continues EU vs US comparison theme.",
              "confidence": 75
            },
            {
              "id": 161,
              "slug": "law-of-similarity",
              "layer": "Slide",
              "evidence": "Same visual language ties slides 13-14 together.",
              "confidence": 65
            }
          ],
          "page_number": 14
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title '...appears to be more capital efficient' states verdict.",
              "confidence": 85
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Country flags annotate each bar.",
              "confidence": 75
            },
            {
              "id": 39,
              "slug": "benchmark-gap",
              "layer": "Loop",
              "evidence": "Bars contrast EU and US cash burn to $10M ARR.",
              "confidence": 75
            }
          ],
          "page_number": 15
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Headcount growth driven by business model'.",
              "confidence": 78
            },
            {
              "id": 34,
              "slug": "segmentation-split",
              "layer": "Slide",
              "evidence": "Companies plotted on product-centric vs sales-driven spectrum.",
              "confidence": 60
            }
          ],
          "page_number": 16
        },
        {
          "tools": [
            {
              "id": 116,
              "slug": "chunking",
              "layer": "Loop",
              "evidence": "First zoom-in slide chunks 1000+ universe into 5 criteria.",
              "confidence": 78
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Hard numbers '1,000+ companies, 12+ countries'.",
              "confidence": 75
            }
          ],
          "page_number": 18
        },
        {
          "tools": [
            {
              "id": 165,
              "slug": "picture-superiority-effect",
              "layer": "Slide",
              "evidence": "Logo grid replaces dense text descriptions.",
              "confidence": 90
            },
            {
              "id": 131,
              "slug": "gestalt-principles",
              "layer": "Slide",
              "evidence": "Logos grouped by category with clear enclosures.",
              "confidence": 88
            },
            {
              "id": 160,
              "slug": "law-of-proximity",
              "layer": "Slide",
              "evidence": "Functional clusters use spatial proximity.",
              "confidence": 85
            },
            {
              "id": 72,
              "slug": "social-proof",
              "layer": "Block",
              "evidence": "Hundreds of company logos signal market depth.",
              "confidence": 80
            }
          ],
          "page_number": 19
        },
        {
          "tools": [
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Four pie charts in same format for parallel reading.",
              "confidence": 90
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Consistent color palette across the four pies.",
              "confidence": 75
            }
          ],
          "page_number": 20
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Marketing is dominating, Vertical SaaS is emerging'.",
              "confidence": 90
            },
            {
              "id": 39,
              "slug": "benchmark-gap",
              "layer": "Loop",
              "evidence": "Grouped bars compare Euroscape vs US Top 300 sector mix.",
              "confidence": 85
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Blue Euroscape vs black US bars throughout.",
              "confidence": 85
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Right-rail callouts spell out the so-whats explicitly.",
              "confidence": 78
            }
          ],
          "page_number": 21
        },
        {
          "tools": [
            {
              "id": 24,
              "slug": "time-machine",
              "layer": "Loop",
              "evidence": "Title 'Crystal balling 2018' projects forward to make today's bets.",
              "confidence": 65
            },
            {
              "id": 99,
              "slug": "foreshadowing",
              "layer": "Loop",
              "evidence": "Names categories Accel will pursue next year.",
              "confidence": 60
            }
          ],
          "page_number": 23
        },
        {
          "tools": [
            {
              "id": 124,
              "slug": "closing-techniques",
              "layer": "Slide",
              "evidence": "Thank-you slide with contact info.",
              "confidence": 65
            }
          ],
          "page_number": 24
        }
      ],
      "slides_seen": 25,
      "deck_summary": "A data-rich VC market update with strong action titles and clean small-multiples; loosely follows a Triple Take (facts to implications to action) and uses contrast-pairs heavily for EU-vs-US, but lacks the explicit SCQA / Pyramid framing of a true Storymakers deck.",
      "secondary_arcs": [
        {
          "id": 13,
          "slug": "mountain",
          "beats": [
            {
              "name": "Setup & Stakes",
              "end_page": 4,
              "evidence": "Cover, portfolio scale, agenda set the stakes.",
              "position": 1,
              "start_page": 1
            },
            {
              "name": "Rising Action",
              "end_page": 16,
              "evidence": "Layered evidence about SaaS market and EU vs US.",
              "position": 2,
              "start_page": 5
            },
            {
              "name": "Climax",
              "end_page": 21,
              "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
              "position": 3,
              "start_page": 17
            },
            {
              "name": "Resolution",
              "end_page": 25,
              "evidence": "Crystal Balling, thank-you, disclaimer close out.",
              "position": 4,
              "start_page": 22
            }
          ],
          "evidence": "Builds tension across market data, climaxes at Euroscape map (p19), resolves with 2018 outlook.",
          "confidence": 55
        }
      ],
      "images_inspected": 4,
      "slide_frameworks": [
        {
          "frameworks": [
            {
              "name": "Market Map",
              "slug": "market-map",
              "evidence": "Classic VC market map: logos arranged by functional category and vertical.",
              "confidence": 88
            }
          ],
          "page_number": 19
        },
        {
          "frameworks": [
            {
              "name": "Sector Benchmark",
              "slug": "sector-benchmark",
              "evidence": "Side-by-side category share Euroscape vs US Top 300.",
              "confidence": 65
            }
          ],
          "page_number": 21
        }
      ]
    },
    "matchedAt": "2026-04-30 22:04:06.521+00",
    "slidesSeen": 25,
    "deckSummary": "A data-rich VC market update with strong action titles and clean small-multiples; loosely follows a Triple Take (facts to implications to action) and uses contrast-pairs heavily for EU-vs-US, but lacks the explicit SCQA / Pyramid framing of a true Storymakers deck.",
    "imagesInspected": 4,
    "extractionSeconds": 291.279
  },
  "score": {
    "backend": "claude",
    "scoredAt": "2026-05-02 13:30:41.978+00",
    "subScores": {
      "scqa_arc": 60,
      "action_titles": 75,
      "mece_structure": 50,
      "closing_strength": 45,
      "evidence_quality": 85,
      "clarity_of_thesis": 70,
      "production_quality": 62,
      "visual_storytelling": 82
    },
    "totalScore": 68,
    "coveragePct": 100,
    "explanations": {
      "scqa_arc": "Situation (slides 1-8) and Answer (slides 10-16, 'EU is cranking') are present, but the Complication ('EU/US funding gap', slide 12) is buried mid-deck and the Question is implicit, producing an analytical-dump feel.",
      "action_titles": "Roughly 14 of 25 slides carry insight-bearing action titles (e.g. 'Cloud Index grew 350% since 2011', slide 7); section dividers and slide 14 default to topic labels.",
      "mece_structure": "Three section dividers (slides 4, 17, 22) all reuse the title 'Market Update' for different sections, signalling an unclear taxonomy and undermining MECE between Market Update / Top 100 / Crystal Balling.",
      "closing_strength": "Slide 23 lists 2018 themes but offers no recommendation, ask, or next step; slides 24-25 are a thank-you and a legal disclaimer, so the deck trails off rather than landing.",
      "evidence_quality": "Claims are densely supported with quantified evidence: 135 investments, $2.5B deployed, BVP Cloud Index of 56 companies (footnoted on slide 7), 12 IPO benchmarks (slide 8), and head-to-head US/EU growth and burn comparisons (slides 13-15).",
      "clarity_of_thesis": "The 'Factory is Cranking' thesis lands as a cover callout (slide 1) and is reinforced by slides 2-3 and 10, but the analytical claim (EU SaaS is competitive and capital-efficient) only emerges by slides 13-15 rather than being declared up front.",
      "production_quality": "Action-title density is moderate (~56%), framework consistency is decent (Accel low-poly visual identity), but the duplicated 'Market Update' divider title and inconsistent action-title coverage on slides 14, 18-20 hurt polish.",
      "visual_storytelling": "Strong tool-to-message fit: world map for portfolio reach (slide 2), grouped bars for divergence (slide 5), line chart for index outperformance (slide 7), logo-grid market map (slide 19), and pie quartet for demographics (slide 20)."
    },
    "slidesAnalyzed": 25
  },
  "review": {
    "backend": null,
    "verdict": "A solid VC market-commentary deck with above-average action titles and a strong EU/US benchmark spine, but a B-grade Storymakers exemplar — undermined by non-MECE pillar labels and a missing recommendation close.",
    "reviewedAt": "2026-05-01 22:42:14.229+00",
    "slidesSeen": 25,
    "suggestions": [
      "Rename the three 'Market Update' dividers to MECE pillar titles, e.g. 'Where the market is' / 'Where Europe stands' / 'Where we go next'",
      "Add a synthesis slide before slide 24 that restates the thesis ('The European SaaS factory is cranking') with 3 supporting proofs and a forward CTA",
      "Convert topic labels into action titles — slide 18 → 'Five criteria filter 1,000+ companies into the Euroscape shortlist'; slide 20 → 'Euroscape skews early-stage and UK-heavy'; slide 23 → 'Five themes will define 2018: AI, APIs, vertical SaaS...'",
      "Restore an action title on slide 14 to keep the 13-15 ellipsis chain intact",
      "Promote slide 1's tagline 'The Factory is Cranking' into an explicit thesis slide right after the cover so the deck leads with its answer"
    ],
    "closingScore": 42,
    "openingScore": 72,
    "topStrengths": [
      "Strong action-title chain across slides 13-15 using ellipsis ('EU companies compare well...' → '...at different stages...' → '...and appears to be more capital efficient') creates a connected sub-argument",
      "Quantitative anchoring in opening (135 investments, $2.5B) plus Cloud Index outperformance (slide 7) establishes credibility fast",
      "Benchmark slides 12-16 form a coherent EU-vs-US comparative spine"
    ],
    "topWeaknesses": [
      "Three section dividers all labelled 'Market Update' (slides 4, 17, 22) — pillars are not MECE-named",
      "No closing recommendation or synthesis — deck dies into 'Thank you!' and disclaimer with no 'so what'",
      "Slide 14 ('...at different stages of growth...') drops the action title field despite being part of the ellipsis chain — breaks Storymakers consistency",
      "Slide 23 'Crystal balling 2018' is a topic label for what should be the most insight-bearing forward-looking slide"
    ],
    "narrativeScore": 62,
    "pillarCritique": "Severe MECE failure: three section dividers (slides 4, 17, 22) are all titled 'Market Update' even though they introduce different acts (market context, Euroscape 2017, Crystal Balling 2018) — the pillars exist in the content but are invisible in the labelling.",
    "closingCritique": "The deck ends 'Crystal balling 2018' (23) → 'Thank you!' (24) → Disclaimer (25), with no recommendation, CTA, or synthesis — slide 23 lists themes but never closes the loop on the EU SaaS thesis raised at the start.",
    "openingCritique": "Slides 2-3 establish stakes well ('135 SaaS investments', '$2.5B Invested in Cloud Companies'), but the cover tagline 'The Factory is Cranking' is never restated as an explicit thesis on slide 1, and the agenda on slide 4 delays a true point-first opening.",
    "extractionSeconds": 78.129,
    "narrativeCritique": "The deck moves from setup (slides 1-3, scale) to analysis (5-16, market + EU/US benchmarks) to landscape (18-21) to forward look (23), but lacks a clear tension/resolution beat — it reads as a market commentary rather than a SCQA argument with a defended recommendation.",
    "titleQualityScore": 70,
    "titleQualityCritique": "Most analytical slides carry strong declarative action titles — 'SaaS continues to eat Software' (5), 'Cloud Index grew 350% since 2011' (7), '...and appears to be more capital efficient' (15) — but several remain topic labels ('Market Update' x3, 'The next generation', 'Accel Euroscape 2017', 'Euroscape 2017 demographics', 'Crystal balling 2018')."
  },
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/KuVJXqtNGd8DJiVG_qJXp7fU_KHodPUX2o_XiIt2VBI/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy82ZDQ2NDFlZjA2MGZhNzE3L3AwMDEuanBn",
      "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": 11,
        "componentCount": 4,
        "textChars": 65,
        "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 17:44:23.49+00",
          "seconds": 2.56,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/1",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-1",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The Factory is Cranking",
          "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-25 11:59:36+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-4370289774f8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.38,
            "x": 0.31,
            "y": 0.66
          },
          "kind": "title",
          "text": "The Factory is Cranking",
          "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 17:44:23.49+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a11fdd1b-73cb-4ace-aecd-b40e05a24d10",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.14,
            "x": 0.43,
            "y": 0.08
          },
          "kind": "title",
          "text": "Accel",
          "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 17:44:23.49+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "75ee60b3-31f2-4802-bac0-80383d572ded",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.5,
            "x": 0.25,
            "y": 0.32
          },
          "kind": "title",
          "text": "2017 Euroscape",
          "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 17:44:23.49+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f4685d13-bd34-410e-a878-3543f35fcaaa",
          "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": "b0059525-b8d5-45c0-b436-b8c0f8986e69",
          "evidence": "The title/action-title is prominent and action-oriented.",
          "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": 0.8,
          "extraction": {
            "at": "2026-07-16 21:55:52.970846+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "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": "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": "fd92c3c0-3e0d-424a-bf82-ea7ecd266fcf",
          "evidence": "This slide has a title/action-title and a callout, typical of a cover slide.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:55:52.928743+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": [
        {
          "to": 4,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Setup & Stakes",
          "beatId": "019de06b-afc9-7123-a55d-c5c9ea2613a0",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Cover, portfolio scale, agenda set the stakes.",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/5mvftUFSoPLqka-nidJCJXQ7QuzP6qkiLqTIec5lT00/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy82ZDQ2NDFlZjA2MGZhNzE3L3AwMDEuanBn",
      "imagePathAlt": "https://imgproxy.kitesheet.com/BhFor1hFJ1uGEvVykpNgFwHRU396P8IYd6rJ3gWjPks/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy82ZDQ2NDFlZjA2MGZhNzE3L3AwMDEucG5n",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/9RYNDmuyuCAVKFXNAAfvP0jK_5WvQCjuLbCjPjDb0MA/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy82ZDQ2NDFlZjA2MGZhNzE3L3AwMDEucG5n"
    },
    {
      "page": 2,
      "type": "evidence",
      "title": "The slide uses a hub-and-spoke visual style to connect company logos to their respective headquarters on a world map.",
      "function": "illustrate_case",
      "rawType": "geographic_map",
      "block": null,
      "metadata": {
        "slideType": "geographic_map",
        "slideTypeCanon": {
          "name": "Geographic map",
          "slug": "geographic_map",
          "status": "active",
          "canonId": "019de52d-09de-7153-8845-584c1a9d0c83",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 169,
        "nDataPoints": 135,
        "notes": "The slide uses a hub-and-spoke visual style to connect company logos to their respective headquarters on a world map.",
        "elementsJson": [
          "headline_text",
          "map",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.167+00",
          "seconds": 5.09,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/2",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-2",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "135 SaaS investments today and counting ...",
          "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-25 11:59:37+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-9eecde155f0e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.7,
            "w": 0.9,
            "x": 0.05,
            "y": 0.15
          },
          "kind": "image",
          "text": "World map with company logos",
          "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": "Map",
              "slug": "map",
              "status": "active",
              "canonId": "019de52c-fe4d-77bd-b0a4-d72d58b9e5a4",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "map",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.167+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "117699e9-b931-4158-b812-574d08f3ba18",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "SaaS investments: 135",
          "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-25 11:59:37+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-a3babeb9b3e5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.32,
            "x": 0.34,
            "y": 0.905
          },
          "kind": "paragraph",
          "text": "135 SaaS investments today and counting ...",
          "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 17:44:26.167+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1d026810-c9e8-4af2-b0d9-3fac33db38d3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.08,
            "x": 0.08,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:26.167+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4e7ac7f2-419d-49c7-a8ac-dc823d78f867",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.055,
            "w": 0.382,
            "x": 0.309,
            "y": 0.075
          },
          "kind": "title",
          "text": "We Love SaaS Globally",
          "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 17:44:26.167+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b9e887f3-264f-468a-befe-6a8d1aa0b89c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Social Proof",
            "slug": "social-proof",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
            "version": 1,
            "bodyDocId": null,
            "description": "People adapt behavior based on what others do - show adoption and testimonials",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b1d5-71cd-95de-28990d00f7fe",
          "evidence": "Portfolio company logos signal traction.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "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": "019de06b-b16e-7290-a2ca-11e2192d20c8",
          "evidence": "Callout '135 SaaS investments today and counting...' states insight.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "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": "Picture Superiority Effect",
            "slug": "picture-superiority-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
            "version": 1,
            "bodyDocId": null,
            "description": "Pictures remembered 6x better than words - prioritize visuals over text",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de06b-b1a2-710a-9e6d-b731af0653fc",
          "evidence": "World map with company logos vs text.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 82,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "706c347c-f144-4bf4-a0d8-9325195bc4f2",
          "evidence": "Geographic distribution of investments on a world map",
          "framework": null,
          "confidence": 1,
          "extraction": {
            "at": "2026-05-02 17:44:26.167+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "frameworkName": "map-spatial"
        }
      ],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 4,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Setup & Stakes",
          "beatId": "019de06b-afc9-7123-a55d-c5c9ea2613a0",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Cover, portfolio scale, agenda set the stakes.",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "analysis",
      "title": "The 2015-17E bar includes a dashed section indicating projected or estimated value.",
      "function": "quantify_impact",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "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": "balanced",
        "densityScore": 36,
        "componentCount": 6,
        "textChars": 187,
        "nDataPoints": 6,
        "notes": "The 2015-17E bar includes a dashed section indicating projected or estimated value.",
        "elementsJson": [
          "headline_text",
          "bar_chart_vertical"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:23.849+00",
          "seconds": 2.741,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/3",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-3",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.55,
            "w": 0.7,
            "x": 0.15,
            "y": 0.32
          },
          "kind": "chart",
          "text": "Bar chart showing investment growth from 2000 to 2017E",
          "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 17:44:23.849+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aafd63c8-6f93-472e-95cf-d88807a127f8",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Investment Volume: $2.5bn",
          "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-25 11:59:36+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-52501a270462",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.158,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "USD, Millions",
          "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 17:44:23.849+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "536bdde3-ee5f-42bc-ae6a-8e7e9f50c570",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.158,
            "y": 0.22
          },
          "kind": "paragraph",
          "text": "Global Accel Investments in SaaS 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": {
              "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 17:44:23.849+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "840eb0db-6fed-4284-9ee9-0132e8ff56fe",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.06,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:23.849+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7d0fa4ab-4370-4547-9051-3a88ce804688",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.7,
            "x": 0.15,
            "y": 0.06
          },
          "kind": "title",
          "text": "$2.5 Billion Invested in Cloud Companies",
          "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 17:44:23.849+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c7e2397c-e4a3-492e-b041-503b3efb32b2",
          "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": "019de06b-b206-7421-943d-57785bf593a6",
          "evidence": "Title states '$2.5 Billion Invested in Cloud Companies'.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "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": "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": "019de06b-b280-72ac-983d-bcf20a91dfb5",
          "evidence": "Vertical bars chosen for time-series of cumulative investment.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b2b6-7738-a105-602fce974eff",
          "evidence": "Specific dollar amount '$2.5bn' anchors the claim.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 4,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Setup & Stakes",
          "beatId": "019de06b-afc9-7123-a55d-c5c9ea2613a0",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Cover, portfolio scale, agenda set the stakes.",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 4,
      "type": "setup",
      "function": "transition",
      "rawType": "agenda",
      "block": null,
      "metadata": {
        "slideType": "agenda",
        "slideTypeCanon": {
          "name": "Agenda",
          "slug": "agenda",
          "status": "active",
          "canonId": "019de52d-061b-7470-b138-3ffa5e612cce",
          "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": 1,
        "componentCount": 1,
        "textChars": 43,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "bullet_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:22.808+00",
          "seconds": 1.683,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/4",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-4",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.46,
            "w": 0.32,
            "x": 0.23,
            "y": 0.27
          },
          "kind": "list",
          "text": "Market Update\nThe Top 100\n\"Crystal balling\"",
          "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 17:44:22.808+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fde9783d-1d89-4ff1-ae62-b32affe45ff9",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "The Rule of Three",
            "slug": "the-rule-of-three",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
            "version": 1,
            "bodyDocId": null,
            "description": "Ideas presented in threes are more memorable and satisfying",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b2e8-73b8-91e3-beb743214f70",
          "evidence": "Three-item agenda list.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "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": "019de06b-b319-7423-a8ee-5fd6770b3a23",
          "evidence": "Agenda chunks deck into three sections.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 4,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Setup & Stakes",
          "beatId": "019de06b-afc9-7123-a55d-c5c9ea2613a0",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Cover, portfolio scale, agenda set the stakes.",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 5,
      "type": "analysis",
      "title": "The chart uses a stacked bar approach where the bottom segment represents SaaS revenue and the top segment represents total software revenue.",
      "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": 59,
        "componentCount": 8,
        "textChars": 290,
        "nDataPoints": 38,
        "notes": "The chart uses a stacked bar approach where the bottom segment represents SaaS revenue and the top segment represents total software revenue.",
        "elementsJson": [
          "headline_text",
          "bar_chart_grouped",
          "callout_box"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:23.981+00",
          "seconds": 2.672,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/5",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-5",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.08,
            "x": 0.69,
            "y": 0.27
          },
          "kind": "callout",
          "text": "Peak in 2014",
          "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 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "995eb031-af5f-40ea-9edb-55fff4e1cc8d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.09,
            "w": 0.11,
            "x": 0.1,
            "y": 0.08
          },
          "kind": "callout",
          "text": "Salesforce launch",
          "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 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bf72df41-c93f-4a54-92f4-da8f594b996b",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "SaaS continues to eat Software",
          "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-25 11:59:39+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-dd881a1d4b2b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.78,
            "x": 0.11,
            "y": 0.22
          },
          "kind": "chart",
          "text": "Stacked bar chart showing total software revenue (top) and SaaS revenue (bottom) from 1999 to 2017.",
          "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": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c1e84b0c-4520-4cd0-b9cc-50c76d356d8d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Revenue: $125B",
          "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-25 11:59:39+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-e0490aae244d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.31,
            "x": 0.09,
            "y": 0.096
          },
          "kind": "source-note",
          "text": "Source: Gartner, Statista, Forrester Research, AMR",
          "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 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "262a8a69-6e1a-49b8-b4de-5540cc01a085",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.54,
            "x": 0.23,
            "y": 0.06
          },
          "kind": "title",
          "text": "SaaS continues to eat Software",
          "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 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9bce78a4-5fda-4c65-a12d-8033a4088d5d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.11,
            "y": 0.22
          },
          "kind": "title",
          "text": "Global Software and SaaS revenues ($B)",
          "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": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:23.981+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ae89e16e-000c-41d9-86a3-475878d35a3a",
          "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": "019de06b-b3e1-718b-bf9a-230e9f10e1b8",
          "evidence": "Dual bars: Software (declining) vs SaaS (growing).",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Inductive Reasoning",
            "slug": "inductive-reasoning",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-99c6-705e-94cc-76a504c3da37",
            "version": 1,
            "bodyDocId": null,
            "description": "Grouping similar evidence to form a conclusion (Evidence → Pattern → Conclusion)",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de06b-b34d-720b-8600-ed95abc9a7ea",
          "evidence": "First slide of pattern-hunter loop assembling market evidence.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+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": "019de06b-b37f-7730-a3ce-a5aa8b013951",
          "evidence": "Title 'SaaS continues to eat Software' states the insight.",
          "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-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "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": "019de06b-b413-748e-b0fc-7f997250bd91",
          "evidence": "Callouts mark Salesforce launch, Peak 2014, +$19B/-$5B.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b3af-73c1-82d0-90f3cadadf5a",
          "evidence": "'Eat Software' borrows Andreessen's metaphor.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 5,
          "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 6,
      "type": "analysis",
      "title": "The slide uses two horizontal bar charts to illustrate the scale of SMB-focused software companies.",
      "function": "size_opportunity",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "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": "balanced",
        "densityScore": 27,
        "componentCount": 5,
        "textChars": 136,
        "nDataPoints": 8,
        "notes": "The slide uses two horizontal bar charts to illustrate the scale of SMB-focused software companies.",
        "elementsJson": [
          "bar_chart_horizontal",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:24.186+00",
          "seconds": 2.78,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/6",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-6",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.76,
            "w": 0.335,
            "x": 0.154,
            "y": 0.268
          },
          "kind": "chart",
          "text": "Key Public Companies Market Cap, USD 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": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:24.186+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "10e14eb5-e902-4b2e-989f-d8ad3f770295",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.76,
            "w": 0.335,
            "x": 0.548,
            "y": 0.268
          },
          "kind": "chart",
          "text": "Key M&A exits USD, 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": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:24.186+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e820a3cf-9df5-4c95-b4b1-2202b1bb49f6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "USD Millions: 10,100",
          "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-25 11:59:36+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-87e544fc0a80",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.021,
            "w": 0.197,
            "x": 0.092,
            "y": 0.964
          },
          "kind": "source-note",
          "text": "Source: Accel, Capital IQ",
          "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 17:44:24.186+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9097a066-2d05-43bb-a064-8dc7b8bf06c1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.055,
            "w": 0.322,
            "x": 0.339,
            "y": 0.078
          },
          "kind": "title",
          "text": "SMB is getting real",
          "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 17:44:24.186+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4884f07a-1bad-4961-ad12-07852deaea21",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Social Proof",
            "slug": "social-proof",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
            "version": 1,
            "bodyDocId": null,
            "description": "People adapt behavior based on what others do - show adoption and testimonials",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b4c2-7377-a04c-91b9c0bf717d",
          "evidence": "Logos of public SMB software companies validate scale.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "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": "019de06b-b48c-7628-9b03-19f2d36e339a",
          "evidence": "Title 'SMB is getting real' states insight.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "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."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 5,
          "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 7,
      "type": "analysis",
      "title": "The chart shows significant outperformance of the BVP Cloud Index compared to major market indices.",
      "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": "balanced",
        "densityScore": 44,
        "componentCount": 5,
        "textChars": 579,
        "nDataPoints": 4,
        "notes": "The chart shows significant outperformance of the BVP Cloud Index compared to major market indices.",
        "elementsJson": [
          "headline_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:24.82+00",
          "seconds": 3.218,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/7",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-7",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.658,
            "w": 0.858,
            "x": 0.071,
            "y": 0.157
          },
          "kind": "chart",
          "text": "Performance comparison of BVP Cloud Index vs NASDAQ, S&P, and Dow Jones",
          "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 17:44:24.82+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8b11f34b-7848-43ab-97d5-ccae9104a3e1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.12,
            "x": 0.809,
            "y": 0.63
          },
          "kind": "legend",
          "text": "BVP Cloud index, NASDAQ index, S&P Index, Dow Jones Index",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:24.82+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f75d12cb-88df-44e7-9e6b-273b63e6806c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Cumulative Growth: 350%",
          "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-25 11:59:38+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba5-bafb845c133a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.048,
            "w": 0.908,
            "x": 0.046,
            "y": 0.852
          },
          "kind": "paragraph",
          "text": "Note: SaaS universe index is equally-weighted and includes the following (when each was publicly traded): ALRM, AMBR, APPF, ATHN, BCOV, BNFT, BOX, CSOD, CTCT, CVT, DMAN, DWRE, ECOM, EOPN, ET, FIVN, FLTX, HUBS, INST, KNXA, LOGM, MB, MIME, MKTG, MKTO, MRIN, N, NEWR, NOW, OMTR, PFWD, QTWO, RALY, RNG, RNOW, RP, SFSF, SHOP, SLRY, SPSC, SQI, TLEO, TRAK, TWOU, TXTR, VEEV, WDAY, WK, XTLY, YDLE and ZEN",
          "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 17:44:24.82+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aeeafe63-899f-4c43-a11b-f54ce80d9ad3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.055,
            "w": 0.584,
            "x": 0.208,
            "y": 0.048
          },
          "kind": "title",
          "text": "Cloud Index grew 350% since 2011",
          "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 17:44:24.82+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "76ad4a3c-8f3b-483d-9807-eaa0770a0e27",
          "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": "019de06b-b4f7-73d7-b840-aa8d5ddb5fb5",
          "evidence": "Title 'Cloud Index grew 350% since 2011' is the headline.",
          "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": 88,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+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": "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": "019de06b-b540-7071-b01c-db19da0e7c2f",
          "evidence": "Indexed line chart for relative performance.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 72,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 5,
          "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "analysis",
      "title": "The table highlights specific companies as examples for high/low metrics.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "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": "balanced",
        "densityScore": 28,
        "componentCount": 5,
        "textChars": 120,
        "nDataPoints": 18,
        "notes": "The table highlights specific companies as examples for high/low metrics.",
        "elementsJson": [
          "headline_text",
          "logo_grid",
          "data_table"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.022+00",
          "seconds": 3.383,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/8",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-8",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.7,
            "x": 0.15,
            "y": 0.15
          },
          "kind": "image",
          "text": "US and EU company logos",
          "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 17:44:25.022+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dfbaa837-27ad-4bb3-93c8-ae32d8b26d79",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "IPO count: 12",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-68bad5bee955",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.08,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:25.022+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1b28c8e9-420a-432b-b9b0-a28169e0b15d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.84,
            "x": 0.08,
            "y": 0.5
          },
          "kind": "table",
          "text": "Financial metrics table for IPOs",
          "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 17:44:25.022+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c589bbd9-d0d8-4a8a-b9ce-600232c9beae",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.7,
            "x": 0.15,
            "y": 0.05
          },
          "kind": "title",
          "text": "IPO window is open : 12 IPOs in 2015-17",
          "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 17:44:25.022+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e66ac6fc-71be-4626-b9ff-acbd9c77617e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Social Proof",
            "slug": "social-proof",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
            "version": 1,
            "bodyDocId": null,
            "description": "People adapt behavior based on what others do - show adoption and testimonials",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b5a5-746c-b620-1a27bae68b64",
          "evidence": "Logo grid of recent IPOs as proof points.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+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": "019de06b-b574-70fa-9420-60e3a0bbf8d8",
          "evidence": "Title 'IPO window is open: 12 IPOs in 2015-17'.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+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."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 5,
          "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "analysis",
      "title": "The slide uses a geographic segmentation (North America, Europe, India) to present both aggregate market trends (bar charts) and specific company examples (hori",
      "function": "analyze_data",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "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": "balanced",
        "densityScore": 38,
        "componentCount": 6,
        "textChars": 156,
        "nDataPoints": 27,
        "notes": "The slide uses a geographic segmentation (North America, Europe, India) to present both aggregate market trends (bar charts) and specific company examples (horizontal bar charts).",
        "elementsJson": [
          "bar_chart_stacked",
          "bar_chart_horizontal",
          "map"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:27.294+00",
          "seconds": 5.301,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/9",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-9",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.73,
            "w": 0.37,
            "x": 0.595,
            "y": 0.185
          },
          "kind": "chart",
          "text": "Notable rounds 2016-17",
          "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": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:27.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "34fcc34e-91b9-4756-860a-f6e5f7e2ef3a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.73,
            "w": 0.185,
            "x": 0.298,
            "y": 0.185
          },
          "kind": "chart",
          "text": "Total SaaS VC funding",
          "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": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:27.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b37e9afe-3429-48d5-9149-c7f88088648f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.15,
            "x": 0.08,
            "y": 0.23
          },
          "kind": "image",
          "text": "Geographic indicators",
          "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": "Map",
              "slug": "map",
              "status": "active",
              "canonId": "019de52c-fe4d-77bd-b0a4-d72d58b9e5a4",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "map",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:27.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d3e4c733-cc69-4cfe-b691-e7e14e32dc44",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Total SaaS VC funding: $600M",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-c643df449367",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: CB Insight, PitchBook, Crunchbase",
          "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 17:44:27.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "26fb22b5-9b28-483d-bd84-1ace50611425",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.065,
            "w": 0.398,
            "x": 0.301,
            "y": 0.075
          },
          "kind": "title",
          "text": "Healthy private funding",
          "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 17:44:27.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "285b96e0-2f64-4b00-9a0d-504bc0143e25",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Parallel Structure",
            "slug": "parallel-structure",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9f34-762a-93b7-1d8e84bbd153",
            "version": 1,
            "bodyDocId": null,
            "description": "Using similar grammatical structure for related ideas",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de06b-b641-707a-b375-3f3da4acb6ea",
          "evidence": "Same chart structure repeated across three regions.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "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": "019de06b-b5dd-766d-ba7c-5ac7e79bd947",
          "evidence": "Title 'Healthy private funding' states verdict.",
          "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-04-30 22:04:06.314874+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": "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": "019de06b-b60f-76d4-9bff-b77508e22740",
          "evidence": "Three regional panels (NA, EU, India) with parallel charts.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 5,
          "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": "019de06b-b0d7-7647-bfdf-bc458a124144",
          "evidence": "Five evidence slides (software shift, SMB scale, cloud index, IPOs, VC funding) build to 'market is healthy'.",
          "position": 1,
          "objective": "Stack independent evidence that SaaS market is hot",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "analysis",
      "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": "balanced",
        "densityScore": 27,
        "componentCount": 5,
        "textChars": 182,
        "nDataPoints": 4,
        "notes": null,
        "elementsJson": [
          "bar_chart_vertical",
          "bar_chart_vertical"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:24.997+00",
          "seconds": 2.507,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/10",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-10",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.42,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "chart",
          "text": "# of SaaS companies created in Europe",
          "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 17:44:24.997+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "82f18656-72a9-490a-8a87-e13a095336d8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.42,
            "x": 0.52,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Funding for SaaS companies created in Europe",
          "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 17:44:24.997+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ecebc893-aa5d-4c29-aff7-336a05a41681",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "SaaS company creation and funding growth: x3.3",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-134657fb1b18",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.03,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel, Crunchbase",
          "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 17:44:24.997+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d027987c-2f6e-4709-b52f-9249a3e5f3cd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.25,
            "y": 0.07
          },
          "kind": "title",
          "text": "EU SaaS factory is cranking...",
          "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 17:44:24.997+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1af09c5f-bab4-41b5-b8d5-ee2a808a19c0",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "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": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b6f9-733e-9937-9e4badcd5c82",
          "evidence": "Bars compare 2008-10 vs 2014-16 EU SaaS company creation.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "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": "019de06b-b697-7329-87a4-7257ac426989",
          "evidence": "First slide of tale-of-two-worlds loop comparing eras and geographies.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "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": "019de06b-b6c7-7165-8010-baf60e17d97a",
          "evidence": "Title 'EU SaaS factory is cranking...' states insight.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "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."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 11,
      "type": "analysis",
      "title": "The chart highlights a significant increase in the proportion of European SaaS investments in 2017 YTD compared to previous years.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "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": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 209,
        "nDataPoints": 16,
        "notes": "The chart highlights a significant increase in the proportion of European SaaS investments in 2017 YTD compared to previous years.",
        "elementsJson": [
          "bar_chart_100pct"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.096+00",
          "seconds": 2.539,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/11",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-11",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.8,
            "x": 0.1,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Stacked bar chart showing Europe vs Global investment proportions",
          "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": "Stacked bar chart (100%)",
              "slug": "bar-stacked-100pct",
              "status": "active",
              "canonId": "019de52c-ff14-71b8-8d88-860f8d7da84b",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked-100pct",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.096+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "72057636-2e9e-4fa4-acfd-8d31adb92c2e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.12,
            "x": 0.78,
            "y": 0.2
          },
          "kind": "legend",
          "text": "Europe (teal), Global (dark blue)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.096+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ab01f9d3-c11c-4db8-ba60-8c80d094ac25",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "European investment share: 42%",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-ede40a0f2cce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.15,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel, Capital IQ",
          "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 17:44:25.096+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9ec21fb0-55bd-40bd-949d-24399b133cce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.35,
            "y": 0.05
          },
          "kind": "title",
          "text": "... and we follow suit",
          "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 17:44:25.096+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "52492e62-70f1-4e8b-bcf7-67547ae3c97d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.1,
            "y": 0.2
          },
          "kind": "title",
          "text": "Accel investment in SaaS companies",
          "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": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.096+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9f8a16a0-303b-4401-9e00-b10204f4791d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Callback",
            "slug": "callback",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
            "version": 1,
            "bodyDocId": null,
            "description": "Referencing earlier content for payoff and cohesion",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-b766-734a-8649-a0436ba4560f",
          "evidence": "'... and we follow suit' picks up p10's '...is cranking' phrase.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "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": "019de06b-b731-7028-b112-e3c49c307937",
          "evidence": "Title '...and we follow suit' completes prior slide's insight.",
          "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-04-30 22:04:06.314874+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."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "type": "setup",
      "title": "The chart highlights a significant disparity in funding levels between European and US companies at later stages.",
      "function": "compare_peers",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 7,
        "textChars": 237,
        "nDataPoints": 16,
        "notes": "The chart highlights a significant disparity in funding levels between European and US companies at later stages.",
        "elementsJson": [
          "headline_text",
          "bar_chart_grouped",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.668+00",
          "seconds": 2.738,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/12",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-12",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.15,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Comparison of funding and ARR by stage",
          "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 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7a591d2a-f4e4-410f-8487-3e45aed14274",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.25,
            "y": 0.82
          },
          "kind": "legend",
          "text": "Accel Euroscape 2016, Accel Euroscape 2017, Top 300 US companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1ee952ee-217d-423f-8b19-c7120a76ceb6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Average total funding: 113",
          "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-25 11:59:45+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba8-61492cfdc093",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.1,
            "x": 0.12,
            "y": 0.5
          },
          "kind": "paragraph",
          "text": "Average total funding ($M)",
          "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 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6d308c6a-f485-4c5f-a84f-e28aac1d6275",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.1,
            "x": 0.12,
            "y": 0.25
          },
          "kind": "paragraph",
          "text": "Average ARR ($M)",
          "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 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7766c054-6712-47d9-ae62-a63db75dd43a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel, Crunchbase, Mattermark",
          "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 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cf1b6527-18f7-498f-a480-200f4f9b5e92",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.25,
            "y": 0.05
          },
          "kind": "title",
          "text": "EU/US funding gap still exists",
          "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 17:44:25.668+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "911f58b8-b407-44d3-82d3-363a4892abc7",
          "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": "019de06b-b799-77ec-855b-06e37cb48f3e",
          "evidence": "Title 'EU/US funding gap still exists' states finding.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+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": "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": "019de06b-b7cb-745e-8912-ae4fd0f22987",
          "evidence": "Consistent color coding US vs EU.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "setup",
      "title": "The chart uses a line graph to visualize time-to-growth, with color-coded lines distinguishing between US and EU companies.",
      "function": "compare_peers",
      "rawType": "peer_benchmark",
      "block": null,
      "metadata": {
        "slideType": "peer_benchmark",
        "slideTypeCanon": {
          "name": "Peer benchmark",
          "slug": "peer_benchmark",
          "status": "active",
          "canonId": "019de52d-08f0-7158-a78d-d7b5331fefaf",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 37,
        "componentCount": 6,
        "textChars": 185,
        "nDataPoints": 10,
        "notes": "The chart uses a line graph to visualize time-to-growth, with color-coded lines distinguishing between US and EU companies.",
        "elementsJson": [
          "headline_text",
          "line_chart",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.175+00",
          "seconds": 3.161,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/13",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-13",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.65,
            "w": 0.7,
            "x": 0.151,
            "y": 0.165
          },
          "kind": "chart",
          "text": "Growth trajectories of US and EU companies",
          "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 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "daf0b40f-6295-4810-bb78-3721ce49c62b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.18,
            "x": 0.41,
            "y": 0.905
          },
          "kind": "legend",
          "text": "US Company (black), EU Company (blue)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "326ef0e7-2138-4bba-ac72-9703fe321c27",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Time to $10m ARR",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba7-0f9d1704b656",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.05,
            "x": 0.093,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0b911963-0e78-4b19-b7c9-d4bb8aa094e2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.055,
            "w": 0.784,
            "x": 0.108,
            "y": 0.045
          },
          "kind": "title",
          "text": "EU companies compare well on growth rates...",
          "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 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91e79c80-9063-40a2-84db-6dee6fefd7fb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.31,
            "x": 0.151,
            "y": 0.185
          },
          "kind": "title",
          "text": "Time to grow from $1m to $10m ARR",
          "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": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b2767203-bf45-46f8-b407-05b724afa05b",
          "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": "019de06b-b8a4-708f-8026-f18cfca160fd",
          "evidence": "EU (blue) vs US (black) growth trajectories overlaid.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "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": "019de06b-b7ff-70d0-afe9-df6319f94435",
          "evidence": "Title 'EU companies compare well on growth rates' states insight.",
          "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": 88,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "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": "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": "019de06b-b830-7728-8661-2db196c2c1e2",
          "evidence": "Black US vs blue EU lines visible on chart.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "16b097d7-94e7-4073-821e-024168eaae05",
          "evidence": "Comparing growth rates of US vs EU companies",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:44:26.175+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 14,
      "type": "setup",
      "title": "The chart uses color coding to distinguish between US (black) and European (blue) companies.",
      "function": "compare_peers",
      "rawType": "peer_benchmark",
      "block": null,
      "metadata": {
        "slideType": "peer_benchmark",
        "slideTypeCanon": {
          "name": "Peer benchmark",
          "slug": "peer_benchmark",
          "status": "active",
          "canonId": "019de52d-08f0-7158-a78d-d7b5331fefaf",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 38,
        "componentCount": 6,
        "textChars": 221,
        "nDataPoints": 8,
        "notes": "The chart uses color coding to distinguish between US (black) and European (blue) companies.",
        "elementsJson": [
          "headline_text",
          "bar_chart_horizontal",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.192+00",
          "seconds": 3.12,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/14",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-14",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.62,
            "w": 0.82,
            "x": 0.09,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Horizontal bar chart showing time to $1m ARR for 8 companies",
          "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": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.192+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "73b49ea4-7e66-4fd8-a5e2-3331456a919f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.26,
            "x": 0.37,
            "y": 0.95
          },
          "kind": "legend",
          "text": "European Companies (blue), US Companies (black)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.192+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8f7c2add-212b-48bf-b103-23ac29f71e7d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Time to reach $1m ARR",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-7dbf7d853035",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.17,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel, Crunchbase, Mattermark",
          "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 17:44:26.192+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "72ae7728-c235-4737-a11a-0fcba859f298",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.56,
            "x": 0.22,
            "y": 0.05
          },
          "kind": "title",
          "text": "...at different stages of growth...",
          "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 17:44:26.192+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dea3c01f-c080-4e67-b938-a46698a425f9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.22,
            "x": 0.09,
            "y": 0.19
          },
          "kind": "title",
          "text": "Time to reach $1m ARR",
          "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": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.192+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6f7a33c0-5684-47f3-98c7-36442536fad6",
          "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": "019de06b-b913-764b-8991-0a6b73765969",
          "evidence": "Continues EU vs US comparison theme.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "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": "019de06b-b8e0-7129-8e9a-1298fab0ce17",
          "evidence": "Black US / blue EU bars.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 82,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "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": "019de06b-b944-77c9-8f3f-abdf465f8712",
          "evidence": "Same visual language ties slides 13-14 together.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 15,
      "type": "setup",
      "title": "The chart uses flags to represent geographic origin of the companies, with some specific company logos included.",
      "function": "compare_peers",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 29,
        "componentCount": 5,
        "textChars": 211,
        "nDataPoints": 6,
        "notes": "The chart uses flags to represent geographic origin of the companies, with some specific company logos included.",
        "elementsJson": [
          "headline_text",
          "bar_chart_vertical",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.896+00",
          "seconds": 2.767,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/15",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-15",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.65,
            "w": 0.76,
            "x": 0.12,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Bar chart showing cash burn values: 6.0, 7.0, 7.2, 14.0, 18.0, 19.0",
          "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 17:44:25.896+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2f2f7b13-d8ae-4d0e-8728-c90ad424195e",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Cash burn to $10M ARR: 6.0",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-ad7b383ed833",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.17,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel, Crunchbase, Mattermark",
          "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 17:44:25.896+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1d92134a-0a27-46b3-8681-6f598a77016f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.72,
            "x": 0.14,
            "y": 0.06
          },
          "kind": "title",
          "text": "... and appears to be more capital efficient",
          "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 17:44:25.896+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "640ed329-cefc-4226-bad3-1817157eff65",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.12,
            "y": 0.225
          },
          "kind": "title",
          "text": "Cash burned to go from $0 to $10M ARR",
          "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": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.896+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "54d9281b-efd4-4a36-93e6-934afa7538e8",
          "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": "019de06b-b977-7695-bd53-2ed017909a41",
          "evidence": "Title '...appears to be more capital efficient' states verdict.",
          "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": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "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": "019de06b-b9ab-74cb-af01-ba5f987642a8",
          "evidence": "Country flags annotate each bar.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 16,
      "type": "setup",
      "title": "The chart uses a scatter/line plot to show efficiency (ARR per employee). Companies on the left (steeper slope) are more product-centric, while those on the rig",
      "function": "compare_peers",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 30,
        "componentCount": 5,
        "textChars": 172,
        "nDataPoints": 30,
        "notes": "The chart uses a scatter/line plot to show efficiency (ARR per employee). Companies on the left (steeper slope) are more product-centric, while those on the right (flatter slope) are more sales-driven.",
        "elementsJson": [
          "headline_text",
          "line_chart",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.099+00",
          "seconds": 2.96,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/16",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-16",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.68,
            "w": 0.78,
            "x": 0.12,
            "y": 0.22
          },
          "kind": "chart",
          "text": "Line chart showing ARR vs Headcount for multiple companies",
          "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 17:44:26.099+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "25a348f9-60b4-4ace-bcd6-554d750f9796",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.3,
            "y": 0.17
          },
          "kind": "legend",
          "text": "Product centric to Sales-driven spectrum",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.099+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d5125103-7c6f-453d-b150-cc58e189f233",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Revenue per employee",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-94c4fdbccbca",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.05,
            "x": 0.09,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:26.099+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3df2d876-b740-4596-b060-436da905a6a1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.8,
            "x": 0.1,
            "y": 0.03
          },
          "kind": "title",
          "text": "Headcount growth driven by business model",
          "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 17:44:26.099+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9622b945-8995-47e8-b3d6-836efb10e7d3",
          "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": "019de06b-b9dd-762f-8773-4e6fcfd7de4a",
          "evidence": "Title 'Headcount growth driven by business model'.",
          "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": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "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."
        }
      ],
      "frameworks": [
        {
          "matchId": "daea8b57-6453-4612-9e7e-f6a628345565",
          "evidence": "Comparing headcount efficiency across different business models",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:44:26.099+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [
        {
          "to": 16,
          "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": 2,
          "name": "The Facts (What)",
          "beatId": "019de06b-af00-74ae-ac57-ceebb227a05d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 16,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 5,
          "name": "Rising Action",
          "beatId": "019de06b-aff9-740b-ba5a-e01238819710",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Layered evidence about SaaS market and EU vs US.",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 16,
          "from": 10,
          "loop": {
            "name": "04_tale_two_worlds",
            "slug": "04-tale-two-worlds",
            "status": "active",
            "bestFor": "Competitive analysis, benchmarking, case for change",
            "canonId": "019dd956-674f-750b-b15d-f082e2717f4e",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Current State -> Desired State / Benchmark -> The Gap & Implication",
            "description": "Show the gap between two states to drive urgency or highlight opportunity",
            "familyLabel": null
          },
          "matchId": "019de06b-b109-724c-bc43-417f47af4f07",
          "evidence": "Slides 10-16 contrast EU and US on funding, growth, time-to-ARR, capital efficiency.",
          "position": 2,
          "objective": "Position EU SaaS as comparable to US benchmark",
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 17,
      "type": "setup",
      "function": "transition",
      "rawType": "agenda",
      "block": null,
      "metadata": {
        "slideType": "agenda",
        "slideTypeCanon": {
          "name": "Agenda",
          "slug": "agenda",
          "status": "active",
          "canonId": "019de52d-061b-7470-b138-3ffa5e612cce",
          "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": 1,
        "componentCount": 1,
        "textChars": 43,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "bullet_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.273+00",
          "seconds": 1.964,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/17",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-17",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.45,
            "w": 0.31,
            "x": 0.23,
            "y": 0.275
          },
          "kind": "list",
          "text": "Market Update\nThe Top 100\n\"Crystal balling\"",
          "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 17:44:25.273+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "456a6cf3-a0f2-424a-ae4e-7b73be659fec",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 21,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 17,
          "name": "Climax",
          "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 18,
      "type": "analysis",
      "function": "present_framework",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 26,
        "componentCount": 5,
        "textChars": 167,
        "nDataPoints": 2,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "big_number",
          "bullet_list"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.772+00",
          "seconds": 2.406,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/18",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-18",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.25,
            "x": 0.53,
            "y": 0.36
          },
          "kind": "list",
          "text": "Market attractiveness\nDifferentiation\nTechnology\nTeam strength\nMomentum (MRR, employees)",
          "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 17:44:25.772+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "41b190fb-23ea-4a04-ac9d-dbc9ae0c45ef",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.17,
            "x": 0.28,
            "y": 0.56
          },
          "kind": "metric",
          "text": "12+ countries",
          "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": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.772+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "40456661-5342-4756-9f6d-c88ac198a6aa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.15,
            "y": 0.4
          },
          "kind": "metric",
          "text": "1,000+ SaaS Companies",
          "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": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:25.772+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "44e3e2d4-a099-4f9f-b940-c5092a8318c6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "SaaS company count: 1,000+",
          "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-25 11:59:43+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba6-25aa49d6d5c1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.36,
            "x": 0.32,
            "y": 0.07
          },
          "kind": "title",
          "text": "The next generation",
          "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 17:44:25.772+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "268870ff-66d8-4aab-a0e8-7b4d829eeee5",
          "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": "019de06b-ba0e-7159-83c3-991b364ed9d8",
          "evidence": "First zoom-in slide chunks 1000+ universe into 5 criteria.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-ba40-72b4-8749-3c019b51231e",
          "evidence": "Hard numbers '1,000+ companies, 12+ countries'.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 21,
          "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": 18,
          "name": "The Implications (So What)",
          "beatId": "019de06b-af32-704e-a842-41bb4146a7e7",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 21,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 17,
          "name": "Climax",
          "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 21,
          "from": 18,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019de06b-b13b-75a0-8da3-7cb3fe724690",
          "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
          "position": 3,
          "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 19,
      "type": "analysis",
      "title": "This is a classic 'market map' or 'logo garden' slide, common in venture capital presentations to show ecosystem coverage.",
      "function": "present_framework",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 7,
        "componentCount": 3,
        "textChars": 76,
        "nDataPoints": 0,
        "notes": "This is a classic 'market map' or 'logo garden' slide, common in venture capital presentations to show ecosystem coverage.",
        "elementsJson": [
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.77+00",
          "seconds": 3.28,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/19",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-19",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.76,
            "w": 0.94,
            "x": 0.03,
            "y": 0.16
          },
          "kind": "image",
          "text": "Various company logos organized by category",
          "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 17:44:26.77+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "491b77e9-2cde-47d2-8625-73147d3cfc28",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.07,
            "x": 0.08,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:26.77+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "566f0007-02c0-4548-8dd6-dd0986722b4b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.38,
            "x": 0.31,
            "y": 0.04
          },
          "kind": "title",
          "text": "Accel Euroscape 2017",
          "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 17:44:26.77+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6fb9690f-d664-417b-b7b7-78fea033c958",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Social Proof",
            "slug": "social-proof",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-990d-7620-82b3-6dd286f34568",
            "version": 1,
            "bodyDocId": null,
            "description": "People adapt behavior based on what others do - show adoption and testimonials",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-bb46-737c-ac7f-84ef2da9e481",
          "evidence": "Hundreds of company logos signal market depth.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Gestalt Principles",
            "slug": "gestalt-principles",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b266-7631-9b7e-44d83bd5d4f3",
            "version": 1,
            "bodyDocId": null,
            "description": "Proximity, Similarity, Enclosure, Continuity, Closure, Connection - how humans perceive visual groups",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer",
            "Architect"
          ],
          "matchId": "019de06b-bae1-71f1-99c7-2a6e4017d47f",
          "evidence": "Logos grouped by category with clear enclosures.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "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": "019de06b-bb12-7436-89ba-79d4926fbbfb",
          "evidence": "Functional clusters use spatial proximity.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Picture Superiority Effect",
            "slug": "picture-superiority-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
            "version": 1,
            "bodyDocId": null,
            "description": "Pictures remembered 6x better than words - prioritize visuals over text",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de06b-baaf-767c-918f-c2695eaab634",
          "evidence": "Logo grid replaces dense text descriptions.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "de8c0e3d-85df-4b57-b14e-28d669f41bb6",
          "evidence": "Categorization of companies by industry and function",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:44:26.77+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "frameworkName": "market-landscape"
        },
        {
          "matchId": "019de06b-bd21-742b-9ea9-4a36cd1c9e82",
          "evidence": "Classic VC market map: logos arranged by functional category and vertical.",
          "framework": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "frameworkName": "Market Map"
        }
      ],
      "arcBeats": [
        {
          "to": 21,
          "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": 18,
          "name": "The Implications (So What)",
          "beatId": "019de06b-af32-704e-a842-41bb4146a7e7",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 21,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 17,
          "name": "Climax",
          "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 21,
          "from": 18,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019de06b-b13b-75a0-8da3-7cb3fe724690",
          "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
          "position": 3,
          "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 20,
      "type": "analysis",
      "title": "The slide uses four pie charts to segment the Euroscape 2017 data by financial and geographic metrics.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "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": "balanced",
        "densityScore": 45,
        "componentCount": 7,
        "textChars": 152,
        "nDataPoints": 18,
        "notes": "The slide uses four pie charts to segment the Euroscape 2017 data by financial and geographic metrics.",
        "elementsJson": [
          "headline_text",
          "pie_chart",
          "pie_chart",
          "pie_chart",
          "pie_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.691+00",
          "seconds": 2.933,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/20",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-20",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.325,
            "x": 0.162,
            "y": 0.565
          },
          "kind": "chart",
          "text": "# companies by country",
          "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": "Pie chart",
              "slug": "pie",
              "status": "active",
              "canonId": "019de52c-ffdb-71bb-a800-5c5ab9f1c373",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pie",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "203df795-cfea-4a85-8f2a-b7a2e8d7954b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.325,
            "x": 0.52,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Capital raised to date",
          "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": "Pie chart",
              "slug": "pie",
              "status": "active",
              "canonId": "019de52c-ffdb-71bb-a800-5c5ab9f1c373",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pie",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cff229c3-8372-46dc-8e1e-2bfa62dc42f5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.325,
            "x": 0.162,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Revenue run-rate",
          "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": "Pie chart",
              "slug": "pie",
              "status": "active",
              "canonId": "019de52c-ffdb-71bb-a800-5c5ab9f1c373",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pie",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "deda8da1-2162-46d2-8349-0db677cecc07",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.325,
            "x": 0.52,
            "y": 0.565
          },
          "kind": "chart",
          "text": "2016-17 capital raised by country",
          "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": "Pie chart",
              "slug": "pie",
              "status": "active",
              "canonId": "019de52c-ffdb-71bb-a800-5c5ab9f1c373",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pie",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f4ce329b-7826-49e2-87bd-aed6d665b4fc",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Capital raised",
          "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-25 11:59:44+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba7-20b3e6d00f7f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.085,
            "x": 0.092,
            "y": 0.965
          },
          "kind": "source-note",
          "text": "Source: Crunchbase",
          "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 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a25600cc-abe8-43d6-bf15-9af59d491f5c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.524,
            "x": 0.238,
            "y": 0.065
          },
          "kind": "title",
          "text": "Euroscape 2017 demographics",
          "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 17:44:26.691+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f88081e9-3fb6-43d0-8982-2115dcd8588a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "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": "019de06b-bba9-75e4-bb0f-8a12c36923b6",
          "evidence": "Consistent color palette across the four pies.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "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": "019de06b-bb77-74cc-9fc9-349e5497f37a",
          "evidence": "Four pie charts in same format for parallel reading.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 21,
          "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": 18,
          "name": "The Implications (So What)",
          "beatId": "019de06b-af32-704e-a842-41bb4146a7e7",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 21,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 17,
          "name": "Climax",
          "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 21,
          "from": 18,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019de06b-b13b-75a0-8da3-7cb3fe724690",
          "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
          "position": 3,
          "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 21,
      "type": "analysis",
      "function": "compare_peers",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 6,
        "textChars": 460,
        "nDataPoints": 14,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "bar_chart_grouped",
          "bullet_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.517+00",
          "seconds": 2.628,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/21",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-21",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Marketing, Data / Analytics and Security overweighted vs. the US. Under-representation in vertical solutions, productivity and Developers Infrastructure.",
          "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-25 11:59:45+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba7-a34d2c770c5d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.5,
            "x": 0.08,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Split by category Europe vs. US",
          "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 17:44:26.517+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4ff3152c-3424-439d-a74c-b83d36287420",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.35,
            "y": 0.88
          },
          "kind": "legend",
          "text": "Accel Euroscape 2017; US Top 300 SaaS companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:44:26.517+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fb7a77df-7e3a-4d15-89aa-97c510d126bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.25,
            "x": 0.67,
            "y": 0.3
          },
          "kind": "list",
          "text": "Marketing, Data / Analytics and Security overweighted vs. the US\nUnder-representation in vertical solutions, productivity and Developers Infrastructure",
          "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 17:44:26.517+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2b42a884-4b8c-4137-8d53-e18ec4d5f69c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percentage share by category",
          "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-25 11:59:45+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-41ab-72d9-bba7-a67ae3aa00c2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.86,
            "x": 0.07,
            "y": 0.05
          },
          "kind": "title",
          "text": "Marketing is dominating, Vertical SaaS is emerging",
          "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 17:44:26.517+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f3a14193-dc9a-43a7-8b9b-69bb511ea11b",
          "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": "019de06b-bbe2-75ce-b01e-ddd9c395ca70",
          "evidence": "Title 'Marketing is dominating, Vertical SaaS is emerging'.",
          "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-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "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": "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": "019de06b-bc14-7738-84be-9081af2a4aba",
          "evidence": "Blue Euroscape vs black US bars throughout.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "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": "019de06b-bc46-749b-be03-7fcd6ff3b53b",
          "evidence": "Right-rail callouts spell out the so-whats explicitly.",
          "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": 78,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "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": [
        {
          "matchId": "019de06b-bd56-778c-a679-9cb66d4ed6e7",
          "evidence": "Side-by-side category share Euroscape vs US Top 300.",
          "framework": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "frameworkName": "Sector Benchmark"
        }
      ],
      "arcBeats": [
        {
          "to": 21,
          "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": 18,
          "name": "The Implications (So What)",
          "beatId": "019de06b-af32-704e-a842-41bb4146a7e7",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "Euroscape map plus demographics plus sector split shows what data implies for EU.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 21,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 17,
          "name": "Climax",
          "beatId": "019de06b-b074-7530-ae3d-83fbb5fc4cfb",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Euroscape reveal — full European SaaS landscape on p19.",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 21,
          "from": 18,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019de06b-b13b-75a0-8da3-7cb3fe724690",
          "evidence": "Goes from 1000+ universe to market map to demographics pies to sector split.",
          "position": 3,
          "objective": "Drill into European SaaS landscape — companies, demographics, sectors",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 22,
      "type": "setup",
      "function": "transition",
      "rawType": "agenda",
      "block": null,
      "metadata": {
        "slideType": "agenda",
        "slideTypeCanon": {
          "name": "Agenda",
          "slug": "agenda",
          "status": "active",
          "canonId": "019de52d-061b-7470-b138-3ffa5e612cce",
          "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": 1,
        "componentCount": 1,
        "textChars": 43,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "bullet_list"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:25.89+00",
          "seconds": 1.792,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/22",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-22",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.434,
            "w": 0.305,
            "x": 0.217,
            "y": 0.258
          },
          "kind": "list",
          "text": "Market Update\nThe Top 100\n\"Crystal Balling\"",
          "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 17:44:25.89+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2ba00762-1ce8-47f8-a6b2-5ae6f845a9ce",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 25,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 22,
          "name": "Resolution",
          "beatId": "019de06b-b0a5-7044-a993-83d36bed5151",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Crystal Balling, thank-you, disclaimer close out.",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 23,
      "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": 60,
        "componentCount": 7,
        "textChars": 589,
        "nDataPoints": 1,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.945+00",
          "seconds": 2.839,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/23",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-23",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.85,
            "x": 0.08,
            "y": 0.19
          },
          "kind": "list",
          "text": "AI & Automation: Clear ROI for enterprise, workflow redesign, SIs developing practices, examples like UI Path.",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "266cacb8-ad83-4ab7-b9af-342c7f449023",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.85,
            "x": 0.08,
            "y": 0.64
          },
          "kind": "list",
          "text": "Rise of SMB: Reached tipping point of S-curve, efficient GTM engines, $10B+ market cap potential, examples like Shopify.",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ba35558a-1c8b-4032-875f-f38549e6eeec",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.85,
            "x": 0.08,
            "y": 0.34
          },
          "kind": "list",
          "text": "APIs and microservices: Need for speed/agility, plug and play infrastructure, examples like Algolia.",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "be12d7c6-0df2-44f5-9ab2-97463344be07",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.85,
            "x": 0.08,
            "y": 0.79
          },
          "kind": "list",
          "text": "Compliance & Security: Cyber threats rising, security vs usability challenge, perimeter disappearing, examples like Darktrace.",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eca0477d-fa28-46a1-9286-ead3800d8e7a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.85,
            "x": 0.08,
            "y": 0.49
          },
          "kind": "list",
          "text": "Vertical Apps: Legacy solutions aging, mobile/AI opening new perspectives, examples like Doctolib.",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fd9fcf16-3483-4e2e-8a2c-ef52ad7f0d40",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.08,
            "x": 0.03,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Accel",
          "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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "87038d72-4aec-4a76-b94b-7d5d2ce32105",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.38,
            "x": 0.31,
            "y": 0.05
          },
          "kind": "title",
          "text": "\"Crystal balling\" 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 17:44:26.945+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1787a9d-4ab6-47c5-bce0-6379c9c125c7",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Foreshadowing",
            "slug": "foreshadowing",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a406-7159-bb8c-aeef05df2563",
            "version": 1,
            "bodyDocId": null,
            "description": "Planting hints of what's to come for later payoff",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-bcbd-778d-8584-d2fd556b9964",
          "evidence": "Names categories Accel will pursue next year.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 23,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 23,
          "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": 23,
          "name": "The Action (Now What)",
          "beatId": "019de06b-af66-773e-a50d-6c7916d18c0d",
          "matchId": "019de06b-aecc-7241-9873-050b43507aae",
          "beatType": null,
          "evidence": "'Crystal balling 2018' lists forward investment themes.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 72
        },
        {
          "to": 25,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 22,
          "name": "Resolution",
          "beatId": "019de06b-b0a5-7044-a993-83d36bed5151",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Crystal Balling, thank-you, disclaimer close out.",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 24,
      "type": "setup",
      "function": "other",
      "rawType": "closing_ask",
      "block": null,
      "metadata": {
        "slideType": "closing_ask",
        "slideTypeCanon": {
          "name": "Closing ask",
          "slug": "closing_ask",
          "status": "active",
          "canonId": "019de52d-0aa4-750f-8aa1-8d622dd99f5c",
          "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": "sparse",
        "densityScore": 3,
        "componentCount": 2,
        "textChars": 39,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:26.727+00",
          "seconds": 2.408,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/24",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-24",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.088,
            "w": 0.214,
            "x": 0.393,
            "y": 0.588
          },
          "kind": "paragraph",
          "text": "pbotteri@accel.com\n@pbotteri",
          "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 17:44:26.727+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b2010ad4-ab68-4452-bfab-393fb174f7b8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.075,
            "w": 0.246,
            "x": 0.377,
            "y": 0.405
          },
          "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 17:44:26.727+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a44945f3-c749-4718-a8d9-e4dbe9f78fbd",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Closing Techniques",
            "slug": "closing-techniques",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
            "version": 1,
            "bodyDocId": null,
            "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de06b-bcee-747e-b2e9-e2a0cf66654d",
          "evidence": "Thank-you slide with contact info.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-30 22:04:06.314874+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 24,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 25,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 22,
          "name": "Resolution",
          "beatId": "019de06b-b0a5-7044-a993-83d36bed5151",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Crystal Balling, thank-you, disclaimer close out.",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 25,
      "type": "setup",
      "function": "other",
      "rawType": "disclaimer",
      "block": null,
      "metadata": {
        "slideType": "disclaimer",
        "slideTypeCanon": {
          "name": "Disclaimer",
          "slug": "disclaimer",
          "status": "active",
          "canonId": "019de52d-0801-727b-b98a-5ed095aeee78",
          "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": "balanced",
        "densityScore": 39,
        "componentCount": 2,
        "textChars": 1621,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:44:31.582+00",
          "seconds": 7.173,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5c-b82d3deac1f2/25",
        "deck": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2#slide-25",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5c-b82d3deac1f2.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.5,
            "w": 0.938,
            "x": 0.031,
            "y": 0.225
          },
          "kind": "disclaimer",
          "text": "This document has been prepared by Accel Partners Management LLP (hereinafter Accel). Accel is a limited liability partnership incorporated in England and Wales with registered number OC303424, having its registered office at 1 New Burlington Place, London, W1. Accel is authorised and regulated by the Financial Conduct Authority (the 'FCA') and is entered on the FCA register with registration number 222503.\n\nThis document is provided for information purposes only and does not constitute an offer or a recommendation to purchase or sell any security or service. It is not intended for distribution, publication, or use in any jurisdiction where such distribution, publication, or use would be unlawful.\nThis document forms part of a presentation to persons who have been invited to attend such presentation and must be read and considered in the context of that presentation only.\n\nThis document does not contain personalized recommendations or advice and is not intended to substitute any professional advice on investment in financial products. Before entering into any transaction, an investor should consider carefully the suitability of a transaction to his/her particular circumstances and, where necessary, obtain independent professional advice in respect of risks, as well as any legal, regulatory, credit, tax, and accounting consequences.\n\nThis document is the property of Accel and is addressed to its recipient exclusively for their personal use. It may not be reproduced (in whole or in part), transmitted, modified, or used for any other purpose without the prior written permission of Accel.",
          "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 17:44:31.582+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1ddd6ab9-f1f5-4407-b4e8-b24ddc8cef93",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.176,
            "x": 0.412,
            "y": 0.078
          },
          "kind": "title",
          "text": "Disclaimer",
          "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 17:44:31.582+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6d3a5dd5-7a6f-44e2-85bc-1c9749607ba3",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 25,
          "arc": {
            "name": "The Mountain",
            "slug": "mountain",
            "status": "active",
            "bestFor": "Case studies, success stories, dramatic reveals",
            "canonId": "019dd956-62dc-71fd-9964-679ce4773319",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Setup & Stakes -> Rising Action -> Climax -> Resolution",
            "description": null,
            "familyLabel": null
          },
          "from": 22,
          "name": "Resolution",
          "beatId": "019de06b-b0a5-7044-a993-83d36bed5151",
          "matchId": "019de06b-af97-73b8-9908-62fcd20fa6bc",
          "beatType": null,
          "evidence": "Crystal Balling, thank-you, disclaimer close out.",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 2,
      "to": 16,
      "label": "The Facts (What)",
      "description": "Pages 2-16 are pure market data: scale, growth, IPOs, EU/US benchmarks."
    },
    {
      "from": 18,
      "to": 21,
      "label": "The Implications (So What)",
      "description": "Euroscape map plus demographics plus sector split shows what data implies for EU."
    },
    {
      "from": 23,
      "to": 23,
      "label": "The Action (Now What)",
      "description": "'Crystal balling 2018' lists forward investment themes."
    }
  ],
  "loops": [
    {
      "from": 5,
      "to": 9,
      "label": "Pattern Hunter",
      "description": "Stack independent evidence that SaaS market is hot"
    },
    {
      "from": 10,
      "to": 16,
      "label": "Tale Two Worlds",
      "description": "Position EU SaaS as comparable to US benchmark"
    },
    {
      "from": 18,
      "to": 21,
      "label": "Zoom In",
      "description": "Drill into European SaaS landscape — companies, demographics, sectors"
    }
  ]
}