PageSourceSearch

https://kyn-care.com/src/pages/TermsPage.tsx

js kyn-care.com collected 2026-10-08 11:36:11 UTC 80,755 bytes, 461 lines download raw bytes

1import { createHotContext as __vite__createHotContext } from "/@vite/client";import.meta.hot = __vite__createHotContext("/src/pages/TermsPage.tsx");import __vite__cjsImport0_react_jsxDevRuntime from "/@fs/home/runner/workspace/node_modules/.vite/deps/react_jsx-dev-runtime.js?v=9ce4103e"; const jsxDEV = __vite__cjsImport0_react_jsxDevRuntime["jsxDEV"];
2import RefreshRuntime from "/@react-refresh";
3const inWebWorker = typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope;
4let prevRefreshReg;
5let prevRefreshSig;
6if (import.meta.hot && !inWebWorker) {
7  if (!window.__vite_plugin_react_preamble_installed__) {
8    throw new Error("@vitejs/plugin-react can't detect preamble. Something is wrong. See https://github.com/vitejs/vite-plugin-react/pull/11#discussion_r430879201");
9  }
10  prevRefreshReg = window.$RefreshReg$;
11  prevRefreshSig = window.$RefreshSig$;
12  window.$RefreshReg$ = (type, id) => {
13    RefreshRuntime.register(type, "/home/runner/workspace/client/src/pages/TermsPage.tsx " + id);
14  };
15  window.$RefreshSig$ = RefreshRuntime.createSignatureFunctionForTransform;
16}
17var _s = $RefreshSig$();
18import __vite__cjsImport3_react from "/@fs/home/runner/workspace/node_modules/.vite/deps/react.js?v=9ce4103e"; const useEffect = __vite__cjsImport3_react["useEffect"];
19import { useLanguage } from "/src/lib/LanguageContext.tsx";
20const termsContentEN = {
21  pageTitle: "TERMS OF USE",
22  effectiveDate: "Effective Date: February 5, 2026",
23  sections: [
24    {
25      title: "1. Acceptance of Terms",
26      paragraphs: [
27        'Welcome to KYN. These Terms of Use ("Terms") govern your access to and use of the KYN website located at kyn-care.com (the "Site"), owned and operated by KYN LLC ("KYN," "we," "our," or "us"), a Massachusetts limited liability company.',
28        "By accessing, browsing, or using this Site, you acknowledge that you have read, understood, and agree to be bound by these Terms and our Privacy Policy. If you do not agree to these Terms, you must discontinue use of the Site immediately."
29      ]
30    },
31    {
32      title: "2. Pre-Launch Status",
33      paragraphs: [
34        "KYN is currently in pre-launch status. No products are currently available for purchase through this Site. The Site is provided for informational purposes and to allow visitors to join our waitlist for product launch notifications.",
35        "All product descriptions, images, ingredient lists, pricing, and launch dates displayed on the Site are preliminary and subject to change without notice. We make no guarantee regarding product availability, formulation, pricing, or launch timeline until products are officially available for purchase."
36      ]
37    },
38    {
39      title: "3. Eligibility & Age Requirements",
40      paragraphs: [
41        "You must be at least 16 years old to use this Site. By using the Site, you represent and warrant that you are at least 16 years of age.",
42        "If you are between 16 and 18 years of age (or the age of majority in your jurisdiction), you may only use the Site with the consent and under the supervision of a parent or legal guardian who agrees to be bound by these Terms. We reserve the right to request proof of age and parental consent at any time."
43      ]
44    },
45    {
46      title: "4. Waitlist & Email Communications",
47      paragraphs: [
48        "By submitting your email address to join our waitlist, you consent to receive email communications from KYN regarding product launches, updates, promotions, and related marketing materials. Our email communications comply with the CAN-SPAM Act, CCPA/CPRA, GDPR, and other applicable privacy laws. You may unsubscribe from these communications at any time by clicking the unsubscribe link provided in every email, contacting us at [email protected], or writing to us at KYN LLC, Commonwealth of Massachusetts, USA.",
49        "Joining our waitlist does not guarantee product availability, pricing, or priority access to products upon launch. We reserve the right to limit quantities and modify waitlist terms at our discretion.",
50        "Your Privacy Rights. California residents and users in certain other jurisdictions have specific rights regarding their personal information, including the right to access, delete, and opt out of data sales. For detailed information about how we collect, use, and protect your information, please review our Privacy Policy."
51      ]
52    },
53    {
54      title: "5. Intellectual Property Rights",
55      paragraphs: [
56        'All content on the Site, including but not limited to text, graphics, logos, images, product formulations, photographs, videos, and software (collectively, "Content"), is the exclusive property of KYN LLC or our licensors and is protected by United States and international copyright, trademark, patent, trade secret, and other intellectual property laws.',
57        "You may not reproduce, distribute, modify, display, perform, publish, license, create derivative works from, or use any Content for commercial purposes without our prior written consent. The KYN name and logo are registered trademarks of KYN LLC and may not be used without permission."
58      ]
59    },
60    {
61      title: "6. User-Generated Content & Social Media",
62      paragraphs: [
63        'If you post, submit, or transmit any content to the Site, including reviews, testimonials, comments, photos, videos, or other materials ("User Content"), you grant KYN a perpetual, irrevocable, worldwide, royalty-free, transferable, sublicensable license to use, reproduce, modify, adapt, publish, translate, create derivative works from, distribute, display, and otherwise exploit such User Content in any media format and through any media channels, including for marketing and promotional purposes.',
64        "You represent and warrant that (a) you own or have the necessary rights to submit the User Content, (b) the User Content does not violate any third-party rights, and (c) you have obtained all necessary consents from any individuals featured in the User Content.",
65        "We reserve the right to remove, edit, or refuse to post any User Content at our sole discretion without notice or liability."
66      ]
67    },
68    {
69      title: "7. Prohibited Conduct",
70      paragraphs: [
71        "You agree not to engage in any of the following prohibited activities:"
72      ],
73      listItems: [
74        "Use the Site for any unlawful, fraudulent, abusive, or harmful purpose;",
75        "Attempt to gain unauthorized access to the Site, our systems, or user accounts;",
76        "Interfere with or disrupt the Site or servers or networks connected to the Site;",
77        "Use automated means to access the Site, including robots, scrapers, or data mining tools, without our express written permission;",
78        "Transmit any viruses, malware, or other malicious code;",
79        "Violate any applicable laws or regulations;",
80        "Impersonate any person or entity or falsely state or misrepresent your affiliation with any person or entity;",
81        "Harass, threaten, or harm other users or third parties."
82      ]
83    },
84    {
85      title: "8. Medical & Wellness Disclaimers",
86      paragraphs: [
87        "KYN products are cosmetic skincare products and are not intended to diagnose, treat, cure, or prevent any disease or medical condition. The information provided on this Site is for educational and informational purposes only and does not constitute medical advice.",
88        "Product formulations have not been evaluated by the U.S. Food and Drug Administration. Individual results may vary. We recommend conducting a patch test before using any new skincare product. If you have sensitive skin, allergies, or any medical skin condition, consult a healthcare professional before use.",
89        "Testimonials, reviews, and before/after images (if any) represent individual experiences and are not guarantees of results. Your experience may differ based on skin type, environmental factors, application method, and other variables."
90      ]
91    },
92    {
93      title: "9. Third-Party Links & Services",
94      paragraphs: [
95        "The Site may contain links to third-party websites, social media platforms (including Instagram, TikTok, LinkedIn, and Pinterest), or services that are not owned or c
95ontrolled by KYN. We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party sites or services. You acknowledge and agree that KYN is not liable for any loss or damage arising from your use of or reliance on any third-party content, products, or services."
96      ]
97    },
98    {
99      title: "10. Privacy & Data Security",
100      paragraphs: [
101        "Your privacy is important to us. Our collection, use, and protection of your personal information is governed by our Privacy Policy, which is incorporated into these Terms by reference.",
102        "We implement appropriate technical and organizational security measures to protect your personal information in accordance with Massachusetts data security regulations (201 CMR 17.00) and other applicable privacy laws."
103      ]
104    },
105    {
106      title: "11. Disclaimers & Limitation of Liability",
107      paragraphs: [
108        'No Warranties. The Site and all information, content, and materials provided on the Site are provided on an "as is" and "as available" basis without warranties of any kind, either express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, title, or non-infringement.',
109        "Limitation of Liability. To the maximum extent permitted by Massachusetts law and other applicable law, in no event shall KYN LLC, its officers, directors, employees, agents, or affiliates be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to loss of profits, data, use, goodwill, or other intangible losses, arising out of or relating to your use of or inability to use the Site, even if we have been advised of the possibility of such damages.",
110        "Our total liability to you for any claims arising out of or related to your use of the Site shall not exceed the greater of (a) the amount you paid to us (if any) in the twelve (12) months preceding the claim, or (b) one hundred U.S. dollars ($100.00)."
111      ]
112    },
113    {
114      title: "12. Indemnification",
115      paragraphs: [
116        "You agree to defend, indemnify, and hold harmless KYN LLC, its officers, directors, employees, agents, licensors, and service providers from and against any claims, liabilities, damages, judgments, awards, losses, costs, expenses, or fees (including reasonable attorneys' fees) arising out of or relating to (a) your use of the Site, (b) your violation of these Terms, (c) your violation of any third-party right, including intellectual property, privacy, or publicity rights, or (d) any User Content you submit to the Site."
117      ]
118    },
119    {
120      title: "13. Governing Law & Dispute Resolution",
121      paragraphs: [
122        "These Terms shall be governed by and construed in accordance with the laws of the Commonwealth of Massachusetts, USA, without regard to its conflict of law provisions.",
123        "Any dispute, controversy, or claim arising out of or relating to these Terms or your use of the Site shall be resolved through binding arbitration administered by the American Arbitration Association in accordance with its Consumer Arbitration Rules, with arbitration taking place in Massachusetts. You agree to waive any right to a jury trial or to participate in a class action.",
124        "For claims that qualify for small claims court in your jurisdiction, you may choose to resolve the dispute in small claims court instead of arbitration."
125      ]
126    },
127    {
128      title: "14. Modifications to Terms",
129      paragraphs: [
130        'We reserve the right to modify these Terms at any time. Material changes will be posted on this page with an updated "Effective Date." Your continued use of the Site after any modifications constitutes your acceptance of the updated Terms. We encourage you to review this page periodically for changes.'
131      ]
132    },
133    {
134      title: "15. Termination",
135      paragraphs: [
136        "We may suspend or terminate your access to the Site at any time, with or without cause or notice, including for violation of these Terms. All provisions of these Terms that by their nature should survive termination shall survive, including ownership provisions, warranty disclaimers, indemnification obligations, and limitations of liability."
137      ]
138    },
139    {
140      title: "16. Severability & Entire Agreement",
141      paragraphs: [
142        "If any provision of these Terms is found to be invalid or unenforceable, the remaining provisions shall continue in full force and effect. These Terms, together with our Privacy Policy, constitute the entire agreement between you and KYN regarding your use of the Site and supersede any prior agreements."
143      ]
144    },
145    {
146      title: "17. Contact Information",
147      paragraphs: [
148        "If you have any questions about these Terms, please contact us at: [email protected] or KYN LLC, Commonwealth of Massachusetts, USA."
149      ]
150    }
151  ]
152};
153const termsContentFR = {
154  pageTitle: "CONDITIONS D'UTILISATION",
155  effectiveDate: "Date d'entrée en vigueur : 5 février 2026",
156  sections: [
157    {
158      title: "1. Acceptation des Conditions",
159      paragraphs: [
160        "Bienvenue chez KYN. Ces Conditions d'Utilisation (« Conditions ») régissent votre accès et votre utilisation du site web KYN situé à kyn-care.com (le « Site »), détenu et exploité par KYN LLC (« KYN », « nous », « notre » ou « nos »), une société à responsabilité limitée du Massachusetts.",
161        "En accédant, naviguant ou utilisant ce Site, vous reconnaissez avoir lu, compris et accepté d'être lié par ces Conditions et notre Politique de Confidentialité. Si vous n'acceptez pas ces Conditions, vous devez cesser immédiatement d'utiliser le Site."
162      ]
163    },
164    {
165      title: "2. Phase de Lancement",
166      paragraphs: [
167        "KYN est actuellement en phase avant lancement. Aucun produit n'est actuellement disponible à l'achat sur ce Site. Le Site est fourni à des fins d'information et pour permettre aux visiteurs de rejoindre notre liste d'attente pour les notifications de lancement de produits.",
168        "Toutes les descriptions de produits, images, listes d'ingrédients, prix et dates de lancement affichés sur le Site sont préliminaires et susceptibles de modifications sans préavis. Nous ne garantissons pas la disponibilité des produits, la formulation, les prix ou le c
168alendrier de lancement tant que les produits ne sont pas officiellement disponibles à l'achat."
169      ]
170    },
171    {
172      title: "3. Éligibilité et Conditions d'Âge",
173      paragraphs: [
174        "Vous devez avoir au moins 16 ans pour utiliser ce Site. En utilisant le Site, vous déclarez et garantissez avoir au moins 16 ans.",
175        "Si vous avez entre 16 et 18 ans (ou l'âge de la majorité dans votre juridiction), vous ne pouvez utiliser le Site qu'avec le consentement et sous la supervision d'un parent ou tuteur légal qui accepte d'être lié par ces Conditions. Nous nous réservons le droit de demander une preuve d'âge et le consentement parental à tout moment."
176      ]
177    },
178    {
179      title: "4. Liste d'Attente et Communications par Email",
180      paragraphs: [
181        "En soumettant votre adresse email pour rejoindre notre liste d'attente, vous consentez à recevoir des communications par email de KYN concernant les lancements de produits, mises à jour, promotions et matériel marketing connexe. Nos communications par email sont conformes au CAN-SPAM Act, CCPA/CPRA, RGPD et autres lois de confidentialité applicables. Vous pouvez vous désabonner de ces communications à tout moment en cliquant sur le lien de désinscription fourni dans chaque email, en nous contactant à [email protected], ou en nous écrivant à KYN LLC, Commonwealth du Massachusetts, USA.",
182        "Rejoindre notre liste d'attente ne garantit pas la disponibilité des produits, les prix ou l'accès prioritaire aux produits lors du lancement. Nous nous réservons le droit de limiter les quantités et de modifier les conditions de la liste d'attente à notre discrétion.",
183        "Vos Droits de Confidentialité. Les résidents de Californie et les utilisateurs dans certaines autres juridictions ont des droits spécifiques concernant leurs informations personnelles, y compris le droit d'accès, de suppression et de refus de vente de données. Pour des informations détaillées sur la façon dont nous collectons, utilisons et protégeons vos informations, veuillez consulter notre Politique de Confidentialité."
184      ]
185    },
186    {
187      title: "5. Droits de Propriété Intellectuelle",
188      paragraphs: [
189        "Tout le contenu du Site, y compris mais sans s'y limiter les textes, graphiques, logos, images, formulations de produits, photographies, vidéos et logiciels (collectivement, le « Contenu »), est la propriété exclusive de KYN LLC ou de nos concédants de licence et est protégé par le droit d'auteur des États-Unis et international, les marques, brevets, secrets commerciaux et autres lois sur la propriété intellectuelle.",
190        "Vous ne pouvez pas reproduire, distribuer, modifier, afficher, exécuter, publier, licencier, créer des œuvres dérivées à partir de, ou utiliser tout Contenu à des fins commerciales sans notre consentement écrit préalable. Le nom et le logo KYN sont des marques déposées de KYN LLC et ne peuvent être utilisés sans autorisation."
191      ]
192    },
193    {
194      title: "6. Contenu Généré par l'Utilisateur et Réseaux Sociaux",
195      paragraphs: [
196        "Si vous publiez, soumettez ou transmettez tout contenu sur le Site, y compris des avis, témoignages, commentaires, photos, vidéos ou autres matériels (« Contenu Utilisateur »), vous accordez à KYN une licence perpétuelle, irrévocable, mondiale, libre de redevances, transférable et pouvant faire l'objet de sous-licences pour utiliser, reproduire, modifier, adapter, publier, traduire, créer des œuvres dérivées, distribuer, afficher et exploiter autrement ce Contenu Utilisateur dans tout format média et via tout canal média, y compris à des fins de marketing et de promotion.",
197        "Vous déclarez et garantissez que (a) vous possédez ou avez les droits nécessaires pour soumettre le Contenu Utilisateur, (b) le Contenu Utilisateur ne viole aucun droit de tiers, et (c) vous avez obtenu tous les consentements nécessaires de toute personne figurant dans le Contenu Utilisateur.",
198        "Nous nous réservons le droit de supprimer, modifier ou refuser de publier tout Contenu Utilisateur à notre seule discrétion sans préavis ni responsabilité."
199      ]
200    },
201    {
202      title: "7. Conduite Interdite",
203      paragraphs: [
204        "Vous acceptez de ne pas vous engager dans l'une des activités interdites suivantes :"
205      ],
206      listItems: [
207        "Utiliser le Site à des fins illégales, frauduleuses, abusives ou nuisibles ;",
208        "Tenter d'obtenir un accès non autorisé au Site, à nos systèmes ou aux comptes utilisateurs ;",
209        "Interférer avec ou perturber le Site ou les serveurs ou réseaux connectés au Site ;",
210        "Utiliser des moyens automatisés pour accéder au Site, y compris des robots, scrapers ou outils d'extraction de données, sans notre autorisation écrite expresse ;",
211        "Transmettre des virus, logiciels malveillants ou autres codes malveillants ;",
212        "Violer les lois ou réglementations applicables ;",
213        "Usurper l'identité de toute personne ou entité ou déclarer faussement ou représenter de manière inexacte votre affiliation avec toute personne ou entité ;",
214        "Harceler, menacer ou nuire à d'autres utilisateurs ou tiers."
215      ]
216    },
217    {
218      title: "8. Avertissements Médicaux et Bien-être",
219      paragraphs: [
220        "Les produits KYN sont des produits cosmétiques de soin de la peau et ne sont pas destinés à diagnostiquer, traiter, guérir ou prévenir toute maladie ou condition médicale. Les informations fournies sur ce Site sont uniquement à des fins éducatives et informatives et ne constituent pas un avis médical.",
221        "Les formulations de produits n'ont pas été évaluées par la U.S. Food and Drug Administration. Les résultats individuels peuvent varier. Nous recommandons d'effectuer un test cutané avant d'utiliser tout nouveau produit de soin. Si vous avez la peau sensible, des allergies ou toute condition cutanée médicale, consultez un professionnel de santé avant utilisation.",
222        "Les témoignages, avis et images avant/après (le cas échéant) représentent des expérience
222s individuelles et ne sont pas des garanties de résultats. Votre expérience peut différer selon le type de peau, les facteurs environnementaux, la méthode d'application et d'autres variables."
223      ]
224    },
225    {
226      title: "9. Liens et Services Tiers",
227      paragraphs: [
228        "Le Site peut contenir des liens vers des sites web tiers, des plateformes de réseaux sociaux (y compris Instagram, TikTok, LinkedIn et Pinterest), ou des services qui ne sont pas détenus ou contrôlés par KYN. Nous n'avons aucun contrôle et n'assumons aucune responsabilité pour le contenu, les politiques de confidentialité ou les pratiques de tout site ou service tiers. Vous reconnaissez et acceptez que KYN n'est pas responsable de toute perte ou dommage résultant de votre utilisation ou de votre confiance en tout contenu, produit ou service tiers."
229      ]
230    },
231    {
232      title: "10. Confidentialité et Sécurité des Données",
233      paragraphs: [
234        "Votre vie privée est importante pour nous. Notre collecte, utilisation et protection de vos informations personnelles est régie par notre Politique de Confidentialité, qui est incorporée dans ces Conditions par référence.",
235        "Nous mettons en œuvre des mesures de sécurité techniques et organisationnelles appropriées pour protéger vos informations personnelles conformément aux réglementations de sécurité des données du Massachusetts (201 CMR 17.00) et autres lois de confidentialité applicables."
236      ]
237    },
238    {
239      title: "11. Exclusions de Garantie et Limitation de Responsabilité",
240      paragraphs: [
241        "Aucune Garantie. Le Site et toutes les informations, contenus et matériels fournis sur le Site sont fournis « en l'état » et « selon disponibilité » sans garantie d'aucune sorte, expresse ou implicite, y compris mais sans s'y limiter les garanties de qualité marchande, d'adéquation à un usage particulier, de titre ou de non-contrefaçon.",
242        "Limitation de Responsabilité. Dans la mesure maximale permise par la loi du Massachusetts et autres lois applicables, en aucun cas KYN LLC, ses dirigeants, administrateurs, employés, agents ou affiliés ne seront responsables de tout dommage indirect, accessoire, spécial, consécutif ou punitif, y compris mais sans s'y limiter la perte de profits, données, utilisation, clientèle ou autres pertes immatérielles, découlant de ou liés à votre utilisation ou incapacité d'utiliser le Site, même si nous avons été informés de la possibilité de tels dommages.",
243        "Notre responsabilité totale envers vous pour toute réclamation découlant de ou liée à votre utilisation du Site ne dépassera pas le plus élevé de (a) le montant que vous nous avez payé (le cas échéant) au cours des douze (12) mois précédant la réclamation, ou (b) cent dollars américains (100,00 $)."
244      ]
245    },
246    {
247      title: "12. Indemnisation",
248      paragraphs: [
249        "Vous acceptez de défendre, indemniser et dégager de toute responsabilité KYN LLC, ses dirigeants, administrateurs, employés, agents, concédants de licence et prestataires de services contre toute réclamation, responsabilité, dommage, jugement, perte, coût, dépense ou frais (y compris les honoraires d'avocat raisonnables) découlant de ou liés à (a) votre utilisation du Site, (b) votre violation de ces Conditions, (c) votre violation de tout droit de tiers, y compris les droits de propriété intellectuelle, de confidentialité ou de publicité, ou (d) tout Contenu Utilisateur que vous soumettez au Site."
250      ]
251    },
252    {
253      title: "13. Droit Applicable et Résolution des Litiges",
254      paragraphs: [
255        "Ces Conditions seront régies et interprétées conformément aux lois du Commonwealth du Massachusetts, USA, sans égard à ses dispositions relatives aux conflits de lois.",
256        "Tout litige, controverse ou réclamation découlant de ou lié à ces Conditions ou à votre utilisation du Site sera résolu par arbitrage contraignant administré par l'American Arbitration Association conformément à ses Règles d'Arbitrage des Consommateurs, l'arbitrage ayant lieu au Massachusetts. Vous acceptez de renoncer à tout droit à un procès devant jury ou à participer à une action collective.",
257        "Pour les réclamations admissibles devant le tribunal des petites créances de votre juridiction, vous pouvez choisir de résoudre le litige devant le tribunal des petites créances au lieu de l'arbitrage."
258      ]
259    },
260    {
261      title: "14. Modifications des Conditions",
262      paragraphs: [
263        "Nous nous réservons le droit de modifier ces Conditions à tout moment. Les modifications importantes seront publiées sur cette page avec une « Date d'entrée en vigueur » mise à jour. Votre utilisation continue du Site après toute modification constitue votre acceptation des Conditions mises à jour. Nous vous encourageons à consulter périodiquement cette page pour les changements."
264      ]
265    },
266    {
267      title: "15. Résiliation",
268      paragraphs: [
269        "Nous pouvons suspendre ou résilier votre accès au Site à tout moment, avec ou sans motif ni préavis, y compris en cas de violation de ces Conditions. Toutes les dispositions de ces Conditions qui, de par leur nature, devraient survivre à la résiliation survivront, y compris les dispositions de propriété, les exclusions de garantie, les obligations d'indemnisation et les limitations de responsabilité."
270      ]
271    },
272    {
273      title: "16. Divisibilité et Intégralité de l'Accord",
274      paragraphs: [
275        "Si une disposition de ces Conditions est jugée invalide ou inapplicable, les dispositions restantes resteront pleinement en vigueur. Ces Conditions, ainsi que notre Politique de Confidentialité, constituent l'intégralité de l'accord entre vou
275s et KYN concernant votre utilisation du Site et remplacent tout accord antérieur."
276      ]
277    },
278    {
279      title: "17. Coordonnées",
280      paragraphs: [
281        "Si vous avez des questions concernant ces Conditions, veuillez nous contacter à : [email protected] ou KYN LLC, Commonwealth du Massachusetts, USA."
282      ]
283    }
284  ]
285};
286const TermsPage = () => {
287  _s();
288  const { language } = useLanguage();
289  const content = language === "fr" ? termsContentFR : termsContentEN;
290  useEffect(() => {
291    window.scrollTo({ top: 0, behavior: "auto" });
292    document.title = language === "fr" ? "Conditions d'Utilisation | KYN Soins" : "Terms of Use | KYN Skincare";
293    return () => {
294      document.title = language === "fr" ? "KYN - Soins Durables pour Peaux Riches en Mélanine" : "KYN - Sustainable Skincare for Melanin-Rich Skin";
295    };
296  }, [language]);
297  return /* @__PURE__ */ jsxDEV("div", { style: { backgroundColor: "#FFFFFF", minHeight: "100vh" }, children: /* @__PURE__ */ jsxDEV("div", { className: "max-w-3xl mx-auto px-6 pt-20 pb-24 md:pt-24 md:pb-32", children: [
298    /* @__PURE__ */ jsxDEV("div", { className: "text-center mb-12", children: [
299      /* @__PURE__ */ jsxDEV(
300        "h1",
301        {
302          className: "text-2xl md:text-3xl mb-4",
303          style: {
304            fontFamily: "Helvetica, Arial, sans-serif",
305            fontWeight: 400,
306            color: "#1A1A1A",
307            letterSpacing: "3px"
308          },
309          children: content.pageTitle
310        },
311        void 0,
312        false,
313        {
314          fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
315          lineNumber: 302,
316          columnNumber: 11
317        },
318        this
319      ),
320      /* @__PURE__ */ jsxDEV(
321        "p",
322        {
323          className: "text-xs uppercase tracking-wider",
324          style: {
325            fontFamily: "Helvetica, Arial, sans-serif",
326            fontWeight: 300,
327            color: "#999999",
328            letterSpacing: "3px"
329          },
330          children: content.effectiveDate
331        },
332        void 0,
333        false,
334        {
335          fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
336          lineNumber: 314,
337          columnNumber: 11
338        },
339        this
340      )
341    ] }, void 0, true, {
342      fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
343      lineNumber: 301,
344      columnNumber: 9
345    }, this),
346    /* @__PURE__ */ jsxDEV("div", { className: "space-y-12", children: content.sections.map(
347      (section, index) => /* @__PURE__ */ jsxDEV("section", { children: [
348        /* @__PURE__ */ jsxDEV(
349          "h2",
350          {
351            className: "text-sm uppercase tracking-wider mb-4",
352            style: {
353              fontFamily: "Helvetica, Arial, sans-serif",
354              fontWeight: 400,
355              color: "#1A1A1A",
356              letterSpacing: "3px"
357            },
358            children: section.title
359          },
360          void 0,
361          false,
362          {
363            fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
364            lineNumber: 330,
365            columnNumber: 15
366          },
367          this
368        ),
369        section.paragraphs.map(
370          (paragraph, pIndex) => /* @__PURE__ */ jsxDEV(
371            "p",
372            {
373              className: "text-sm leading-relaxed mb-4",
374              style: {
375                fontFamily: "Helvetica, Arial, sans-serif",
376                fontWeight: 300,
377                color: "#666666",
378                lineHeight: 1.8
379              },
380              children: paragraph
381            },
382            pIndex,
383            false,
384            {
385              fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
386              lineNumber: 342,
387              columnNumber: 13
388            },
389            this
390          )
391        ),
392        section.listItems && /* @__PURE__ */ jsxDEV("ul", { className: "list-disc pl-6 space-y-2", children: section.listItems.map(
393          (item, liIndex) => /* @__PURE__ */ jsxDEV(
394            "li",
395            {
396              className: "text-sm",
397              style: {
398                fontFamily: "Helvetica, Arial, sans-serif",
399                fontWeight: 300,
400                color: "#666666",
401                lineHeight: 1.8
402              },
403              children: item
404            },
405            liIndex,
406            false,
407            {
408              fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
409              lineNumber: 358,
410              columnNumber: 15
411            },
412            this
413          )
414        ) }, void 0, false, {
415          fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
416          lineNumber: 356,
417          columnNumber: 13
418        }, this)
419      ] }, index, true, {
420        fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
421        lineNumber: 329,
422        columnNumber: 11
423      }, this)
424    ) }, void 0, false, {
425      fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
426      lineNumber: 327,
427      columnNumber: 9
428    }, this)
429  ] }, void 0, true, {
430    fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
431    lineNumber: 300,
432    columnNumber: 7
433  }, this) }, void 0, false, {
434    fileName: "/home/runner/workspace/client/src/pages/TermsPage.tsx",
435    lineNumber: 299,
436    columnNumber: 5
437  }, this);
438};
439_s(TermsPage, "bQmhoTNnUKBArwEgsVQiWN7+tZA=", false, function() {
440  return [useLanguage];
441});
442_c = TermsPage;
443export default TermsPage;
444var _c;
445$RefreshReg$(_c, "TermsPage");
446if (import.meta.hot && !inWebWorker) {
447  window.$RefreshReg$ = prevRefreshReg;
448  window.$RefreshSig$ = prevRefreshSig;
449}
450if (import.meta.hot && !inWebWorker) {
451  RefreshRuntime.__hmr_import(import.meta.url).then((currentExports) => {
452    RefreshRuntime.registerExportsForReactRefresh("/home/runner/workspace/client/src/pages/TermsPage.tsx", currentExports);
453    import.meta.hot.accept((nextExports) => {
454      if (!nextExports) return;
455      const invalidateMessage = RefreshRuntime.validateRefreshBoundaryAndEnqueueUpdate("/home/runner/workspace/client/src/pages/TermsPage.tsx", currentExports, nextExports);
456      if (invalidateMessage) import.meta.hot.invalidate(invalidateMessage);
457    });
458  });
459}
460
461//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJtYXBwaW5ncyI6IkFBNlNVOzJCQTdTVjtBQUFrQixNQUFRLGNBQU87QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDakMsU0FBU0EsbUJBQW1CO0FBWTVCLE1BQU1DLGlCQUErQjtBQUFBLEVBQ25DQyxXQUFXO0FBQUEsRUFDWEMsZUFBZTtBQUFBLEVBQ2ZDLFVBQVU7QUFBQSxJQUNSO0FBQUEsTUFDRUMsT0FBTztBQUFBLE1BQ1BDLFlBQVk7QUFBQSxRQUNWO0FBQUEsUUFDQTtBQUFBLE1BQWdQO0F
461BQUEsSUFFcFA7QUFBQSxJQUNBO0FBQUEsTUFDRUQsT0FBTztBQUFBLE1BQ1BDLFlBQVk7QUFBQSxRQUNWO0FBQUEsUUFDQTtBQUFBLE1BQStTO0FBQUEsSUFFblQ7QUFBQSxJQUNBO0FBQUEsTUFDRUQsT0FBTztBQUFBLE1BQ1BDLFlBQVk7QUFBQSxRQUNWO0FBQUEsUUFDQTtBQUFBLE1BQW1UO0FBQUEsSUFFdlQ7QUFBQSxJQUNBO0FBQUEsTUFDRUQsT0FBTztBQUFBLE1BQ1BDLFlBQVk7QUFBQSxRQUNWO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUFxVTtBQUFBLElBRXpVO0FBQUEsSUFDQTtBQUFBLE1BQ0VELE9BQU87QUFBQSxNQUNQQyxZQUFZO0FBQUEsUUFDVjtBQUFBLFFBQ0E7QUFBQSxNQUErUjtBQUFBLElBRW5TO0FBQUEsSUFDQTtBQUFBLE1BQ0VELE9BQU87QUFBQSxNQUNQQyxZQUFZO0FBQUEsUUFDVjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsTUFBOEg7QUFBQSxJQUVsSTtBQUFBLElBQ0E7QUFBQSxNQUNFRCxPQUFPO0FBQUEsTUFDUEMsWUFBWTtBQUFBLFFBQ1Y7QUFBQSxNQUF3RTtBQUFBLE1BRTFFQyxXQUFXO0FBQUEsUUFDVDtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUF5RDtBQUFBLElBRTdEO0FBQUEsSUFDQTtBQUFBLE1BQ0VGLE9BQU87QUFBQSxNQUNQQyxZQUFZO0FBQUEsUUFDVjtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsTUFBNE87QUFBQSxJQUVoUDtBQUFBLElBQ0E7QUFBQSxNQUNFRCxPQUFPO0FBQUEsTUFDUEMsWUFBWTtBQUFBLFFBQ1Y7QUFBQSxNQUFvZTtBQUFBLElBRXhlO0FBQUEsSUFDQTtBQUFBLE1BQ0VELE9BQU87QUFBQSxNQUNQQyxZQUFZO0FBQUEsUUFDVjtBQUFBLFFBQ0E7QUFBQSxNQUE0TjtBQUFBLElBRWhPO0FBQUEsSUFDQTtBQUFB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xQ1VMLE9BQWQ7QUFBQTtBQUFBO0FBQUE7QUFBQSxhQTRDQTtBQUFBLElBQ0QsS0EvQ0g7QUFBQTtBQUFBO0FBQUE7QUFBQSxXQWdEQTtBQUFBLE9BM0VGO0FBQUE7QUFBQTtBQUFBO0FBQUEsU0E0RUEsS0E3RUY7QUFBQTtBQUFBO0FBQUE7QUFBQSxTQThFQTtBQUVKO0FBQUVqQixHQWpHSUQsV0FBUztBQUFBLFVBQ1FULFdBQVc7QUFBQTtBQUFBaUMsS0FENUJ4QjtBQW1HTixlQUFlQTtBQUFVLElBQUF3QjtB
461QUFBQyxhQUFBRCxJQUFBIiwibmFtZXMiOlsidXNlTGFuZ3VhZ2UiLCJ0ZXJtc0NvbnRlbnRFTiIsInBhZ2VUaXRsZSIsImVmZmVjdGl2ZURhdGUiLCJzZWN0aW9ucyIsInRpdGxlIiwicGFyYWdyYXBocyIsImxpc3RJdGVtcyIsInRlcm1zQ29udGVudEZSIiwiVGVybXNQYWdlIiwiX3MiLCJsYW5ndWFnZSIsImNvbnRlbnQiLCJ1c2VFZmZlY3QiLCJ3aW5kb3ciLCJzY3JvbGxUbyIsInRvcCIsImJlaGF2aW9yIiwiZG9jdW1lbnQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJtaW5IZWlnaHQiLCJmb250RmFtaWx5IiwiZm9udFdlaWdodCIsImNvbG9yIiwibGV0dGVyU3BhY2luZyIsIm1hcCIsInNlY3Rpb24iLCJpbmRleCIsInBhcmFncmFwaCIsInBJbmRleCIsImxpbmVIZWlnaHQiLCJpdGVtIiwibGlJbmRleCIsIl9jIiwiJFJlZnJlc2hSZWckIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VzIjpbIlRlcm1zUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlTGFuZ3VhZ2UgfSBmcm9tICdAL2xpYi9MYW5ndWFnZUNvbnRleHQnO1xuXG5pbnRlcmZhY2UgVGVybXNDb250ZW50IHtcbiAgcGFnZVRpdGxlOiBzdHJpbmc7XG4gIGVmZmVjdGl2ZURhdGU6IHN0cmluZztcbiAgc2VjdGlvbnM6IHtcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIHBhcmFncmFwaHM6IHN0cmluZ1tdO1xuICAgIGxpc3RJdGVtcz86IHN0cmluZ1tdO1xuICB9W107XG59XG5cbmNvbnN0IHRlcm1zQ29udGVudEVOOiBUZXJtc0NvbnRlbnQgPSB7XG4gIHBhZ2VUaXRsZTogXCJURVJNUyBPRiBVU0VcIixcbiAgZWZmZWN0aXZlRGF0ZTogXCJFZmZlY3RpdmUgRGF0ZTogRmVicnVhcnkgNSwgMjAyNlwiLFxuICBzZWN0aW9uczogW1xuICAgIHtcbiAgICAgIHRpdGxlOiBcIjEuIEFjY2VwdGFuY2Ugb2YgVGVybXNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJXZWxjb21lIHRvIEtZTi4gVGhlc2UgVGVybXMgb2YgVXNlIChcXFwiVGVybXNcXFwiKSBnb3Zlcm4geW91ciBhY2Nlc3MgdG8gYW5kIHVzZSBvZiB0aGUgS1lOIHdlYnNpdGUgbG9jYXRlZCBhdCBreW4tY2FyZS5jb20gKHRoZSBcXFwiU2l0ZVxcXCIpLCBvd25lZCBhbmQgb3BlcmF0ZWQgYnkgS1lOIExMQyAoXFxcIktZTixcXFwiIFxcXCJ3ZSxcXFwiIFxcXCJvdXIsXFxcIiBvciBcXFwidXNcXFwiKSwgYSBNYXNzYWNodXNldHRzIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnkuXCIsXG4gICAgICAgIFwiQnkgYWNjZXNzaW5nLCBicm93c2luZywgb3IgdXNpbmcgdGhpcyBTaXRlLCB5b3UgYWNrbm93bGVkZ2UgdGhhdCB5b3UgaGF2ZSByZWFkLCB1bmRlcnN0b29kLCBhbmQgYWdyZWUgdG8gYmUgYm91bmQgYnkgdGhlc2UgVGVybXMgYW5kIG91ciBQcml2YWN5IFBvbGljeS4gSWYgeW91IGRvIG5vdCBhZ3JlZSB0byB0aGVzZSBUZXJtcywgeW91IG11c3QgZGlzY29udGludWUgdXNlIG9mIHRoZSBTaXRlIGltbWVkaWF0ZWx5LlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCIyLiBQcmUtTGF1bmNoIFN0YXR1c1wiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIktZTiBpcyBjdXJyZW50bHkgaW4gcHJlLWxhdW5jaCBzdGF0dXMuIE5vIHByb2R1Y3RzIGFyZSBjdXJyZW50bHkgYXZhaWxhYmxlIGZvciBwdXJjaGFzZSB0aHJvdWdoIHRoaXMgU2l0ZS4gVGhlIFNpdGUgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgYW5kIHRvIGFsbG93IHZpc2l0b3JzIHRvIGpvaW4gb3VyIHdhaXRsaXN0IGZvciBwcm9kdWN0IGxhdW5jaCBub3RpZmljYXRpb25zLlwiLFxuICAgICAgICBcIkFsbCBwcm9kdWN0IGRlc2NyaXB0aW9ucywgaW1hZ2VzLCBpbmdyZWRpZW50IGxpc3RzLCBwcmljaW5nLCBhbmQgbGF1bmNoIGRhdGVzIGRpc3BsYXllZCBvbiB0aGUgU2l0ZSBhcmUgcHJlbGltaW5hcnkgYW5kIHN1YmplY3QgdG8gY2hhbmdlIHdpdGhvdXQgbm90aWNlLiBXZSBtYWtlIG5vIGd1YXJhbnRlZSByZWdhcmRpbmcgcHJvZHVjdCBhdmFpbGFiaWxpdHksIGZvcm11bGF0aW9uLCBwcmljaW5nLCBvciBsYXVuY2ggdGltZWxpbmUgdW50aWwgcHJvZHVjdHMgYXJlIG9mZmljaWFsbHkgYXZhaWxhYmxlIGZvciBwdXJjaGFzZS5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMy4gRWxpZ2liaWxpdHkgJiBBZ2UgUmVxdWlyZW1lbnRzXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiWW91IG11c3QgYmUgYXQgbGVhc3QgMTYgeWVhcnMgb2xkIHRvIHVzZSB0aGlzIFNpdGUuIEJ5IHVzaW5nIHRoZSBTaXRlLCB5b3UgcmVwcmVzZW50IGFuZCB3YXJyYW50IHRoYXQgeW91IGFyZSBhdCBsZWFzdCAxNiB5ZWFycyBvZiBhZ2UuXCIsXG4gICAgICAgIFwiSWYgeW91IGFyZSBiZXR3ZWVuIDE2IGFuZCAxOCB5ZWFycyBvZiBhZ2UgKG9yIHRoZSBhZ2Ugb2YgbWFqb3JpdHkgaW4geW91ciBqdXJpc2RpY3Rpb24pLCB5b3UgbWF5IG9ubHkgdXNlIHRoZSBTaXRlIHdpdGggdGhlIGNvbnNlbnQgYW5kIHVuZGVyIHRoZSBzdXBlcnZpc2lvbiBvZiBhIHBhcmVudCBvciBsZWdhbCBndWFyZGlhbiB3aG8gYWdyZWVzIHRvIGJlIGJvdW5kIGJ5IHRoZXNlIFRlcm1zLiBXZSByZXNlcnZlIHRoZSByaWdodCB0byByZXF1ZXN0IHByb29mIG9mIGFnZSBhbmQgcGFyZW50YWwgY29uc2VudCBhdCBhbnkgdGltZS5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiNC4gV2FpdGxpc3QgJiBFbWFpbCBDb21tdW5pY2F0aW9uc1wiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIkJ5IHN1Ym1pdHRpbmcgeW91ciBlbWFpbCBhZGRyZXNzIHRvIGpvaW4gb3VyIHdhaXRsaXN0LCB5b3UgY29uc2VudCB0byByZWNlaXZlIGVtYWlsIGNvbW11bmljYXRpb25zIGZyb20gS1lOIHJlZ2FyZGluZyBwcm9kdWN0IGxhdW5jaGVzLCB1cGRhdGVzLCBwcm9tb3Rpb25zLCBhbmQgcmVsYXRlZCBtYXJrZXRpbmcgbWF0ZXJpYWxzLiBPdXIgZW1haWwgY29tbXVuaWNhdGlvbnMgY29tcGx5IHdpdGggdGhlIENBTi1TUEFNIEFjdCwgQ0NQQS9DUFJBLCBHRFBSLCBhbmQgb3RoZXIgYXBwbGljYWJsZSBwcml2YWN5IGxhd3MuIFlvdSBtYXkgdW5zdWJzY3JpYmUgZnJvbSB0aGVzZSBjb21tdW5pY2F0aW9ucyBhdCBhbnkgdGltZSBieSBjbGlja2luZyB0aGUgdW5zdWJzY3JpYmUgbGluayBwcm92aWRlZCBpbiBldmVyeSBlbWFpbCwgY29udGFjdGluZyB1cyBhdCBoZWxsb0BreW4tY2FyZS5jb20sIG9yIHdyaXRpbmcgdG8gdXMgYXQgS1lOIExMQywgQ29tbW9ud2VhbHRoIG9mIE1hc3NhY2h1c2V0dHMsIFVTQS5cIixcbiAgICAgICAgXCJKb2luaW5nIG91ciB3YWl0bGlzdCBkb2VzIG5vdCBndWFyYW50ZWUgcHJvZHVjdCBhdmFpbGFiaWxpdHksIHByaWNpbmcsIG9yIHByaW9yaXR5IGFjY2VzcyB0byBwcm9kdWN0cyB1cG9uIGxhdW5jaC4gV2UgcmVzZXJ2ZSB0aGUgcmlnaHQgdG8gbGltaXQgcXVhbnRpdGllcyBhbmQgbW9kaWZ5IHdhaXRsaXN0IHRlcm1zIGF0IG91ciBkaXNjcmV0aW9uLlwiLFxuICAgICAgICBcIllvdXIgUHJpdmFjeSBSaWdodHMuIENhbGlmb3JuaWEgcmVzaWRlbnRzIGFuZCB1c2VycyBpbiBjZXJ0YWluIG90aGVyIGp1cmlzZGljdGlvbnMgaGF2ZSBzcGVjaWZpYyByaWdodHMgcmVnYXJkaW5nIHRoZWlyIHBlcnNvbmFsIGluZm9ybWF0aW9uLCBpbmNsdWRpbmcgdGhlIHJpZ2h0IHRvIGFjY2VzcywgZGVsZXRlLCBhbmQgb3B0IG91dCBvZiBkYXRhIHNhbGVzLiBGb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgaG93IHdlIGNvbGxlY3QsIHVzZSwgYW5kIHByb3RlY3QgeW91ciBpbmZvcm1hdGlvbiwgcGxlYXNlIHJldmlldyBvdXIgUHJpdmFjeSBQb2xpY3kuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjUuIEludGVsbGVjdHVhbCBQcm9wZXJ0eSBSaWdodHNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJBbGwgY29udGVudCBvbiB0aGUgU2l0ZSwgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB0ZXh0LCBncmFwaGljcywgbG9nb3MsIGltYWdlcywgcHJvZHVjdCBmb3JtdWxhdGlvbnMsIHBob3RvZ3JhcGhzLCB2aWRlb3MsIGFuZCBzb2Z0d2FyZSAoY29sbGVjdGl2ZWx5LCBcXFwiQ29udGVudFxcXCIpLCBpcyB0aGUgZXhjbHVzaXZlIHByb3BlcnR5IG9mIEtZTiBMTEMgb3Igb3VyIGxpY2Vuc29ycyBhbmQgaXMgcHJvdGVjdGVkIGJ5IFVuaXRlZCBTdGF0ZXMgYW5kIGludGVybmF0aW9uYWwgY29weXJpZ2h0LCB0cmFkZW1hcmssIHBhdGVudCwgdHJhZGUgc2VjcmV0LCBhbmQgb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGxhd3MuXCIsXG4gICAgICAgIFwiWW91IG1heSBub3QgcmVwcm9kdWNlLCBkaXN0cmlidXRlLCBtb2RpZnksIGRpc3BsYXksIHBlcmZvcm0sIHB1Ymxpc2gsIGxpY2Vuc2UsIGNyZWF0ZSBkZXJpdmF0aXZlIHdvcmtzIGZyb20sIG9yIHVzZSBhbnkgQ29udGVudCBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcyB3aXRob3V0IG91ciBwcmlvciB3cml0dGVuIGNvbnNlbnQuIFRoZSBLWU4gbmFtZSBhbmQgbG9nbyBhcmUgcmVnaXN0ZXJlZCB0cmFkZW1hcmtzIG9mIEtZTiBMTEMgYW5kIG1heSBub3QgYmUgdXNlZCB3aXRob3V0IHBlcm1pc3Npb24uXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjYuIFVzZXItR2VuZXJhdGVkIENvbnRlbnQgJiBTb2NpYWwgTWVkaWFcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJJZiB5b3UgcG9zdCwgc3VibWl0LCBvciB0cmFuc21pdCBhbnkgY29udGVudCB0byB0aGUgU2l0ZSwgaW5jbHVkaW5nIHJldmlld3MsIHRlc3RpbW9uaWFscywgY29tbWVudHMsIHBob3RvcywgdmlkZW9zLCBvciBvdGhlciBtYXRlcmlhbHMgKFxcXCJVc2VyIENvbnRlbnRcXFwiKSwgeW91IGdyYW50IEtZTiBhIHBlcnBldHVhbCwgaXJyZXZvY2FibGUsIHdvcmxkd2lkZSwgcm95YWx0eS1mcmVlLCB0cmFuc2ZlcmFibGUsIHN1YmxpY2Vuc2FibGUgbGljZW5zZSB0byB1c2UsIHJlcHJvZHVjZSwgbW9kaWZ5LCBhZGFwdCwgcHVibGlzaCwgdHJhbnNsYXRlLCBjcmVhdGUgZGVyaXZhdGl2ZSB3b3JrcyBmcm9tLCBkaXN0cmlidXRlLCBkaXNwbGF5LCBhbmQgb3RoZXJ3aXNlIGV4cGxvaXQgc3VjaCBVc2VyIENvbnRlbnQgaW4gYW55IG1lZGlhIGZvcm1hdCBhbmQgdGhyb3VnaCBhbnkgbWVkaWEgY2hhbm5lbHMsIGluY2x1ZGluZyBmb3IgbWFya2V0aW5nIGFuZCBwcm9tb3Rpb25hbCBwdXJwb3Nlcy5cIixcbiAgICAgICAgXCJZb3UgcmVwcmVzZW50IGFuZCB3YXJyYW50IHRoYXQgKGEpIHlvdSBvd24gb3IgaGF2ZSB0aGUgbmVjZXNzYXJ5IHJpZ2h0cyB0byBzdWJtaXQgdGhlIFVzZXIgQ29udGVudCwgKGIpIHRoZSBVc2VyIENvbnRlbnQgZG9lcyBub3QgdmlvbGF0ZSBhbnkgdGhpcmQtcGFydHkgcmlnaHRzLCBhbmQgKGMpIHlvdSBoYXZlIG9idGFpbmVkIGFsbCBuZWNlc3NhcnkgY29uc2VudHMgZnJvbSBhbnkgaW5kaXZpZHVhbHMgZmVhdHVyZWQgaW4gdGhlIFVzZXIgQ29udGVudC5cIixcbiAgICAgICAgXCJXZSByZXNlcnZlIHRoZSByaWdodCB0byByZW1vdmUsIGVkaXQsIG9yIHJlZnVzZSB0byBwb3N0IGFueSBVc2VyIENvbnRlbnQgYXQgb3VyIHNvbGUgZGlzY3JldGlvbiB3aXRob3V0IG5vdGljZSBvciBsaWFiaWxpdHkuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjcuIFByb2hpYml0ZWQgQ29uZHVjdFwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIllvdSBhZ3JlZSBub3QgdG8gZW5nYWdlIGluIGFueSBvZiB0aGUgZm9sbG93aW5nIHByb2hpYml0ZWQgYWN0aXZpdGllczpcIlxuICAgICAgXSxcbiAgICAgIGxpc3RJdGVtczogW1xuICAgICAgICBcIlVzZSB0aGUgU2l0ZSBmb3IgYW55IHVubGF3ZnVsLCBmcmF1ZHVsZW50LCBhYnVzaXZlLCBvciBoYXJtZnVsIHB1cnBvc2U7XCIsXG4gICAgICAgIFwiQXR0ZW1wdCB0byBnYWluIHVuYXV0aG9yaXplZCBhY2Nlc3MgdG8gdGhlIFNpdGUsIG91ciBzeXN0ZW1zLCBvciB1c2VyIGFjY291bnRzO1wiLFxuICAgICAgICBcIkludGVyZmVyZSB3aXRoIG9yIGRpc3J1cHQgdGhlIFNpdGUgb3Igc2VydmVycyBvciBuZXR3b3JrcyBjb25uZWN0ZWQgdG8gdGhlIFNpdGU7XCIsXG4gICAgICAgIFwiVXNlIGF1dG9tYXRlZCBtZWFucyB0byBhY2Nlc3MgdGhlIFNpdGUsIGluY2x1ZGluZyByb2JvdHMsIHNjcmFwZXJzLCBvciBkYXRhIG1pbmluZyB0b29scywgd2l0aG91dCBvdXIgZXhwcmVzcyB3cml0dGVuIHBlcm1pc3Npb247XCIsXG4gICAgICAgIFwiVHJhbnNtaXQgYW55IHZpcnVzZXMsIG1hbHdhcmUsIG9yIG90aGVyIG1hbGljaW91cyBjb2RlO1wiLFxuICAgICAgICBcIlZpb2xhdGUgYW55IGFwcGxpY2FibGUgbGF3cyBvciByZWd1bGF0aW9ucztcIixcbiAgICAgICAgXCJJbXBlcnNvbmF0ZSBhbnkgcGVyc29uIG9yIGVudGl0eSBvciBmYWxzZWx5IHN0YXRlIG9yIG
4611pc3JlcHJlc2VudCB5b3VyIGFmZmlsaWF0aW9uIHdpdGggYW55IHBlcnNvbiBvciBlbnRpdHk7XCIsXG4gICAgICAgIFwiSGFyYXNzLCB0aHJlYXRlbiwgb3IgaGFybSBvdGhlciB1c2VycyBvciB0aGlyZCBwYXJ0aWVzLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCI4LiBNZWRpY2FsICYgV2VsbG5lc3MgRGlzY2xhaW1lcnNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJLWU4gcHJvZHVjdHMgYXJlIGNvc21ldGljIHNraW5jYXJlIHByb2R1Y3RzIGFuZCBhcmUgbm90IGludGVuZGVkIHRvIGRpYWdub3NlLCB0cmVhdCwgY3VyZSwgb3IgcHJldmVudCBhbnkgZGlzZWFzZSBvciBtZWRpY2FsIGNvbmRpdGlvbi4gVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIG9uIHRoaXMgU2l0ZSBpcyBmb3IgZWR1Y2F0aW9uYWwgYW5kIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seSBhbmQgZG9lcyBub3QgY29uc3RpdHV0ZSBtZWRpY2FsIGFkdmljZS5cIixcbiAgICAgICAgXCJQcm9kdWN0IGZvcm11bGF0aW9ucyBoYXZlIG5vdCBiZWVuIGV2YWx1YXRlZCBieSB0aGUgVS5TLiBGb29kIGFuZCBEcnVnIEFkbWluaXN0cmF0aW9uLiBJbmRpdmlkdWFsIHJlc3VsdHMgbWF5IHZhcnkuIFdlIHJlY29tbWVuZCBjb25kdWN0aW5nIGEgcGF0Y2ggdGVzdCBiZWZvcmUgdXNpbmcgYW55IG5ldyBza2luY2FyZSBwcm9kdWN0LiBJZiB5b3UgaGF2ZSBzZW5zaXRpdmUgc2tpbiwgYWxsZXJnaWVzLCBvciBhbnkgbWVkaWNhbCBza2luIGNvbmRpdGlvbiwgY29uc3VsdCBhIGhlYWx0aGNhcmUgcHJvZmVzc2lvbmFsIGJlZm9yZSB1c2UuXCIsXG4gICAgICAgIFwiVGVzdGltb25pYWxzLCByZXZpZXdzLCBhbmQgYmVmb3JlL2FmdGVyIGltYWdlcyAoaWYgYW55KSByZXByZXNlbnQgaW5kaXZpZHVhbCBleHBlcmllbmNlcyBhbmQgYXJlIG5vdCBndWFyYW50ZWVzIG9mIHJlc3VsdHMuIFlvdXIgZXhwZXJpZW5jZSBtYXkgZGlmZmVyIGJhc2VkIG9uIHNraW4gdHlwZSwgZW52aXJvbm1lbnRhbCBmYWN0b3JzLCBhcHBsaWNhdGlvbiBtZXRob2QsIGFuZCBvdGhlciB2YXJpYWJsZXMuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjkuIFRoaXJkLVBhcnR5IExpbmtzICYgU2VydmljZXNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJUaGUgU2l0ZSBtYXkgY29udGFpbiBsaW5rcyB0byB0aGlyZC1wYXJ0eSB3ZWJzaXRlcywgc29jaWFsIG1lZGlhIHBsYXRmb3JtcyAoaW5jbHVkaW5nIEluc3RhZ3JhbSwgVGlrVG9rLCBMaW5rZWRJbiwgYW5kIFBpbnRlcmVzdCksIG9yIHNlcnZpY2VzIHRoYXQgYXJlIG5vdCBvd25lZCBvciBjb250cm9sbGVkIGJ5IEtZTi4gV2UgaGF2ZSBubyBjb250cm9sIG92ZXIgYW5kIGFzc3VtZSBubyByZXNwb25zaWJpbGl0eSBmb3IgdGhlIGNvbnRlbnQsIHByaXZhY3kgcG9saWNpZXMsIG9yIHByYWN0aWNlcyBvZiBhbnkgdGhpcmQtcGFydHkgc2l0ZXMgb3Igc2VydmljZXMuIFlvdSBhY2tub3dsZWRnZSBhbmQgYWdyZWUgdGhhdCBLWU4gaXMgbm90IGxpYWJsZSBmb3IgYW55IGxvc3Mgb3IgZGFtYWdlIGFyaXNpbmcgZnJvbSB5b3VyIHVzZSBvZiBvciByZWxpYW5jZSBvbiBhbnkgdGhpcmQtcGFydHkgY29udGVudCwgcHJvZHVjdHMsIG9yIHNlcnZpY2VzLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCIxMC4gUHJpdmFjeSAmIERhdGEgU2VjdXJpdHlcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJZb3VyIHByaXZhY3kgaXMgaW1wb3J0YW50IHRvIHVzLiBPdXIgY29sbGVjdGlvbiwgdXNlLCBhbmQgcHJvdGVjdGlvbiBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGlzIGdvdmVybmVkIGJ5IG91ciBQcml2YWN5IFBvbGljeSwgd2hpY2ggaXMgaW5jb3Jwb3JhdGVkIGludG8gdGhlc2UgVGVybXMgYnkgcmVmZXJlbmNlLlwiLFxuICAgICAgICBcIldlIGltcGxlbWVudCBhcHByb3ByaWF0ZSB0ZWNobmljYWwgYW5kIG9yZ2FuaXphdGlvbmFsIHNlY3VyaXR5IG1lYXN1cmVzIHRvIHByb3RlY3QgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBpbiBhY2NvcmRhbmNlIHdpdGggTWFzc2FjaHVzZXR0cyBkYXRhIHNlY3VyaXR5IHJlZ3VsYXRpb25zICgyMDEgQ01SIDE3LjAwKSBhbmQgb3RoZXIgYXBwbGljYWJsZSBwcml2YWN5IGxhd3MuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjExLiBEaXNjbGFpbWVycyAmIExpbWl0YXRpb24gb2YgTGlhYmlsaXR5XCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiTm8gV2FycmFudGllcy4gVGhlIFNpdGUgYW5kIGFsbCBpbmZvcm1hdGlvbiwgY29udGVudCwgYW5kIG1hdGVyaWFscyBwcm92aWRlZCBvbiB0aGUgU2l0ZSBhcmUgcHJvdmlkZWQgb24gYW4gXFxcImFzIGlzXFxcIiBhbmQgXFxcImFzIGF2YWlsYWJsZVxcXCIgYmFzaXMgd2l0aG91dCB3YXJyYW50aWVzIG9mIGFueSBraW5kLCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHdhcnJhbnRpZXMgb2YgbWVyY2hhbnRhYmlsaXR5LCBmaXRuZXNzIGZvciBhIHBhcnRpY3VsYXIgcHVycG9zZSwgdGl0bGUsIG9yIG5vbi1pbmZyaW5nZW1lbnQuXCIsXG4gICAgICAgIFwiTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuIFRvIHRoZSBtYXhpbXVtIGV4dGVudCBwZXJtaXR0ZWQgYnkgTWFzc2FjaHVzZXR0cyBsYXcgYW5kIG90aGVyIGFwcGxpY2FibGUgbGF3LCBpbiBubyBldmVudCBzaGFsbCBLWU4gTExDLCBpdHMgb2ZmaWNlcnMsIGRpcmVjdG9ycywgZW1wbG95ZWVzLCBhZ2VudHMsIG9yIGFmZmlsaWF0ZXMgYmUgbGlhYmxlIGZvciBhbnkgaW5kaXJlY3QsIGluY2lkZW50YWwsIHNwZWNpYWwsIGNvbnNlcXVlbnRpYWwsIG9yIHB1bml0aXZlIGRhbWFnZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gbG9zcyBvZiBwcm9maXRzLCBkYXRhLCB1c2UsIGdvb2R3aWxsLCBvciBvdGhlciBpbnRhbmdpYmxlIGxvc3NlcywgYXJpc2luZyBvdXQgb2Ygb3IgcmVsYXRpbmcgdG8geW91ciB1c2Ugb2Ygb3IgaW5hYmlsaXR5IHRvIHVzZSB0aGUgU2l0ZSwgZXZlbiBpZiB3ZSBoYXZlIGJlZW4gYWR2aXNlZCBvZiB0aGUgcG9zc2liaWxpdHkgb2Ygc3VjaCBkYW1hZ2VzLlwiLFxuICAgICAgICBcIk91ciB0b3RhbCBsaWFiaWxpdHkgdG8geW91IGZvciBhbnkgY2xhaW1zIGFyaXNpbmcgb3V0IG9mIG9yIHJlbGF0ZWQgdG8geW91ciB1c2Ugb2YgdGhlIFNpdGUgc2hhbGwgbm90IGV4Y2VlZCB0aGUgZ3JlYXRlciBvZiAoYSkgdGhlIGFtb3VudCB5b3UgcGFpZCB0byB1cyAoaWYgYW55KSBpbiB0aGUgdHdlbHZlICgxMikgbW9udGhzIHByZWNlZGluZyB0aGUgY2xhaW0sIG9yIChiKSBvbmUgaHVuZHJlZCBVLlMuIGRvbGxhcnMgKCQxMDAuMDApLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCIxMi4gSW5kZW1uaWZpY2F0aW9uXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiWW91IGFncmVlIHRvIGRlZmVuZCwgaW5kZW1uaWZ5LCBhbmQgaG9sZCBoYXJtbGVzcyBLWU4gTExDLCBpdHMgb2ZmaWNlcnMsIGRpcmVjdG9ycywgZW1wbG95ZWVzLCBhZ2VudHMsIGxpY2Vuc29ycywgYW5kIHNlcnZpY2UgcHJvdmlkZXJzIGZyb20gYW5kIGFnYWluc3QgYW55IGNsYWltcywgbGlhYmlsaXRpZXMsIGRhbWFnZXMsIGp1ZGdtZW50cywgYXdhcmRzLCBsb3NzZXMsIGNvc3RzLCBleHBlbnNlcywgb3IgZmVlcyAoaW5jbHVkaW5nIHJlYXNvbmFibGUgYXR0b3JuZXlzJyBmZWVzKSBhcmlzaW5nIG91dCBvZiBvciByZWxhdGluZyB0byAoYSkgeW91ciB1c2Ugb2YgdGhlIFNpdGUsIChiKSB5b3VyIHZpb2xhdGlvbiBvZiB0aGVzZSBUZXJtcywgKGMpIHlvdXIgdmlvbGF0aW9uIG9mIGFueSB0aGlyZC1wYXJ0eSByaWdodCwgaW5jbHVkaW5nIGludGVsbGVjdHVhbCBwcm9wZXJ0eSwgcHJpdmFjeSwgb3IgcHVibGljaXR5IHJpZ2h0cywgb3IgKGQpIGFueS
461BVc2VyIENvbnRlbnQgeW91IHN1Ym1pdCB0byB0aGUgU2l0ZS5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTMuIEdvdmVybmluZyBMYXcgJiBEaXNwdXRlIFJlc29sdXRpb25cIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJUaGVzZSBUZXJtcyBzaGFsbCBiZSBnb3Zlcm5lZCBieSBhbmQgY29uc3RydWVkIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgbGF3cyBvZiB0aGUgQ29tbW9ud2VhbHRoIG9mIE1hc3NhY2h1c2V0dHMsIFVTQSwgd2l0aG91dCByZWdhcmQgdG8gaXRzIGNvbmZsaWN0IG9mIGxhdyBwcm92aXNpb25zLlwiLFxuICAgICAgICBcIkFueSBkaXNwdXRlLCBjb250cm92ZXJzeSwgb3IgY2xhaW0gYXJpc2luZyBvdXQgb2Ygb3IgcmVsYXRpbmcgdG8gdGhlc2UgVGVybXMgb3IgeW91ciB1c2Ugb2YgdGhlIFNpdGUgc2hhbGwgYmUgcmVzb2x2ZWQgdGhyb3VnaCBiaW5kaW5nIGFyYml0cmF0aW9uIGFkbWluaXN0ZXJlZCBieSB0aGUgQW1lcmljYW4gQXJiaXRyYXRpb24gQXNzb2NpYXRpb24gaW4gYWNjb3JkYW5jZSB3aXRoIGl0cyBDb25zdW1lciBBcmJpdHJhdGlvbiBSdWxlcywgd2l0aCBhcmJpdHJhdGlvbiB0YWtpbmcgcGxhY2UgaW4gTWFzc2FjaHVzZXR0cy4gWW91IGFncmVlIHRvIHdhaXZlIGFueSByaWdodCB0byBhIGp1cnkgdHJpYWwgb3IgdG8gcGFydGljaXBhdGUgaW4gYSBjbGFzcyBhY3Rpb24uXCIsXG4gICAgICAgIFwiRm9yIGNsYWltcyB0aGF0IHF1YWxpZnkgZm9yIHNtYWxsIGNsYWltcyBjb3VydCBpbiB5b3VyIGp1cmlzZGljdGlvbiwgeW91IG1heSBjaG9vc2UgdG8gcmVzb2x2ZSB0aGUgZGlzcHV0ZSBpbiBzbWFsbCBjbGFpbXMgY291cnQgaW5zdGVhZCBvZiBhcmJpdHJhdGlvbi5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTQuIE1vZGlmaWNhdGlvbnMgdG8gVGVybXNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJXZSByZXNlcnZlIHRoZSByaWdodCB0byBtb2RpZnkgdGhlc2UgVGVybXMgYXQgYW55IHRpbWUuIE1hdGVyaWFsIGNoYW5nZXMgd2lsbCBiZSBwb3N0ZWQgb24gdGhpcyBwYWdlIHdpdGggYW4gdXBkYXRlZCBcXFwiRWZmZWN0aXZlIERhdGUuXFxcIiBZb3VyIGNvbnRpbnVlZCB1c2Ugb2YgdGhlIFNpdGUgYWZ0ZXIgYW55IG1vZGlmaWNhdGlvbnMgY29uc3RpdHV0ZXMgeW91ciBhY2NlcHRhbmNlIG9mIHRoZSB1cGRhdGVkIFRlcm1zLiBXZSBlbmNvdXJhZ2UgeW91IHRvIHJldmlldyB0aGlzIHBhZ2UgcGVyaW9kaWNhbGx5IGZvciBjaGFuZ2VzLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCIxNS4gVGVybWluYXRpb25cIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJXZSBtYXkgc3VzcGVuZCBvciB0ZXJtaW5hdGUgeW91ciBhY2Nlc3MgdG8gdGhlIFNpdGUgYXQgYW55IHRpbWUsIHdpdGggb3Igd2l0aG91dCBjYXVzZSBvciBub3RpY2UsIGluY2x1ZGluZyBmb3IgdmlvbGF0aW9uIG9mIHRoZXNlIFRlcm1zLiBBbGwgcHJvdmlzaW9ucyBvZiB0aGVzZSBUZXJtcyB0aGF0IGJ5IHRoZWlyIG5hdHVyZSBzaG91bGQgc3Vydml2ZSB0ZXJtaW5hdGlvbiBzaGFsbCBzdXJ2aXZlLCBpbmNsdWRpbmcgb3duZXJzaGlwIHByb3Zpc2lvbnMsIHdhcnJhbnR5IGRpc2NsYWltZXJzLCBpbmRlbW5pZmljYXRpb24gb2JsaWdhdGlvbnMsIGFuZCBsaW1pdGF0aW9ucyBvZiBsaWFiaWxpdHkuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjE2LiBTZXZlcmFiaWxpdHkgJiBFbnRpcmUgQWdyZWVtZW50XCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiSWYgYW55IHByb3Zpc2lvbiBvZiB0aGVzZSBUZXJtcyBpcyBmb3VuZCB0byBiZSBpbnZhbGlkIG9yIHVuZW5mb3JjZWFibGUsIHRoZSByZW1haW5pbmcgcHJvdmlzaW9ucyBzaGFsbCBjb250aW51ZSBpbiBmdWxsIGZvcmNlIGFuZCBlZmZlY3QuIFRoZXNlIFRlcm1zLCB0b2dldGhlciB3aXRoIG91ciBQcml2YWN5IFBvbGljeSwgY29uc3RpdHV0ZSB0aGUgZW50aXJlIGFncmVlbWVudCBiZXR3ZWVuIHlvdSBhbmQgS1lOIHJlZ2FyZGluZyB5b3VyIHVzZSBvZiB0aGUgU2l0ZSBhbmQgc3VwZXJzZWRlIGFueSBwcmlvciBhZ3JlZW1lbnRzLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCIxNy4gQ29udGFjdCBJbmZvcm1hdGlvblwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIklmIHlvdSBoYXZlIGFueSBxdWVzdGlvbnMgYWJvdXQgdGhlc2UgVGVybXMsIHBsZWFzZSBjb250YWN0IHVzIGF0OiBoZWxsb0BreW4tY2FyZS5jb20gb3IgS1lOIExMQywgQ29tbW9ud2VhbHRoIG9mIE1hc3NhY2h1c2V0dHMsIFVTQS5cIlxuICAgICAgXVxuICAgIH1cbiAgXVxufTtcblxuY29uc3QgdGVybXNDb250ZW50RlI6IFRlcm1zQ29udGVudCA9IHtcbiAgcGFnZVRpdGxlOiBcIkNPTkRJVElPTlMgRCdVVElMSVNBVElPTlwiLFxuICBlZmZlY3RpdmVEYXRlOiBcIkRhdGUgZCdlbnRyw6llIGVuIHZpZ3VldXIgOiA1IGbDqXZyaWVyIDIwMjZcIixcbiAgc2VjdGlvbnM6IFtcbiAgICB7XG4gICAgICB0aXRsZTogXCIxLiBBY2NlcHRhdGlvbiBkZXMgQ29uZGl0aW9uc1wiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIkJpZW52ZW51ZSBjaGV6IEtZTi4gQ2VzIENvbmRpdGlvbnMgZCdVdGlsaXNhdGlvbiAowqsgQ29uZGl0aW9ucyDCuykgcsOpZ2lzc2VudCB2b3RyZSBhY2PDqHMgZXQgdm90cmUgdXRpbGlzYXRpb24gZHUgc2l0ZSB3ZWIgS1lOIHNpdHXDqSDDoCBreW4tY2FyZS5jb20gKGxlIMKrIFNpdGUgwrspLCBkw6l0ZW51IGV0IGV4cGxvaXTDqSBwYXIgS1lOIExMQyAowqsgS1lOIMK7LCDCqyBub3VzIMK7LCDCqyBub3RyZSDCuyBvdSDCqyBub3MgwrspLCB1bmUgc29jacOpdMOpIMOgIHJlc3BvbnNhYmlsaXTDqSBsaW1pdMOpZSBkdSBNYXNzYWNodXNldHRzLlwiLFxuICAgICAgICBcIkVuIGFjY8OpZGFudCwgbmF2aWd1YW50IG91IHV0aWxpc2FudCBjZSBTaXRlLCB2b3VzIHJlY29ubmFpc3NleiBhdm9pciBsdSwgY29tcHJpcyBldCBhY2NlcHTDqSBkJ8OqdHJlIGxpw6kgcGFyIGNlcyBDb25kaXRpb25zIGV0IG5vdHJlIFBvbGl0aXF1ZSBkZSBDb25maWRlbnRpYWxpdMOpLiBTaSB2b3VzIG4nYWNjZXB0ZXogcGFzIGNlcyBDb25kaXRpb25zLCB2b3VzIGRldmV6IGNlc3NlciBpbW3DqWRpYXRlbWVudCBkJ3V0aWxpc2VyIGxlIFNpdGUuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjIuIFBoYXNlIGRlIExhbmNlbWVudFwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIktZTiBlc3QgYWN0dWVsbGVtZW50IGVuIHBoYXNlIGF2YW50IGxhbmNlbWVudC4gQXVjdW4gcHJvZHVpdCBuJ2VzdCBhY3R1ZWxsZW1lbnQgZGlzcG9uaWJsZSDDoCBsJ2FjaGF0IHN1ciBjZSBTaXRlLiBMZSBTaXRlIGVzdCBmb3Vybmkgw6AgZGVzIGZpbnMgZCdpbmZvcm1hdGlvbiBldCBwb3VyIH
461Blcm1ldHRyZSBhdXggdmlzaXRldXJzIGRlIHJlam9pbmRyZSBub3RyZSBsaXN0ZSBkJ2F0dGVudGUgcG91ciBsZXMgbm90aWZpY2F0aW9ucyBkZSBsYW5jZW1lbnQgZGUgcHJvZHVpdHMuXCIsXG4gICAgICAgIFwiVG91dGVzIGxlcyBkZXNjcmlwdGlvbnMgZGUgcHJvZHVpdHMsIGltYWdlcywgbGlzdGVzIGQnaW5ncsOpZGllbnRzLCBwcml4IGV0IGRhdGVzIGRlIGxhbmNlbWVudCBhZmZpY2jDqXMgc3VyIGxlIFNpdGUgc29udCBwcsOpbGltaW5haXJlcyBldCBzdXNjZXB0aWJsZXMgZGUgbW9kaWZpY2F0aW9ucyBzYW5zIHByw6lhdmlzLiBOb3VzIG5lIGdhcmFudGlzc29ucyBwYXMgbGEgZGlzcG9uaWJpbGl0w6kgZGVzIHByb2R1aXRzLCBsYSBmb3JtdWxhdGlvbiwgbGVzIHByaXggb3UgbGUgY2FsZW5kcmllciBkZSBsYW5jZW1lbnQgdGFudCBxdWUgbGVzIHByb2R1aXRzIG5lIHNvbnQgcGFzIG9mZmljaWVsbGVtZW50IGRpc3BvbmlibGVzIMOgIGwnYWNoYXQuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjMuIMOJbGlnaWJpbGl0w6kgZXQgQ29uZGl0aW9ucyBkJ8OCZ2VcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJWb3VzIGRldmV6IGF2b2lyIGF1IG1vaW5zIDE2IGFucyBwb3VyIHV0aWxpc2VyIGNlIFNpdGUuIEVuIHV0aWxpc2FudCBsZSBTaXRlLCB2b3VzIGTDqWNsYXJleiBldCBnYXJhbnRpc3NleiBhdm9pciBhdSBtb2lucyAxNiBhbnMuXCIsXG4gICAgICAgIFwiU2kgdm91cyBhdmV6IGVudHJlIDE2IGV0IDE4IGFucyAob3UgbCfDomdlIGRlIGxhIG1ham9yaXTDqSBkYW5zIHZvdHJlIGp1cmlkaWN0aW9uKSwgdm91cyBuZSBwb3V2ZXogdXRpbGlzZXIgbGUgU2l0ZSBxdSdhdmVjIGxlIGNvbnNlbnRlbWVudCBldCBzb3VzIGxhIHN1cGVydmlzaW9uIGQndW4gcGFyZW50IG91IHR1dGV1ciBsw6lnYWwgcXVpIGFjY2VwdGUgZCfDqnRyZSBsacOpIHBhciBjZXMgQ29uZGl0aW9ucy4gTm91cyBub3VzIHLDqXNlcnZvbnMgbGUgZHJvaXQgZGUgZGVtYW5kZXIgdW5lIHByZXV2ZSBkJ8OiZ2UgZXQgbGUgY29uc2VudGVtZW50IHBhcmVudGFsIMOgIHRvdXQgbW9tZW50LlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCI0LiBMaXN0ZSBkJ0F0dGVudGUgZXQgQ29tbXVuaWNhdGlvbnMgcGFyIEVtYWlsXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiRW4gc291bWV0dGFudCB2b3RyZSBhZHJlc3NlIGVtYWlsIHBvdXIgcmVqb2luZHJlIG5vdHJlIGxpc3RlIGQnYXR0ZW50ZSwgdm91cyBjb25zZW50ZXogw6AgcmVjZXZvaXIgZGVzIGNvbW11bmljYXRpb25zIHBhciBlbWFpbCBkZSBLWU4gY29uY2VybmFudCBsZXMgbGFuY2VtZW50cyBkZSBwcm9kdWl0cywgbWlzZXMgw6Agam91ciwgcHJvbW90aW9ucyBldCBtYXTDqXJpZWwgbWFya2V0aW5nIGNvbm5leGUuIE5vcyBjb21tdW5pY2F0aW9ucyBwYXIgZW1haWwgc29udCBjb25mb3JtZXMgYXUgQ0FOLVNQQU0gQWN0LCBDQ1BBL0NQUkEsIFJHUEQgZXQgYXV0cmVzIGxvaXMgZGUgY29uZmlkZW50aWFsaXTDqSBhcHBsaWNhYmxlcy4gVm91cyBwb3V2ZXogdm91cyBkw6lzYWJvbm5lciBkZSBjZXMgY29tbXVuaWNhdGlvbnMgw6AgdG91dCBtb21lbnQgZW4gY2xpcXVhbnQgc3VyIGxlIGxpZW4gZGUgZMOpc2luc2NyaXB0aW9uIGZvdXJuaSBkYW5zIGNoYXF1ZSBlbWFpbCwgZW4gbm91cyBjb250YWN0YW50IMOgIGhlbGxvQGt5bi1jYXJlLmNvbSwgb3UgZW4gbm91cyDDqWNyaXZhbnQgw6AgS1lOIExMQywgQ29tbW9ud2VhbHRoIGR1IE1hc3NhY2h1c2V0dHMsIFVTQS5cIixcbiAgICAgICAgXCJSZWpvaW5kcmUgbm90cmUgbGlzdGUgZCdhdHRlbnRlIG5lIGdhcmFudGl0IHBhcyBsYSBkaXNwb25pYmlsaXTDqSBkZXMgcHJvZHVpdHMsIGxlcyBwcml4IG91IGwnYWNjw6hzIHByaW9yaXRhaXJlIGF1eCBwcm9kdWl0cyBsb3JzIGR1IGxhbmNlbWVudC4gTm91cyBub3VzIHLDqXNlcnZvbnMgbGUgZHJvaXQgZGUgbGltaXRlciBsZXMgcXVhbnRpdMOpcyBldCBkZSBtb2RpZmllciBsZXMgY29uZGl0aW9ucyBkZSBsYSBsaXN0ZSBkJ2F0dGVudGUgw6Agbm90cmUgZGlzY3LDqXRpb24uXCIsXG4gICAgICAgIFwiVm9zIERyb2l0cyBkZSBDb25maWRlbnRpYWxpdMOpLiBMZXMgcsOpc2lkZW50cyBkZSBDYWxpZm9ybmllIGV0IGxlcyB1dGlsaXNhdGV1cnMgZGFucyBjZXJ0YWluZXMgYXV0cmVzIGp1cmlkaWN0aW9ucyBvbnQgZGVzIGRyb2l0cyBzcMOpY2lmaXF1ZXMgY29uY2VybmFudCBsZXVycyBpbmZvcm1hdGlvbnMgcGVyc29ubmVsbGVzLCB5IGNvbXByaXMgbGUgZHJvaXQgZCdhY2PDqHMsIGRlIHN1cHByZXNzaW9uIGV0IGRlIHJlZnVzIGRlIHZlbnRlIGRlIGRvbm7DqWVzLiBQb3VyIGRlcyBpbmZvcm1hdGlvbnMgZMOpdGFpbGzDqWVzIHN1ciBsYSBmYcOnb24gZG9udCBub3VzIGNvbGxlY3RvbnMsIHV0aWxpc29ucyBldCBwcm90w6lnZW9ucyB2b3MgaW5mb3JtYXRpb25zLCB2ZXVpbGxleiBjb25zdWx0ZXIgbm90cmUgUG9saXRpcXVlIGRlIENvbmZpZGVudGlhbGl0w6kuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjUuIERyb2l0cyBkZSBQcm9wcmnDqXTDqSBJbnRlbGxlY3R1ZWxsZVwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIlRvdXQgbGUgY29udGVudSBkdSBTaXRlLCB5IGNvbXByaXMgbWFpcyBzYW5zIHMneSBsaW1pdGVyIGxlcyB0ZXh0ZXMsIGdyYXBoaXF1ZXMsIGxvZ29zLCBpbWFnZXMsIGZvcm11bGF0aW9ucyBkZSBwcm9kdWl0cywgcGhvdG9ncmFwaGllcywgdmlkw6lvcyBldCBsb2dpY2llbHMgKGNvbGxlY3RpdmVtZW50LCBsZSDCqyBDb250ZW51IMK7KSwgZXN0IGxhIHByb3ByacOpdMOpIGV4Y2x1c2l2ZSBkZSBLWU4gTExDIG91IGRlIG5vcyBjb25jw6lkYW50cyBkZSBsaWNlbmNlIGV0IGVzdCBwcm90w6lnw6kgcGFyIGxlIGRyb2l0IGQnYXV0ZXVyIGRlcyDDiXRhdHMtVW5pcyBldCBpbnRlcm5hdGlvbmFsLCBsZXMgbWFycXVlcywgYnJldmV0cywgc2VjcmV0cyBjb21tZXJjaWF1eCBldCBhdXRyZXMgbG9pcyBzdXIgbGEgcHJvcHJpw6l0w6kgaW50ZWxsZWN0dWVsbGUuXCIsXG4gICAgICAgIFwiVm91cyBuZSBwb3V2ZXogcGFzIHJlcHJvZHVpcmUsIGRpc3RyaWJ1ZXIsIG1vZGlmaWVyLCBhZmZpY2hlciwgZXjDqWN1dGVyLCBwdWJsaWVyLCBsaWNlbmNpZXIsIGNyw6llciBkZXMgxZN1dnJlcyBkw6lyaXbDqWVzIMOgIHBhcnRpciBkZSwgb3UgdXRpbGlzZXIgdG91dCB
461Db250ZW51IMOgIGRlcyBmaW5zIGNvbW1lcmNpYWxlcyBzYW5zIG5vdHJlIGNvbnNlbnRlbWVudCDDqWNyaXQgcHLDqWFsYWJsZS4gTGUgbm9tIGV0IGxlIGxvZ28gS1lOIHNvbnQgZGVzIG1hcnF1ZXMgZMOpcG9zw6llcyBkZSBLWU4gTExDIGV0IG5lIHBldXZlbnQgw6p0cmUgdXRpbGlzw6lzIHNhbnMgYXV0b3Jpc2F0aW9uLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCI2LiBDb250ZW51IEfDqW7DqXLDqSBwYXIgbCdVdGlsaXNhdGV1ciBldCBSw6lzZWF1eCBTb2NpYXV4XCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiU2kgdm91cyBwdWJsaWV6LCBzb3VtZXR0ZXogb3UgdHJhbnNtZXR0ZXogdG91dCBjb250ZW51IHN1ciBsZSBTaXRlLCB5IGNvbXByaXMgZGVzIGF2aXMsIHTDqW1vaWduYWdlcywgY29tbWVudGFpcmVzLCBwaG90b3MsIHZpZMOpb3Mgb3UgYXV0cmVzIG1hdMOpcmllbHMgKMKrIENvbnRlbnUgVXRpbGlzYXRldXIgwrspLCB2b3VzIGFjY29yZGV6IMOgIEtZTiB1bmUgbGljZW5jZSBwZXJww6l0dWVsbGUsIGlycsOpdm9jYWJsZSwgbW9uZGlhbGUsIGxpYnJlIGRlIHJlZGV2YW5jZXMsIHRyYW5zZsOpcmFibGUgZXQgcG91dmFudCBmYWlyZSBsJ29iamV0IGRlIHNvdXMtbGljZW5jZXMgcG91ciB1dGlsaXNlciwgcmVwcm9kdWlyZSwgbW9kaWZpZXIsIGFkYXB0ZXIsIHB1YmxpZXIsIHRyYWR1aXJlLCBjcsOpZXIgZGVzIMWTdXZyZXMgZMOpcml2w6llcywgZGlzdHJpYnVlciwgYWZmaWNoZXIgZXQgZXhwbG9pdGVyIGF1dHJlbWVudCBjZSBDb250ZW51IFV0aWxpc2F0ZXVyIGRhbnMgdG91dCBmb3JtYXQgbcOpZGlhIGV0IHZpYSB0b3V0IGNhbmFsIG3DqWRpYSwgeSBjb21wcmlzIMOgIGRlcyBmaW5zIGRlIG1hcmtldGluZyBldCBkZSBwcm9tb3Rpb24uXCIsXG4gICAgICAgIFwiVm91cyBkw6ljbGFyZXogZXQgZ2FyYW50aXNzZXogcXVlIChhKSB2b3VzIHBvc3PDqWRleiBvdSBhdmV6IGxlcyBkcm9pdHMgbsOpY2Vzc2FpcmVzIHBvdXIgc291bWV0dHJlIGxlIENvbnRlbnUgVXRpbGlzYXRldXIsIChiKSBsZSBDb250ZW51IFV0aWxpc2F0ZXVyIG5lIHZpb2xlIGF1Y3VuIGRyb2l0IGRlIHRpZXJzLCBldCAoYykgdm91cyBhdmV6IG9idGVudSB0b3VzIGxlcyBjb25zZW50ZW1lbnRzIG7DqWNlc3NhaXJlcyBkZSB0b3V0ZSBwZXJzb25uZSBmaWd1cmFudCBkYW5zIGxlIENvbnRlbnUgVXRpbGlzYXRldXIuXCIsXG4gICAgICAgIFwiTm91cyBub3VzIHLDqXNlcnZvbnMgbGUgZHJvaXQgZGUgc3VwcHJpbWVyLCBtb2RpZmllciBvdSByZWZ1c2VyIGRlIHB1YmxpZXIgdG91dCBDb250ZW51IFV0aWxpc2F0ZXVyIMOgIG5vdHJlIHNldWxlIGRpc2Nyw6l0aW9uIHNhbnMgcHLDqWF2aXMgbmkgcmVzcG9uc2FiaWxpdMOpLlwiXG4gICAgICBdXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCI3LiBDb25kdWl0ZSBJbnRlcmRpdGVcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJWb3VzIGFjY2VwdGV6IGRlIG5lIHBhcyB2b3VzIGVuZ2FnZXIgZGFucyBsJ3VuZSBkZXMgYWN0aXZpdMOpcyBpbnRlcmRpdGVzIHN1aXZhbnRlcyA6XCJcbiAgICAgIF0sXG4gICAgICBsaXN0SXRlbXM6IFtcbiAgICAgICAgXCJVdGlsaXNlciBsZSBTaXRlIMOgIGRlcyBmaW5zIGlsbMOpZ2FsZXMsIGZyYXVkdWxldXNlcywgYWJ1c2l2ZXMgb3UgbnVpc2libGVzIDtcIixcbiAgICAgICAgXCJUZW50ZXIgZCdvYnRlbmlyIHVuIGFjY8OocyBub24gYXV0b3Jpc8OpIGF1IFNpdGUsIMOgIG5vcyBzeXN0w6htZXMgb3UgYXV4IGNvbXB0ZXMgdXRpbGlzYXRldXJzIDtcIixcbiAgICAgICAgXCJJbnRlcmbDqXJlciBhdmVjIG91IHBlcnR1cmJlciBsZSBTaXRlIG91IGxlcyBzZXJ2ZXVycyBvdSByw6lzZWF1eCBjb25uZWN0w6lzIGF1IFNpdGUgO1wiLFxuICAgICAgICBcIlV0aWxpc2VyIGRlcyBtb3llbnMgYXV0b21hdGlzw6lzIHBvdXIgYWNjw6lkZXIgYXUgU2l0ZSwgeSBjb21wcmlzIGRlcyByb2JvdHMsIHNjcmFwZXJzIG91IG91dGlscyBkJ2V4dHJhY3Rpb24gZGUgZG9ubsOpZXMsIHNhbnMgbm90cmUgYXV0b3Jpc2F0aW9uIMOpY3JpdGUgZXhwcmVzc2UgO1wiLFxuICAgICAgICBcIlRyYW5zbWV0dHJlIGRlcyB2aXJ1cywgbG9naWNpZWxzIG1hbHZlaWxsYW50cyBvdSBhdXRyZXMgY29kZXMgbWFsdmVpbGxhbnRzIDtcIixcbiAgICAgICAgXCJWaW9sZXIgbGVzIGxvaXMgb3UgcsOpZ2xlbWVudGF0aW9ucyBhcHBsaWNhYmxlcyA7XCIsXG4gICAgICAgIFwiVXN1cnBlciBsJ2lkZW50aXTDqSBkZSB0b3V0ZSBwZXJzb25uZSBvdSBlbnRpdMOpIG91IGTDqWNsYXJlciBmYXVzc2VtZW50IG91IHJlcHLDqXNlbnRlciBkZSBtYW5pw6hyZSBpbmV4YWN0ZSB2b3RyZSBhZmZpbGlhdGlvbiBhdmVjIHRvdXRlIHBlcnNvbm5lIG91IGVudGl0w6kgO1wiLFxuICAgICAgICBcIkhhcmNlbGVyLCBtZW5hY2VyIG91IG51aXJlIMOgIGQnYXV0cmVzIHV0aWxpc2F0ZXVycyBvdSB0aWVycy5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiOC4gQXZlcnRpc3NlbWVudHMgTcOpZGljYXV4IGV0IEJpZW4tw6p0cmVcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJMZXMgcHJvZHVpdHMgS1lOIHNvbnQgZGVzIHByb2R1aXRzIGNvc23DqXRpcXVlcyBkZSBzb2luIGRlIGxhIHBlYXUgZXQgbmUgc29udCBwYXMgZGVzdGluw6lzIMOgIGRpYWdub3N0aXF1ZXIsIHRyYWl0ZXIsIGd1w6lyaXIgb3UgcHLDqXZlbmlyIHRvdXRlIG1hbGFkaWUgb3UgY29uZGl0aW9uIG3DqWRpY2FsZS4gTGVzIGluZm9ybWF0aW9ucyBmb3VybmllcyBzdXIgY2UgU2l0ZSBzb250IHVuaXF1ZW1lbnQgw6AgZGVzIGZpbnMgw6lkdWNhdGl2ZXMgZXQgaW5mb3JtYXRpdmVzIGV0IG5lIGNvbnN0aXR1ZW50IHBhcyB1biBhdmlzIG3DqWRpY2FsLlwiLFxuICAgICAgICBcIkxlcyBmb3JtdWxhdGlvbnMgZGUgcHJvZHVpdHMgbidvbnQgcGFzIMOpdMOpIMOpdmFsdcOpZXMgcGFyIGxhIFUuUy4gRm9vZCBhbmQgRHJ1ZyBBZG1pbmlzdHJhdGlvbi4gTGVzIHLDqXN1bHRhdHMgaW5kaXZpZHVlbHMgcGV1dmVudCB2Y
461XJpZXIuIE5vdXMgcmVjb21tYW5kb25zIGQnZWZmZWN0dWVyIHVuIHRlc3QgY3V0YW7DqSBhdmFudCBkJ3V0aWxpc2VyIHRvdXQgbm91dmVhdSBwcm9kdWl0IGRlIHNvaW4uIFNpIHZvdXMgYXZleiBsYSBwZWF1IHNlbnNpYmxlLCBkZXMgYWxsZXJnaWVzIG91IHRvdXRlIGNvbmRpdGlvbiBjdXRhbsOpZSBtw6lkaWNhbGUsIGNvbnN1bHRleiB1biBwcm9mZXNzaW9ubmVsIGRlIHNhbnTDqSBhdmFudCB1dGlsaXNhdGlvbi5cIixcbiAgICAgICAgXCJMZXMgdMOpbW9pZ25hZ2VzLCBhdmlzIGV0IGltYWdlcyBhdmFudC9hcHLDqHMgKGxlIGNhcyDDqWNow6lhbnQpIHJlcHLDqXNlbnRlbnQgZGVzIGV4cMOpcmllbmNlcyBpbmRpdmlkdWVsbGVzIGV0IG5lIHNvbnQgcGFzIGRlcyBnYXJhbnRpZXMgZGUgcsOpc3VsdGF0cy4gVm90cmUgZXhww6lyaWVuY2UgcGV1dCBkaWZmw6lyZXIgc2Vsb24gbGUgdHlwZSBkZSBwZWF1LCBsZXMgZmFjdGV1cnMgZW52aXJvbm5lbWVudGF1eCwgbGEgbcOpdGhvZGUgZCdhcHBsaWNhdGlvbiBldCBkJ2F1dHJlcyB2YXJpYWJsZXMuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjkuIExpZW5zIGV0IFNlcnZpY2VzIFRpZXJzXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiTGUgU2l0ZSBwZXV0IGNvbnRlbmlyIGRlcyBsaWVucyB2ZXJzIGRlcyBzaXRlcyB3ZWIgdGllcnMsIGRlcyBwbGF0ZWZvcm1lcyBkZSByw6lzZWF1eCBzb2NpYXV4ICh5IGNvbXByaXMgSW5zdGFncmFtLCBUaWtUb2ssIExpbmtlZEluIGV0IFBpbnRlcmVzdCksIG91IGRlcyBzZXJ2aWNlcyBxdWkgbmUgc29udCBwYXMgZMOpdGVudXMgb3UgY29udHLDtGzDqXMgcGFyIEtZTi4gTm91cyBuJ2F2b25zIGF1Y3VuIGNvbnRyw7RsZSBldCBuJ2Fzc3Vtb25zIGF1Y3VuZSByZXNwb25zYWJpbGl0w6kgcG91ciBsZSBjb250ZW51LCBsZXMgcG9saXRpcXVlcyBkZSBjb25maWRlbnRpYWxpdMOpIG91IGxlcyBwcmF0aXF1ZXMgZGUgdG91dCBzaXRlIG91IHNlcnZpY2UgdGllcnMuIFZvdXMgcmVjb25uYWlzc2V6IGV0IGFjY2VwdGV6IHF1ZSBLWU4gbidlc3QgcGFzIHJlc3BvbnNhYmxlIGRlIHRvdXRlIHBlcnRlIG91IGRvbW1hZ2UgcsOpc3VsdGFudCBkZSB2b3RyZSB1dGlsaXNhdGlvbiBvdSBkZSB2b3RyZSBjb25maWFuY2UgZW4gdG91dCBjb250ZW51LCBwcm9kdWl0IG91IHNlcnZpY2UgdGllcnMuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjEwLiBDb25maWRlbnRpYWxpdMOpIGV0IFPDqWN1cml0w6kgZGVzIERvbm7DqWVzXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiVm90cmUgdmllIHByaXbDqWUgZXN0IGltcG9ydGFudGUgcG91ciBub3VzLiBOb3RyZSBjb2xsZWN0ZSwgdXRpbGlzYXRpb24gZXQgcHJvdGVjdGlvbiBkZSB2b3MgaW5mb3JtYXRpb25zIHBlcnNvbm5lbGxlcyBlc3QgcsOpZ2llIHBhciBub3RyZSBQb2xpdGlxdWUgZGUgQ29uZmlkZW50aWFsaXTDqSwgcXVpIGVzdCBpbmNvcnBvcsOpZSBkYW5zIGNlcyBDb25kaXRpb25zIHBhciByw6lmw6lyZW5jZS5cIixcbiAgICAgICAgXCJOb3VzIG1ldHRvbnMgZW4gxZN1dnJlIGRlcyBtZXN1cmVzIGRlIHPDqWN1cml0w6kgdGVjaG5pcXVlcyBldCBvcmdhbmlzYXRpb25uZWxsZXMgYXBwcm9wcmnDqWVzIHBvdXIgcHJvdMOpZ2VyIHZvcyBpbmZvcm1hdGlvbnMgcGVyc29ubmVsbGVzIGNvbmZvcm3DqW1lbnQgYXV4IHLDqWdsZW1lbnRhdGlvbnMgZGUgc8OpY3VyaXTDqSBkZXMgZG9ubsOpZXMgZHUgTWFzc2FjaHVzZXR0cyAoMjAxIENNUiAxNy4wMCkgZXQgYXV0cmVzIGxvaXMgZGUgY29uZmlkZW50aWFsaXTDqSBhcHBsaWNhYmxlcy5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTEuIEV4Y2x1c2lvbnMgZGUgR2FyYW50aWUgZXQgTGltaXRhdGlvbiBkZSBSZXNwb25zYWJpbGl0w6lcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJBdWN1bmUgR2FyYW50aWUuIExlIFNpdGUgZXQgdG91dGVzIGxlcyBpbmZvcm1hdGlvbnMsIGNvbnRlbnVzIGV0IG1hdMOpcmllbHMgZm91cm5pcyBzdXIgbGUgU2l0ZSBzb250IGZvdXJuaXMgwqsgZW4gbCfDqXRhdCDCuyBldCDCqyBzZWxvbiBkaXNwb25pYmlsaXTDqSDCuyBzYW5zIGdhcmFudGllIGQnYXVjdW5lIHNvcnRlLCBleHByZXNzZSBvdSBpbXBsaWNpdGUsIHkgY29tcHJpcyBtYWlzIHNhbnMgcyd5IGxpbWl0ZXIgbGVzIGdhcmFudGllcyBkZSBxdWFsaXTDqSBtYXJjaGFuZGUsIGQnYWTDqXF1YXRpb24gw6AgdW4gdXNhZ2UgcGFydGljdWxpZXIsIGRlIHRpdHJlIG91IGRlIG5vbi1jb250cmVmYcOnb24uXCIsXG4gICAgICAgIFwiTGltaXRhdGlvbiBkZSBSZXNwb25zYWJpbGl0w6kuIERhbnMgbGEgbWVzdXJlIG1heGltYWxlIHBlcm1pc2UgcGFyIGxhIGxvaSBkdSBNYXNzYWNodXNldHRzIGV0IGF1dHJlcyBsb2lzIGFwcGxpY2FibGVzLCBlbiBhdWN1biBjYXMgS1lOIExMQywgc2VzIGRpcmlnZWFudHMsIGFkbWluaXN0cmF0ZXVycywgZW1wbG95w6lzLCBhZ2VudHMgb3UgYWZmaWxpw6lzIG5lIHNlcm9udCByZXNwb25zYWJsZXMgZGUgdG91dCBkb21tYWdlIGluZGlyZWN0LCBhY2Nlc3NvaXJlLCBzcMOpY2lhbCwgY29uc8OpY3V0aWYgb3UgcHVuaXRpZiwgeSBjb21wcmlzIG1haXMgc2FucyBzJ3kgbGltaXRlciBsYSBwZXJ0ZSBkZSBwcm9maXRzLCBkb25uw6llcywgdXRpbGlzYXRpb24sIGNsaWVudMOobGUgb3UgYXV0cmVzIHBlcnRlcyBpbW1hdMOpcmllbGxlcywgZMOpY291bGFudCBkZSBvdSBsacOpcyDDoCB2b3RyZSB1dGlsaXNhdGlvbiBvdSBpbmNhcGFjaXTDqSBkJ3V0aWxpc2VyIGxlIFNpdGUsIG3Dqm1lIHNpIG5vdXMgYXZvbnMgw6l0w6kgaW5mb3Jtw6lzIGRlIGxhIHBvc3NpYmlsaXTDqSBkZSB0ZWxzIGRvbW1hZ2VzLlwiLFxuICAgICAgICBcIk5vdHJlIHJlc3BvbnNhYmlsaXTDqSB0b3RhbGUgZW52ZXJzIHZvdXMgcG91ciB0b3V0ZSByw6ljbGFtYXRpb24gZMOpY291bGFudCBkZSBvdSBsacOpZSDDoCB2b3RyZSB1dGlsaXNhdGlvbiBkdSBTaXRlIG5lIGTDqXBhc3NlcmEgcGFzIGxlIHBsdXMgw6lsZXbDqSBkZSAoYSkgbGUgbW9udGFudCBxdWUgdm91cyBub3VzIGF2ZXogcGF5w6kgKGxlIGNhcyDDqWNow6lhbnQpIGF1IGNvdXJzIGRlcyBkb3V6ZSAoMTIpIG1vaXMgcHLDqWPDqWRhbnQgbGEgcsOpY2xhbWF0aW9uLCBvdSAoYikgY2VudCBkb2xsYXJzIGFtw6lyaWNhaW5zICgxMDAsMDAgJCkuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjEyLiBJbmRlbW5pc2F0aW9uXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiVm91cyBhY2NlcHRleiBkZSBkw6lmZW5kcmUsIGluZGVtbmlzZXIgZXQgZMOpZ2FnZXIgZGUgdG91dGUgcmVzcG9uc2FiaWxpdMOpIEtZTiBMTEMsIHNlcyBkaXJpZ2VhbnRzLCBhZG1pbmlzdHJhdGV1cnMsIGVtcGxvecOpcywgYWdlbnRzLCBjb25jw6lkYW50cyBkZSBsaWNlbmNlIGV0IHByZXN0YXRhaXJlcyBkZSBzZXJ2aWNlcyBjb250cmUgdG91dGUgcsOpY2xhbWF0aW9uLCByZXNwb25zYWJpbGl0w6ksIGRvbW1hZ2UsIGp1Z2VtZW50LCBwZXJ0ZSwgY2/Du3QsIGTDqXBlbnNlIG91IGZyYWlzICh5IGNvbXByaXMgbGVzIGhvbm9yYWlyZXMgZCdhdm9jYXQgcmFpc29ubmFibGVzKSBkw6ljb3VsYW50IGRlIG91IGxpw6lzIMOgIChhKSB2b3RyZSB1dGlsaXNhdGlvbiBkdSBTaXRlLCAoYikgdm90cmUgdmlvbGF0aW9uIGRlIGNlcyBDb25kaXRpb25zLCAoYykgdm90cmUgdmlvbGF0aW9uIGRlIHRvdXQgZHJvaXQgZGUgdGllcnMsIHkgY29tcHJpcyBsZXMgZHJvaXRzIGRlIHByb3ByacOpdMOpIGludGVsbGVjdHVlbGxlLCBkZSBjb25maWRlbnRpYWxpdMOpIG91IGRlIHB1YmxpY2l0w6ksIG91IChkKSB0b3V0IENvbnRlbnUgVXRpbGlzYXRldXIgcXVlIHZvdXMgc291bWV0dG
461V6IGF1IFNpdGUuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjEzLiBEcm9pdCBBcHBsaWNhYmxlIGV0IFLDqXNvbHV0aW9uIGRlcyBMaXRpZ2VzXCIsXG4gICAgICBwYXJhZ3JhcGhzOiBbXG4gICAgICAgIFwiQ2VzIENvbmRpdGlvbnMgc2Vyb250IHLDqWdpZXMgZXQgaW50ZXJwcsOpdMOpZXMgY29uZm9ybcOpbWVudCBhdXggbG9pcyBkdSBDb21tb253ZWFsdGggZHUgTWFzc2FjaHVzZXR0cywgVVNBLCBzYW5zIMOpZ2FyZCDDoCBzZXMgZGlzcG9zaXRpb25zIHJlbGF0aXZlcyBhdXggY29uZmxpdHMgZGUgbG9pcy5cIixcbiAgICAgICAgXCJUb3V0IGxpdGlnZSwgY29udHJvdmVyc2Ugb3UgcsOpY2xhbWF0aW9uIGTDqWNvdWxhbnQgZGUgb3UgbGnDqSDDoCBjZXMgQ29uZGl0aW9ucyBvdSDDoCB2b3RyZSB1dGlsaXNhdGlvbiBkdSBTaXRlIHNlcmEgcsOpc29sdSBwYXIgYXJiaXRyYWdlIGNvbnRyYWlnbmFudCBhZG1pbmlzdHLDqSBwYXIgbCdBbWVyaWNhbiBBcmJpdHJhdGlvbiBBc3NvY2lhdGlvbiBjb25mb3Jtw6ltZW50IMOgIHNlcyBSw6hnbGVzIGQnQXJiaXRyYWdlIGRlcyBDb25zb21tYXRldXJzLCBsJ2FyYml0cmFnZSBheWFudCBsaWV1IGF1IE1hc3NhY2h1c2V0dHMuIFZvdXMgYWNjZXB0ZXogZGUgcmVub25jZXIgw6AgdG91dCBkcm9pdCDDoCB1biBwcm9jw6hzIGRldmFudCBqdXJ5IG91IMOgIHBhcnRpY2lwZXIgw6AgdW5lIGFjdGlvbiBjb2xsZWN0aXZlLlwiLFxuICAgICAgICBcIlBvdXIgbGVzIHLDqWNsYW1hdGlvbnMgYWRtaXNzaWJsZXMgZGV2YW50IGxlIHRyaWJ1bmFsIGRlcyBwZXRpdGVzIGNyw6lhbmNlcyBkZSB2b3RyZSBqdXJpZGljdGlvbiwgdm91cyBwb3V2ZXogY2hvaXNpciBkZSByw6lzb3VkcmUgbGUgbGl0aWdlIGRldmFudCBsZSB0cmlidW5hbCBkZXMgcGV0aXRlcyBjcsOpYW5jZXMgYXUgbGlldSBkZSBsJ2FyYml0cmFnZS5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTQuIE1vZGlmaWNhdGlvbnMgZGVzIENvbmRpdGlvbnNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJOb3VzIG5vdXMgcsOpc2Vydm9ucyBsZSBkcm9pdCBkZSBtb2RpZmllciBjZXMgQ29uZGl0aW9ucyDDoCB0b3V0IG1vbWVudC4gTGVzIG1vZGlmaWNhdGlvbnMgaW1wb3J0YW50ZXMgc2Vyb250IHB1Ymxpw6llcyBzdXIgY2V0dGUgcGFnZSBhdmVjIHVuZSDCqyBEYXRlIGQnZW50csOpZSBlbiB2aWd1ZXVyIMK7IG1pc2Ugw6Agam91ci4gVm90cmUgdXRpbGlzYXRpb24gY29udGludWUgZHUgU2l0ZSBhcHLDqHMgdG91dGUgbW9kaWZpY2F0aW9uIGNvbnN0aXR1ZSB2b3RyZSBhY2NlcHRhdGlvbiBkZXMgQ29uZGl0aW9ucyBtaXNlcyDDoCBqb3VyLiBOb3VzIHZvdXMgZW5jb3VyYWdlb25zIMOgIGNvbnN1bHRlciBww6lyaW9kaXF1ZW1lbnQgY2V0dGUgcGFnZSBwb3VyIGxlcyBjaGFuZ2VtZW50cy5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTUuIFLDqXNpbGlhdGlvblwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIk5vdXMgcG91dm9ucyBzdXNwZW5kcmUgb3UgcsOpc2lsaWVyIHZvdHJlIGFjY8OocyBhdSBTaXRlIMOgIHRvdXQgbW9tZW50LCBhdmVjIG91IHNhbnMgbW90aWYgbmkgcHLDqWF2aXMsIHkgY29tcHJpcyBlbiBjYXMgZGUgdmlvbGF0aW9uIGRlIGNlcyBDb25kaXRpb25zLiBUb3V0ZXMgbGVzIGRpc3Bvc2l0aW9ucyBkZSBjZXMgQ29uZGl0aW9ucyBxdWksIGRlIHBhciBsZXVyIG5hdHVyZSwgZGV2cmFpZW50IHN1cnZpdnJlIMOgIGxhIHLDqXNpbGlhdGlvbiBzdXJ2aXZyb250LCB5IGNvbXByaXMgbGVzIGRpc3Bvc2l0aW9ucyBkZSBwcm9wcmnDqXTDqSwgbGVzIGV4Y2x1c2lvbnMgZGUgZ2FyYW50aWUsIGxlcyBvYmxpZ2F0aW9ucyBkJ2luZGVtbmlzYXRpb24gZXQgbGVzIGxpbWl0YXRpb25zIGRlIHJlc3BvbnNhYmlsaXTDqS5cIlxuICAgICAgXVxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiMTYuIERpdmlzaWJpbGl0w6kgZXQgSW50w6lncmFsaXTDqSBkZSBsJ0FjY29yZFwiLFxuICAgICAgcGFyYWdyYXBoczogW1xuICAgICAgICBcIlNpIHVuZSBkaXNwb3NpdGlvbiBkZSBjZXMgQ29uZGl0aW9ucyBlc3QganVnw6llIGludmFsaWRlIG91IGluYXBwbGljYWJsZSwgbGVzIGRpc3Bvc2l0aW9ucyByZXN0YW50ZXMgcmVzdGVyb250IHBsZWluZW1lbnQgZW4gdmlndWV1ci4gQ2VzIENvbmRpdGlvbnMsIGFpbnNpIHF1ZSBub3RyZSBQb2xpdGlxdWUgZGUgQ29uZmlkZW50aWFsaXTDqSwgY29uc3RpdHVlbnQgbCdpbnTDqWdyYWxpdMOpIGRlIGwnYWNjb3JkIGVudHJlIHZvdXMgZXQgS1lOIGNvbmNlcm5hbnQgdm90cmUgdXRpbGlzYXRpb24gZHUgU2l0ZSBldCByZW1wbGFjZW50IHRvdXQgYWNjb3JkIGFudMOpcmlldXIuXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIjE3LiBDb29yZG9ubsOpZXNcIixcbiAgICAgIHBhcmFncmFwaHM6IFtcbiAgICAgICAgXCJTaSB2b3VzIGF2ZXogZGVzIHF1ZXN0aW9ucyBjb25jZXJuYW50IGNlcyBDb25kaXRpb25zLCB2ZXVpbGxleiBub3VzIGNvbnRhY3RlciDDoCA6IGhlbGxvQGt5bi1jYXJlLmNvbSBvdSBLWU4gTExDLCBDb21tb253ZWFsdGggZHUgTWFzc2FjaHVzZXR0cywgVVNBLlwiXG4gICAgICBdXG4gICAgfVxuICBdXG59O1xuXG5jb25zdCBUZXJtc1BhZ2UgPSAoKSA9PiB7XG4gIGNvbnN0IHsgbGFuZ3VhZ2UgfSA9IHVzZUxhbmd1YWdlKCk7XG4gIGNvbnN0IGNvbnRlbnQgPSBsYW5ndWFnZSA9PT0gJ2ZyJyA/IHRlcm1zQ29udGVudEZSIDogdGVybXNDb250ZW50RU47XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IDAsIGJlaGF2aW9yOiAnYXV0bycgfSk7XG4gICAgZG9jdW1lbnQudGl0bGUgPSBsYW5ndWFnZSA9PT0gJ2ZyJyBcbiAgICAgID8gXCJDb25kaXRpb25zIGQnVXRpbGlzYXRpb24gfCBLWU4gU29pbnNcIiBcbiAgICAgIDogXCJUZXJtcyBvZiBVc2UgfCBLWU4gU2tpbmNhcmVcIjtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQudGl0bGUgPSBsYW5ndWFnZSA9PT0gJ2ZyJyBcbiAgICAgICAgPyBcIktZTiAtIFNvaW5zIER1cmFibGVzIHBvdXIgUGVhdXggUmljaGVzIGVuIE3DqWxhbmluZVwiIFxuICAgICAgICA6IFwiS1lOIC0gU3VzdGFpbmFibGUgU2tpbmNhcmUgZm9yIE1lbGFuaW4tUmljaCBTa2luXCI7XG4gICAgfTtcbiAgfSwgW2xhbmd1YWdlXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHN0eWxlPXt7IGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLCBtaW5IZWlnaHQ6ICcxMDB2aCcgfX0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1heC13LTN4bCBteC1hdXRvIHB4LTYgcHQtMjAgcGItMjQgbWQ6cHQtMjQgbWQ6cGItMzJcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LWNlbnRlciBtYi0xMlwiPlxuICAgICAgICAgIDxoMSBcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cInRleHQtMnhsIG1kOnRleHQtM3hsIG1iLTRcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmXCIsXG4gICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IDQwMCxcbiAgICAgICAgICAgICAgY29sb3I6ICcjMUExQTFBJyxcbiAgICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJzNweCdcbiAgICAgICAgICAgI
461H19XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2NvbnRlbnQucGFnZVRpdGxlfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgXG4gICAgICAgICAgPHAgXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LXhzIHVwcGVyY2FzZSB0cmFja2luZy13aWRlclwiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWZcIixcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogMzAwLFxuICAgICAgICAgICAgICBjb2xvcjogJyM5OTk5OTknLFxuICAgICAgICAgICAgICBsZXR0ZXJTcGFjaW5nOiAnM3B4J1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7Y29udGVudC5lZmZlY3RpdmVEYXRlfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTEyXCI+XG4gICAgICAgICAge2NvbnRlbnQuc2VjdGlvbnMubWFwKChzZWN0aW9uLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPHNlY3Rpb24ga2V5PXtpbmRleH0+XG4gICAgICAgICAgICAgIDxoMiBcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LXNtIHVwcGVyY2FzZSB0cmFja2luZy13aWRlciBtYi00XCJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmXCIsXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiA0MDAsXG4gICAgICAgICAgICAgICAgICBjb2xvcjogJyMxQTFBMUEnLFxuICAgICAgICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJzNweCdcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3NlY3Rpb24udGl0bGV9XG4gICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgIHtzZWN0aW9uLnBhcmFncmFwaHMubWFwKChwYXJhZ3JhcGgsIHBJbmRleCkgPT4gKFxuICAgICAgICAgICAgICAgIDxwIFxuICAgICAgICAgICAgICAgICAga2V5PXtwSW5kZXh9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LXNtIGxlYWRpbmctcmVsYXhlZCBtYi00XCJcbiAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZlwiLFxuICAgICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiAzMDAsXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAnIzY2NjY2NicsXG4gICAgICAgICAgICAgICAgICAgIGxpbmVIZWlnaHQ6IDEuOFxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cGFyYWdyYXBofVxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgIHtzZWN0aW9uLmxpc3RJdGVtcyAmJiAoXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImxpc3QtZGlzYyBwbC02IHNwYWNlLXktMlwiPlxuICAgICAgICAgICAgICAgICAge3NlY3Rpb24ubGlzdEl0ZW1zLm1hcCgoaXRlbSwgbGlJbmRleCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICA8bGkgXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtsaUluZGV4fVxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInRleHQtc21cIlxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IDMwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAnIzY2NjY2NicsXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAxLjhcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge2l0ZW19XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgVGVybXNQYWdlO1xuIl0sImZpbGUiOiIvaG9tZS9ydW5uZXIvd29ya3NwYWNlL2NsaWVudC9zcmMvcGFnZXMvVGVybXNQYWdlLnRzeCJ9

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.