{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5f69-752d-a9b9-c903e4d4ec2a",
  "slug": "bVAgW2AE3O2c1lUV3teN",
  "title": "This former Monzo exec aims to take the pain out of weekly grocery shopping with his new startup Lollipop. Check out the 14-slide pitch deck it used to raise $6.1 million.",
  "subtitle": "Lollipop",
  "author": "Lollipop",
  "pageCount": 14,
  "kind": "pitchdeck",
  "orientation": "landscape",
  "aspectRatio": 1.778,
  "document": {
    "id": "019dd923-5f69-752d-a9b9-c903e4d4ec2a",
    "slug": "bVAgW2AE3O2c1lUV3teN",
    "title": "This former Monzo exec aims to take the pain out of weekly grocery shopping with his new startup Lollipop. Check out the 14-slide pitch deck it used to raise $6.1 million.",
    "rawTitle": "This former Monzo exec aims to take the pain out of weekly grocery shopping with his new startup Lollipop. Check out the 14-slide pitch deck it used to raise $6.1 million.",
    "authorId": "Pitchdecks",
    "authorName": "Lollipop",
    "authorDisplay": "Lollipop",
    "kind": {
      "slug": "pitchdeck",
      "label": "Pitch deck"
    },
    "sourceType": {
      "slug": "strategy_consulting",
      "label": "Strategy consulting"
    },
    "fileName": "Monzo-bVAgW2AE.pdf",
    "sourceUrl": "https://www.businessinsider.com/monzos-former-coo-raised-6-million-grocery-shopping-pitch-deck-2022-5",
    "sourceDate": "2022-05-10 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-27 09:07:40.339+00",
    "status": "ready",
    "pageCount": 14,
    "orientation": "landscape",
    "aspectRatio": 1.778,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/bVAgW2AE3O2c1lUV3teN",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 14,
    "pagesIndexed": 14,
    "pagesWithImages": 14,
    "pagesWithMetadata": 14,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 59,
    "chartCount": 2,
    "metricSlides": 0,
    "toolMatches": 2,
    "documentToolMatches": 0,
    "frameworkMatches": 3,
    "arcMatches": 1,
    "beatMatches": 4,
    "loopMatches": 2,
    "patternMatches": 0,
    "storymakersMatch": false,
    "scoreAvailable": false,
    "reviewAvailable": false,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": true,
    "pitchdeckProfileAvailable": true
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "Problem-Agitate-Solution",
          "slug": "problem-agitate-solution",
          "status": "active",
          "bestFor": "Sales pitches, urgency-driven, competitive displacement",
          "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
        "evidence": "The deck follows a clear problem-agitate-solution arc, highlighting the inefficiency of traditional grocery shopping and presenting Lollipop's solution",
        "isPrimary": true,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:36:44.821698+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "beats": [
      {
        "to": 5,
        "arc": {
          "name": "Problem-Agitate-Solution",
          "slug": "problem-agitate-solution",
          "status": "active",
          "bestFor": "Sales pitches, urgency-driven, competitive displacement",
          "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 2,
        "name": "Why Now",
        "beatId": "c1ca3d41-7823-42f1-80b2-ee97c9bd53ad",
        "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
        "beatType": null,
        "evidence": "Slides 2-5 highlight the market trends and the need for change",
        "position": 0,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 4,
        "arc": {
          "name": "Problem-Agitate-Solution",
          "slug": "problem-agitate-solution",
          "status": "active",
          "bestFor": "Sales pitches, urgency-driven, competitive displacement",
          "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 4,
        "name": "Problem Statement",
        "beatId": "d929b61c-ed6b-471f-9da6-26734c9d9a3e",
        "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
        "beatType": null,
        "evidence": "Slide 4 clearly states the problem with traditional grocery shopping",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 9,
        "arc": {
          "name": "Problem-Agitate-Solution",
          "slug": "problem-agitate-solution",
          "status": "active",
          "bestFor": "Sales pitches, urgency-driven, competitive displacement",
          "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 7,
        "name": "Product Demo",
        "beatId": "0d96df99-0dda-43e9-a0c4-55e46b0501c3",
        "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
        "beatType": null,
        "evidence": "Slides 7-9 demonstrate Lollipop's product and its features",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 13,
        "arc": {
          "name": "Problem-Agitate-Solution",
          "slug": "problem-agitate-solution",
          "status": "active",
          "bestFor": "Sales pitches, urgency-driven, competitive displacement",
          "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 11,
        "name": "Traction",
        "beatId": "bbd3c4e9-db5b-43d1-8e0c-fab602d12c2e",
        "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
        "beatType": null,
        "evidence": "Slides 11-13 show evidence of Lollipop's progress and partnerships",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      }
    ],
    "loops": [
      {
        "to": 5,
        "from": 2,
        "loop": {
          "name": "15_why_now",
          "slug": "15-why-now",
          "status": "active",
          "bestFor": "Sales pitches, fundraising, requesting immediate budget approval",
          "canonId": "019dd956-6c00-70cd-bd42-6bacc4af726f",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Context (Trends) -> The Trigger Event -> The Window of Opportunity",
          "description": "Create temporal urgency by proving that the window of opportunity is opening or closing",
          "familyLabel": null,
          "categoryName": "Urgency",
          "categorySlug": "urgency"
        },
        "matchId": "82b78d1e-0a26-4977-9ea7-796644e4c374",
        "evidence": "Slides 2-5 highlight the market trends and the need for change",
        "position": 0,
        "objective": "Why now is the right time to invest in Lollipop",
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:36:44.973035+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      },
      {
        "to": 4,
        "from": 4,
        "loop": {
          "name": "27_cost_of_inaction",
          "slug": "27-cost-of-inaction",
          "status": "active",
          "bestFor": "Urgent budget requests, compliance, risk mitigation",
          "canonId": "019dd956-70d1-7395-a15b-857ba858b394",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Status Quo -> The Hidden Costs Accumulating -> The Future State of Inaction -> The Tipping Point",
          "description": "Quantify what happens if the audience does nothing",
          "familyLabel": null,
          "categoryName": "Urgency",
          "categorySlug": "urgency"
        },
        "matchId": "5cd62608-0f01-4ecf-ae3c-4081c03ab491",
        "evidence": "Slide 4 clearly states the problem with traditional grocery shopping",
        "position": 1,
        "objective": "The cost of not changing the traditional grocery shopping experience",
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:36:45.004163+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Slide recipe: Cover",
          "slug": "cover-slide",
          "status": "active",
          "bestFor": null,
          "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
          "version": 1,
          "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
          "description": "The first ten seconds. Build it deliberately.",
          "familyLabel": "slide-recipe",
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "designer",
        "layer": "slide",
        "agents": [
          "designer"
        ],
        "matchId": "a82f02df-33b7-4dde-ade5-bc5c65a1cdce",
        "evidence": "This is a cover slide with a title.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 22:27:49.597347+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": "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": "fac686b8-f356-4b98-b457-25e3d057a91a",
        "evidence": "This is a cover slide with a title and headline.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 22:27:51.076471+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "c7ac2d6b-0b07-4f93-9605-19c090e8041f",
        "evidence": "Visual representation of exponential growth following a period of stagnation.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 16:28:38.739+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "frameworkName": "hockey-stick-growth"
      },
      {
        "matchId": "2c0c5893-b11b-43e3-ac9f-312cc38ebfc5",
        "evidence": "Contrasts a small, high-visibility segment with a large, ignored segment.",
        "framework": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-05-02 16:28:39.701+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "frameworkName": "market-segmentation-pyramid"
      },
      {
        "matchId": "d04e9651-44fa-44bb-8a5c-907ed3dbd90a",
        "evidence": "The slide explicitly contrasts emerging vs traditional consumer needs.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 16:28:42.552+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "frameworkName": "comparison-frame"
      }
    ],
    "patterns": []
  },
  "storymakers": null,
  "score": null,
  "review": null,
  "activistThesis": null,
  "pitchdeck": {
    "metadata": {
      "author": "Tasmin Lockwood",
      "fireId": "bVAgW2AE3O2c1lUV3teN",
      "sector": "fintech",
      "deckKind": "fundraise",
      "roundRaw": "pre-seed",
      "amountRaw": "$6.1 million",
      "amountUsd": "6100000",
      "scrapedAt": "2026-04-27 09:07:40.339+00",
      "sectorRaw": "Fintech",
      "sourceUrl": "https://www.businessinsider.com/monzos-former-coo-raised-6-million-grocery-shopping-pitch-deck-2022-5",
      "deckKindAt": "2026-04-28 07:19:06+00",
      "highlights": "Fintech founder and former Monzo COO Tom Foster-Carter has turned his eye to groceries. His new startup Lollipop wants to make the weekly shop much easier for busy families. Check out the 14-slide pitch deck the startup used to raise $6.1 million from Octopus Ventures.",
      "slideCount": 14,
      "companyName": "Monzo",
      "description": "Fintech founder and former Monzo COO Tom Foster-Carter has turned his eye to groceries. His new startup Lollipop wants to make the weekly shop much easier for busy families. Check out the 14-slide pitch deck the startup used to raise $6.1 million from Octopus Ventures.  A serial entrepreneur and former Monzo chief operating officer has turned his attention away from fintech to grocery shopping.   Tom Foster-Carter;; who also cofounded debit and credit card aggregator Curve and children's finance app Osper;; is set on transforming the weekly shop. His latest venture Lollipop;; founded in 2020;; just landed £5 million ($6.1 million) to help families get fed without the stress of planning meals and shopping for groceries.   The seed round was led by Octopus Ventures and builds on a £1 million ($1.2 million) pre-seed round from Maki VC;; a backer of Olympian Jessica Ennis-Hill's femtech startup Jennis.  The cofounder had the idea when his first child arrived during the busiest week of his career.  \"I remember seeing these two – a huge work milestone and this huge personal milestone – colliding and I couldn't do anything about either of them;;\" Foster-Carter told Insider. \"I knew it was gonna throw our lives into chaos and it absolutely did.\"  Doing the weekly shop nearly tipped the new parents \"over the edge;;\" and Foster-Carter knew there had to be a software solution.  London-based Lollipop crunches user data – such as dietary requirements;; number of people in the family;; and their ages;; budget;; and lifestyle goals – and offers up recipes from its own in-house chefs or from BBC Good Food to create a meal plan. Users can also add their own recipes manually;; and the platform will soon be able to pull information from website links.  Lollipop claims rapid delivery apps;; which focus on last-minute orders;; miss 90% of the grocery market that centers on stocking up the shelves.  Once recipes are selected;; Lollipop syncs up with British supermarket Sainsbury's and builds a shopping basket with automatically-selected ingredients that can be swapped out for alternatives if needed. In the future;; users will be able to customize the types of ingredients they prefer. For example;; the platform could always opt for the organic;; gluten-free;; or \"lazy option;;\" such as pre-chopped ginger or garlic.  The company expects to add different supermarkets as it scales.  The system also has a sense of what ingredients that users commonly have in;; Foster-Carter said;; so some items like salt and pepper are automatically deselected from the basket until a user wants to top up their supplies. The platform also has a community element as users often share meal photos and advice;; the cofounder added.  Lollipop;; which claims to have thousands of people signing up every week;; also allows users to order household essentials such as toilet paper. The company's target audience is busy families like Foster-Carter's own.  The fresh cash will be used to build out the platform;; come out of beta;; and double the company's 20-person strong team by the end of the year.  Long term;; Foster-Carter sees Lollipop connecting to smart devices so it knows exactly what is in a user's fridge and cupboards and when it goes out of date. The cofounder said this will help tackle food waste and hopes to facilitate food sharing amongst neighbours.   Check out the 14-slide pitch deck Foster-Carter used to raise the fresh round.",
      "displayName": "Lollipop.",
      "publishDate": "2022-05-10",
      "roundSeries": "pre_seed",
      "articleTitle": "This former Monzo exec aims to take the pain out of weekly grocery shopping with his new startup Lollipop. Check out the 14-slide pitch deck it used to raise $6.1 million.",
      "leadInvestors": "Octopus Ventures",
      "deckKindSignal": "raise",
      "metaExtractedAt": "2026-04-28 07:16:02+00"
    },
    "profile": {
      "scores": {
        "yc": 0.1225,
        "a16z": 0.1225,
        "docsend": 0.2424,
        "hoffman": 0.1212,
        "mcclure": 0.1725,
        "sequoia": 0.4152,
        "kawasaki": 0.1225,
        "nextview": 0.2154,
        "slidebean": 0.1281,
        "founder_institute": 0.1976
      },
      "nSlides": 14,
      "sequence": [
        "cover",
        "why_now",
        "market_landscape",
        "pain_points",
        "market_landscape",
        "solution",
        "product_demo",
        "product_demo",
        "product_demo",
        "vision",
        "product_demo",
        "other",
        "testimonial",
        "cover"
      ],
      "breakdown": {
        "yc": {
          "order": 0.2,
          "signal": 0,
          "jaccard": 0.125
        },
        "a16z": {
          "order": 0.2,
          "signal": 0,
          "jaccard": 0.125
        },
        "docsend": {
          "order": 0.3636,
          "signal": 0,
          "jaccard": 0.2667
        },
        "hoffman": {
          "order": 0.1818,
          "signal": 0,
          "jaccard": 0.1333
        },
        "mcclure": {
          "order": 0.2,
          "signal": 0.05,
          "jaccard": 0.125
        },
        "sequoia": {
          "order": 0.2727,
          "signal": 0.2,
          "jaccard": 0.2667
        },
        "kawasaki": {
          "order": 0.2,
          "signal": 0,
          "jaccard": 0.125
        },
        "nextview": {
          "order": 0.3333,
          "signal": 0,
          "jaccard": 0.2308
        },
        "slidebean": {
          "order": 0.2308,
          "signal": 0,
          "jaccard": 0.1176
        },
        "founder_institute": {
          "order": 0.2143,
          "signal": 0.05,
          "jaccard": 0.1667
        }
      },
      "matchedAt": "2026-04-27 21:51:54+00",
      "noveltyScore": 0.8848,
      "primaryScore": 0.4152,
      "noveltySignals": [
        "rare slide types: vision, why_now",
        "duplicated ≥3×: product_demo",
        "non-canonical types: market_landscape, pain_points, testimonial"
      ],
      "primaryProfile": "sequoia",
      "secondaryScore": 0.2424,
      "secondaryProfile": "docsend"
    }
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "title": "The slide features the brand name with a phonetic pronunciation and etymology, paired with a high-fidelity product UI mockup.",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/Gbg-9CCrZX5ZyR3HFCluPT2coWRR_RWcUe_qd3unCOw/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iVkFnVzJBRTNPMmMxbFVWM3RlTi9wMDAxLmpwZw",
      "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": 3,
        "textChars": 59,
        "nDataPoints": 0,
        "notes": "The slide features the brand name with a phonetic pronunciation and etymology, paired with a high-fidelity product UI mockup.",
        "elementsJson": [
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:38.272+00",
          "seconds": 3.57,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/1",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-1",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.928,
            "w": 0.454,
            "x": 0.546,
            "y": 0.072
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:38.272+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d5300a7e-f7c8-413b-ae3c-2b610964522e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.019,
            "w": 0.302,
            "x": 0.156,
            "y": 0.577
          },
          "kind": "paragraph",
          "text": "Lollipop /lɒl.i.pɒp/ Cockney rhyming slang for shop",
          "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 16:28:38.272+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0010dbba-a2ca-49b3-8f4f-c97410f7c537",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.072,
            "w": 0.281,
            "x": 0.176,
            "y": 0.448
          },
          "kind": "title",
          "text": "lollipop",
          "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 16:28:38.272+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ad704880-1ff6-4803-8f95-a043ad8bf77d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Slide recipe: Cover",
            "slug": "cover-slide",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
            "version": 1,
            "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
            "description": "The first ten seconds. Build it deliberately.",
            "familyLabel": "slide-recipe",
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "designer",
          "layer": "slide",
          "agents": [
            "designer"
          ],
          "matchId": "a82f02df-33b7-4dde-ade5-bc5c65a1cdce",
          "evidence": "This is a cover slide with a title.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 22:27:49.597347+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/QL42XFYCwf0rql8oFk5Wkwu0-83NYOENOFUCj7UzI-U/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iVkFnVzJBRTNPMmMxbFVWM3RlTi9wMDAxLmpwZw",
      "imagePathAlt": "https://imgproxy.kitesheet.com/Po6zD9lYF3m3ZtUjpMZFyzVTZFIJfaWI9ofZ_B9WSZU/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iVkFnVzJBRTNPMmMxbFVWM3RlTi9wMDAxLnBuZw",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/lpR59uZ7AbTc947eEzzcxChyncHWYr1jb07TXI5B_uo/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iVkFnVzJBRTNPMmMxbFVWM3RlTi9wMDAxLnBuZw"
    },
    {
      "page": 2,
      "type": "setup",
      "title": "The chart uses a 'hockey stick' growth curve to emphasize the sudden market shift.",
      "function": "argue_timing",
      "rawType": "why_now",
      "block": null,
      "metadata": {
        "slideType": "why_now",
        "slideTypeCanon": {
          "name": "Why now",
          "slug": "why_now",
          "status": "active",
          "canonId": "019de52d-0f2e-718d-b8ad-256dd87582d0",
          "version": 1,
          "description": null
        },
        "function": "argue_timing",
        "functionCanon": {
          "name": "Argue timing (why now)",
          "slug": "argue_timing",
          "status": "active",
          "canonId": "019de52d-16f8-74de-9ec2-900be07d90dd",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 5,
        "textChars": 163,
        "nDataPoints": 2,
        "notes": "The chart uses a 'hockey stick' growth curve to emphasize the sudden market shift.",
        "elementsJson": [
          "action_title",
          "area_chart",
          "callout_box",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:38.739+00",
          "seconds": 4.013,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/2",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-2",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.08,
            "x": 0.91,
            "y": 0.54
          },
          "kind": "callout",
          "text": "Forecast to be 24% by 2025",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:38.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5527e0bf-6ec1-415e-8de6-c9a41cc956a5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.9,
            "x": 0.05,
            "y": 0.3
          },
          "kind": "chart",
          "text": "UK online grocery adoption growth curve",
          "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": "Area chart",
              "slug": "area",
              "status": "active",
              "canonId": "019de52c-ff89-71e0-911e-5cab78b90f53",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "area",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:38.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b3aae7c7-42e5-4c86-a7ea-f1ae49ded9f4",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "online grocery adoption: 11%",
          "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-27 14:49:59+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe5-771c-8d86-8690cdbe1e39",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.02,
            "y": 0.97
          },
          "kind": "source-note",
          "text": "Source: ONS; Sifted",
          "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 16:28:38.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f45b34b3-1589-4c5a-82b1-38da5ba56674",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.8,
            "x": 0.1,
            "y": 0.15
          },
          "kind": "title",
          "text": "A £200B industry just evolved 10 years in 10 months",
          "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 16:28:38.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aa12374d-377d-46cb-bd1f-5d9be73955e3",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [
        {
          "matchId": "c7ac2d6b-0b07-4f93-9605-19c090e8041f",
          "evidence": "Visual representation of exponential growth following a period of stagnation.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 16:28:38.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "frameworkName": "hockey-stick-growth"
        }
      ],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 2,
          "name": "Why Now",
          "beatId": "c1ca3d41-7823-42f1-80b2-ee97c9bd53ad",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "15_why_now",
            "slug": "15-why-now",
            "status": "active",
            "bestFor": "Sales pitches, fundraising, requesting immediate budget approval",
            "canonId": "019dd956-6c00-70cd-bd42-6bacc4af726f",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Context (Trends) -> The Trigger Event -> The Window of Opportunity",
            "description": "Create temporal urgency by proving that the window of opportunity is opening or closing",
            "familyLabel": null
          },
          "matchId": "82b78d1e-0a26-4977-9ea7-796644e4c374",
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "objective": "Why now is the right time to invest in Lollipop",
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:36:44.973035+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 3,
      "type": "tension",
      "title": "Uses a visual contrast between a grey sidebar of logos and a large yellow block to represent market segments.",
      "function": "frame_problem",
      "rawType": "why_now",
      "block": null,
      "metadata": {
        "slideType": "why_now",
        "slideTypeCanon": {
          "name": "Why now",
          "slug": "why_now",
          "status": "active",
          "canonId": "019de52d-0f2e-718d-b8ad-256dd87582d0",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 56,
        "componentCount": 7,
        "textChars": 218,
        "nDataPoints": 1,
        "notes": "Uses a visual contrast between a grey sidebar of logos and a large yellow block to represent market segments.",
        "elementsJson": [
          "action_title",
          "logo_grid",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.701+00",
          "seconds": 4.644,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/3",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-3",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Last-minute & top-up",
          "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-27 14:50:11+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe5-771c-8d87-85af7484f412",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.72,
            "w": 0.13,
            "x": 0.01,
            "y": 0.5
          },
          "kind": "image",
          "text": "Weezy, Deliveroo, Getir, Dija, Gorillas, Zapp, Uber Eats, Fancy",
          "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 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "40c2e6a0-1d7a-4c03-8c23-c9998af14685",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.09,
            "x": 0.11,
            "y": 0.8
          },
          "kind": "legend",
          "text": "Last-minute & top-up",
          "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 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8a6f5795-c6ae-4284-8edf-44ddcde9bf19",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "market share: 90%",
          "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-27 14:50:11+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe5-771c-8d87-8a2ceca98585",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.22,
            "w": 0.5,
            "x": 0.5,
            "y": 0.5
          },
          "kind": "paragraph",
          "text": "Stock-up",
          "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 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "945edf1a-400e-4de4-8f0c-e0dbda1f49fe",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.04,
            "x": 0.01,
            "y": 0.96
          },
          "kind": "source-note",
          "text": "Source: Kantar",
          "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 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "754d8050-d21a-4b28-8239-32724dc3e90f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.64,
            "x": 0.18,
            "y": 0.19
          },
          "kind": "title",
          "text": "Speedy delivery is grabbing the headlines but this ignores 90% of the market",
          "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 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3ac19fef-f71f-4363-a228-87eada7f5df6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [
        {
          "matchId": "2c0c5893-b11b-43e3-ac9f-312cc38ebfc5",
          "evidence": "Contrasts a small, high-visibility segment with a large, ignored segment.",
          "framework": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-05-02 16:28:39.701+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "frameworkName": "market-segmentation-pyramid"
        }
      ],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 2,
          "name": "Why Now",
          "beatId": "c1ca3d41-7823-42f1-80b2-ee97c9bd53ad",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "15_why_now",
            "slug": "15-why-now",
            "status": "active",
            "bestFor": "Sales pitches, fundraising, requesting immediate budget approval",
            "canonId": "019dd956-6c00-70cd-bd42-6bacc4af726f",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Context (Trends) -> The Trigger Event -> The Window of Opportunity",
            "description": "Create temporal urgency by proving that the window of opportunity is opening or closing",
            "familyLabel": null
          },
          "matchId": "82b78d1e-0a26-4977-9ea7-796644e4c374",
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "objective": "Why now is the right time to invest in Lollipop",
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:36:44.973035+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 4,
      "type": "tension",
      "title": "The chart uses a horizontal bar format to visualize survey data from 1,000 families.",
      "function": "frame_problem",
      "rawType": "problem_statement",
      "block": null,
      "metadata": {
        "slideType": "problem_statement",
        "slideTypeCanon": {
          "name": "Problem statement",
          "slug": "problem_statement",
          "status": "active",
          "canonId": "019de52d-0879-768d-bba8-8da8a5a121d4",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 40,
        "componentCount": 4,
        "textChars": 296,
        "nDataPoints": 4,
        "notes": "The chart uses a horizontal bar format to visualize survey data from 1,000 families.",
        "elementsJson": [
          "action_title",
          "bar_chart_horizontal",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:41.32+00",
          "seconds": 6.191,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/4",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-4",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.48,
            "w": 0.9,
            "x": 0.05,
            "y": 0.37
          },
          "kind": "chart",
          "text": "Spend 1+ hours / week: 80%; Don't enjoy the experience: 64%; Wish they had more support: 50%; Search for recipe inspiration weekly: 70%",
          "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 16:28:41.32+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2e8c41a4-1009-4c95-83a4-1de9b3114001",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "consumer dissatisfaction: 80%",
          "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-27 14:49:59+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe5-771c-8d86-bac005f472f2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "Lollipop commissioned research, Jan 2021, n=1000 average income families",
          "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 16:28:41.32+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "338477c5-b508-48f5-bc1b-6535251452c1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.68,
            "x": 0.16,
            "y": 0.16
          },
          "kind": "title",
          "text": "The big shop remains inefficient & arduous week-in, week-out",
          "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 16:28:41.32+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "43f89271-8b29-494f-8799-c2d5346b2d9d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 2,
          "name": "Why Now",
          "beatId": "c1ca3d41-7823-42f1-80b2-ee97c9bd53ad",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        },
        {
          "to": 4,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 4,
          "name": "Problem Statement",
          "beatId": "d929b61c-ed6b-471f-9da6-26734c9d9a3e",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slide 4 clearly states the problem with traditional grocery shopping",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "15_why_now",
            "slug": "15-why-now",
            "status": "active",
            "bestFor": "Sales pitches, fundraising, requesting immediate budget approval",
            "canonId": "019dd956-6c00-70cd-bd42-6bacc4af726f",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Context (Trends) -> The Trigger Event -> The Window of Opportunity",
            "description": "Create temporal urgency by proving that the window of opportunity is opening or closing",
            "familyLabel": null
          },
          "matchId": "82b78d1e-0a26-4977-9ea7-796644e4c374",
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "objective": "Why now is the right time to invest in Lollipop",
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:36:44.973035+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        },
        {
          "to": 4,
          "from": 4,
          "loop": {
            "name": "27_cost_of_inaction",
            "slug": "27-cost-of-inaction",
            "status": "active",
            "bestFor": "Urgent budget requests, compliance, risk mitigation",
            "canonId": "019dd956-70d1-7395-a15b-857ba858b394",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Status Quo -> The Hidden Costs Accumulating -> The Future State of Inaction -> The Tipping Point",
            "description": "Quantify what happens if the audience does nothing",
            "familyLabel": null
          },
          "matchId": "5cd62608-0f01-4ecf-ae3c-4081c03ab491",
          "evidence": "Slide 4 clearly states the problem with traditional grocery shopping",
          "position": 1,
          "objective": "The cost of not changing the traditional grocery shopping experience",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:36:45.004163+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 5,
      "type": "setup",
      "title": "The slide uses a three-column layout to categorize market players under specific trends.",
      "function": "establish_context",
      "rawType": "why_now",
      "block": null,
      "metadata": {
        "slideType": "why_now",
        "slideTypeCanon": {
          "name": "Why now",
          "slug": "why_now",
          "status": "active",
          "canonId": "019de52d-0f2e-718d-b8ad-256dd87582d0",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 37,
        "componentCount": 6,
        "textChars": 87,
        "nDataPoints": 0,
        "notes": "The slide uses a three-column layout to categorize market players under specific trends.",
        "elementsJson": [
          "action_title",
          "icon_grid",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.716+00",
          "seconds": 4.524,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/5",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-5",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.74,
            "x": 0.13,
            "y": 0.35
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Icon grid",
              "slug": "icon-grid",
              "status": "active",
              "canonId": "019de52c-fdfe-749d-9990-1db465a3eed4",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "icon-grid",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "070ef8e4-d4ec-4b74-815b-070686ccb766",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.9,
            "x": 0.05,
            "y": 0.6
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "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 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c56c35c4-2e8f-4165-95c2-87fef27db46f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.1,
            "x": 0.13,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Speed",
          "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 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0cfc4436-bfd3-40be-a0c8-0c5e0a4037d1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.2,
            "x": 0.4,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Home adventures",
          "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 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cfd47521-cea7-49e1-a3bf-6ce830f9023e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.2,
            "x": 0.7,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Mission-led shopping",
          "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 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f6aa91d3-ce91-4720-81c8-53095926b3cc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.76,
            "x": 0.12,
            "y": 0.15
          },
          "kind": "title",
          "text": "Three mega-trends are redistributing the market",
          "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 16:28:39.716+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "51f63773-a89a-44a6-bd7a-16dd74f6698c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 2,
          "name": "Why Now",
          "beatId": "c1ca3d41-7823-42f1-80b2-ee97c9bd53ad",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "15_why_now",
            "slug": "15-why-now",
            "status": "active",
            "bestFor": "Sales pitches, fundraising, requesting immediate budget approval",
            "canonId": "019dd956-6c00-70cd-bd42-6bacc4af726f",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Context (Trends) -> The Trigger Event -> The Window of Opportunity",
            "description": "Create temporal urgency by proving that the window of opportunity is opening or closing",
            "familyLabel": null
          },
          "matchId": "82b78d1e-0a26-4977-9ea7-796644e4c374",
          "evidence": "Slides 2-5 highlight the market trends and the need for change",
          "position": 0,
          "objective": "Why now is the right time to invest in Lollipop",
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:36:44.973035+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 6,
      "type": "setup",
      "title": "The slide uses a split-screen layout to categorize value propositions into 'Emerging' and 'Traditional' segments.",
      "function": "present_framework",
      "rawType": "key_messages",
      "block": null,
      "metadata": {
        "slideType": "key_messages",
        "slideTypeCanon": {
          "name": "Key messages",
          "slug": "key_messages",
          "status": "active",
          "canonId": "019de52d-0712-703f-89f5-bda6688faf3f",
          "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": 21,
        "componentCount": 3,
        "textChars": 233,
        "nDataPoints": 0,
        "notes": "The slide uses a split-screen layout to categorize value propositions into 'Emerging' and 'Traditional' segments.",
        "elementsJson": [
          "headline_text",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:42.552+00",
          "seconds": 7.255,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/6",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-6",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.84,
            "x": 0.08,
            "y": 0.035
          },
          "kind": "image",
          "text": "Icons for Speed, Home Adventures, Mission-led shopping, Price, Range, Convenience",
          "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": "Icon grid",
              "slug": "icon-grid",
              "status": "active",
              "canonId": "019de52c-fdfe-749d-9990-1db465a3eed4",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "icon-grid",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:42.552+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aa388c91-ad03-449a-9634-6df8040f4c05",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.84,
            "x": 0.08,
            "y": 0.5
          },
          "kind": "list",
          "text": "Emerging: Speed, Home Adventures, Mission-led shopping. Traditional: Price, Range, Convenience",
          "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 16:28:42.552+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a1073bac-605e-4239-a84d-e8eca4daf217",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.76,
            "x": 0.12,
            "y": 0.18
          },
          "kind": "title",
          "text": "We'll out-deliver on emerging + traditional consumer needs",
          "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 16:28:42.552+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cf0308bd-05ff-4542-9017-cce3aade7531",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [
        {
          "matchId": "d04e9651-44fa-44bb-8a5c-907ed3dbd90a",
          "evidence": "The slide explicitly contrasts emerging vs traditional consumer needs.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 16:28:42.552+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 7,
      "type": "setup",
      "title": "Shows two screens: one for user input (dietary preferences) and one for the resulting personalized meal card.",
      "function": "present_solution",
      "rawType": "product_demo",
      "block": null,
      "metadata": {
        "slideType": "product_demo",
        "slideTypeCanon": {
          "name": "Product demo",
          "slug": "product_demo",
          "status": "active",
          "canonId": "019de52d-0f06-7288-84f2-7568c1020fce",
          "version": 1,
          "description": null
        },
        "function": "present_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 15,
        "componentCount": 2,
        "textChars": 104,
        "nDataPoints": 4,
        "notes": "Shows two screens: one for user input (dietary preferences) and one for the resulting personalized meal card.",
        "elementsJson": [
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.456+00",
          "seconds": 4.02,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/7",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-7",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.95,
            "w": 0.51,
            "x": 0.02,
            "y": 0.05
          },
          "kind": "image",
          "text": "App interface showing dietary preference selection and meal details",
          "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": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.456+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1599597-bbaa-4ec6-921e-223bedbf170f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.35,
            "x": 0.58,
            "y": 0.39
          },
          "kind": "title",
          "text": "Personalised meals everyone will love",
          "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 16:28:39.456+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0906575b-67af-419e-9fac-2c9fa0874f7d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "Product Demo",
          "beatId": "0d96df99-0dda-43e9-a0c4-55e46b0501c3",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 7-9 demonstrate Lollipop's product and its features",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 8,
      "type": "setup",
      "title": "The slide uses a three-screen sequence to show the transition from meal planning to grocery selection and basket management.",
      "function": "present_solution",
      "rawType": "product_demo",
      "block": null,
      "metadata": {
        "slideType": "product_demo",
        "slideTypeCanon": {
          "name": "Product demo",
          "slug": "product_demo",
          "status": "active",
          "canonId": "019de52d-0f06-7288-84f2-7568c1020fce",
          "version": 1,
          "description": null
        },
        "function": "present_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 10,
        "componentCount": 2,
        "textChars": 132,
        "nDataPoints": 0,
        "notes": "The slide uses a three-screen sequence to show the transition from meal planning to grocery selection and basket management.",
        "elementsJson": [
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:38.872+00",
          "seconds": 3.333,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/8",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-8",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.65,
            "w": 0.8,
            "x": 0.1,
            "y": 0.25
          },
          "kind": "image",
          "text": "Three mobile app screens showing meal plan, grocery selection, and basket view.",
          "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": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:38.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12b73c4b-2192-4ae6-800a-e4785d50d283",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.7,
            "x": 0.15,
            "y": 0.1
          },
          "kind": "title",
          "text": "The rest of your basket filled in the blink of an eye",
          "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 16:28:38.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aa64244d-b68c-4175-8b08-6fb05dbb23df",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "Product Demo",
          "beatId": "0d96df99-0dda-43e9-a0c4-55e46b0501c3",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 7-9 demonstrate Lollipop's product and its features",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 9,
      "type": "setup",
      "title": "The slide uses a 'hero' image of the product UI to demonstrate the core value proposition.",
      "function": "present_solution",
      "rawType": "product_demo",
      "block": null,
      "metadata": {
        "slideType": "product_demo",
        "slideTypeCanon": {
          "name": "Product demo",
          "slug": "product_demo",
          "status": "active",
          "canonId": "019de52d-0f06-7288-84f2-7568c1020fce",
          "version": 1,
          "description": null
        },
        "function": "present_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 9,
        "componentCount": 2,
        "textChars": 118,
        "nDataPoints": 0,
        "notes": "The slide uses a 'hero' image of the product UI to demonstrate the core value proposition.",
        "elementsJson": [
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.162+00",
          "seconds": 3.585,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/9",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-9",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.95,
            "w": 0.49,
            "x": 0.51,
            "y": 0.05
          },
          "kind": "image",
          "text": "Mobile app UI showing recipe search and detail screens",
          "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": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.162+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f6974a78-3183-43cc-80b9-b3fd7bb62c15",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.45,
            "x": 0.06,
            "y": 0.4
          },
          "kind": "title",
          "text": "A companion app that helps you rustle up something unforgettable",
          "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 16:28:39.162+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ebdf0080-d4ab-47c7-809e-ceba724cd9ec",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 9,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "Product Demo",
          "beatId": "0d96df99-0dda-43e9-a0c4-55e46b0501c3",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 7-9 demonstrate Lollipop's product and its features",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 10,
      "type": "setup",
      "function": "inspire_vision",
      "rawType": "vision",
      "block": null,
      "metadata": {
        "slideType": "vision",
        "slideTypeCanon": {
          "name": "Vision",
          "slug": "vision",
          "status": "active",
          "canonId": "019de52d-0f7e-7689-8010-992b1a43b6b9",
          "version": 1,
          "description": null
        },
        "function": "inspire_vision",
        "functionCanon": {
          "name": "Inspire vision",
          "slug": "inspire_vision",
          "status": "active",
          "canonId": "019de52d-16d0-7756-83de-376eeac6fa40",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 9,
        "componentCount": 2,
        "textChars": 108,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.762+00",
          "seconds": 4.171,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/10",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-10",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 0.31,
            "x": 0.69,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.762+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c52317ba-1761-48a7-89cd-b8d8d16e1715",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.24,
            "w": 0.38,
            "x": 0.11,
            "y": 0.38
          },
          "kind": "title",
          "text": "And one day an AI-led assistant that will do it all for you (though the cooking might be a bit of a stretch)",
          "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 16:28:39.762+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b16bfb03-5cc6-43b6-913b-5a2688d097b4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 11,
      "type": "evidence",
      "title": "The slide uses a screenshot of the mobile app interface to demonstrate the integration.",
      "function": "show_traction",
      "rawType": "traction",
      "block": null,
      "metadata": {
        "slideType": "traction",
        "slideTypeCanon": {
          "name": "Traction",
          "slug": "traction",
          "status": "active",
          "canonId": "019de52d-0edd-72ab-820f-3ebc71a9c542",
          "version": 1,
          "description": null
        },
        "function": "show_traction",
        "functionCanon": {
          "name": "Show traction",
          "slug": "show_traction",
          "status": "active",
          "canonId": "019de52d-16a8-756a-9b38-a7d35420561d",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 29,
        "componentCount": 4,
        "textChars": 151,
        "nDataPoints": 1,
        "notes": "The slide uses a screenshot of the mobile app interface to demonstrate the integration.",
        "elementsJson": [
          "screenshot",
          "headline_text",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:39.878+00",
          "seconds": 4.245,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/11",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-11",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.27,
            "x": 0.56,
            "y": 0.54
          },
          "kind": "image",
          "text": "Sainsbury's logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.878+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "691a1948-2629-41b8-88fe-bdeed22848fb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.88,
            "w": 0.35,
            "x": 0.05,
            "y": 0.06
          },
          "kind": "image",
          "text": "Mobile app interface showing Sainsbury's product catalog",
          "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": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:39.878+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3cd28bc5-d598-42f2-8815-8d9f0cb54ebd",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "SKU count: 30K",
          "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-27 14:50:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe5-771c-8d8c-60ec1ffa8376",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.55,
            "x": 0.42,
            "y": 0.24
          },
          "kind": "title",
          "text": "We've integrated with Sainsbury's with live stock on 30K products",
          "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 16:28:39.878+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "907af955-6a39-4b24-ab2e-e50f42638f99",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 13,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 11,
          "name": "Traction",
          "beatId": "bbd3c4e9-db5b-43d1-8e0c-fab602d12c2e",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 11-13 show evidence of Lollipop's progress and partnerships",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 12,
      "type": "evidence",
      "title": "The slide highlights a strategic partnership as a form of traction/competitive advantage.",
      "function": "show_traction",
      "rawType": "traction",
      "block": null,
      "metadata": {
        "slideType": "traction",
        "slideTypeCanon": {
          "name": "Traction",
          "slug": "traction",
          "status": "active",
          "canonId": "019de52d-0edd-72ab-820f-3ebc71a9c542",
          "version": 1,
          "description": null
        },
        "function": "show_traction",
        "functionCanon": {
          "name": "Show traction",
          "slug": "show_traction",
          "status": "active",
          "canonId": "019de52d-16a8-756a-9b38-a7d35420561d",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 53,
        "componentCount": 7,
        "textChars": 247,
        "nDataPoints": 0,
        "notes": "The slide highlights a strategic partnership as a form of traction/competitive advantage.",
        "elementsJson": [
          "photo",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:40.193+00",
          "seconds": 4.448,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/12",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-12",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.065,
            "w": 0.125,
            "x": 0.746,
            "y": 0.595
          },
          "kind": "image",
          "text": "Lollipop logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42f02825-9487-437a-9ffa-6514719721b5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.065,
            "w": 0.125,
            "x": 0.563,
            "y": 0.595
          },
          "kind": "image",
          "text": "BBC Good Food logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bfeb3954-f631-47da-ac14-fd58f46cdd19",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.42,
            "x": 0,
            "y": 0
          },
          "kind": "image",
          "text": "Burger photo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2f184894-60bd-44a5-a738-e08b12545b3a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.087,
            "x": 0.765,
            "y": 0.738
          },
          "kind": "legend",
          "text": "PROPRIETARY",
          "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 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6751877b-a03c-457f-9c80-e87ef7560ad0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.097,
            "x": 0.577,
            "y": 0.738
          },
          "kind": "legend",
          "text": "BRAND PARTNER",
          "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 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "72ff5e51-4ea4-4cfc-a34a-e6cf34e7170a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.034,
            "w": 0.303,
            "x": 0.011,
            "y": 0.941
          },
          "kind": "paragraph",
          "text": "Lollipop original plant-based recipe: Beyond Meat Burger with Sticky Red Onions & Smokey Mayo",
          "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 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "43c81a59-b0ba-4ed9-a528-c974316ed0bf",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.126,
            "w": 0.512,
            "x": 0.458,
            "y": 0.245
          },
          "kind": "title",
          "text": "Alongside in-house development, we're partnering with the UK's most popular recipe site",
          "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 16:28:40.193+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f960328-d31a-44ac-bd78-56ded4590b00",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 13,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 11,
          "name": "Traction",
          "beatId": "bbd3c4e9-db5b-43d1-8e0c-fab602d12c2e",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 11-13 show evidence of Lollipop's progress and partnerships",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 13,
      "type": "evidence",
      "title": "The slide uses a speech-bubble aesthetic for testimonials.",
      "function": "show_traction",
      "rawType": "testimonial",
      "block": null,
      "metadata": {
        "slideType": "testimonial",
        "slideTypeCanon": {
          "name": "Testimonial",
          "slug": "testimonial",
          "status": "active",
          "canonId": "019de52d-0a2d-7782-8a48-7e84df92cc97",
          "version": 1,
          "description": null
        },
        "function": "show_traction",
        "functionCanon": {
          "name": "Show traction",
          "slug": "show_traction",
          "status": "active",
          "canonId": "019de52d-16a8-756a-9b38-a7d35420561d",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 79,
        "componentCount": 10,
        "textChars": 645,
        "nDataPoints": 0,
        "notes": "The slide uses a speech-bubble aesthetic for testimonials.",
        "elementsJson": [
          "quote_block",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:41.88+00",
          "seconds": 5.926,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/13",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-13",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "We’ve struck a chord with our highly engaged Pioneers community who are providing invaluable feedback daily",
          "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-27 14:50:38+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-abe6-772a-8fef-a257b9c4091f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.228,
            "w": 0.171,
            "x": 0.066,
            "y": 0.318
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "51df31eb-87e0-405f-8000-ad4248fa8207",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.26,
            "w": 0.13,
            "x": 0.304,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d9f13b31-1722-493f-b74f-947e70d124e9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.218,
            "x": 0.282,
            "y": 0.57
          },
          "kind": "quote",
          "text": "I've been trialling Lollipop + absolutely love it. My biggest gripe in life is meal planning",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0ece7734-e57d-4ef9-b46a-bc41e963a2d5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.26,
            "w": 0.218,
            "x": 0.042,
            "y": 0
          },
          "kind": "quote",
          "text": "It went super smoothly and saved me time and headspace when I had literally none to spare",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "15665ca5-3631-4975-868d-3337e4159dc5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.218,
            "x": 0.282,
            "y": 0.312
          },
          "kind": "quote",
          "text": "Had to self-isolate this week. Lollipop was a life-saver... Keep doing what you're doing.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3f4c32b3-9e6a-46b2-b515-27b328f222c0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.218,
            "x": 0.042,
            "y": 0.55
          },
          "kind": "quote",
          "text": "Update: Our 11 month old couldn't get enough of this for dinner tonight",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4f8d183a-2364-4320-b9e6-e659292dea21",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.218,
            "x": 0.282,
            "y": 0.84
          },
          "kind": "quote",
          "text": "Just done my 2nd Lollipop shop in record time...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "87fc58d6-0c08-40aa-93ff-e533d084870b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.218,
            "x": 0.042,
            "y": 0.84
          },
          "kind": "quote",
          "text": "Lightning fast shop for me this morning...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Testimonial",
              "slug": "testimonial",
              "status": "active",
              "canonId": "019de52c-fc21-71b6-9ac3-8266a64945e8",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "testimonial",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dac31ba7-dcac-4e24-b6d9-98ae5ac352ff",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.26,
            "w": 0.435,
            "x": 0.535,
            "y": 0.338
          },
          "kind": "title",
          "text": "We’ve struck a chord with our highly engaged Pioneers community who are providing invaluable feedback daily",
          "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 16:28:41.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4c31f62f-5d0b-4b0d-ae21-621f83676cbe",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 13,
          "arc": {
            "name": "Problem-Agitate-Solution",
            "slug": "problem-agitate-solution",
            "status": "active",
            "bestFor": "Sales pitches, urgency-driven, competitive displacement",
            "canonId": "019dd956-5ec6-70f9-9fd8-fdbaaff39acf",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Problem (Identify pain) -> Agitate (Make it worse) -> Solution (Provide relief)",
            "description": null,
            "familyLabel": null
          },
          "from": 11,
          "name": "Traction",
          "beatId": "bbd3c4e9-db5b-43d1-8e0c-fab602d12c2e",
          "matchId": "a3cacfb0-d9dd-4554-aa69-d422b925f954",
          "beatType": null,
          "evidence": "Slides 11-13 show evidence of Lollipop's progress and partnerships",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 14,
      "type": "setup",
      "title": "The slide features a minimalist design with the brand name and a small yellow circular graphic element.",
      "function": "front_matter",
      "rawType": "cover",
      "block": null,
      "metadata": {
        "slideType": "cover",
        "slideTypeCanon": {
          "name": "Cover",
          "slug": "cover",
          "status": "active",
          "canonId": "019de52d-05f2-729d-9f93-e0504f0a2410",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 6,
        "componentCount": 2,
        "textChars": 60,
        "nDataPoints": 0,
        "notes": "The slide features a minimalist design with the brand name and a small yellow circular graphic element.",
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 16:28:40.458+00",
          "seconds": 4.51,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5f69-752d-a9b9-c903e4d4ec2a/14",
        "deck": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a",
        "deckAnchor": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a#slide-14",
        "deckJson": "/decks/019dd923-5f69-752d-a9b9-c903e4d4ec2a.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.02,
            "w": 0.27,
            "x": 0.365,
            "y": 0.65
          },
          "kind": "paragraph",
          "text": "Lollipop /ˈlɒl.i.pɒp/ Cockney rhyming slang for shop",
          "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 16:28:40.458+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1071d2e6-72da-4c88-89a0-f22a87504743",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.144,
            "w": 0.384,
            "x": 0.308,
            "y": 0.428
          },
          "kind": "title",
          "text": "lollipop",
          "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 16:28:40.458+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "136dd87f-b5f6-425e-83ac-c2a4a54c2b7d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Slide recipe: Cover",
            "slug": "cover-slide",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
            "version": 1,
            "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
            "description": "The first ten seconds. Build it deliberately.",
            "familyLabel": "slide-recipe",
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "designer",
          "layer": "slide",
          "agents": [
            "designer"
          ],
          "matchId": "fac686b8-f356-4b98-b457-25e3d057a91a",
          "evidence": "This is a cover slide with a title and headline.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 22:27:51.076471+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 2,
      "to": 5,
      "label": "Why Now",
      "description": "Slides 2-5 highlight the market trends and the need for change"
    },
    {
      "from": 4,
      "to": 4,
      "label": "Problem Statement",
      "description": "Slide 4 clearly states the problem with traditional grocery shopping"
    },
    {
      "from": 7,
      "to": 9,
      "label": "Product Demo",
      "description": "Slides 7-9 demonstrate Lollipop's product and its features"
    },
    {
      "from": 11,
      "to": 13,
      "label": "Traction",
      "description": "Slides 11-13 show evidence of Lollipop's progress and partnerships"
    }
  ],
  "loops": [
    {
      "from": 2,
      "to": 5,
      "label": "Why Now",
      "description": "Why now is the right time to invest in Lollipop"
    },
    {
      "from": 4,
      "to": 4,
      "label": "Cost Of Inaction",
      "description": "The cost of not changing the traditional grocery shopping experience"
    }
  ]
}