PageSourceSearch

https://digitaldreammind.it/pages/DDMLaunchpadFeaturesPage.tsx

js digitaldreammind.it collected 2026-10-09 22:58:24 UTC 55,708 bytes, 533 lines download raw bytes

1import { createHotContext as __vite__createHotContext } from "/@vite/client";import.meta.hot = __vite__createHotContext("/pages/DDMLaunchpadFeaturesPage.tsx");import __vite__cjsImport0_react_jsxDevRuntime from "/node_modules/.vite/deps/react_jsx-dev-runtime.js?v=832f5058"; const jsxDEV = __vite__cjsImport0_react_jsxDevRuntime["jsxDEV"];
2import { motion } from "/node_modules/.vite/deps/framer-motion.js?v=caea8798";
3import {
4  Rocket,
5  Download,
6  FileText,
7  Users,
8  Clock,
9  ArrowRight,
10  Route,
11  BarChart3,
12  Zap,
13  ShieldCheck,
14  Layout,
15  Link2
16} from "/node_modules/.vite/deps/lucide-react.js?v=47e90a1d";
17import { BackButton } from "/components/ui/Shared.tsx";
18import { tx } from "/utils/locale.ts";
19import { NeuralBackground } from "/components/ui/Layout.tsx";
20export const DDMLaunchpadFeaturesPage = ({ lang, setPage }) => {
21  const features = [
22    {
23      icon: /* @__PURE__ */ jsxDEV(Route, { className: "w-8 h-8" }, void 0, false, {
24        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
25        lineNumber: 26,
26        columnNumber: 11
27      }, this),
28      title: tx(lang, "Journey Builder", "Journey builder"),
29      description: tx(lang, "Progetta percorsi guidati per ciascuna tipologia di associato. Ogni journey definisce tappe, contenuti, azioni attese e criteri di avanzamento.", "Design a guided path for each member type. Every journey defines stages, content, expected actions and progress criteria."),
30      color: "bg-violet-600"
31    },
32    {
33      icon: /* @__PURE__ */ jsxDEV(Layout, { className: "w-8 h-8" }, void 0, false, {
34        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
35        lineNumber: 32,
36        columnNumber: 11
37      }, this),
38      title: tx(lang, "Catalogo servizi intelligente", "Smart service catalog"),
39      description: tx(lang, "Trasforma il catalogo servizi statico in un'esperienza dinamica e personalizzata. L'associato vede ciò che è rilevante per lui, quando è rilevante.", "Turn a static service catalog into a dynamic, personal experience. Members see what is relevant to them, when it is relevant."),
40      color: "bg-purple-600"
41    },
42    {
43      icon: /* @__PURE__ */ jsxDEV(BarChart3, { className: "w-8 h-8" }, void 0, false, {
44        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
45        lineNumber: 38,
46        columnNumber: 11
47      }, this),
48      title: tx(lang, "Activation Tracker", "Activation tracker"),
49      description: tx(lang, "Monitora in tempo reale lo stato di attivazione di ogni associato. Rende visibile chi ha attivato cosa, chi è in corso, chi si è bloccato.", "Track each member's activation in real time. See who activated what, who is in progress and who is stuck."),
50      color: "bg-violet-500"
51    },
52    {
53      icon: /* @__PURE__ */ jsxDEV(Zap, { className: "w-8 h-8" }, void 0, false, {
54        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
55        lineNumber: 44,
56        columnNumber: 11
57      }, this),
58      title: tx(lang, "Motore di sollecito", "Auto-nudge engine"),
59      description: tx(lang, "Sistema di automazioni leggere che intervengono nei momenti critici: solleciti contestuali, reminder personalizzati, suggerimenti proattivi.", "Light automations that step in at critical moments: contextual prompts, personal reminders and proactive suggestions."),
60      color: "bg-purple-500"
61    },
62    {
63      icon: /* @__PURE__ */ jsxDEV(ShieldCheck, { className: "w-8 h-8" }, void 0, false, {
64        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
65        lineNumber: 50,
66        columnNumber: 11
67      }, this),
68      title: tx(lang, "Quality gate", "Quality gate"),
69      description: tx(lang, "Validazione guidata delle richieste in ingresso. Riduce richieste incomplete e incomprensioni. Lo staff riceve richieste qualificate.", "Guided validation of incoming requests. Fewer incomplete requests and misunderstandings. Staff receive qualified requests."),
70      color: "bg-violet-600"
71    },
72    {
73      icon: /* @__PURE__ */ jsxDEV(Link2, { className: "w-8 h-8" }, void 0, false, {
74        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
75        lineNumber: 56,
76        columnNumber: 11
77      }, this),
78      title: tx(lang, "Hub di integrazione", "Integration hub"),
79      description: tx(lang, "Connettori verso i sistemi esistenti dell'associazione. Si integra con portali, gestionali e strumenti di comunicazione già in uso.", "Connectors to the association's existing systems. It integrates with portals, management tools and communication channels already in use."),
80      color: "bg-purple-600"
81    }
82  ];
83  const benefits = [
84    {
85      title: tx(lang, "Retention e attrattività", "Retention and appeal"),
86      description: tx(lang, "Quando l'associato percepisce valore concreto, il rinnovo non ric
86hiede convincimento. Monitoraggio continuo per identificare associati a rischio.", "When members feel concrete value, renewal does not need persuasion. Continuous monitoring flags members at risk.")
87    },
88    {
89      title: tx(lang, "Efficienza operativa", "Operational efficiency"),
90      description: tx(lang, "Le richieste incomplete diminuiscono. Il tempo speso in spiegazioni ripetitive si riduce. Lo staff viene liberato per interazioni ad alto valore.", "Incomplete requests drop. Time spent repeating explanations shrinks. Staff are free for high-value conversations.")
91    },
92    {
93      title: tx(lang, "Governance e visibilità", "Governance and visibility"),
94      description: tx(lang, "Dashboard strategiche, KPI tracciati automaticamente, report per il board. Le riunioni possono basarsi su dati concreti.", "Strategic dashboards, automatically tracked KPIs and board reports. Meetings can be based on concrete data.")
95    }
96  ];
97  return /* @__PURE__ */ jsxDEV(
98    motion.div,
99    {
100      initial: { opacity: 0 },
101      animate: { opacity: 1 },
102      exit: { opacity: 0 },
103      className: "pt-40 pb-20 px-6 max-w-7xl mx-auto min-h-screen",
104      children: [
105        /* @__PURE__ */ jsxDEV(
106          BackButton,
107          {
108            onClick: () => setPage("DDM_LAUNCHPAD"),
109            label: tx(lang, "Torna a DDM LaunchPad", "Back to DDM LaunchPad")
110          },
111          void 0,
112          false,
113          {
114            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
115            lineNumber: 85,
116            columnNumber: 7
117          },
118          this
119        ),
120        /* @__PURE__ */ jsxDEV("div", { className: "text-center mb-24", children: [
121          /* @__PURE__ */ jsxDEV(
122            motion.h1,
123            {
124              initial: { y: 20, opacity: 0 },
125              animate: { y: 0, opacity: 1 },
126              className: "text-5xl md:text-7xl font-bold font-[Space Grotesk] mb-6 bg-clip-text text-transparent bg-gradient-to-r from-violet-600 to-purple-400",
127              children: tx(lang, "Esplora DDM LaunchPad", "Explore DDM LaunchPad")
128            },
129            void 0,
130            false,
131            {
132              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
133              lineNumber: 91,
134              columnNumber: 9
135            },
136            this
137          ),
138          /* @__PURE__ */ jsxDEV(
139            motion.p,
140            {
141              initial: { y: 20, opacity: 0 },
142              animate: { y: 0, opacity: 1 },
143              transition: { delay: 0.1 },
144              className: "text-xl text-gray-600 dark:text-gray-400 max-w-3xl mx-auto",
145              children: tx(lang, "Le funzionalità core che trasformano l'ecosistema digitale dell'associazione da insieme di strumenti disponibili a sistema di attivazione misurabile e governabile.", "The core capabilities that turn the association's digital ecosystem from a set of available tools into a measurable, governable activation system.")
146            },
147            void 0,
148            false,
149            {
150              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
151              lineNumber: 98,
152              columnNumber: 9
153            },
154            this
155          )
156        ] }, void 0, true, {
157          fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
158          lineNumber: 90,
159          columnNumber: 7
160        }, this),
161        /* @__PURE__ */ jsxDEV("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mb-32", children: features.map(
162          (f, i) => /* @__PURE__ */ jsxDEV(
163            motion.div,
164            {
165              initial: { y: 30, opacity: 0 },
166              animate: { y: 0, opacity: 1 },
167              transition: { delay: i * 0.1 },
168              className: "p-8 rounded-3xl bg-white dark:bg-gray-900 border border-gray-100 dark:border-gray-800 shadow-xl hover:shadow-violet-500/10 transition-all group",
169              children: [
170                /* @__PURE__ */ jsxDEV("div", { className: `w-16 h-16 rounded-2xl ${f.color} text-white flex items-center justify-center mb-6 group-hover:scale-110 transition-transform`, children: f.icon }, void 0, false, {
171                  fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
172                  lineNumber: 117,
173                  columnNumber: 13
174                }, this),
175                /* @__PURE__ */ jsxDEV("h3", { className: "text-2xl font-bold mb-4", children: f.title }, void 0, false, {
176                  fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
177                  lineNumber: 120,
178                  columnNumber: 13
179                }, this),
180                /* @__PURE__ */ jsxDEV("p", { className: "text-gray-600 dark:text-gray-400 leading-relaxed", children: f.description }, void 0, false, {
181                  fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
182                  lineNumber: 121,
183                  columnNumber: 13
184                }, this)
185              ]
186            },
187            i,
188            true,
189            {
190              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
191              lineNumber: 110,
192              columnNumber: 9
193            },
194            this
195          )
196        ) }, void 0, false, {
197          fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
198          lineNumber: 108,
199          columnNumber: 7
200        }, this),
201        /* @__PURE__ */ jsxDEV("div", { className: "mb-32", children: [
202          /* @__PURE__ */ jsxDEV("h2", { className: "text-3xl font-bold mb-12 text-center", children: tx(lang, "Aree di impatto", "Impact areas") }, void 0, false, {
203            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
204            lineNumber: 127,
205            columnNumber: 9
206          }, this),
207          /* @__PURE__ */ jsxDEV("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-8", children: benefits.map(
208            (b, i) => /* @__PURE__ */ jsxDEV(
209              motion.div,
210              {
211                initial: { y: 20, opacity: 0 },
212                animate: { y: 0, opacity: 1 },
213                transition: { delay: 0.3 + i * 0.1 },
214                className: "p-8 rounded-3xl bg-gradient-to-br from-violet-50 to-purple-50 dark:from-violet-900/20 dark:to-purple-900/20 border border-violet-200 dark:border-violet-800",
215                children: [
216                  /* @__PURE__ */ jsxDEV("h3", { className: "text-xl font-bold mb-4 text-violet-700 dark:text-violet-300", children: b.title }, void 0, false, {
217                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
218                    lineNumber: 137,
219                    columnNumber: 15
220                  }, this),
221                  /* @__PURE__ */ jsxDEV("p", { className: "text-gray-600 dark:text-gray-400 leading-relaxed", children: b.description }, void 0, false, {
222                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
223                    lineNumber: 138,
224                    columnNumber: 15
225                  }, this)
226                ]
227              },
228              i,
229              true,
230              {
231                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
232                lineNumber: 130,
233                columnNumber: 11
234              },
235              this
236            )
237          ) }, void 0, false, {
238            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
239            lineNumber: 128,
240            columnNumber: 9
241          }, this)
242        ] }, void 0, true, {
243          fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
244          lineNumber: 126,
245          columnNumber: 7
246        }, this),
247        /* @__PURE__ */ jsxDEV("div", { className: "mb-32", children: [
248          /* @__PURE__ */ jsxDEV("h2", { className: "text-3xl font-bold mb-12 text-center", children: tx(lang, "Risorse e approfondimenti", "Resources") }, void 0, false, {
249            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
250            lineNumber: 145,
251            columnNumber: 9
252          }, this),
253          /* @__PURE__ */ jsxDEV("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8", children: [
254            /* @__PURE__ */ jsxDEV(
255              motion.div,
256              {
257                whileHover: { scale: 1.02 },
258                className: "p-8 rounded-3xl bg-gradient-to-br from-violet-600 to-purple-700 text-white flex items-center justify-between group cursor-not-allowed opacity-70",
259                children: [
260                  /* @__PURE__ */ jsxDEV("div", { className: "flex items-center gap-6", children: [
261                    /* @__PURE__ */ jsxDEV("div", { className: "p-4 bg-white/20 rounded-2xl", children: /* @__PURE__ */ jsxDEV(FileText, { className: "w-8 h-8" }, void 0, false, {
262                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
263                      lineNumber: 153,
264                      columnNumber: 17
265                    }, this) }, void 0, false, {
266                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
267                      lineNumber: 152,
268                      columnNumber: 15
269                    }, this),
270                    /* @__PURE__ */ jsxDEV("div", { children: [
271                      /* @__PURE__ */ jsxDEV("h3", { className: "text-xl font-bold", children: "Whitepaper DDM LaunchPad" }, void 0, false, {
272                        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
273                        lineNumber: 156,
274                        columnNumber: 17
275                      }, this),
276                      /* @__PURE__ */ jsxDEV("p", { className: "text-white/70", children: tx(lang, "Prossimamente disponibile", "Available soon") }, void 0, false, {
277                        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
278                        lineNumber: 157,
279                        columnNumber: 17
280                      }, this)
281                    ] }, void 0, true, {
282                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
283                      lineNumber: 155,
284                      columnNumber: 15
285                    }, this)
286                  ] }, void 0, true, {
287                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
288                    lineNumber: 151,
289                    columnNumber: 13
290                  }, this),
291                  /* @__PURE__ */ jsxDEV(Clock, { className: "w-6 h-6" }, void 0, false, {
292                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
293                    lineNumber: 160,
294                    columnNumber: 13
295                  }, this)
296                ]
297              },
298              void 0,
299              true,
300              {
301                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
302                lineNumber: 147,
303                columnNumber: 11
304              },
305              this
306            ),
307            /* @__PURE__ */ jsxDEV(
308              motion.a,
309              {
310                href: "/pdfs/Catalogo_DDM_Launchpad.pdf",
311                target: "_blank",
312                rel: "noopener noreferrer",
313                whileHover: { scale: 1.02 },
314                className: "p-8 rounded-3xl bg-gradient-to-br from-purple-600 to-violet-700 text-white flex items-center justify-between group cursor-pointer",
315                children: [
316                  /* @__PURE__ */ jsxDEV("div", { className: "flex items-center gap-6", children: [
317                    /* @__PURE__ */ jsxDEV("div", { className: "p-4 bg-white/20 rounded-2xl", children: /* @__PURE__ */ jsxDEV(BarChart3, { className: "w-8 h-8" }, void 0, false, {
318                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
319                      lineNumber: 172,
320                      columnNumber: 17
321                    }, this) }, void 0, false, {
322                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
323                      lineNumber: 171,
324                      columnNumber: 15
325                    }, this),
326                    /* @__PURE__ */ jsxDEV("div", { children: [
327                      /* @__PURE__ */ jsxDEV("h3", { className: "text-xl font-bold", children: tx(lang, "Brochure commerciale", "Commercial brochure") }, void 0, false, {
328                        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
329                        lineNumber: 175,
330                        columnNumber: 17
331                      }, this),
332                      /* @__PURE__ */ jsxDEV("p", { className: "text-white/70", children: tx(lang, "Executive summary e funzionalità complete", "Executive summary and the full feature set") }, void 0, false, {
333                        fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
334                        lineNumber: 176,
335                        columnNumber: 17
336                      }, this)
337                    ] }, void 0, true, {
338                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
339                      lineNumber: 174,
340                      columnNumber: 15
341                    }, this)
342                  ] }, void 0, true, {
343                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
344                    lineNumber: 170,
345                    columnNumber: 13
346                  }, this),
347                  /* @__PURE__ */ jsxDEV(Download, { className: "w-6 h-6 group-hover:translate-y-1 transition-transform" }, void 0, false, {
348                    fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
349                    lineNumber: 179,
350                    columnNumber: 13
351                  }, this)
352                ]
353              },
354              void 0,
355              true,
356              {
357                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
358                lineNumber: 163,
359                columnNumber: 11
360              },
361              this
362            )
363          ] }, void 0, true, {
364            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
365            lineNumber: 146,
366            columnNumber: 9
367          }, this)
368        ] }, void 0, true, {
369          fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
370          lineNumber: 144,
371          columnNumber: 7
372        }, this),
373        /* @__PURE__ */ jsxDEV("div", { className: "mb-32", children: [
374          /* @__PURE__ */ jsxDEV("div", { className: "flex items-center gap-4 mb-12 justify-center", children: [
375            /* @__PURE__ */ jsxDEV(Users, { className: "w-10 h-10 text-violet-600" }, void 0, false, {
376              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
377              lineNumber: 186,
378              columnNumber: 11
379            }, this),
380            /* @__PURE__ */ jsxDEV("h2", { className: "text-4xl font-bold", children: tx(lang, "Per chi è DDM LaunchPad", "Who DDM LaunchPad is for") }, void 0, false, {
381              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
382              lineNumber: 187,
383              columnNumber: 11
384            }, this)
385          ] }, void 0, true, {
386            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
387            lineNumber: 185,
388            columnNumber: 9
389          }, this),
390          /* @__PURE__ */ jsxDEV("div", { className: "p-10 rounded-[2rem] bg-gray-50 dark:bg-gray-800/50 border border-gray-100 dark:border-gray-700 relative overflow-hidden", children: [
391            /* @__PURE__ */ jsxDEV("div", { className: "absolute top-0 right-0 p-8 opacity-10", children: /* @__PURE__ */ jsxDEV(Rocket, { className: "w-32 h-32" }, void 0, false, {
392              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
393              lineNumber: 191,
394              columnNumber: 13
395            }, this) }, void 0, false, {
396              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
397              lineNumber: 190,
398              columnNumber: 11
399            }, this),
400            /* @__PURE__ */ jsxDEV("p", { className: "text-lg text-gray-600 dark:text-gray-400 leading-relaxed mb-6", children: [
401              tx(lang, "DDM LaunchPad è progettato per", "DDM LaunchPad is designed for"),
402              " ",
403              /* @__PURE__ */ jsxDEV("strong", { className: "text-violet-600 dark:text-violet-400", children: tx(lang, "associazioni di categoria", "trade associations") }, void 0, false, {
404                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
405                lineNumber: 194,
406                columnNumber: 91
407              }, this),
408              " ",
409              tx(lang, "e", "and"),
410              " ",
411              /* @__PURE__ */ jsxDEV("strong", { className: "text-violet-600 dark:text-violet-400", children: tx(lang, "organizzazioni basate sui membri", "membership organizations") }, void 0, false, {
412                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
413                lineNumber: 194,
414                columnNumber: 242
415              }, this),
416              " ",
417              tx(lang, "che affrontano una sfida comune: il divario tra i servizi digitali offerti e la loro effettiva adozione da parte dei membri.", "that share one challenge: the gap between the digital services on offer and how many members actually adopt them.")
418            ] }, void 0, true, {
419              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
420              lineNumber: 193,
421              columnNumber: 11
422            }, this),
423            /* @__PURE__ */ jsxDEV("p", { className: "text-lg text-gray-600 dark:text-gray-400 leading-relaxed", children: tx(lang, "Trasforma gli associati dormienti in membri attivi, riduce il tempo al primo beneficio concreto e rafforza la retention complessiva attraverso percorsi guidati e personalizzati.", "It turns dormant members into active ones, shortens the time to the first concrete benefit and strengthens retention through guided, personal paths.") }, void 0, false, {
424              fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
425              lineNumber: 196,
426              columnNumber: 11
427            }, this)
428          ] }, void 0, true, {
429            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
430            lineNumber: 189,
431            columnNumber: 9
432          }, this)
433        ] }, void 0, true, {
434          fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
435          lineNumber: 184,
436          columnNumber: 7
437        }, this),
438        /* @__PURE__ */ jsxDEV(
439          motion.div,
440          {
441            initial: { scale: 0.9, opacity: 0 },
442            whileInView: { scale: 1, opacity: 1 },
443            className: "text-center p-16 rounded-[3rem] bg-black text-white dark:bg-white dark:text-black overflow-hidden relative",
444            children: [
445              /* @__PURE__ */ jsxDEV("div", { className: "absolute top-0 left-0 w-full h-full opacity-10 pointer-events-none", children: /* @__PURE__ */ jsxDEV(NeuralBackground, { theme: "dark", className: "absolute inset-0 z-0 w-full h-full" }, void 0, false, {
446                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
447                lineNumber: 208,
448                columnNumber: 13
449              }, this) }, void 0, false, {
450                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
451                lineNumber: 207,
452                columnNumber: 9
453              }, this),
454              /* @__PURE__ */ jsxDEV("h2", { className: "text-4xl md:text-5xl font-bold mb-8 relative z-10", children: tx(lang, "Pronto a colmare il divario tra offerta e adozione?", "Ready to close the gap between what you offer and what gets adopted?") }, void 0, false, {
455                fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
456                lineNumber: 210,
457                columnNumber: 9
458              }, this),
459              /* @__PURE__ */ jsxDEV(
460                "button",
461                {
462                  onClick: () => setPage("CONTACT"),
463                  className: "px-10 py-5 rounded-full bg-violet-600 text-white font-bold hover:bg-violet-700 transition-all shadow-xl shadow-violet-500/20 flex items-center gap-3 mx-auto relative z-10",
464                  children: [
465                    tx(lang, "Contattaci ora", "Contact us now"),
466                    " ",
467                    /* @__PURE__ */ jsxDEV(ArrowRight, { className: "w-5 h-5" }, void 0, false, {
468                      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
469                      lineNumber: 215,
470                      columnNumber: 58
471                    }, this)
472                  ]
473                },
474                void 0,
475                true,
476                {
477                  fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
478                  lineNumber: 211,
479                  columnNumber: 9
480                },
481                this
482              )
483            ]
484          },
485          void 0,
486          true,
487          {
488            fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
489            lineNumber: 202,
490            columnNumber: 7
491          },
492          this
493        )
494      ]
495    },
496    void 0,
497    true,
498    {
499      fileName: "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx",
500      lineNumber: 79,
501      columnNumber: 5
502    },
503    this
504  );
505};
506_c = DDMLaunchpadFeaturesPage;
507var _c;
508$RefreshReg$(_c, "DDMLaunchpadFeaturesPage");
509import * as RefreshRuntime from "/@react-refresh";
510const inWebWorker = typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope;
511if (import.meta.hot && !inWebWorker) {
512  if (!window.$RefreshReg$) {
513    throw new Error(
514      "@vitejs/plugin-react can't detect preamble. Something is wrong."
515    );
516  }
517  RefreshRuntime.__hmr_import(import.meta.url).then((currentExports) => {
518    RefreshRuntime.registerExportsForReactRefresh("/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx", currentExports);
519    import.meta.hot.accept((nextExports) => {
520      if (!nextExports) return;
521      const invalidateMessage = RefreshRuntime.validateRefreshBoundaryAndEnqueueUpdate("/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx", currentExports, nextExports);
522      if (invalidateMessage) import.meta.hot.invalidate(invalidateMessage);
523    });
524  });
525}
526function $RefreshReg$(type, id) {
527  return RefreshRuntime.register(type, "/home/ubuntu/projects/website/pages/DDMLaunchpadFeaturesPage.tsx " + id);
528}
529function $RefreshSig$() {
530  return RefreshRuntime.createSignatureFunctionForTransform();
531}
532
533//# sourceMappingURL=data:application/json;base64,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UFBIiwibmFtZXMiOlsibW90aW9uIiwiUm9ja2V0IiwiRG93bmxvYWQiLCJGaWxlVGV4dCIsIlVzZXJzIiwiQ2xvY2siLCJBcnJvd1JpZ2h0IiwiUm91dGUiLCJCYXJDaGFydDMiLCJaYXAiLCJTaGllbGRDaGVjayIsIkxheW91dCIsIkxpbmsyIiwiQmFja0J1dHRvbiIsInR4IiwiTmV1cmFsQmFja2dyb3VuZCIsIkRETUxhdW5jaHBhZEZlYXR1cmVzUGFnZSIsImxhbmciLCJzZXRQYWdlIiwiZmVhdHVyZXMiLCJpY29uIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsImNvbG9yIiwiYmVuZWZpdHMiLCJvcGFjaXR5IiwieSIsImRlbGF5IiwibWFwIiwiZiIsImkiLCJiIiwic2NhbGUiLCJfYyIsIiRSZWZyZXNoUmVnJCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlcyI6WyJERE1MYXVuY2hwYWRGZWF0dXJlc1BhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7
533IG1vdGlvbiB9IGZyb20gJ2ZyYW1lci1tb3Rpb24nO1xuaW1wb3J0IHsgXG4gIFJvY2tldCwgXG4gIERvd25sb2FkLCBcbiAgRmlsZVRleHQsIFxuICBVc2VycywgXG4gIENsb2NrLCBcbiAgQXJyb3dSaWdodCxcbiAgUm91dGUsXG4gIEJhckNoYXJ0MyxcbiAgWmFwLFxuICBTaGllbGRDaGVjayxcbiAgTGF5b3V0LFxuICBMaW5rMlxufSBmcm9tICdsdWNpZGUtcmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBMYW5ndWFnZSwgUGFnZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IEJhY2tCdXR0b24gfSBmcm9tICcuLi9jb21wb25lbnRzL3VpL1NoYXJlZCc7XG5pbXBvcnQgeyB0eCB9IGZyb20gJy4uL3V0aWxzL2xvY2FsZSc7XG5pbXBvcnQgeyBOZXVyYWxCYWNrZ3JvdW5kIH0gZnJvbSAnLi4vY29tcG9uZW50cy91aS9MYXlvdXQnO1xuXG5leHBvcnQgY29uc3QgRERNTGF1bmNocGFkRmVhdHVyZXNQYWdlOiBSZWFjdC5GQzx7IGxhbmc6IExhbmd1YWdlOyBzZXRQYWdlOiAocDogUGFnZSkgPT4gdm9pZCB9PiA9ICh7IGxhbmcsIHNldFBhZ2UgfSkgPT4ge1xuICBjb25zdCBmZWF0dXJlcyA9IFtcbiAgICB7XG4gICAgICBpY29uOiA8Um91dGUgY2xhc3NOYW1lPVwidy04IGgtOFwiIC8+LFxuICAgICAgdGl0bGU6IHR4KGxhbmcsICdKb3VybmV5IEJ1aWxkZXInLCAnSm91cm5leSBidWlsZGVyJyksXG4gICAgICBkZXNjcmlwdGlvbjogdHgobGFuZywgJ1Byb2dldHRhIHBlcmNvcnNpIGd1aWRhdGkgcGVyIGNpYXNjdW5hIHRpcG9sb2dpYSBkaSBhc3NvY2lhdG8uIE9nbmkgam91cm5leSBkZWZpbmlzY2UgdGFwcGUsIGNvbnRlbnV0aSwgYXppb25pIGF0dGVzZSBlIGNyaXRlcmkgZGkgYXZhbnphbWVudG8uJywgJ0Rlc2lnbiBhIGd1aWRlZCBwYXRoIGZvciBlYWNoIG1lbWJlciB0eXBlLiBFdmVyeSBqb3VybmV5IGRlZmluZXMgc3RhZ2VzLCBjb250ZW50LCBleHBlY3RlZCBhY3Rpb25zIGFuZCBwcm9ncmVzcyBjcml0ZXJpY
533S4nKSxcbiAgICAgIGNvbG9yOiBcImJnLXZpb2xldC02MDBcIlxuICAgIH0sXG4gICAge1xuICAgICAgaWNvbjogPExheW91dCBjbGFzc05hbWU9XCJ3LTggaC04XCIgLz4sXG4gICAgICB0aXRsZTogdHgobGFuZywgJ0NhdGFsb2dvIHNlcnZpemkgaW50ZWxsaWdlbnRlJywgJ1NtYXJ0IHNlcnZpY2UgY2F0YWxvZycpLFxuICAgICAgZGVzY3JpcHRpb246IHR4KGxhbmcsICdUcmFzZm9ybWEgaWwgY2F0YWxvZ28gc2Vydml6aSBzdGF0aWNvIGluIHVuXFwnZXNwZXJpZW56YSBkaW5hbWljYSBlIHBlcnNvbmFsaXp6YXRhLiBMXFwnYXNzb2NpYXRvIHZlZGUgY2nDsiBjaGUgw6ggcmlsZXZhbnRlIHBlciBsdWksIHF1YW5kbyDDqCByaWxldmFudGUuJywgJ1R1cm4gYSBzdGF0aWMgc2VydmljZSBjYXRhbG9nIGludG8gYSBkeW5hbWljLCBwZXJzb25hbCBleHBlcmllbmNlLiBNZW1iZXJzIHNlZSB3aGF0IGlzIHJlbGV2YW50IHRvIHRoZW0sIHdoZW4gaXQgaXMgcmVsZXZhbnQuJyksXG4gICAgICBjb2xvcjogXCJiZy1wdXJwbGUtNjAwXCJcbiAgICB9LFxuICAgIHtcbiAgICAgIGljb246IDxCYXJDaGFydDMgY2xhc3NOYW1lPVwidy04IGgtOFwiIC8+LFxuICAgICAgdGl0bGU6IHR4KGxhbmcsICdBY3RpdmF0aW9uIFRyYWNrZXInLCAnQWN0aXZhdGlvbiB0cmFja2VyJyksXG4gICAgICBkZXNjcmlwdGlvbjogdHgobGFuZywgJ01vbml0b3JhIGluIHRlbXBvIHJlYWxlIGxvIHN0YXRvIGRpIGF0dGl2YXppb25lIGRpIG9nbmkgYXNzb2NpYXRvLiBSZW5kZSB2aXNpYmlsZSBjaGkgaGEgYXR0aXZhdG8gY29zYSwgY2hpIMOoIGluIGNvcnNvLCBjaGkgc2kgw6ggYmxvY2NhdG8uJywgJ1RyYWNrIGVhY2ggbWVtYmVyXFwncyBhY3RpdmF0aW9uIGluIHJlYWwgdGltZS4gU2VlIHdobyBhY3RpdmF0ZWQgd2hhdCwgd2hvIGlzIGluIHByb2dyZXNzIGFuZCB3aG8gaXMgc3R1Y2suJyksXG4gICAgICBjb2xvcjogXCJiZy12aW9sZXQtNTAwXCJcbiAgICB9LFxuICAgIHtcbiAgICAgIGljb246IDxaYXAgY2xhc3NOYW1lPVwidy04IGgtOFwiIC8+LFxuICAgICAgdGl0bGU6IHR4KGxhbmcsICdNb3RvcmUgZGkgc29sbGVjaXRvJywgJ0F1dG8tbnVkZ2UgZW5naW5lJyksXG4gICAgICBkZXNjcmlwdGlvbjogdHgobGFuZywgJ1Npc3RlbWEgZGkgYXV0b21hemlvbmkgbGVnZ2VyZSBjaGUgaW50ZXJ2ZW5nb25vIG5laSBtb21lbnRpIGNyaXRpY2k6IHNvbGxlY2l0aSBjb250ZXN0dWFsaSwgcmVtaW5kZXIgcGVyc29uYWxpenphdGksIHN1Z2dlcmltZW50aSBwcm9hdHRpdmkuJywgJ0xpZ2h0IGF1dG9tYXRpb25zIHRoYXQgc3RlcCBpbiBhdCBjcml0aWNhbCBtb21lbnRzOiBjb250ZXh0dWFsIHByb21wdHMsIHBlcnNvbmFsIHJlbWluZGVycyBhbmQgcHJvYWN0aXZlIHN1Z2dlc3Rpb25zLicpLFxuICAgICAgY29sb3I6IFwiYmctcHVycGxlLTUwMFwiXG4gICAgfSxcbiAgICB7XG4gICAgICBpY29uOiA8U2hpZWxkQ2hlY2sgY2xhc3NOYW1lPVwidy04IGgtOFwiIC8+LFxuICAgICAgdGl0bGU6IHR4KGxhbmcsICdRdWFsaXR5IGdhdGUnLCAnUXVhbGl0eSBnYXRlJyksXG4gICAgICBkZXNjcmlwdGlvbjogdHgobGFuZywgJ1ZhbGlkYXppb25lIGd1aWRhdGEgZGVsbGUgcmljaGllc3RlIGluIGluZ3Jlc3NvLiBSaWR1Y2UgcmljaGllc3RlIGluY29tcGxldGUgZSBpbmNvbXByZW5zaW9uaS4gTG8gc3RhZmYgcmljZXZlIHJpY2hpZXN0ZSBxdWFsaWZpY2F0ZS4nLCAnR3VpZGVkIHZhbGlkYXRpb24gb2YgaW5jb21pbmcgcmVxdWVzdHMuIEZld2VyIGluY29tcGxldGUgcmVxdWVzdHMgYW5kIG1pc3VuZGVyc3RhbmRpbmdzLiBTdGFmZiByZWNlaXZlIHF1YWxpZmllZCByZXF1ZXN0cy4nKSxcbiAgICAgIGNvbG9yOiBcImJnLXZpb2xldC02MDBcIlxuICAgIH0sXG4gICAge1xuICAgICAgaWNvbjogPExpbmsyIGNsYXNzTmFtZT1cInctOCBoLThcIiAvPixcbiAgICAgIHRpdGxlOiB0eChsYW5nLCAnSHViIGRpIGludGVncmF6aW9uZScsICdJbnRlZ3JhdGlvbiBodWInKSxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eChsYW5nLCAnQ29ubmV0dG9yaSB2ZXJzbyBpIHNpc3RlbWkgZXNpc3Rlb
533nRpIGRlbGxcXCdhc3NvY2lhemlvbmUuIFNpIGludGVncmEgY29uIHBvcnRhbGksIGdlc3Rpb25hbGkgZSBzdHJ1bWVudGkgZGkgY29tdW5pY2F6aW9uZSBnacOgIGluIHVzby4nLCAnQ29ubmVjdG9ycyB0byB0aGUgYXNzb2NpYXRpb25cXCdzIGV4aXN0aW5nIHN5c3RlbXMuIEl0IGludGVncmF0ZXMgd2l0aCBwb3J0YWxzLCBtYW5hZ2VtZW50IHRvb2xzIGFuZCBjb21tdW5pY2F0aW9uIGNoYW5uZWxzIGFscmVhZHkgaW4gdXNlLicpLFxuICAgICAgY29sb3I6IFwiYmctcHVycGxlLTYwMFwiXG4gICAgfVxuICBdO1xuXG4gIGNvbnN0IGJlbmVmaXRzID0gW1xuICAgIHtcbiAgICAgIHRpdGxlOiB0eChsYW5nLCAnUmV0ZW50aW9uIGUgYXR0cmF0dGl2aXTDoCcsICdSZXRlbnRpb24gYW5kIGFwcGVhbCcpLFxuICAgICAgZGVzY3JpcHRpb246IHR4KGxhbmcsICdRdWFuZG8gbFxcJ2Fzc29jaWF0byBwZXJjZXBpc2NlIHZhbG9yZSBjb25jcmV0bywgaWwgcmlubm92byBub24gcmljaGllZGUgY29udmluY2ltZW50by4gTW9uaXRvcmFnZ2lvIGNvbnRpbnVvIHBlciBpZGVudGlmaWNhcmUgYXNzb2NpYXRpIGEgcmlzY2hpby4nLCAnV2hlbiBtZW1iZXJzIGZlZWwgY29uY3JldGUgdmFsdWUsIHJlbmV3YWwgZG9lcyBub3QgbmVlZCBwZXJzdWFzaW9uLiBDb250aW51b3VzIG1vbml0b3JpbmcgZmxhZ3MgbWVtYmVycyBhdCByaXNrLicpXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogdHgobGFuZywgJ0VmZmljaWVuemEgb3BlcmF0aXZhJywgJ09wZXJhdGlvbmFsIGVmZmljaWVuY3knKSxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eChsYW5nLCAnTGUgcmljaGllc3RlIGluY29tcGxldGUgZGltaW51aXNjb25vLiBJbCB0ZW1wbyBzcGVzbyBpbiBzcGllZ2F6aW9uaSByaXBldGl0aXZlIHNpIHJpZHVjZS4gTG8gc3RhZmYgdmllbmUgbGliZXJhdG8gcGVyIGludGVyYXppb25pIGFkIGFsdG8gdmFsb3JlLicsICdJbmNvbXBsZXRlIHJlcXVlc3RzIGRyb3AuIFRpbWUgc3BlbnQgcmVwZWF0aW5nIGV4cGxhbmF0aW9ucyBzaHJpbmtzLiBTdGFmZiBhcmUgZnJlZSBmb3IgaGlnaC12YWx1ZSBjb252ZXJzYXRpb25zLicpXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogdHgobGFuZywgJ0dvdmVybmFuY2UgZSB2aXNpYmlsaXTDoCcsICdHb3Zlcm5hbmNlIGFuZCB2aXNpYmlsaXR5JyksXG4gICAgICBkZXNjcmlwdGlvbjogdHgobGFuZywgJ0Rhc2hib2FyZCBzdHJhdGVnaWNoZSwgS1BJIHRyYWNjaWF0aSBhdXRvbWF0aWNhbWVudGUsIHJlcG9ydCBwZXIgaWwgYm9hcmQuIExlIHJpdW5pb25pIHBvc3Nvbm8gYmFzYXJzaSBzdSBkYXRpIGNvbmNyZXRpLicsICdTdHJhdGVnaWMgZGFzaGJvYXJkcywgYXV0b21hdGljYWxseSB0cmFja2VkIEtQSXMgYW5kIGJvYXJkIHJlcG9ydHMuIE1lZXRpbmdzIGNhbiBiZSBiYXNlZCBvbiBjb25jcmV0ZSBkYXRhLicpXG4gICAgfVxuICBdO1xuXG4gIHJldHVybiAoXG4gICAgPG1vdGlvbi5kaXYgXG4gICAgICBpbml0aWFsPXt7IG9wYWNpdHk6IDAgfX0gXG4gICAgICBhbmltYXRlPXt7IG9wYWNpdHk6IDEgfX0gXG4gICAgICBleGl0PXt7IG9wYWNpdHk6IDAgfX1cbiAgICAgIGNsYXNzTmFtZT1cInB0LTQwIHBiLTIwIHB4LTYgbWF4LXctN3hsIG14LWF1dG8gbWluLWgtc2NyZWVuXCJcbiAgICA+XG4gICAgICA8QmFja0J1dHRvbiBcbiAgICAgICAgb25DbGljaz17KCkgPT4gc2V0UGFnZSgnRERNX0xBVU5DSFBBRCcpfVxuICAgICAgICBsYWJlbD17dHgobGFuZywgJ1Rvcm5hIGEgRERNIExhdW5jaFBhZCcsICdCYWNrIHRvIERETSBMYXVuY2hQYWQnKX1cbiAgICAgIC8+XG5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC1jZW50ZXIgbWItMjRcIj5cbiAgICAgICAgPG1vdGlvbi5oMSBcbiAgICAgICAgICBpbml0aWFsPXt7IHk6IDIwLCBvcGFjaXR5OiAwIH19XG4gICAgICAgICAgYW5pbWF0ZT17eyB5OiAwLCBvcGFjaXR5OiAxIH19XG4gICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC01eGwgbWQ6dGV4dC03eGwgZm9udC1ib2xkIGZvbnQtW1NwYWNlIEdyb3Rlc2tdIG1iLTYgYmctY2xpcC10ZXh0IHRleHQtdHJhbnNwYXJlbnQgYmctZ3JhZGllbnQtdG8tciBmcm9tLX
533Zpb2xldC02MDAgdG8tcHVycGxlLTQwMFwiXG4gICAgICAgID5cbiAgICAgICAgICB7dHgobGFuZywgJ0VzcGxvcmEgRERNIExhdW5jaFBhZCcsICdFeHBsb3JlIERETSBMYXVuY2hQYWQnKX1cbiAgICAgICAgPC9tb3Rpb24uaDE+XG4gICAgICAgIDxtb3Rpb24ucCBcbiAgICAgICAgICBpbml0aWFsPXt7IHk6IDIwLCBvcGFjaXR5OiAwIH19XG4gICAgICAgICAgYW5pbWF0ZT17eyB5OiAwLCBvcGFjaXR5OiAxIH19XG4gICAgICAgICAgdHJhbnNpdGlvbj17eyBkZWxheTogMC4xIH19XG4gICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC14bCB0ZXh0LWdyYXktNjAwIGRhcms6dGV4dC1ncmF5LTQwMCBtYXgtdy0zeGwgbXgtYXV0b1wiXG4gICAgICAgID5cbiAgICAgICAgICB7dHgobGFuZywgJ0xlIGZ1bnppb25hbGl0w6AgY29yZSBjaGUgdHJhc2Zvcm1hbm8gbFxcJ2Vjb3Npc3RlbWEgZGlnaXRhbGUgZGVsbFxcJ2Fzc29jaWF6aW9uZSBkYSBpbnNpZW1lIGRpIHN0cnVtZW50aSBkaXNwb25pYmlsaSBhIHNpc3RlbWEgZGkgYXR0aXZhemlvbmUgbWlzdXJhYmlsZSBlIGdvdmVybmFiaWxlLicsICdUaGUgY29yZSBjYXBhYmlsaXRpZXMgdGhhdCB0dXJuIHRoZSBhc3NvY2lhdGlvblxcJ3MgZGlnaXRhbCBlY29zeXN0ZW0gZnJvbSBhIHNldCBvZiBhdmFpbGFibGUgdG9vbHMgaW50byBhIG1lYXN1cmFibGUsIGdvdmVybmFibGUgYWN0aXZhdGlvbiBzeXN0ZW0uJyl9XG4gICAgICAgIDwvbW90aW9uLnA+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zIGdhcC04IG1iLTMyXCI+XG4gICAgICAgIHtmZWF0dXJlcy5tYXAoKGYsIGkpID0+IChcbiAgICAgICAgICA8bW90aW9uLmRpdlxuICAgICAgICAgICAga2V5PXtpfVxuICAgICAgICAgICAgaW5pdGlhbD17eyB5OiAzMCwgb3BhY2l0eTogMCB9fVxuICAgICAgICAgICAgYW5pbWF0ZT17eyB5OiAwLCBvcGFjaXR5OiAxIH19XG4gICAgICAgICAgICB0cmFuc2l0aW9uPXt7IGRlbGF5OiBpICogMC4xIH19XG4gICAgICAgICAgICBjbGFzc05hbWU9XCJwLTggcm91bmRlZC0zeGwgYmctd2hpdGUgZGFyazpiZy1ncmF5LTkwMCBib3JkZXIgYm9yZGVyLWdyYXktMTAwIGRhcms6Ym9yZGVyLWdyYXktODAwIHNoYWRvdy14bCBob3ZlcjpzaGFkb3ctdmlvbGV0LTUwMC8xMCB0cmFuc2l0aW9uLWFsbCBncm91cFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2B3LTE2IGgtMTYgcm91bmRlZC0yeGwgJHtmLmNvbG9yfSB0ZXh0LXdoaXRlIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIG1iLTYgZ3JvdXAtaG92ZXI6c2NhbGUtMTEwIHRyYW5zaXRpb24tdHJhbnNmb3JtYH0+XG4gICAgICAgICAgICAgIHtmLmljb259XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9XCJ0ZXh0LTJ4bCBmb250LWJvbGQgbWItNFwiPntmLnRpdGxlfTwvaDM+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LWdyYXktNjAwIGRhcms6dGV4dC1ncmF5LTQwMCBsZWFkaW5nLXJlbGF4ZWRcIj57Zi5kZXNjcmlwdGlvbn08L3A+XG4gICAgICAgICAgPC9tb3Rpb24uZGl2PlxuICAgICAgICApKX1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1iLTMyXCI+XG4gICAgICAgIDxoMiBjbGFzc05hbWU9XCJ0ZXh0LTN4bCBmb250LWJvbGQgbWItMTIgdGV4dC1jZW50ZXJcIj57dHgobGFuZywgJ0FyZWUgZGkgaW1wYXR0bycsICdJbXBhY3QgYXJlYXMnKX08L2gyPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyaWQgZ3JpZC1jb2xzLTEgbWQ6Z3JpZC1jb2xzLTMgZ2FwLThcIj5cbiAgICAgICAgICB7YmVuZWZpdHMubWFwKChiLCBpKSA9PiAoXG4gICAgICAgICAgICA8bW90aW9uLmRpdlxuICAgICAgICAgICAgICBrZXk9e2l9XG4gICAgICAgICAgICAgIGluaXRpYWw9e3sgeTogMjAsIG9wYWNpdHk6IDAgfX1cbiAgICAgICAgICAgICAgYW5pbWF0ZT17eyB5OiAwLCBvcGFjaXR5OiAxIH19XG4gICAgICAgICAgICAgIHRyYW5zaXRpb249e3sgZGVsYXk6IDAuMyArIGkgKiAwLjEgfX1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwicC04IHJvdW5kZWQtM3hsIGJnLWdyYWRpZW50LXRvLWJyIGZyb20tdmlvbGV0LTUwIHRvLXB1cnBsZS01MCBkYXJrOmZyb20tdmlvbGV0LTkwMC8yMCBkYXJrOnRvLXB1cnBsZS05MDAvMjAgYm9yZGVyIGJvcmRlci12aW9sZXQtMjAwIGRhcms6Ym9yZGVyLXZpb2xldC04MDBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPVwidGV4dC14bCBmb250LWJvbGQgbWItNCB0ZXh0LXZpb2xldC03MDAgZGFyazp0ZXh0LXZpb2xldC0zMDBcIj57Yi50aXRsZX08L2gzPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LWdyYXktNjAwIGRhcms6dGV4dC1ncmF5LTQwMCBsZWFkaW5nLXJlbGF4ZWRcIj57Yi5kZXNjcmlwdGlvbn08L3A+XG4gICAgICAgICAgICA8L21vdGlvbi5kaXY+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWItMzJcIj5cbiAgICAgICAgPGgyIGNsYXNzTmFtZT1cInRleHQtM3hsIGZvbnQtYm9sZCBtYi0xMiB0ZXh0LWNlbnRlclwiPnt0eChsYW5nLCAnUmlzb3JzZSBlIGFwcHJvZm9uZGltZW50aScsICdSZXNvdXJjZXMnKX08L2gyPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyaWQgZ3JpZC1jb2xzLTEgbWQ6Z3JpZC1jb2xzLTIgZ2FwLThcIj5cbiAgICAgICAgICA8bW90aW9uLmRpdiBcbiAgICAgICAgICAgIHdoaWxlSG92ZXI9e3sgc2NhbGU6IDEuMDIgfX1cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cInAtOCByb3VuZGVkLTN4bCBiZy1ncmFkaWVudC10by1iciBmcm9tLXZpb2xldC02MDAgdG8tcHVycGxlLTcwMCB0ZXh0LXdoaXRlIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiBncm91cCBjdXJzb3Itbm90LWFsbG93ZWQgb3BhY2l0eS03MFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNlwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInAtNCBiZy13aGl0ZS8yMCByb3VuZGVkLTJ4bFwiPlxuICAgICAgICAgICAgICAgIDxGaWxlVGV4dCBjbGFzc05hbWU9XCJ3LTggaC04XCIgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cInRleHQteGwgZm9udC1ib2xkXCI+V2hpdGVwYXBlciBERE0gTGF1bmNoUGFkPC9oMz5cbiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzcwXCI+e3R4KGxhbmcsICdQcm9zc2ltYW1lbnRlIGRpc3BvbmliaWxlJywgJ0F2YWlsYWJsZSBzb29uJyl9PC9wPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPENsb2NrIGNsYXNzTmFtZT1cInctNiBoLTZcIiAvPlxuICAgICAgICAgIDwvbW90aW9uLmRpdj5cblxuICAgICAgICAgIDxtb3Rpb24uYSBcbiAgICAgICAgICAgIGhyZWY9XCIvcGRmcy9DYXRhbG9nb19ERE1fTGF1bmNocGFkLnBkZlwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgICB3aGlsZUhvdmVyPXt7IHNjYWxlOiAxLjAyIH19XG4gICAgICAgICAgICBjbGFzc05hbWU9XCJwLTggcm91bmRlZC0zeGwgYmctZ3JhZGllbnQtdG8tYnIgZnJvbS1wdXJwbGUtNjAwIHRvLXZpb2xldC03MDAgdGV4dC13aGl0ZSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gZ3JvdXAgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTZcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwLTQgYmctd2hpdGUvMjAgcm91bmRlZC0yeGxcIj
5335cbiAgICAgICAgICAgICAgICA8QmFyQ2hhcnQzIGNsYXNzTmFtZT1cInctOCBoLThcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPVwidGV4dC14bCBmb250LWJvbGRcIj57dHgobGFuZywgJ0Jyb2NodXJlIGNvbW1lcmNpYWxlJywgJ0NvbW1lcmNpYWwgYnJvY2h1cmUnKX08L2gzPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtd2hpdGUvNzBcIj57dHgobGFuZywgJ0V4ZWN1dGl2ZSBzdW1tYXJ5IGUgZnVuemlvbmFsaXTDoCBjb21wbGV0ZScsICdFeGVjdXRpdmUgc3VtbWFyeSBhbmQgdGhlIGZ1bGwgZmVhdHVyZSBzZXQnKX08L3A+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8RG93bmxvYWQgY2xhc3NOYW1lPVwidy02IGgtNiBncm91cC1ob3Zlcjp0cmFuc2xhdGUteS0xIHRyYW5zaXRpb24tdHJhbnNmb3JtXCIgLz5cbiAgICAgICAgICA8L21vdGlvbi5hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1iLTMyXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTQgbWItMTIganVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgICA8VXNlcnMgY2xhc3NOYW1lPVwidy0xMCBoLTEwIHRleHQtdmlvbGV0LTYwMFwiIC8+XG4gICAgICAgICAgPGgyIGNsYXNzTmFtZT1cInRleHQtNHhsIGZvbnQtYm9sZFwiPnt0eChsYW5nLCAnUGVyIGNoaSDDqCBERE0gTGF1bmNoUGFkJywgJ1dobyBERE0gTGF1bmNoUGFkIGlzIGZvcicpfTwvaDI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInAtMTAgcm91bmRlZC1bMnJlbV0gYmctZ3JheS01MCBkYXJrOmJnLWdyYXktODAwLzUwIGJvcmRlciBib3JkZXItZ3JheS0xMDAgZGFyazpib3JkZXItZ3JheS03MDAgcmVsYXRpdmUgb3ZlcmZsb3ctaGlkZGVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhYnNvbHV0ZSB0b3AtMCByaWdodC0wIHAtOCBvcGFjaXR5LTEwXCI+XG4gICAgICAgICAgICA8Um9ja2V0IGNsYXNzTmFtZT1cInctMzIgaC0zMlwiIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC1sZyB0ZXh0LWdyYXktNjAwIGRhcms6dGV4dC1ncmF5LTQwMCBsZWFkaW5nLXJlbGF4ZWQgbWItNlwiPlxuICAgICAgICAgICAge3R4KGxhbmcsICdERE0gTGF1bmNoUGFkIMOoIHByb2dldHRhdG8gcGVyJywgJ0RETSBMYXVuY2hQYWQgaXMgZGVzaWduZWQgZm9yJyl9IDxzdHJvbmcgY2xhc3NOYW1lPVwidGV4dC12aW9sZXQtNjAwIGRhcms6dGV4dC12aW9sZXQtNDAwXCI+e3R4KGxhbmcsICdhc3NvY2lhemlvbmkgZGkgY2F0ZWdvcmlhJywgJ3RyYWRlIGFzc29jaWF0aW9ucycpfTwvc3Ryb25nPiB7dHgobGFuZywgJ2UnLCAnYW5kJyl9IDxzdHJvbmcgY2xhc3NOYW1lPVwidGV4dC12aW9sZXQtNjAwIGRhcms6dGV4dC12aW9sZXQtNDAwXCI+e3R4KGxhbmcsICdvcmdhbml6emF6aW9uaSBiYXNhdGUgc3VpIG1lbWJyaScsICdtZW1iZXJzaGlwIG9yZ2FuaXphdGlvbnMnKX08L3N0cm9uZz4ge3R4KGxhbmcsICdjaGUgYWZmcm9udGFubyB1bmEgc2ZpZGEgY29tdW5lOiBpbCBkaXZhcmlvIHRyYSBpIHNlcnZpemkgZGlnaXRhbGkgb2ZmZXJ0aSBlIGxhIGxvcm8gZWZmZXR0aXZhIGFkb3ppb25lIGRhIHBhcnRlIGRlaSBtZW1icmkuJywgJ3RoYXQgc2hhcmUgb25lIGNoYWxsZW5nZTogdGhlIGdhcCBiZXR3ZWVuIHRoZSBkaWdpdGFsIHNlcnZpY2VzIG9uIG9mZmVyIGFuZCBob3cgbWFueSBtZW1iZXJzIGFjdHVhbGx5IGFkb3B0IHRoZW0uJyl9XG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtbGcgdGV4dC1ncmF5LTYwMCBkYXJrOnRleHQtZ3JheS00MDAgbGVhZGluZy1yZWxheGVkXCI+XG4gICAgICAgICAgICB7dHgobGFuZywgJ1RyYXNmb3JtYSBnbGkgYXNzb2NpYXRpIGRvcm1pZW50aSBpbiBtZW1icmkgYXR0aXZpLCByaWR1Y2UgaWwgdGVtcG8gYWwgcHJpbW8gYmVuZWZpY2lvIGNvbmNyZXRvIGUgcmFmZm9yemEgbGEgcmV0ZW50aW9uIGNvbXBsZXNzaXZhIGF0dHJhdmVyc28gcGVyY29yc2kgZ3VpZGF0aSBlIHBlcnNvbmFsaXp6YXRpLicsICdJdCB0dXJucyBkb3JtYW50IG1lbWJlcnMgaW50byBhY3RpdmUgb25lcywgc2hvcnRlbnMgdGhlIHRpbWUgdG8gdGhlIGZpcnN0IGNvbmNyZXRlIGJlbmVmaXQgYW5kIHN0cmVuZ3RoZW5zIHJldGVudGlvbiB0aHJvdWdoIGd1aWRlZCwgcGVyc29uYWwgcGF0aHMuJyl9XG4gICAgICAgICAgPC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8bW90aW9uLmRpdiBcbiAgICAgICAgaW5pdGlhbD17eyBzY2FsZTogMC45LCBvcGFjaXR5OiAwIH19XG4gICAgICAgIHdoaWxlSW5WaWV3PXt7IHNjYWxlOiAxLCBvcGFjaXR5OiAxIH19XG4gICAgICAgIGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHAtMTYgcm91bmRlZC1bM3JlbV0gYmctYmxhY2sgdGV4dC13aGl0ZSBkYXJrOmJnLXdoaXRlIGRhcms6dGV4dC1ibGFjayBvdmVyZmxvdy1oaWRkZW4gcmVsYXRpdmVcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFic29sdXRlIHRvcC0wIGxlZnQtMCB3LWZ1bGwgaC1mdWxsIG9wYWNpdHktMTAgcG9pbnRlci1ldmVudHMtbm9uZVwiPlxuICAgICAgICAgICAgPE5ldXJhbEJhY2tncm91bmQgdGhlbWU9XCJkYXJrXCIgY2xhc3NOYW1lPVwiYWJzb2x1dGUgaW5zZXQtMCB6LTAgdy1mdWxsIGgtZnVsbFwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aDIgY2xhc3NOYW1lPVwidGV4dC00eGwgbWQ6dGV4dC01eGwgZm9udC1ib2xkIG1iLTggcmVsYXRpdmUgei0xMFwiPnt0eChsYW5nLCAnUHJvbnRvIGEgY29sbWFyZSBpbCBkaXZhcmlvIHRyYSBvZmZlcnRhIGUgYWRvemlvbmU/JywgJ1JlYWR5IHRvIGNsb3NlIHRoZSBnYXAgYmV0d2VlbiB3aGF0IHlvdSBvZmZlciBhbmQgd2hhdCBnZXRzIGFkb3B0ZWQ/Jyl9PC9oMj5cbiAgICAgICAgPGJ1dHRvbiBcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRQYWdlKCdDT05UQUNUJyl9XG4gICAgICAgICAgY2xhc3NOYW1lPVwicHgtMTAgcHktNSByb3VuZGVkLWZ1bGwgYmctdmlvbGV0LTYwMCB0ZXh0LXdoaXRlIGZvbnQtYm9sZCBob3ZlcjpiZy12aW9sZXQtNzAwIHRyYW5zaXRpb24tYWxsIHNoYWRvdy14bCBzaGFkb3ctdmlvbGV0LTUwMC8yMCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyBteC1hdXRvIHJlbGF0aXZlIHotMTBcIlxuICAgICAgICA+XG4gICAgICAgICAge3R4KGxhbmcsICdDb250YXR0YWNpIG9yYScsICdDb250YWN0IHVzIG5vdycpfSA8QXJyb3dSaWdodCBjbGFzc05hbWU9XCJ3LTUgaC01XCIgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L21vdGlvbi5kaXY+XG4gICAgPC9tb3Rpb24uZGl2PlxuICApO1xufTtcbiJdLCJmaWxlIjoiL2hvbWUvdWJ1bnR1L3Byb2plY3RzL3dlYnNpdGUvcGFnZXMvRERNTGF1bmNocGFkRmVhdHVyZXNQYWdlLnRzeCJ9

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.