{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019de518-b2b6-72aa-8ece-d478cafa3390",
  "slug": "e68adc7d787ef2b7394c6cdcdcf8a649",
  "title": "Docebo | Investor Presentation Deck | 28 slides",
  "subtitle": "Docebo · 2024-11",
  "author": "Docebo",
  "date": "2024-11-01 00:00:00",
  "pageCount": 28,
  "kind": "pitchdeck",
  "orientation": "landscape",
  "aspectRatio": 1.7777778,
  "document": {
    "id": "019de518-b2b6-72aa-8ece-d478cafa3390",
    "slug": "e68adc7d787ef2b7394c6cdcdcf8a649",
    "title": "Docebo | Investor Presentation Deck | 28 slides",
    "rawTitle": "Docebo | Investor Presentation Deck | 28 slides",
    "authorId": "docebo",
    "authorName": "Docebo",
    "authorDisplay": "Docebo",
    "kind": {
      "slug": "pitchdeck",
      "label": "Pitch deck"
    },
    "sourceType": {
      "slug": "investor_relations",
      "label": "Investor relations"
    },
    "fileName": "2024-11__docebo__investor-pres__e68adc7d.pdf",
    "sourceUrl": "https://www.slidebook.io/company/docebo/presentation/e68adc7d787ef2b7394c6cdcdcf8a649/",
    "sourceDate": "2024-11-15 00:00:00",
    "presentationDate": "2024-11-01 00:00:00",
    "ingestedAt": "2026-05-01 19:51:34.41451+00",
    "status": "ready",
    "pageCount": 28,
    "orientation": "landscape",
    "aspectRatio": 1.7777778,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "corpus": "slidebook",
      "industry": "software-application",
      "local_root": "/Users/miguelsuredasuau/Desktop/lalalalla/_scrape/slidebook/decks/2024-11__docebo__investor-pres__e68adc7d",
      "image_width": 1920,
      "image_format": "jpg",
      "deck_type_raw": "Investor Presentation Deck",
      "deck_type_slug": null,
      "source_url_pattern": "https://www.slidebook.io/company/{company_slug}/presentation/{deck_id}/"
    }
  },
  "coverage": {
    "pageCount": 28,
    "pagesIndexed": 28,
    "pagesWithImages": 28,
    "pagesWithMetadata": 28,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 16,
    "chartCount": 2,
    "metricSlides": 0,
    "toolMatches": 1,
    "documentToolMatches": 0,
    "frameworkMatches": 0,
    "arcMatches": 1,
    "beatMatches": 4,
    "loopMatches": 2,
    "patternMatches": 0,
    "storymakersMatch": false,
    "scoreAvailable": false,
    "reviewAvailable": false,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": false,
    "pitchdeckProfileAvailable": false
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "Rags to Riches",
          "slug": "rags-to-riches",
          "status": "active",
          "bestFor": "Founder stories, IPO roadshows, brand origin",
          "canonId": "019dd956-63ce-718e-8e61-e46409564085",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
          "description": null,
          "familyLabel": null,
          "categoryName": "Booker's 7 Plots",
          "categorySlug": "booker-s-7-plots"
        },
        "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
        "evidence": "The deck progresses from showcasing humble origins and early struggles to highlighting rising success and ultimate achievements in customer growth and ACV.",
        "isPrimary": true,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 23:16:57.600388+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "beats": [
      {
        "to": 5,
        "arc": {
          "name": "Rags to Riches",
          "slug": "rags-to-riches",
          "status": "active",
          "bestFor": "Founder stories, IPO roadshows, brand origin",
          "canonId": "019dd956-63ce-718e-8e61-e46409564085",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
          "description": null,
          "familyLabel": null,
          "categoryName": "Booker's 7 Plots",
          "categorySlug": "booker-s-7-plots"
        },
        "from": 1,
        "name": "Humble Origins",
        "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
        "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
        "beatType": {
          "name": "Humble Origins",
          "slug": "rags-to-riches-humble-origins",
          "status": "active",
          "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
          "version": 1,
          "description": null
        },
        "evidence": "The initial slides introduce Docebo's background and market context.",
        "position": 0,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Setup",
          "slug": "setup",
          "status": "active",
          "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
          "version": 1,
          "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 20,
        "arc": {
          "name": "Rags to Riches",
          "slug": "rags-to-riches",
          "status": "active",
          "bestFor": "Founder stories, IPO roadshows, brand origin",
          "canonId": "019dd956-63ce-718e-8e61-e46409564085",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
          "description": null,
          "familyLabel": null,
          "categoryName": "Booker's 7 Plots",
          "categorySlug": "booker-s-7-plots"
        },
        "from": 6,
        "name": "Rising Success",
        "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
        "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
        "beatType": {
          "name": "Rising Success",
          "slug": "rags-to-riches-rising-success",
          "status": "active",
          "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
          "version": 1,
          "description": null
        },
        "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Development",
          "slug": "development",
          "status": "active",
          "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
          "version": 1,
          "description": "The middle stretch in arcs that have one. Often where length problems creep in."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 22,
        "arc": {
          "name": "Rags to Riches",
          "slug": "rags-to-riches",
          "status": "active",
          "bestFor": "Founder stories, IPO roadshows, brand origin",
          "canonId": "019dd956-63ce-718e-8e61-e46409564085",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
          "description": null,
          "familyLabel": null,
          "categoryName": "Booker's 7 Plots",
          "categorySlug": "booker-s-7-plots"
        },
        "from": 18,
        "name": "The Breakthrough",
        "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
        "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
        "beatType": {
          "name": "The Breakthrough",
          "slug": "rags-to-riches-the-breakthrough",
          "status": "active",
          "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
          "version": 1,
          "description": null
        },
        "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Turn",
          "slug": "turn",
          "status": "active",
          "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
          "version": 1,
          "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 28,
        "arc": {
          "name": "Rags to Riches",
          "slug": "rags-to-riches",
          "status": "active",
          "bestFor": "Founder stories, IPO roadshows, brand origin",
          "canonId": "019dd956-63ce-718e-8e61-e46409564085",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
          "description": null,
          "familyLabel": null,
          "categoryName": "Booker's 7 Plots",
          "categorySlug": "booker-s-7-plots"
        },
        "from": 23,
        "name": "Ultimate Achievement",
        "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
        "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
        "beatType": {
          "name": "Ultimate Achievement",
          "slug": "rags-to-riches-ultimate-achievement",
          "status": "active",
          "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
          "version": 1,
          "description": null
        },
        "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Resolution",
          "slug": "resolution",
          "status": "active",
          "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
          "version": 1,
          "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      }
    ],
    "loops": [
      {
        "to": 9,
        "from": 6,
        "loop": {
          "name": "01_logic_chain",
          "slug": "01-logic-chain",
          "status": "active",
          "bestFor": "Skeptical audiences, controversial recommendations, rigorous analysis",
          "canonId": "019dd956-6638-7457-8650-9b0b42e59fb3",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Premise 1 (Accepted truth) -> Premise 2 (Observed fact) -> Therefore... (Inevitable conclusion)",
          "description": "Build an airtight chain of logic where each premise leads inevitably to the conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "4428235e-7487-4b6c-96af-ef4d235730aa",
        "evidence": "The loop logically connects market sizing with the solution provided.",
        "position": 0,
        "objective": "Understand the market opportunity and solution",
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 23:16:57.811425+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      },
      {
        "to": 20,
        "from": 18,
        "loop": {
          "name": "03_aha_moment",
          "slug": "03-aha-moment",
          "status": "active",
          "bestFor": "Data-heavy sections, research findings, analytical arguments",
          "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Problem/Question -> What the Data Shows -> The Insight",
          "description": "Establish a tension, present data, then deliver the insight that changes everything",
          "familyLabel": null,
          "categoryName": "Narrative",
          "categorySlug": "narrative"
        },
        "matchId": "645a267a-e532-4ca3-b025-a8a9fcc7f9e4",
        "evidence": "The traction slides build a compelling case for Docebo's success.",
        "position": 1,
        "objective": "Realize the significance of consistent execution in driving growth",
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 23:16:57.851978+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Waterfall chart",
          "slug": "waterfall-chart",
          "status": "active",
          "bestFor": null,
          "canonId": "e2799da3-725f-44a9-a093-570f1f388e64",
          "version": 1,
          "bodyDocId": null,
          "description": null,
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "99a733d6-8f63-4c4b-a99e-790ba3370755",
        "evidence": "chart/bar-vertical: Average Contract Value (USD)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-17 02:07:14.838152+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [],
    "patterns": []
  },
  "storymakers": null,
  "score": null,
  "review": null,
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/JK8OuDyCAgjgu-MJiDr9RZ2zRyGWNy3-5dLh-3OoGMI/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9lNjhhZGM3ZDc4N2VmMmI3Mzk0YzZjZGNkY2Y4YTY0OS9wMDAxLmpwZw",
      "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:45:56.694+00",
          "seconds": 3.614,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/1",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-1",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Humble Origins",
          "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Humble Origins",
            "slug": "rags-to-riches-humble-origins",
            "status": "active",
            "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
            "version": 1,
            "description": null
          },
          "evidence": "The initial slides introduce Docebo's background and market context.",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/38xVLMTRWxnoOgQLPvf3d9NieKBTf9b47xWKvOkQBko/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9lNjhhZGM3ZDc4N2VmMmI3Mzk0YzZjZGNkY2Y4YTY0OS9wMDAxLmpwZw",
      "imagePathAlt": "https://imgproxy.kitesheet.com/hSZLyMJ1fzin4rLgQhX1kV8VHmw7hdalqdGPoOWgnas/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9lNjhhZGM3ZDc4N2VmMmI3Mzk0YzZjZGNkY2Y4YTY0OS9wMDAxLnBuZw",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/CuQbUNdhCnC3hdehEmqbFZGCQun7Xx83tf9qVh9f7M4/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9lNjhhZGM3ZDc4N2VmMmI3Mzk0YzZjZGNkY2Y4YTY0OS9wMDAxLnBuZw"
    },
    {
      "page": 2,
      "type": "setup",
      "function": "appendix",
      "rawType": "disclaimer",
      "block": null,
      "metadata": {
        "slideType": "disclaimer",
        "slideTypeCanon": {
          "name": "Disclaimer",
          "slug": "disclaimer",
          "status": "active",
          "canonId": "019de52d-0801-727b-b98a-5ed095aeee78",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:09.547+00",
          "seconds": 14.974,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/2",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-2",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Humble Origins",
          "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Humble Origins",
            "slug": "rags-to-riches-humble-origins",
            "status": "active",
            "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
            "version": 1,
            "description": null
          },
          "evidence": "The initial slides introduce Docebo's background and market context.",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "setup",
      "function": "establish_context",
      "rawType": "timeline",
      "block": null,
      "metadata": {
        "slideType": "timeline",
        "slideTypeCanon": {
          "name": "Timeline",
          "slug": "timeline",
          "status": "active",
          "canonId": "019de52d-0851-75eb-b758-ea2965e7739a",
          "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": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:03.678+00",
          "seconds": 8.506,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/3",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-3",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Humble Origins",
          "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Humble Origins",
            "slug": "rags-to-riches-humble-origins",
            "status": "active",
            "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
            "version": 1,
            "description": null
          },
          "evidence": "The initial slides introduce Docebo's background and market context.",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 4,
      "type": "appendix",
      "function": "establish_context",
      "rawType": "other",
      "block": null,
      "metadata": {
        "slideType": "other",
        "slideTypeCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-0af5-71ed-83de-d51ae245fc43",
          "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": "sparse",
        "densityScore": 7,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 6,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:01.787+00",
          "seconds": 6.564,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/4",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-4",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Humble Origins",
          "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Humble Origins",
            "slug": "rags-to-riches-humble-origins",
            "status": "active",
            "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
            "version": 1,
            "description": null
          },
          "evidence": "The initial slides introduce Docebo's background and market context.",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 5,
      "type": "evidence",
      "function": "illustrate_case",
      "rawType": "customer_logos",
      "block": null,
      "metadata": {
        "slideType": "customer_logos",
        "slideTypeCanon": {
          "name": "Customer logos",
          "slug": "customer_logos",
          "status": "active",
          "canonId": "019de52d-101d-705c-8956-65f1b315e58a",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:00.01+00",
          "seconds": 4.558,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/5",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-5",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Humble Origins",
          "beatId": "0fca7686-9212-437c-9f00-3c55f3c6708b",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Humble Origins",
            "slug": "rags-to-riches-humble-origins",
            "status": "active",
            "canonId": "019dd9b8-4938-7404-a51e-be10eff8a9d5",
            "version": 1,
            "description": null
          },
          "evidence": "The initial slides introduce Docebo's background and market context.",
          "position": 0,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 6,
      "type": "resolution",
      "function": "size_opportunity",
      "rawType": "market_sizing",
      "block": null,
      "metadata": {
        "slideType": "market_sizing",
        "slideTypeCanon": {
          "name": "Market sizing",
          "slug": "market_sizing",
          "status": "active",
          "canonId": "019de52d-08c8-756c-8664-733b73a7ee7b",
          "version": 1,
          "description": null
        },
        "function": "size_opportunity",
        "functionCanon": {
          "name": "Size opportunity",
          "slug": "size_opportunity",
          "status": "active",
          "canonId": "019de52d-147b-7568-8828-a74a27697618",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 8,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 8,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:00.48+00",
          "seconds": 4.335,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/6",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-6",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 6,
          "loop": {
            "name": "01_logic_chain",
            "slug": "01-logic-chain",
            "status": "active",
            "bestFor": "Skeptical audiences, controversial recommendations, rigorous analysis",
            "canonId": "019dd956-6638-7457-8650-9b0b42e59fb3",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Premise 1 (Accepted truth) -> Premise 2 (Observed fact) -> Therefore... (Inevitable conclusion)",
            "description": "Build an airtight chain of logic where each premise leads inevitably to the conclusion",
            "familyLabel": null
          },
          "matchId": "4428235e-7487-4b6c-96af-ef4d235730aa",
          "evidence": "The loop logically connects market sizing with the solution provided.",
          "position": 0,
          "objective": "Understand the market opportunity and solution",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 23:16:57.811425+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 7,
      "type": "resolution",
      "function": "present_solution",
      "rawType": "solution",
      "block": null,
      "metadata": {
        "slideType": "solution",
        "slideTypeCanon": {
          "name": "Solution",
          "slug": "solution",
          "status": "active",
          "canonId": "019de52d-0eb5-72ff-8b70-ba70a4199282",
          "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:02.231+00",
          "seconds": 5.921,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/7",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-7",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 6,
          "loop": {
            "name": "01_logic_chain",
            "slug": "01-logic-chain",
            "status": "active",
            "bestFor": "Skeptical audiences, controversial recommendations, rigorous analysis",
            "canonId": "019dd956-6638-7457-8650-9b0b42e59fb3",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Premise 1 (Accepted truth) -> Premise 2 (Observed fact) -> Therefore... (Inevitable conclusion)",
            "description": "Build an airtight chain of logic where each premise leads inevitably to the conclusion",
            "familyLabel": null
          },
          "matchId": "4428235e-7487-4b6c-96af-ef4d235730aa",
          "evidence": "The loop logically connects market sizing with the solution provided.",
          "position": 0,
          "objective": "Understand the market opportunity and solution",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 23:16:57.811425+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "resolution",
      "function": "present_solution",
      "rawType": "solution",
      "block": null,
      "metadata": {
        "slideType": "solution",
        "slideTypeCanon": {
          "name": "Solution",
          "slug": "solution",
          "status": "active",
          "canonId": "019de52d-0eb5-72ff-8b70-ba70a4199282",
          "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": 5,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 1,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:07.87+00",
          "seconds": 11.2,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/8",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-8",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 6,
          "loop": {
            "name": "01_logic_chain",
            "slug": "01-logic-chain",
            "status": "active",
            "bestFor": "Skeptical audiences, controversial recommendations, rigorous analysis",
            "canonId": "019dd956-6638-7457-8650-9b0b42e59fb3",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Premise 1 (Accepted truth) -> Premise 2 (Observed fact) -> Therefore... (Inevitable conclusion)",
            "description": "Build an airtight chain of logic where each premise leads inevitably to the conclusion",
            "familyLabel": null
          },
          "matchId": "4428235e-7487-4b6c-96af-ef4d235730aa",
          "evidence": "The loop logically connects market sizing with the solution provided.",
          "position": 0,
          "objective": "Understand the market opportunity and solution",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 23:16:57.811425+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "resolution",
      "function": "present_solution",
      "rawType": "solution",
      "block": null,
      "metadata": {
        "slideType": "solution",
        "slideTypeCanon": {
          "name": "Solution",
          "slug": "solution",
          "status": "active",
          "canonId": "019de52d-0eb5-72ff-8b70-ba70a4199282",
          "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:04.36+00",
          "seconds": 7.456,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/9",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-9",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 9,
          "from": 6,
          "loop": {
            "name": "01_logic_chain",
            "slug": "01-logic-chain",
            "status": "active",
            "bestFor": "Skeptical audiences, controversial recommendations, rigorous analysis",
            "canonId": "019dd956-6638-7457-8650-9b0b42e59fb3",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Premise 1 (Accepted truth) -> Premise 2 (Observed fact) -> Therefore... (Inevitable conclusion)",
            "description": "Build an airtight chain of logic where each premise leads inevitably to the conclusion",
            "familyLabel": null
          },
          "matchId": "4428235e-7487-4b6c-96af-ef4d235730aa",
          "evidence": "The loop logically connects market sizing with the solution provided.",
          "position": 0,
          "objective": "Understand the market opportunity and solution",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 23:16:57.811425+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "setup",
      "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:07.76+00",
          "seconds": 10.835,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/10",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-10",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 11,
      "type": "resolution",
      "function": "present_solution",
      "rawType": "solution",
      "block": null,
      "metadata": {
        "slideType": "solution",
        "slideTypeCanon": {
          "name": "Solution",
          "slug": "solution",
          "status": "active",
          "canonId": "019de52d-0eb5-72ff-8b70-ba70a4199282",
          "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:02.673+00",
          "seconds": 5.6,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/11",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-11",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 12,
      "type": "setup",
      "function": "compare_peers",
      "rawType": "competitive_analysis",
      "block": null,
      "metadata": {
        "slideType": "competitive_analysis",
        "slideTypeCanon": {
          "name": "Competitive analysis",
          "slug": "competitive_analysis",
          "status": "active",
          "canonId": "019de52d-093e-776b-94c6-c1573f5f1a31",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:04.767+00",
          "seconds": 7.307,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/12",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-12",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 13,
      "type": "evidence",
      "function": "illustrate_case",
      "rawType": "customer_journey",
      "block": null,
      "metadata": {
        "slideType": "customer_journey",
        "slideTypeCanon": {
          "name": "Customer journey",
          "slug": "customer_journey",
          "status": "active",
          "canonId": "019de52d-0966-70ce-afe3-bc7c98ffc8c9",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 7,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 6,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:04.11+00",
          "seconds": 6.557,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/13",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-13",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 14,
      "type": "evidence",
      "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": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 12,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:05.981+00",
          "seconds": 8.188,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/14",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-14",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 15,
      "type": "resolution",
      "function": "plan_implementation",
      "rawType": "roadmap",
      "block": null,
      "metadata": {
        "slideType": "roadmap",
        "slideTypeCanon": {
          "name": "Roadmap",
          "slug": "roadmap",
          "status": "active",
          "canonId": "019de52d-0a55-72bc-9b7b-a47ef109839c",
          "version": 1,
          "description": null
        },
        "function": "plan_implementation",
        "functionCanon": {
          "name": "Plan implementation",
          "slug": "plan_implementation",
          "status": "active",
          "canonId": "019de52d-14a2-77ea-b210-d6a95eed4823",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:03.906+00",
          "seconds": 5.368,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/15",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-15",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 16,
      "type": "setup",
      "function": "establish_context",
      "rawType": "customer_logos",
      "block": null,
      "metadata": {
        "slideType": "customer_logos",
        "slideTypeCanon": {
          "name": "Customer logos",
          "slug": "customer_logos",
          "status": "active",
          "canonId": "019de52d-101d-705c-8956-65f1b315e58a",
          "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": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:05.059+00",
          "seconds": 5.153,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/16",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-16",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 17,
      "type": "appendix",
      "function": "present_solution",
      "rawType": "other",
      "block": null,
      "metadata": {
        "slideType": "other",
        "slideTypeCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-0af5-71ed-83de-d51ae245fc43",
          "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": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:05.583+00",
          "seconds": 5.496,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/17",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-17",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 18,
      "type": "setup",
      "function": "establish_context",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "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": "sparse",
        "densityScore": 5,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 1,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:06.669+00",
          "seconds": 6.329,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/18",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-18",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        },
        {
          "to": 22,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "The Breakthrough",
          "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "The Breakthrough",
            "slug": "rags-to-riches-the-breakthrough",
            "status": "active",
            "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
            "version": 1,
            "description": null
          },
          "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "645a267a-e532-4ca3-b025-a8a9fcc7f9e4",
          "evidence": "The traction slides build a compelling case for Docebo's success.",
          "position": 1,
          "objective": "Realize the significance of consistent execution in driving growth",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 23:16:57.851978+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 19,
      "type": "evidence",
      "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": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 16,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:05.924+00",
          "seconds": 5.155,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/19",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-19",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        },
        {
          "to": 22,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "The Breakthrough",
          "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "The Breakthrough",
            "slug": "rags-to-riches-the-breakthrough",
            "status": "active",
            "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
            "version": 1,
            "description": null
          },
          "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "645a267a-e532-4ca3-b025-a8a9fcc7f9e4",
          "evidence": "The traction slides build a compelling case for Docebo's success.",
          "position": 1,
          "objective": "Realize the significance of consistent execution in driving growth",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 23:16:57.851978+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 20,
      "type": "evidence",
      "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": "overcrowded",
        "densityScore": 98,
        "componentCount": 16,
        "textChars": 1949,
        "nDataPoints": 22,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:47:47.572+00",
          "seconds": 12.745,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/20",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-20",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.505,
            "w": 0.46,
            "x": 0.029,
            "y": 0.349
          },
          "kind": "chart",
          "text": "Customer growth by year\n4.0\n3.0\n2.0\n1.0\n0.0\n2017 1.2\n2018 1.4\n2019 1.7\n2020 2.2\n2021 2.8\n2022 3.4\n2023 3.8\nQ3 2024 3.9",
          "attrs": {
            "title": "Customer growth by year",
            "data_labels": [
              "1.2",
              "1.4",
              "1.7",
              "2.2",
              "2.8",
              "3.4",
              "3.8",
              "3.9"
            ],
            "x_axis_labels": [
              "2017",
              "2018",
              "2019",
              "2020",
              "2021",
              "2022",
              "2023",
              "Q3 2024"
            ],
            "y_axis_labels": [
              "0.0",
              "1.0",
              "2.0",
              "3.0",
              "4.0"
            ]
          },
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2f8b03c7-ada7-4504-b066-f8d6fb1c536b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.505,
            "w": 0.46,
            "x": 0.529,
            "y": 0.349
          },
          "kind": "chart",
          "text": "Average Contract Value (USD)\n50.0\n40.0\n30.0\n20.0\n10.0\n0.0\n2017 $12K\n2018 $16K\n2019 $21K\n2020 $27K\n2021 $34K\n2022 $42K\n2023 $46K\nQ3 2024 $54K",
          "attrs": {
            "title": "Average Contract Value (USD)",
            "data_labels": [
              "$12K",
              "$16K",
              "$21K",
              "$27K",
              "$34K",
              "$42K",
              "$46K",
              "$54K"
            ],
            "x_axis_labels": [
              "2017",
              "2018",
              "2019",
              "2020",
              "2021",
              "2022",
              "2023",
              "Q3 2024"
            ],
            "y_axis_labels": [
              "0.0",
              "10.0",
              "20.0",
              "30.0",
              "40.0",
              "50.0"
            ]
          },
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "967013b1-2044-4c52-baea-51d353df480c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.064,
            "x": 0.89,
            "y": 0.046
          },
          "kind": "image",
          "text": "docebo",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2145c378-951b-4635-a10d-58185d68836f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.07,
            "x": 0.202,
            "y": 0.195
          },
          "kind": "metric",
          "text": "81%",
          "attrs": {},
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7618ee4d-c700-48fe-bcfd-bcd108cc79eb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.13,
            "x": 0.046,
            "y": 0.195
          },
          "kind": "metric",
          "text": "3,945",
          "attrs": {},
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "abbabc01-b30c-40d4-8213-3f133eb945c2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.086,
            "x": 0.79,
            "y": 0.195
          },
          "kind": "metric",
          "text": "104%",
          "attrs": {},
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d5626a3b-c3ab-428e-bc29-44353ea9030b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.06,
            "x": 0.546,
            "y": 0.195
          },
          "kind": "metric",
          "text": "~4x",
          "attrs": {},
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eee3a7e6-8704-4885-9c02-ec7cd3a699e3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.032,
            "w": 0.25,
            "x": 0.202,
            "y": 0.24
          },
          "kind": "paragraph",
          "text": "of ARR⁴ added in 2023 represented by customers that chose multi-year contracts",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0c7e5087-86dd-4038-ab95-eabb4d8fed1c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.032,
            "w": 0.15,
            "x": 0.79,
            "y": 0.24
          },
          "kind": "paragraph",
          "text": "Net Dollar Retention Rate in 2023³",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "40372eec-2df2-4ff7-8010-619ccdb8a96c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.016,
            "w": 0.076,
            "x": 0.046,
            "y": 0.24
          },
          "kind": "paragraph",
          "text": "Customers¹",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7c91ecc1-f6da-4855-adff-6b190ff35e2c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.032,
            "w": 0.16,
            "x": 0.546,
            "y": 0.24
          },
          "kind": "paragraph",
          "text": "Growth in Average Contract Value since 2017²",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "93df2f6a-2ed9-4e62-84fa-d6078be16f71",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.01,
            "w": 0.13,
            "x": 0.03,
            "y": 0.87
          },
          "kind": "source-note",
          "text": "1. As of September 30, 2024.",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "27fdee18-6e17-440a-a2a4-578cffc4654c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.959,
            "x": 0.03,
            "y": 0.948
          },
          "kind": "source-note",
          "text": "3. As at September 30, 2024. Net Dollar Retention Rate or \"NDR\" is a non-IFRS measure. See \"Non-IFRS Measures and Industry Metrics\" in the disclaimer of this presentation and refer to the Appendix to this presentation for details on how we calculate Net Dollar Retention Rate.",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4b2c4e82-874d-4ad0-a996-abd9211074d7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.959,
            "x": 0.03,
            "y": 0.885
          },
          "kind": "source-note",
          "text": "2. Average Contract Value is calculated as total ARR divided by the number of active customers. Historically, in calculating average contract value, all references to the number of customers or companies we serve included separate accounts per customer based on their installation(s) count. For the third quarter of the fiscal year ended December 31, 2020 and going forward, any separate accounts that our customers may have will be aggregated and counted as one customer based on the contracted customer for the purposes of calculating our average contract value to provide a more precise understanding of this metric. The figures presented for 2017 to 2020 have been adjusted to reflect this methodology change. Average Contract Value is a non-IFRS Measure. See \"Non-IFRS Measures and Industry Metrics\" in the disclaimer of this presentation and refer to the Appendix to this presentation for details on how we calculate Average Contract Value.",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5844c548-bf71-4820-8537-99c8c96f7e85",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.959,
            "x": 0.03,
            "y": 0.97
          },
          "kind": "source-note",
          "text": "4. As at September 30, 2024. ARR is a non-IFRS measure. See \"Non-IFRS Measures and Industry Metrics\" in the disclaimer and refer to the Appendix to this presentation for details on how we calculate ARR.",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d150aac9-569b-4f2e-9ef6-acafe0d47870",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.643,
            "x": 0.046,
            "y": 0.046
          },
          "kind": "title",
          "text": "Consistent Execution Driving Customer and ACV Growth",
          "attrs": {},
          "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-01 22:47:47.572+00",
            "model": "google/gemini-2.5-flash",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fa501ad6-49b9-49f6-a5b3-3c5579c3af44",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Waterfall chart",
            "slug": "waterfall-chart",
            "status": "active",
            "bestFor": null,
            "canonId": "e2799da3-725f-44a9-a093-570f1f388e64",
            "version": 1,
            "bodyDocId": null,
            "description": null,
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "99a733d6-8f63-4c4b-a99e-790ba3370755",
          "evidence": "chart/bar-vertical: Average Contract Value (USD)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-17 02:07:14.838152+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "Rising Success",
          "beatId": "30ae46ba-ae19-488c-b3a7-3dea9c688186",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Rising Success",
            "slug": "rags-to-riches-rising-success",
            "status": "active",
            "canonId": "019dd9b8-4b41-72fa-a0c3-6e8fd75a9278",
            "version": 1,
            "description": null
          },
          "evidence": "Slides showcase market sizing, solution, traction, and consistent execution driving growth.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        },
        {
          "to": 22,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "The Breakthrough",
          "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "The Breakthrough",
            "slug": "rags-to-riches-the-breakthrough",
            "status": "active",
            "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
            "version": 1,
            "description": null
          },
          "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "645a267a-e532-4ca3-b025-a8a9fcc7f9e4",
          "evidence": "The traction slides build a compelling case for Docebo's success.",
          "position": 1,
          "objective": "Realize the significance of consistent execution in driving growth",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 23:16:57.851978+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 21,
      "type": "evidence",
      "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": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 28,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:09.522+00",
          "seconds": 7.963,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/21",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-21",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 22,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "The Breakthrough",
          "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "The Breakthrough",
            "slug": "rags-to-riches-the-breakthrough",
            "status": "active",
            "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
            "version": 1,
            "description": null
          },
          "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 22,
      "type": "evidence",
      "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": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 18,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:08.02+00",
          "seconds": 5.959,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/22",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-22",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 22,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "The Breakthrough",
          "beatId": "32ee00cc-ca5d-44ec-a7da-2020678b9e12",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "The Breakthrough",
            "slug": "rags-to-riches-the-breakthrough",
            "status": "active",
            "canonId": "019dd9b8-4ab3-73dd-aeb6-bf930dcb0353",
            "version": 1,
            "description": null
          },
          "evidence": "The thesis headline and subsequent traction slides highlight key achievements.",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 23,
      "type": "setup",
      "function": "present_framework",
      "rawType": "business_model",
      "block": null,
      "metadata": {
        "slideType": "business_model",
        "slideTypeCanon": {
          "name": "Business model",
          "slug": "business_model",
          "status": "active",
          "canonId": "019de52d-0fa6-7104-86d0-e5781f8b8b45",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 7,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 6,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:06.829+00",
          "seconds": 4.647,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/23",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-23",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 24,
      "type": "setup",
      "function": "establish_context",
      "rawType": "team_bio",
      "block": null,
      "metadata": {
        "slideType": "team_bio",
        "slideTypeCanon": {
          "name": "Team bio",
          "slug": "team_bio",
          "status": "active",
          "canonId": "019de52d-0a7d-7394-ae5b-037478e71f1e",
          "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": "sparse",
        "densityScore": 6,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 3,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:09.604+00",
          "seconds": 7.037,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/24",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-24",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 25,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix_methodology",
      "block": null,
      "metadata": {
        "slideType": "appendix_methodology",
        "slideTypeCanon": {
          "name": "Appendix methodology",
          "slug": "appendix_methodology",
          "status": "active",
          "canonId": "019de52d-07d9-726c-8599-167f2d2ffaa7",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:08.616+00",
          "seconds": 5.655,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/25",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-25",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 26,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix_data",
      "block": null,
      "metadata": {
        "slideType": "appendix_data",
        "slideTypeCanon": {
          "name": "Appendix data",
          "slug": "appendix_data",
          "status": "active",
          "canonId": "019de52d-078a-745b-9ee4-c15f2f539acd",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 10,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 54,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:10.889+00",
          "seconds": 6.879,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/26",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-26",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 27,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix",
      "block": null,
      "metadata": {
        "slideType": "appendix",
        "slideTypeCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-0762-71f8-b564-89ab863301cc",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 24,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:09.939+00",
          "seconds": 5.708,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/27",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-27",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 28,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix_data",
      "block": null,
      "metadata": {
        "slideType": "appendix_data",
        "slideTypeCanon": {
          "name": "Appendix data",
          "slug": "appendix_data",
          "status": "active",
          "canonId": "019de52d-078a-745b-9ee4-c15f2f539acd",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 9,
        "componentCount": null,
        "textChars": null,
        "nDataPoints": 22,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-2.5-flash",
          "runId": null,
          "at": "2026-05-01 22:46:09.853+00",
          "seconds": 5.485,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de518-b2b6-72aa-8ece-d478cafa3390/28",
        "deck": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390",
        "deckAnchor": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390#slide-28",
        "deckJson": "/decks/019de518-b2b6-72aa-8ece-d478cafa3390.json"
      },
      "components": [],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 28,
          "arc": {
            "name": "Rags to Riches",
            "slug": "rags-to-riches",
            "status": "active",
            "bestFor": "Founder stories, IPO roadshows, brand origin",
            "canonId": "019dd956-63ce-718e-8e61-e46409564085",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Humble Origins -> Early Struggles -> The Breakthrough -> Rising Success -> Ultimate Achievement",
            "description": null,
            "familyLabel": null
          },
          "from": 23,
          "name": "Ultimate Achievement",
          "beatId": "4795eb07-3522-47df-bf56-e4979e581e4d",
          "matchId": "f321589f-4290-4b09-967c-da261bd13b9e",
          "beatType": {
            "name": "Ultimate Achievement",
            "slug": "rags-to-riches-ultimate-achievement",
            "status": "active",
            "canonId": "019dd9b8-4bd4-742e-8790-192b9ccb6049",
            "version": 1,
            "description": null
          },
          "evidence": "The business model, team, and appendix provide a comprehensive conclusion.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 1,
      "to": 5,
      "label": "Humble Origins",
      "description": "The initial slides introduce Docebo's background and market context."
    },
    {
      "from": 6,
      "to": 20,
      "label": "Rising Success",
      "description": "Slides showcase market sizing, solution, traction, and consistent execution driving growth."
    },
    {
      "from": 18,
      "to": 22,
      "label": "The Breakthrough",
      "description": "The thesis headline and subsequent traction slides highlight key achievements."
    },
    {
      "from": 23,
      "to": 28,
      "label": "Ultimate Achievement",
      "description": "The business model, team, and appendix provide a comprehensive conclusion."
    }
  ],
  "loops": [
    {
      "from": 6,
      "to": 9,
      "label": "Logic Chain",
      "description": "Understand the market opportunity and solution"
    },
    {
      "from": 18,
      "to": 20,
      "label": "Aha Moment",
      "description": "Realize the significance of consistent execution in driving growth"
    }
  ]
}