{"id":1373,"date":"2026-04-13T09:06:27","date_gmt":"2026-04-13T07:06:27","guid":{"rendered":"https:\/\/www.webpar.it\/creazione-siti-web\/?page_id=1373"},"modified":"2026-04-13T09:45:29","modified_gmt":"2026-04-13T07:45:29","slug":"24-anni-di-webproject-a-r-timeline-2002-2026","status":"publish","type":"page","link":"https:\/\/www.webpar.it\/creazione-siti-web\/24-anni-di-webproject-a-r-timeline-2002-2026\/","title":{"rendered":"24 Anni di Expertise Web | La Storia di Webproject A.R."},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"it\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>24 Anni di Webproject A.R. | Timeline 2002-2026<\/title>\n    <meta name=\"description\" content=\"La storia di Webproject A.R.: 24 anni di evoluzione web design, SEO, fotografia e innovazione digitale a Capua.\">\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n \n        body {\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;\n            background: linear-gradient(135deg, #f5f7fa 0%, #f0f2f5 100%);\n            padding: 40px 20px;\n            color: #333;\n            line-height: 1.6;\n        }\n \n        .timeline-container {\n            max-width: 1000px;\n            margin: 0 auto;\n        }\n\n        \/* STILE PER H2 INSERITI *\/\n        .timeline-container h2 {\n            color: #1a2a4a;\n            font-size: 1.8rem;\n            font-weight: bold;\n            margin: 50px 0 20px 0;\n            padding-bottom: 15px;\n            border-bottom: 3px solid #C8A84B;\n            text-align: center;\n        }\n\n        .cta-section h2 {\n           color: #d9534f !important;\n           border-bottom: none;\n        }\n\n        .timeline-header {\n            text-align: center;\n            margin-bottom: 80px;\n            animation: fadeInDown 0.8s ease-out;\n        }\n \n        .timeline-header h1 {\n            font-size: clamp(2rem, 5vw, 3.5rem);\n            color: #1a2a4a;\n            margin-bottom: 15px;\n            font-weight: 700;\n            letter-spacing: -0.5px;\n        }\n \n        .timeline-header .subtitle {\n            font-size: 1.2rem;\n            color: #666;\n            margin-bottom: 10px;\n        }\n \n        .timeline-header .tagline {\n            font-size: 1rem;\n            color: #999;\n            font-style: italic;\n            margin-top: 20px;\n        }\n \n        .timeline-header .years-badge {\n            display: inline-block;\n            background: #C8A84B;\n            color: white;\n            padding: 12px 28px;\n            border-radius: 50px;\n            font-weight: 700;\n            font-size: 1.3rem;\n            margin-top: 20px;\n            box-shadow: 0 4px 15px rgba(200, 168, 75, 0.3);\n        }\n \n        \/* Timeline Main Structure *\/\n        .timeline {\n            position: relative;\n            padding: 20px 0;\n        }\n \n        .timeline::before {\n            content: '';\n            position: absolute;\n            left: 50%;\n            transform: translateX(-50%);\n            width: 4px;\n            height: 100%;\n            background: linear-gradient(180deg, #C8A84B 0%, #1a2a4a 100%);\n            border-radius: 2px;\n        }\n \n        \/* Timeline Item *\/\n        .timeline-item {\n            margin-bottom: 50px;\n            animation: fadeInUp 0.8s ease-out both;\n        }\n \n        .timeline-item:nth-child(1) { animation-delay: 0.1s; }\n        .timeline-item:nth-child(2) { animation-delay: 0.2s; }\n        .timeline-item:nth-child(3) { animation-delay: 0.3s; }\n        .timeline-item:nth-child(4) { animation-delay: 0.4s; }\n        .timeline-item:nth-child(5) { animation-delay: 0.5s; }\n        .timeline-item:nth-child(6) { animation-delay: 0.6s; }\n        .timeline-item:nth-child(7) { animation-delay: 0.7s; }\n        .timeline-item:nth-child(8) { animation-delay: 0.8s; }\n \n        .timeline-item:nth-child(odd) .content {\n            margin-left: 0;\n            margin-right: auto;\n            width: calc(50% - 40px);\n            text-align: right;\n            padding-right: 40px;\n        }\n \n        .timeline-item:nth-child(even) .content {\n            margin-left: auto;\n            margin-right: 0;\n            width: calc(50% - 40px);\n            text-align: left;\n            padding-left: 40px;\n        }\n \n        .timeline-dot {\n            position: absolute;\n            left: 50%;\n            transform: translateX(-50%);\n            width: 20px;\n            height: 20px;\n            background: white;\n            border: 4px solid #C8A84B;\n            border-radius: 50%;\n            top: 30px;\n            z-index: 10;\n            transition: all 0.3s ease;\n            box-shadow: 0 0 0 8px rgba(200, 168, 75, 0.1);\n        }\n \n        .timeline-item:hover .timeline-dot {\n            width: 28px;\n            height: 28px;\n            top: 26px;\n            box-shadow: 0 0 0 12px rgba(200, 168, 75, 0.2);\n            border-color: #1a2a4a;\n        }\n \n        .content {\n            background: white;\n            padding: 30px;\n            border-radius: 8px;\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n            border-left: 4px solid #C8A84B;\n            transition: all 0.3s ease;\n            cursor: default;\n        }\n \n        .timeline-item:hover .content {\n            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);\n            transform: translateY(-5px);\n            border-left-color: #1a2a4a;\n        }\n \n        .year {\n            font-size: 1.8rem;\n            font-weight: 700;\n            color: #C8A84B;\n            margin-bottom: 8px;\n            font-family: 'Courier New', monospace;\n        }\n \n        .title {\n            font-size: 1.3rem;\n            font-weight: 600;\n            color: #1a2a4a;\n            margin-bottom: 12px;\n        }\n \n        .description {\n            color: #666;\n            font-size: 0.95rem;\n            line-height: 1.7;\n        }\n \n        .tags {\n            display: flex;\n            flex-wrap: wrap;\n            gap: 8px;\n            margin-top: 15px;\n        }\n \n        .tag {\n            display: inline-block;\n            background: rgba(200, 168, 75, 0.1);\n            color: #1a2a4a;\n            padding: 4px 12px;\n            border-radius: 20px;\n            font-size: 0.8rem;\n            font-weight: 500;\n            border: 1px solid rgba(200, 168, 75, 0.3);\n        }\n \n        .image-placeholder {\n            width: 100%;\n            height: 200px;\n            background: linear-gradient(135deg, rgba(200, 168, 75, 0.1), rgba(26, 42, 74, 0.05));\n            border-radius: 6px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: #999;\n            font-size: 0.9rem;\n            margin: 15px 0;\n            border: 2px dashed rgba(200, 168, 75, 0.3);\n        }\n \n        \/* Responsive Design *\/\n        @media (max-width: 768px) {\n            .timeline::before {\n                left: 0;\n            }\n \n            .timeline-item:nth-child(odd) .content,\n            .timeline-item:nth-child(even) .content {\n                width: 100%;\n                text-align: left;\n                padding-left: 50px;\n                margin-left: 0;\n                margin-right: 0;\n            }\n \n            .timeline-dot {\n                left: 0;\n            }\n \n            .timeline-header h1 {\n                font-size: 2rem;\n            }\n \n            .timeline-header .subtitle {\n                font-size: 1rem;\n            }\n\n            .timeline-container h2 {\n                font-size: 1.4rem;\n                margin: 40px 0 15px 0;\n            }\n        }\n \n        @media (max-width: 480px) {\n            body {\n                padding: 20px 10px;\n            }\n \n            .timeline-item {\n                margin-bottom: 40px;\n            }\n \n            .content {\n                padding: 20px;\n                border-left: 3px solid #C8A84B;\n            }\n \n            .year {\n                font-size: 1.5rem;\n            }\n \n            .title {\n                font-size: 1.1rem;\n            }\n \n            .image-placeholder {\n                height: 150px;\n            }\n\n            .timeline-container h2 {\n                font-size: 1.2rem;\n                margin: 30px 0 12px 0;\n            }\n        }\n \n        \/* Animations *\/\n        @keyframes fadeInDown {\n            from {\n                opacity: 0;\n                transform: translateY(-30px);\n            }\n            to {\n                opacity: 1;\n                transform: translateY(0);\n            }\n        }\n \n        @keyframes fadeInUp {\n            from {\n                opacity: 0;\n                transform: translateY(30px);\n            }\n            to {\n                opacity: 1;\n                transform: translateY(0);\n            }\n        }\n \n        .stats-grid {\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n            gap: 20px;\n            margin-top: 60px;\n            margin-bottom: 60px;\n        }\n \n        .stat-card {\n            background: white;\n            padding: 30px;\n            border-radius: 8px;\n            text-align: center;\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n            border-top: 3px solid #C8A84B;\n        }\n \n        .stat-number {\n            font-size: 2.5rem;\n            font-weight: 700;\n            color: #C8A84B;\n            margin-bottom: 8px;\n        }\n \n        .stat-label {\n            color: #1a2a4a;\n            font-weight: 600;\n            font-size: 0.95rem;\n        }\n \n        .cta-section {\n            text-align: center;\n            margin-top: 80px;\n            padding: 50px 30px;\n            background: linear-gradient(135deg, #1a2a4a 0%, #2d3f5a 100%);\n            border-radius: 12px;\n            color: white;\n        }\n \n        .cta-section h2 {\n            font-size: 2rem;\n            margin-bottom: 15px;\n            font-weight: 700;\n        }\n \n        .cta-section p {\n            font-size: 1.1rem;\n            margin-bottom: 25px;\n            opacity: 0.95;\n        }\n \n        .cta-button {\n            display: inline-block;\n            background: #C8A84B;\n            color: #1a2a4a;\n            padding: 14px 40px;\n            border-radius: 50px;\n            text-decoration: none;\n            font-weight: 600;\n            font-size: 1rem;\n            transition: all 0.3s ease;\n            border: 2px solid #C8A84B;\n        }\n \n        .cta-button:hover {\n            background: transparent;\n            color: #C8A84B;\n            transform: translateY(-2px);\n            box-shadow: 0 8px 20px rgba(200, 168, 75, 0.3);\n        }\n    <\/style>\n<\/head>\n<body>\n\n    <div class=\"timeline-container\">\n        <!-- Header -->\n        <div class=\"timeline-header\">\n            <h1>24 Anni di Webproject A.R.<\/h1>\n            <p class=\"subtitle\">Dall&#8217;era dei siti HTML statici all&#8217;intelligenza artificiale<\/p>\n            <span class=\"years-badge\">2002 \u2192 2026<\/span>\n            <p class=\"tagline\">Oltre 500 progetti. 200+ clienti attivi. Una sola missione: il vostro successo digitale.<\/p>\n        <\/div>\n \n        <!-- Stats -->\n        <div class=\"stats-grid\">\n            <div class=\"stat-card\">\n                <div class=\"stat-number\">24+<\/div>\n                <div class=\"stat-label\">Anni di Esperienza<\/div>\n            <\/div>\n            <div class=\"stat-card\">\n                <div class=\"stat-number\">500+<\/div>\n                <div class=\"stat-label\">Progetti Realizzati<\/div>\n            <\/div>\n            <div class=\"stat-card\">\n                <div class=\"stat-number\">200+<\/div>\n                <div class=\"stat-label\">Clienti Attivi<\/div>\n            <\/div>\n            <div class=\"stat-card\">\n                <div class=\"stat-number\">100%<\/div>\n                <div class=\"stat-label\">Clienti Soddisfatti<\/div>\n            <\/div>\n        <\/div>\n\n        <!-- H2 #1 -->\n        <h2>Web Design Professionale a Capua dal 2002<\/h2>\n \n        <!-- Timeline -->\n        <div class=\"timeline\">\n            <!-- 2002 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2002<\/div>\n                    <div class=\"title\">La Fondazione<\/div>\n                    <div class=\"description\">\n                        Aldo Romana fonda Webproject A.R. a Capua (Caserta). Era HTML puro, Dreamweaver, e visione chiara: aiutare le PMI locali a scoprire il web. Il primo cliente? Una bottega del centro storico che oggi ancora genera lead dal sito del 2004.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">HTML 4.0<\/span>\n                        <span class=\"tag\">Web Design<\/span>\n                        <span class=\"tag\">SME Locali<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n \n            <!-- 2005 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2005-2008<\/div>\n                    <div class=\"title\">L&#8217;Era CSS e dei Blog<\/div>\n                    <div class=\"description\">\n                        WordPress rivoluziona il panorama. Webproject passa da HTML a template CMS. Primi esperimenti di SEO: keyword research manuale, link building locale. Cliente storico di oreficeria decide di seguirci per 18 anni consecutivi.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">WordPress<\/span>\n                        <span class=\"tag\">SEO Base<\/span>\n                        <span class=\"tag\">Blog Publishing<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n \n            <!-- 2009 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2009-2012<\/div>\n                    <div class=\"title\">Scoperta della Fotografia Aziendale<\/div>\n                    <div class=\"description\">\n                        Aldo acquista la prima DSLR per &#8220;fotografare i propri siti&#8221; e si accorge che la qualit\u00e0 visiva eleva il progetto web del 300%. Inizia a offrire pacchetti integrate: web + foto proprietaria. I siti iniziano ad avere <em>identit\u00e0<\/em>.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">Fotografia<\/span>\n                        <span class=\"tag\">Web + Visual<\/span>\n                        <span class=\"tag\">Branding<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- H2 #2 -->\n        <\/div>\n\n        <h2>SEO e Fotografia Aziendale per PME Caserta<\/h2>\n\n        <div class=\"timeline\">\n \n            <!-- 2013 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2013-2016<\/div>\n                    <div class=\"title\">L&#8217;Era Mobile e E-commerce<\/div>\n                    <div class=\"description\">\n                        Mobile-first non \u00e8 opzione, \u00e8 obbligo. Fonda compramisubito.com: e-commerce dropshipping su PrestaShop. Lezione imparata: automatizzare la catena di approvvigionamento. QNAP NAS di casa gestisce 2000+ SKU. Prima esperienza con programmatic SEO.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">Mobile Design<\/span>\n                        <span class=\"tag\">PrestaShop<\/span>\n                        <span class=\"tag\">Automation<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n \n            <!-- 2017 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2017-2019<\/div>\n                    <div class=\"title\">Specializzazione: Fotografia Professionale<\/div>\n                    <div class=\"description\">\n                        La fotografia di Aldo inizia a raccogliere riconoscimenti sui profili Instagram (@aldoromana_photo raggiunge migliaia di follower). Fotografa teatrali, architetture, corporate events. Integra la fotografia come servizio <strong>standalone<\/strong>: la professionalit\u00e0 conta pi\u00f9 del volume.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">Fotografia Event<\/span>\n                        <span class=\"tag\">Architettura<\/span>\n                        <span class=\"tag\">Personal Brand<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- H2 #3 -->\n        <\/div>\n\n        <h2>Assistenza Informatica e Riparazioni PC nel Sud Italia<\/h2>\n\n        <div class=\"timeline\">\n \n            <!-- 2020 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2020-2021<\/div>\n                    <div class=\"title\">La Pandemia &amp; Core Web Vitals<\/div>\n                    <div class=\"description\">\n                        Mentre il mondo si ferma, Webproject aggiorna tutti gli hosting e infrastrutture. Google annuncia Core Web Vitals. Aldo diventa esperto di performance: ogni sito scende sotto i 2 secondi di caricamento. Cliente di fotografia scopre che velocit\u00e0 = conversioni.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">Performance<\/span>\n                        <span class=\"tag\">Page Speed<\/span>\n                        <span class=\"tag\">Core Web Vitals<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n \n            <!-- 2022 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2022-2023<\/div>\n                    <div class=\"title\">L&#8217;Era dell&#8217;AI &amp; Automazione Avanzata<\/div>\n                    <div class=\"description\">\n                        ChatGPT cambia tutto. Webproject sperimenta con AI per content generation, ma mantiene controllo editoriale umano. Inizia costruzione di PWA per clienti: app-like experience senza App Store. Ripara i primi danni da &#8220;AI-generated content low quality&#8221; di competitor.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">AI &amp; ML<\/span>\n                        <span class=\"tag\">PWA<\/span>\n                        <span class=\"tag\">Automation<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- H2 #4 -->\n        <\/div>\n\n        <h2>Come 24 Anni di Esperienza Ti Aiutano a Crescere Online<\/h2>\n\n        <div class=\"timeline\">\n \n            <!-- 2024-2026 -->\n            <div class=\"timeline-item\">\n                <div class=\"timeline-dot\"><\/div>\n                <div class=\"content\">\n                    <div class=\"year\">2024-2026<\/div>\n                    <div class=\"title\">Integrazione Totale: Web + Foto + AI + Repair<\/div>\n                    <div class=\"description\">\n                        Webproject \u00e8 oggi una consultoria <strong>360\u00b0<\/strong>: aiuta PME non solo a vendere online, ma a costruire <em>identit\u00e0 visiva credibile<\/em>. Repair shop proprietario diagnostica problemi hardware con AI. Blog su compramisubito genera 2000+ sessioni\/mese. LinkedIn raggiunge 1500+ follower. L&#8217;esperienza di 24 anni diventa il vostro vantaggio competitivo.\n                    <\/div>\n                    <div class=\"tags\">\n                        <span class=\"tag\">Full-Stack Consulting<\/span>\n                        <span class=\"tag\">SEO &amp; AI<\/span>\n                        <span class=\"tag\">Visual + Tech<\/span>\n                        <span class=\"tag\">Thought Leadership<\/span>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n \n        <!-- CTA Section -->\n        <div class=\"cta-section\">\n            <h2>Il Vostro Prossimo Capitolo<\/h2>\n            <p>24 anni di esperienza. Un team che conosce i vostri problemi prima che li conosciate voi.<\/p>\n            <a href=\"\/creazione-siti-web\/#at-contact\" class=\"cta-button\">Iniziamo Insieme<\/a>\n        <\/div>\n    <\/div>\n \n    <!-- JSON-LD Schema -->\n    <script type=\"application\/ld+json\">\n    {\n        \"@context\": \"https:\/\/schema.org\",\n        \"@type\": \"Organization\",\n        \"name\": \"Webproject A.R. di Aldo Romana\",\n        \"url\": \"https:\/\/www.webpar.it\",\n        \"logo\": \"https:\/\/www.webpar.it\/logo.png\",\n        \"description\": \"24 anni di web design, SEO, fotografia professionale e consulenza digitale per PME nel Sud Italia\",\n        \"foundingDate\": \"2002\",\n        \"founder\": {\n            \"@type\": \"Person\",\n            \"name\": \"Aldo Romana\",\n            \"jobTitle\": \"Founder & Digital Strategist\",\n            \"url\": \"https:\/\/www.linkedin.com\/in\/aldo-romana-40786291?utm_source=share_via&utm_content=profile&utm_medium=member_ios\",\n            \"image\": \"https:\/\/webpar.it\/aldo-romana.jpg\"\n        },\n        \"location\": {\n            \"@type\": \"Place\",\n            \"name\": \"Capua\",\n            \"address\": {\n                \"@type\": \"PostalAddress\",\n                \"addressLocality\": \"Capua\",\n                \"addressRegion\": \"CE\",\n                \"addressCountry\": \"IT\"\n            }\n        },\n        \"sameAs\": [\n            \"https:\/\/www.linkedin.com\/in\/aldo-romana-40786291?utm_source=share_via&utm_content=profile&utm_medium=member_ios\",\n            \"https:\/\/instagram.com\/webprojectar\",\n            \"https:\/\/instagram.com\/aldoromana_photo\"\n        ],\n        \"service\": [\n            {\n                \"@type\": \"Service\",\n                \"name\": \"Web Design & Development\",\n                \"description\": \"Siti web professionali per PME\"\n            },\n            {\n                \"@type\": \"Service\",\n                \"name\": \"SEO Optimization\",\n                \"description\": \"Posizionamento nei motori di ricerca\"\n            },\n            {\n                \"@type\": \"Service\",\n                \"name\": \"Fotografia Aziendale\",\n                \"description\": \"Fotografia professionale per branding\"\n            },\n            {\n                \"@type\": \"Service\",\n                \"name\": \"E-commerce Solutions\",\n                \"description\": \"Vendita online su PrestaShop\"\n            }\n        ],\n        \"aggregateRating\": {\n            \"@type\": \"AggregateRating\",\n            \"ratingValue\": \"5\",\n            \"bestRating\": \"5\",\n            \"worstRating\": \"1\",\n            \"ratingCount\": \"200\",\n            \"reviewCount\": \"200\"\n        },\n        \"knowsAbout\": [\n            \"Web Design\",\n            \"SEO\",\n            \"WordPress\",\n            \"PrestaShop\",\n            \"Digital Marketing\",\n            \"Photography\",\n            \"E-commerce\",\n            \"AI & Automation\"\n        ]\n    }\n    <\/script>\n\n<\/body>\n<\/html>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>24 Anni di Webproject A.R. | Timeline 2002-2026 24 Anni di Webproject A.R. Dall&#8217;era dei siti HTML statici all&#8217;intelligenza artificiale 2002 \u2192 2026 Oltre 500 progetti. 200+ clienti attivi. Una sola missione: il vostro successo digitale. 24+ Anni di Esperienza 500+ Progetti Realizzati 200+ Clienti Attivi 100% Clienti Soddisfatti Web Design Professionale a Capua dal 2002 2002 La Fondazione Aldo Romana fonda Webproject A.R. a Capua (Caserta). Era HTML puro,&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"{\"document\":\"AAAH\/eflhg+jAbMBCLABoBw2jAESmLQBuBCWS5olnFWSO6IGlgK4GqQCogyyAawFjhu0AbhiIDABAw4CAQIKSgAUAQEIAEjUAYgCKNIBSp4EAQEIAEgKSqQBAQEIAEgKSrwBAQEIAEgCBQBKhgIBAQgBAEjCBJQEAQEIAQBIAgQCCgJJAI4CAQEIAQBIyAuoGjyEBtgjhiQBAQgBAEjEJAr8hAWCAqq0AbgQlkuaJZxVkjuiBo4dhg+eB44brGQsiqIFAQCQCQDgBgEB3gHChQWCAqq0AbgQlkuaJZxVkjuiBo4dhg+eB44brGSrASgDJwAEACcABACBAIQAgQCEBoEAhACBAIQAgQCEAYEAhAGBACcAKAQnACgFJwAHACgDJwAoACcAKAGHACgCJwEoACcAxADBAQQAhwAoAicBKAAnAAQAhwAoAicBKAAnAAQAhwAoAicBKAAnAKgBBACHACgCJwEoAScAxwAoAicBKAEnAKgBKACoAQQAxwAoAicBKAEnAMEAxADBAMQAxwAoAicBKAEnAKgBxMe8AaC7AXN0YXRldmVyc2lvbmRvY3VtZW50ZGF0ZWRvY3VtZW50c2x1Z2RvY3VtZW50c3RhdHVzZG9jdW1lbnR0aXRsZTI0IEFubmkgZGkgRXhwZXJ0aXNlIFdlYiB8IExhIFN0b3JpYSBkaSBXZWJwcm9qZWN0IEEuUi5kb2N1bWVudGNvbnRlbnQ8IS0tIHdwOmh0bWwgLS0+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCBsYW5nPSJpdCI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgogICAgPHRpdGxlPjI0IEFubmkgZGkgV2VicHJvamVjdCBBLlIuIHwgVGltZWxpbmUgMjAwMi0yMDI2PC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJMYSBzdG9yaWEgZGkgV2VicHJvamVjdCBBLlIuOiAyNCBhbm5pIGRpIGV2b2x1emlvbmUgd2ViIGRlc2lnbiwgU0VPLCBmb3RvZ3JhZmlhIGUgaW5ub3ZhemlvbmUgZGlnaXRhbGUgYSBDYXB1YS4iPgogICAgPHN0eWxlPgogICAgICAgICogewogICAgICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgfQogCiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCAnT3h5Z2VuJywgJ1VidW50dScsICdDYW50YXJlbGwnLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjZjBmMmY1IDEwMCUpOwogICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7CiAgICAgICAgICAgIGNvbG9yOiAjMzMzOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1jb250YWluZXIgewogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgICAgIGNvbG9yOiAjZDk1MzRmICFpbXBvcnRhbnQ7CiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5Eb3duIDAuOHMgZWFzZS1vdXQ7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciBoMSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCAzLjVyZW0pOwogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIC5zdWJ0aXRsZSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgICAgICAgICBjb2xvcjogIzY2NjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIC50YWdsaW5lIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBjb2xvcjogIzk5OTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1oZWFkZXIgLnllYXJzLWJhZGdlIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjQzhBODRCOwogICAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjhweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogCiAgICAgICAgLyogVGltZWxpbmUgTWFpbiBTdHJ1Y3R1cmUgKi8KICAgICAgICAudGltZWxpbmUgewogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7CiAgICAgICAgICAgIGNvbnRlbnQ6ICcnOwogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgICAgICAgICB3aWR0aDogNHB4OwogICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNDOEE4NEIgMCUsICMxYTJhNGEgMTAwJSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgICB9CiAKICAgICAgICAvKiBUaW1lbGluZSBJdGVtICovCiAgICAgICAgLnRpbWVsaW5lLWl0ZW0gewogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDAuOHMgZWFzZS1vdXQgYm90aDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMSkgeyBhbmltYXRpb24tZGVsYXk6IDAuMXM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMikgeyBhbmltYXRpb24tZGVsYXk6IDAuMnM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMykgeyBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNCkgeyBhbmltYXRpb24tZGVsYXk6IDAuNHM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNSkgeyBhbmltYXRpb24tZGVsYXk6IDAuNXM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNikgeyBhbmltYXRpb24tZGVsYXk6IDAuNnM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNykgeyBhbmltYXRpb24tZGVsYXk6IDAuN3M7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoOCkgeyBhbmltYXRpb24tZGVsYXk6IDAuOHM7IH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChvZGQpIC5jb250ZW50IHsKICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsKICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7CiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKSAuY29udGVudCB7CiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWRvdCB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgbGVmdDogNTAlOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOwogICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICAgIHRvcDogMzBweDsKICAgICAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDhweCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4xKTsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpob3ZlciAudGltZWxpbmUtZG90IHsKICAgICAgICAgICAgd2lkdGg6IDI4cHg7CiAgICAgICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICAgICAgdG9wOiAyNnB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxMnB4IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjIpOwogICAgICAgICAgICBib3JkZXItY29sb3I6ICMxYTJhNGE7CiAgICAgICAgfQogCiAgICAgICAgLmNvbnRlbnQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAgICAgICAgICAgcGFkZGluZzogMzBweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTsKICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06aG92ZXIgLmNvbnRlbnQgewogICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMxYTJhNGE7CiAgICAgICAgfQogCiAgICAgICAgLnllYXIgewogICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgY29sb3I6ICNDOEE4NEI7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTsKICAgICAgICB9CiAKICAgICAgICAudGl0bGUgewogICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgICAgfQogCiAgICAgICAgLmRlc2NyaXB0aW9uIHsKICAgICAgICAgICAgY29sb3I6ICM2NjY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzsKICAgICAgICB9CiAKICAgICAgICAudGFncyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7CiAgICAgICAgfQogCiAgICAgICAgLnRhZyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMDAsIDE2OCwgNzUsIDAuMSk7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBwYWRkaW5nOiA0cHggMTJweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjAwLCAxNjgsIDc1LCAwLjMpOwogICAgICAgIH0KIAogICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4xKSwgcmdiYSgyNiwgNDIsIDc0LCAwLjA1KSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgIGNvbG9yOiAjOTk5OwogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDA7CiAgICAgICAgICAgIGJvcmRlcjogMnB4IGRhc2hlZCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4zKTsKICAgICAgICB9CiAKICAgICAgICAvKiBSZXNwb25zaXZlIERlc2lnbiAqLwogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7CiAgICAgICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKG9kZCkgLmNvbnRlbnQsCiAgICAgICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKSAuY29udGVudCB7CiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7CiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1kb3QgewogICAgICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1oZWFkZXIgaDEgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWhlYWRlciAuc3VidGl0bGUgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CiAgICAgICAgICAgIGJvZHkgewogICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4OwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWl0ZW0gewogICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC5jb250ZW50IHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAueWVhciB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aXRsZSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgLyogQW5pbWF0aW9ucyAqLwogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluRG93biB7CiAgICAgICAgICAgIGZyb20gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdG8gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluVXAgewogICAgICAgICAgICBmcm9tIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdG8gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIC5zdGF0cy1ncmlkIHsKICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7CiAgICAgICAgICAgIGdhcDogMjBweDsKICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsKICAgICAgICB9CiAKICAgICAgICAuc3RhdC1jYXJkIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTsKICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgfQogCiAgICAgICAgLnN0YXQtbnVtYmVyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgICAgIGNvbG9yOiAjQzhBODRCOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogCiAgICAgICAgLnN0YXQtbGFiZWwgewogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtc2VjdGlvbiB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDsKICAgICAgICAgICAgcGFkZGluZzogNTBweCAzMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWEyYTRhIDAlLCAjMmQzZjVhIDEwMCUpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1zZWN0aW9uIGgyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtc2VjdGlvbiBwIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTU7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1idXR0b24gewogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDOEE4NEI7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDQwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7CiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjQzhBODRCOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtYnV0dG9uOmhvdmVyIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICAgIGNvbG9yOiAjQzhBODRCOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWNvbnRhaW5lciI+CiAgICAgICAgPCEtLSBIZWFkZXIgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaGVhZGVyIj4KICAgICAgICAgICAgPGgxPjI0IEFubmkgZGkgV2VicHJvamVjdCBBLlIuPC9oMT4KICAgICAgICAgICAgPHAgY2xhc3M9InN1YnRpdGxlIj5EYWxsJ2VyYSBkZWkgc2l0aSBIVE1MIHN0YXRpY2kgYWxsJ2ludGVsbGlnZW56YSBhcnRpZmljaWFsZTwvcD4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InllYXJzLWJhZGdlIj4yMDAyIOKGkiAyMDI2PC9zcGFuPgogICAgICAgICAgICA8cCBjbGFzcz0idGFnbGluZSI+T2x0cmUgNTAwIHByb2dldHRpLiAyMDArIGNsaWVudGkgYXR0aXZpLiBVbmEgc29sYSBtaXNzaW9uZTogaWwgdm9zdHJvIHN1Y2Nlc3NvIGRpZ2l0YWxlLjwvcD4KICAgICAgICA8L2Rpdj4KIAogICAgICAgIDwhLS0gU3RhdHMgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ic3RhdHMtZ3JpZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtY2FyZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LW51bWJlciI+MjQrPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5Bbm5pIGRpIEVzcGVyaWVuemE8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtY2FyZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LW51bWJlciI+NTAwKzwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1sYWJlbCI+UHJvZ2V0dGkgUmVhbGl6emF0aTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4yMDArPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5DbGllbnRpIEF0dGl2aTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4xMDAlPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5DbGllbnRpIFNvZGRpc2ZhdHRpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogCiAgICAgICAgPCEtLSBUaW1lbGluZSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CiAgICAgICAgICAgIDwhLS0gMjAwMiAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAwMjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MYSBGb25kYXppb25lPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBBbGRvIFJvbWFuYSBmb25kYSBXZWJwcm9qZWN0IEEuUi4gYSBDYXB1YSAoQ2FzZXJ0YSkuIEVyYSBIVE1MIHB1cm8sIERyZWFtd2VhdmVyLCBlIHZpc2lvbmUgY2hpYXJhOiBhaXV0YXJlIGxlIFBNSSBsb2NhbGkgYSBzY29wcmlyZSBpbCB3ZWIuIElsIHByaW1vIGNsaWVudGU\/IFVuYSBib3R0ZWdhIGRlbCBjZW50cm8gc3RvcmljbyBjaGUgb2dnaSBhbmNvcmEgZ2VuZXJhIGxlYWQgZGFsIHNpdG8gZGVsIDIwMDQuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkhUTUwgNC4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5XZWIgRGVzaWduPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TTUUgTG9jYWxpPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAwNSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAwNS0yMDA4PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkwnRXJhIENTUyBlIGRlaSBCbG9nPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBXb3JkUHJlc3Mgcml2b2x1emlvbmEgaWwgcGFub3JhbWEuIFdlYnByb2plY3QgcGFzc2EgZGEgSFRNTCBhIHRlbXBsYXRlIENNUy4gUHJpbWkgZXNwZXJpbWVudGkgZGkgU0VPOiBrZXl3b3JkIHJlc2VhcmNoIG1hbnVhbGUsIGxpbmsgYnVpbGRpbmcgbG9jYWxlLiBDbGllbnRlIHN0b3JpY28gZGkgb3JlZmljZXJpYSBkZWNpZGUgZGkgc2VndWlyY2kgcGVyIDE4IGFubmkgY29uc2VjdXRpdmkuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPldvcmRQcmVzczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+U0VPIEJhc2U8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkJsb2cgUHVibGlzaGluZzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KIAogICAgICAgICAgICA8IS0tIDIwMDkgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMDktMjAxMjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5TY29wZXJ0YSBkZWxsYSBGb3RvZ3JhZmlhIEF6aWVuZGFsZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgQWxkbyBhY3F1aXN0YSBsYSBwcmltYSBEU0xSIHBlciAiZm90b2dyYWZhcmUgaSBwcm9wcmkgc2l0aSIgZSBzaSBhY2NvcmdlIGNoZSBsYSBxdWFsaXTDoCB2aXNpdmEgZWxldmEgaWwgcHJvZ2V0dG8gd2ViIGRlbCAzMDAlLiBJbml6aWEgYSBvZmZyaXJlIHBhY2NoZXR0aSBpbnRlZ3JhdGU6IHdlYiArIGZvdG8gcHJvcHJpZXRhcmlhLiBJIHNpdGkgaW5pemlhbm8gYWQgYXZlcmUgPGVtPmlkZW50aXTDoDwvZW0+LgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Gb3RvZ3JhZmlhPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5XZWIgKyBWaXN1YWw8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkJyYW5kaW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAxMyAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAxMy0yMDE2PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkwnRXJhIE1vYmlsZSBlIEUtY29tbWVyY2U8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIE1vYmlsZS1maXJzdCBub24gw6ggb3B6aW9uZSwgw6ggb2JibGlnby4gRm9uZGEgY29tcHJhbWlzdWJpdG8uY29tOiBlLWNvbW1lcmNlIGRyb3BzaGlwcGluZyBzdSBQcmVzdGFTaG9wLiBMZXppb25lIGltcGFyYXRhOiBhdXRvbWF0aXp6YXJlIGxhIGNhdGVuYSBkaSBhcHByb3Z2aWdpb25hbWVudG8uIFFOQVAgTkFTIGRpIGNhc2EgZ2VzdGlzY2UgMjAwMCsgU0tVLiBQcmltYSBlc3BlcmllbnphIGNvbiBwcm9ncmFtbWF0aWMgU0VPLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Nb2JpbGUgRGVzaWduPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QcmVzdGFTaG9wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BdXRvbWF0aW9uPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAxNyAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAxNy0yMDE5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPlNwZWNpYWxpenphemlvbmU6IEZvdG9ncmFmaWEgUHJvZmVzc2lvbmFsZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgTGEgZm90b2dyYWZpYSBkaSBBbGRvIGluaXppYSBhIHJhY2NvZ2xpZXJlIHJpY29ub3NjaW1lbnRpIHN1aSBwcm9maWxpIEluc3RhZ3JhbSAoQGFsZG9yb21hbmFfcGhvdG8gcmFnZ2l1bmdlIG1pZ2xpYWlhIGRpIGZvbGxvd2VyKS4gRm90b2dyYWZhIHRlYXRyYWxpLCBhcmNoaXRldHR1cmUsIGNvcnBvcmF0ZSBldmVudHMuIEludGVncmEgbGEgZm90b2dyYWZpYSBjb21lIHNlcnZpemlvIDxzdHJvbmc+c3RhbmRhbG9uZTwvc3Ryb25nPjogbGEgcHJvZmVzc2lvbmFsaXTDoCBjb250YSBwacO5IGRlbCB2b2x1bWUuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkZvdG9ncmFmaWEgRXZlbnQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkFyY2hpdGV0dHVyYTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UGVyc29uYWwgQnJhbmQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDIwIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDIwLTIwMjE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIE1lbnRyZSBpbCBtb25kbyBzaSBmZXJtYSwgV2VicHJvamVjdCBhZ2dpb3JuYSB0dXR0aSBnbGkgaG9zdGluZyBlIGluZnJhc3RydXR0dXJlLiBHb29nbGUgYW5udW5jaWEgQ29yZSBXZWIgVml0YWxzLiBBbGRvIGRpdmVudGEgZXNwZXJ0byBkaSBwZXJmb3JtYW5jZTogb2duaSBzaXRvIHNjZW5kZSBzb3R0byBpIDIgc2Vjb25kaSBkaSBjYXJpY2FtZW50by4gQ2xpZW50ZSBkaSBmb3RvZ3JhZmlhIHNjb3ByZSBjaGUgdmVsb2NpdMOgID0gY29udmVyc2lvbmkuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlBlcmZvcm1hbmNlPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QYWdlIFNwZWVkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Db3JlIFdlYiBWaXRhbHM8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDIyIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDIyLTIwMjM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIENoYXRHUFQgY2FtYmlhIHR1dHRvLiBXZWJwcm9qZWN0IHNwZXJpbWVudGEgY29uIEFJIHBlciBjb250ZW50IGdlbmVyYXRpb24sIG1hIG1hbnRpZW5lIGNvbnRyb2xsbyBlZGl0b3JpYWxlIHVtYW5vLiBJbml6aWEgY29zdHJ1emlvbmUgZGkgUFdBIHBlciBjbGllbnRpOiBhcHAtbGlrZSBleHBlcmllbmNlIHNlbnphIEFwcCBTdG9yZS4gUmlwYXJhIGkgcHJpbWkgZGFubmkgZGEgIkFJLWdlbmVyYXRlZCBjb250ZW50IGxvdyBxdWFsaXR5IiBkaSBjb21wZXRpdG9yLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QV0E8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkF1dG9tYXRpb248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDI0LTIwMjYgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMjQtMjAyNjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5JbnRlZ3JhemlvbmUgVG90YWxlOiBXZWIgKyBGb3RvICsgQUkgKyBSZXBhaXI8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIFdlYnByb2plY3Qgw6ggb2dnaSB1bmEgY29uc3VsdG9yaWEgPHN0cm9uZz4zNjDCsDwvc3Ryb25nPjogYWl1dGEgUE1FIG5vbiBzb2xvIGEgdmVuZGVyZSBvbmxpbmUsIG1hIGEgY29zdHJ1aXJlIDxlbT5pZGVudGl0w6AgdmlzaXZhIGNyZWRpYmlsZTwvZW0+LiBSZXBhaXIgc2hvcCBwcm9wcmlldGFyaW8gZGlhZ25vc3RpY2EgcHJvYmxlbWkgaGFyZHdhcmUgY29uIEFJLiBCbG9nIHN1IGNvbXByYW1pc3ViaXRvIGdlbmVyYSAyMDAwKyBzZXNzaW9uaS9tZXNlLiBMaW5rZWRJbiByYWdnaXVuZ2UgMTUwMCsgZm9sbG93ZXIuIEwnZXNwZXJpZW56YSBkaSAyNCBhbm5pIGRpdmVudGEgaWwgdm9zdHJvIHZhbnRhZ2dpbyBjb21wZXRpdGl2by4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+RnVsbC1TdGFjayBDb25zdWx0aW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5WaXN1YWwgKyBUZWNoPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5UaG91Z2h0IExlYWRlcnNoaXA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAKICAgICAgICA8IS0tIENUQSBTZWN0aW9uIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImN0YS1zZWN0aW9uIj4KICAgICAgICAgICAgPGgyPklsIFZvc3RybyBQcm9zc2ltbyBDYXBpdG9sbzwvaDI+CiAgICAgICAgICAgIDxwPjI0IGFubmkgZGkgZXNwZXJpZW56YS4gVW4gdGVhbSBjaGUgY29ub3NjZSBpIHZvc3RyaSBwcm9ibGVtaSBwcmltYSBjaGUgbGkgY29ub3NjaWF0ZSB2b2kuPC9wPgogICAgICAgICAgICA8YSBocmVmPSIvY3JlYXppb25lLXNpdGktd2ViLyNhdC1jb250YWN0IiBjbGFzcz0iY3RhLWJ1dHRvbiI+SW5pemlhbW8gSW5zaWVtZTwvYT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogCiAgICA8IS0tIEpTT04tTEQgU2NoZW1hIC0tPgogICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj4KICAgIHsKICAgICAgICAiQGNvbnRleHQiOiAiaHR0cHM6Ly9zY2hlbWEub3JnIiwKICAgICAgICAiQHR5cGUiOiAiT3JnYW5pemF0aW9uIiwKICAgICAgICAibmFtZSI6ICJXZWJwcm9qZWN0IEEuUi4gZGkgQWxkbyBSb21hbmEiLAogICAgICAgICJ1cmwiOiAiaHR0cHM6Ly93d3cud2VicGFyLml0IiwKICAgICAgICAibG9nbyI6ICJodHRwczovL3d3dy53ZWJwYXIuaXQvbG9nby5wbmciLAogICAgICAgICJkZXNjcmlwdGlvbiI6ICIyNCBhbm5pIGRpIHdlYiBkZXNpZ24sIFNFTywgZm90b2dyYWZpYSBwcm9mZXNzaW9uYWxlIGUgY29uc3VsZW56YSBkaWdpdGFsZSBwZXIgUE1FIG5lbCBTdWQgSXRhbGlhIiwKICAgICAgICAiZm91bmRpbmdEYXRlIjogIjIwMDIiLAogICAgICAgICJmb3VuZGVyIjogewogICAgICAgICAgICAiQHR5cGUiOiAiUGVyc29uIiwKICAgICAgICAgICAgIm5hbWUiOiAiQWxkbyBSb21hbmEiLAogICAgICAgICAgICAiam9iVGl0bGUiOiAiRm91bmRlciAmIERpZ2l0YWwgU3RyYXRlZ2lzdCIsCiAgICAgICAgICAgICJ1cmwiOiAiaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2luL2FsZG8tcm9tYW5hLTQwNzg2MjkxP3V0bV9zb3VyY2U9c2hhcmVfdmlhJnV0bV9jb250ZW50PXByb2ZpbGUmdXRtX21lZGl1bT1tZW1iZXJfaW9zIiwKICAgICAgICAgICAgImltYWdlIjogImh0dHBzOi8vd2VicGFyLml0L2FsZG8tcm9tYW5hLmpwZyIKICAgICAgICB9LAogICAgICAgICJsb2NhdGlvbiI6IHsKICAgICAgICAgICAgIkB0eXBlIjogIlBsYWNlIiwKICAgICAgICAgICAgIm5hbWUiOiAiQ2FwdWEiLAogICAgICAgICAgICAiYWRkcmVzcyI6IHsKICAgICAgICAgICAgICAgICJAdHlwZSI6ICJQb3N0YWxBZGRyZXNzIiwKICAgICAgICAgICAgICAgICJhZGRyZXNzTG9jYWxpdHkiOiAiQ2FwdWEiLAogICAgICAgICAgICAgICAgImFkZHJlc3NSZWdpb24iOiAiQ0UiLAogICAgICAgICAgICAgICAgImFkZHJlc3NDb3VudHJ5IjogIklUIgogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic2FtZUFzIjogWwogICAgICAgICAgICAiaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2luL2FsZG8tcm9tYW5hLTQwNzg2MjkxP3V0bV9zb3VyY2U9c2hhcmVfdmlhJnV0bV9jb250ZW50PXByb2ZpbGUmdXRtX21lZGl1bT1tZW1iZXJfaW9zIiwKICAgICAgICAgICAgImh0dHBzOi8vaW5zdGFncmFtLmNvbS93ZWJwcm9qZWN0YXIiLAogICAgICAgICAgICAiaHR0cHM6Ly9pbnN0YWdyYW0uY29tL2FsZG9yb21hbmFfcGhvdG8iCiAgICAgICAgXSwKICAgICAgICAic2VydmljZSI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiV2ViIERlc2lnbiAmIERldmVsb3BtZW50IiwKICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJTaXRpIHdlYiBwcm9mZXNzaW9uYWxpIHBlciBQTUUiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJAdHlwZSI6ICJTZXJ2aWNlIiwKICAgICAgICAgICAgICAgICJuYW1lIjogIlNFTyBPcHRpbWl6YXRpb24iLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlBvc2l6aW9uYW1lbnRvIG5laSBtb3RvcmkgZGkgcmljZXJjYSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiRm90b2dyYWZpYSBBemllbmRhbGUiLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkZvdG9ncmFmaWEgcHJvZmVzc2lvbmFsZSBwZXIgYnJhbmRpbmciCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJAdHlwZSI6ICJTZXJ2aWNlIiwKICAgICAgICAgICAgICAgICJuYW1lIjogIkUtY29tbWVyY2UgU29sdXRpb25zIiwKICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJWZW5kaXRhIG9ubGluZSBzdSBQcmVzdGFTaG9wIgogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAiYWdncmVnYXRlUmF0aW5nIjogewogICAgICAgICAgICAiQHR5cGUiOiAiQWdncmVnYXRlUmF0aW5nIiwKICAgICAgICAgICAgInJhdGluZ1ZhbHVlIjogIjUiLAogICAgICAgICAgICAiYmVzdFJhdGluZyI6ICI1IiwKICAgICAgICAgICAgIndvcnN0UmF0aW5nIjogIjEiLAogICAgICAgICAgICAicmF0aW5nQ291bnQiOiAiMjAwIiwKICAgICAgICAgICAgInJldmlld0NvdW50IjogIjIwMCIKICAgICAgICB9LAogICAgICAgICJrbm93c0Fib3V0IjogWwogICAgICAgICAgICAiV2ViIERlc2lnbiIsCiAgICAgICAgICAgICJTRU8iLAogICAgICAgICAgICAiV29yZFByZXNzIiwKICAgICAgICAgICAgIlByZXN0YVNob3AiLAogICAgICAgICAgICAiRGlnaXRhbCBNYXJrZXRpbmciLAogICAgICAgICAgICAiUGhvdG9ncmFwaHkiLAogICAgICAgICAgICAiRS1jb21tZXJjZSIsCiAgICAgICAgICAgICJBSSAmIEF1dG9tYXRpb24iCiAgICAgICAgXQogICAgfQogICAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgpkb2N1bWVudGV4Y2VycHRkb2N1bWVudGF1dGhvcmRvY3VtZW50ZmVhdHVyZWRfbWVkaWFkb2N1bWVudGNvbW1lbnRfc3RhdHVzZG9jdW1lbnRwaW5nX3N0YXR1c2RvY3VtZW50dGVtcGxhdGVkb2N1bWVudG1ldGFvbV9kaXNhYmxlX2FsbF9jYW1wYWlnbnNfbW9uc3Rlcmluc2lnaHRzX3NraXBfdHJhY2tpbmdfbW9uc3Rlcmluc2lnaHRzX3NpdGVub3RlX2FjdGl2ZV9tb25zdGVyaW5zaWdodHNfc2l0ZW5vdGVfbm90ZV9tb25zdGVyaW5zaWdodHNfc2l0ZW5vdGVfY2F0ZWdvcnlmb290bm90ZXNkb2N1bWVudGJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzc3RhdGVzYXZlZEF0c3RhdGVzYXZlZEJ5Y2xpZW50SWRpc1ZhbGlkbmFtZWF0dHJpYnV0ZXNjb250ZW50bGV2ZWxpbm5lckJsb2NrczwhLS0gL3dwOmh0bWwgLS0+CgpXZWIgRGVzaWduIFByb2Zlc3Npb25hbGUgYSBDYXB1YSBkYWwgMjAwMmNsaWVudElkaXNWYWxpZG5hbWVhdHRyaWJ1dGVzY29udGVudGxldmVsaW5uZXJCbG9ja3NTRU8gZSBGb3RvZ3JhZmlhIEF6aWVuZGFsZSBwZXIgUE1FIENhc2VydGFjbGllbnRJZGlzVmFsaWRuYW1lYXR0cmlidXRlc2NvbnRlbnRsZXZlbGlubmVyQmxvY2tzQXNzaXN0ZW56YSBJbmZvcm1hdGljYSBlIFJpcGFyYXppb25pIFBDIG5lbCBTdWQgSXRhbGlhY2xpZW50SWRpc1ZhbGlkbmFtZWF0dHJpYnV0ZXNjb250ZW50bGV2ZWxpbm5lckJsb2Nrcy0gQ29tZSAyNCBBbm5pIGRpIEVzcGVyaWVuemEgVGkgQWl1dGFubyBhIENyZXNjZXJlIE9ubGluZWNsaWVudElkaXNWYWxpZG5hbWVhdHRyaWJ1dGVzY29udGVudGRyb3BDYXBwbGFjZWhvbGRlcmlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkbmFtZWF0dHJpYnV0ZXNjb250ZW50ZHJvcENhcHBsYWNlaG9sZGVyaW5uZXJCbG9ja3NsZXZlbC0gQ29tZSAyNCBBbm5pIGRpIEVzcGVyaWVuemEgVGkgQWl1dGFubyBhIENyZXNjZXJlIE9ubGluZWNsaWVudElkaXNWYWxpZG5hbWVhdHRyaWJ1dGVzY29udGVudGRyb3BDYXBwbGFjZWhvbGRlcmlubmVyQmxvY2tzPCEtLSB3cDpwYXJhZ3JhcGggLS0+CjxwPjwvcD4KPCEtLSAvd3A6cGFyYWdyYXBoIC0tPmNsaWVudElkaXNWYWxpZG5hbWVhdHRyaWJ1dGVzY29udGVudGRyb3BDYXBwbGFjZWhvbGRlcmlubmVyQmxvY2tzCiAgICAgICAgLyogU1RJTEUgUEVSIEgyIElOU0VSSVRJICovCiAgICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciBoMiB7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICAgICAgICAgIG1hcmdpbjogNTBweCAwIDIwcHggMDsKICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgfQoKICAgICAgICAuY3RhLXNlY3Rpb24gaDIgewogICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7CiAgICAgICAgfQoKCiAgICAgICAgICAgIC50aW1lbGluZS1jb250YWluZXIgaDIgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07CiAgICAgICAgICAgICAgICBtYXJnaW46IDQwcHggMCAxNXB4IDA7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC50aW1lbGluZS1jb250YWluZXIgaDIgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07CiAgICAgICAgICAgICAgICBtYXJnaW46IDMwcHggMCAxMnB4IDA7CiAgICAgICAgICAgIH0KCgogICAgICAgIDwhLS0gSDIgIzEgLS0+CiAgICAgICAgPGgyPldlYiBEZXNpZ24gUHJvZmVzc2lvbmFsZSBhIENhcHVhIGRhbCAyMDAyPC9oMj4KCiAgICAgICAgICAgIDwhLS0gSDIgIzIgLS0+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxoMj5TRU8gZSBGb3RvZ3JhZmlhIEF6aWVuZGFsZSBwZXIgUE1FIENhc2VydGE8L2gyPgoKICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CgogICAgICAgICAgICA8IS0tIEgyICMzIC0tPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8aDI+QXNzaXN0ZW56YSBJbmZvcm1hdGljYSBlIFJpcGFyYXppb25pIFBDIG5lbCBTdWQgSXRhbGlhPC9oMj4KCiAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MYSBQYW5kZW1pYSAmYW1wOyBDb3JlIFdlYiBWaXRhbHM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TCdFcmEgZGVsbCdBSSAmYW1wOyBBdXRvbWF6aW9uZSBBdmFuemF0YTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BSSAmYW1wOyBNTDwvc3Bhbj4KCiAgICAgICAgICAgIDwhLS0gSDIgIzQgLS0+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxoMj5Db21lIDI0IEFubmkgZGkgRXNwZXJpZW56YSBUaSBBaXV0YW5vIGEgQ3Jlc2NlcmUgT25saW5lPC9oMj4KCiAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TRU8gJmFtcDsgQUk8L3NwYW4+CgoFBwgECAQIBggFNwgHkA4mjFqcCKslrRKuKqkdkQOcDZEGtgKnDZwxEAgHCAYIDggOCAtIAQQYHiAeIgkIBggHDwQKBwsFBwUHCAcECgcFCxMpCAcECgcFCyoIBwQKBwULNggHBAoHBQs5CAcECkcASwAIBwQKRwBLAAU5CAcECkcASwAeFggHBApHAEsAmAUr\/gEAAZMBiAKUAo8BlgE9lQI+ARMBBAAAAQAAAAEGAAUBAAAHAQEAJ0IBAQBBAABBAAIAQQACAEEAAgBBAAIAQQACAEEAAgBBAAIAQQACABdBAhsJiwGSATk6EUEUFDdBIKgHggNBBQGcAQB9AXcTMjAyNi0wNC0xM1QwOTowNjoyN3csMjQtYW5uaS1kaS13ZWJwcm9qZWN0LWEtci10aW1lbGluZS0yMDAyLTIwMjZ3B3B1Ymxpc2h9AX0AdwZjbG9zZWR3BmNsb3NlZHcAeXl5dwB9AHcAdyQ0OGEyZjFlOS03YmRiLTRkMzgtYjJiYS1kNGE4NjIzNzZlYTF4d4KoATwhRE9DVFlQRSBodG1sPgo8aHRtbCBsYW5nPSJpdCI+CjxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgogICAgPHRpdGxlPjI0IEFubmkgZGkgV2VicHJvamVjdCBBLlIuIHwgVGltZWxpbmUgMjAwMi0yMDI2PC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJMYSBzdG9yaWEgZGkgV2VicHJvamVjdCBBLlIuOiAyNCBhbm5pIGRpIGV2b2x1emlvbmUgd2ViIGRlc2lnbiwgU0VPLCBmb3RvZ3JhZmlhIGUgaW5ub3ZhemlvbmUgZGlnaXRhbGUgYSBDYXB1YS4iPgogICAgPHN0eWxlPgogICAgICAgICogewogICAgICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgfQogCiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCAnT3h5Z2VuJywgJ1VidW50dScsICdDYW50YXJlbGwnLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmN2ZhIDAlLCAjZjBmMmY1IDEwMCUpOwogICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7CiAgICAgICAgICAgIGNvbG9yOiAjMzMzOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1jb250YWluZXIgewogICAgICAgICAgICBtYXgtd2lkdGg6IDEwMDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgICAuY3RhLXNlY3Rpb24gaDIgewogICAgICAgICAgIGNvbG9yOiAjZDk1MzRmICFpbXBvcnRhbnQ7CiAgICAgICB9CiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5Eb3duIDAuOHMgZWFzZS1vdXQ7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciBoMSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCAzLjVyZW0pOwogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIC5zdWJ0aXRsZSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgICAgICAgICBjb2xvcjogIzY2NjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIC50YWdsaW5lIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBjb2xvcjogIzk5OTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1oZWFkZXIgLnllYXJzLWJhZGdlIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjQzhBODRCOwogICAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjhweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogCiAgICAgICAgLyogVGltZWxpbmUgTWFpbiBTdHJ1Y3R1cmUgKi8KICAgICAgICAudGltZWxpbmUgewogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7CiAgICAgICAgICAgIGNvbnRlbnQ6ICcnOwogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgICAgICAgICB3aWR0aDogNHB4OwogICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNDOEE4NEIgMCUsICMxYTJhNGEgMTAwJSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgICB9CiAKICAgICAgICAvKiBUaW1lbGluZSBJdGVtICovCiAgICAgICAgLnRpbWVsaW5lLWl0ZW0gewogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDAuOHMgZWFzZS1vdXQgYm90aDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMSkgeyBhbmltYXRpb24tZGVsYXk6IDAuMXM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMikgeyBhbmltYXRpb24tZGVsYXk6IDAuMnM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoMykgeyBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNCkgeyBhbmltYXRpb24tZGVsYXk6IDAuNHM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNSkgeyBhbmltYXRpb24tZGVsYXk6IDAuNXM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNikgeyBhbmltYXRpb24tZGVsYXk6IDAuNnM7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoNykgeyBhbmltYXRpb24tZGVsYXk6IDAuN3M7IH0KICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoOCkgeyBhbmltYXRpb24tZGVsYXk6IDAuOHM7IH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChvZGQpIC5jb250ZW50IHsKICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsKICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7CiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKSAuY29udGVudCB7CiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWRvdCB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgbGVmdDogNTAlOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgICAgICBoZWlnaHQ6IDIwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOwogICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICAgIHRvcDogMzBweDsKICAgICAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDhweCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4xKTsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpob3ZlciAudGltZWxpbmUtZG90IHsKICAgICAgICAgICAgd2lkdGg6IDI4cHg7CiAgICAgICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICAgICAgdG9wOiAyNnB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxMnB4IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjIpOwogICAgICAgICAgICBib3JkZXItY29sb3I6ICMxYTJhNGE7CiAgICAgICAgfQogCiAgICAgICAgLmNvbnRlbnQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAgICAgICAgICAgcGFkZGluZzogMzBweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTsKICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06aG92ZXIgLmNvbnRlbnQgewogICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xMik7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsKICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMxYTJhNGE7CiAgICAgICAgfQogCiAgICAgICAgLnllYXIgewogICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgY29sb3I6ICNDOEE4NEI7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTsKICAgICAgICB9CiAKICAgICAgICAudGl0bGUgewogICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgICAgfQogCiAgICAgICAgLmRlc2NyaXB0aW9uIHsKICAgICAgICAgICAgY29sb3I6ICM2NjY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzsKICAgICAgICB9CiAKICAgICAgICAudGFncyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7CiAgICAgICAgfQogCiAgICAgICAgLnRhZyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMDAsIDE2OCwgNzUsIDAuMSk7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBwYWRkaW5nOiA0cHggMTJweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjAwLCAxNjgsIDc1LCAwLjMpOwogICAgICAgIH0KIAogICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4xKSwgcmdiYSgyNiwgNDIsIDc0LCAwLjA1KSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgIGNvbG9yOiAjOTk5OwogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDA7CiAgICAgICAgICAgIGJvcmRlcjogMnB4IGRhc2hlZCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4zKTsKICAgICAgICB9CiAKICAgICAgICAvKiBSZXNwb25zaXZlIERlc2lnbiAqLwogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgICAgICAgICAudGltZWxpbmU6OmJlZm9yZSB7CiAgICAgICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKG9kZCkgLmNvbnRlbnQsCiAgICAgICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChldmVuKSAuY29udGVudCB7CiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7CiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1kb3QgewogICAgICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1oZWFkZXIgaDEgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWhlYWRlciAuc3VidGl0bGUgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7CiAgICAgICAgICAgIGJvZHkgewogICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4OwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWl0ZW0gewogICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC5jb250ZW50IHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAueWVhciB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aXRsZSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgLyogQW5pbWF0aW9ucyAqLwogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluRG93biB7CiAgICAgICAgICAgIGZyb20gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdG8gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluVXAgewogICAgICAgICAgICBmcm9tIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdG8gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIC5zdGF0cy1ncmlkIHsKICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7CiAgICAgICAgICAgIGdhcDogMjBweDsKICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsKICAgICAgICB9CiAKICAgICAgICAuc3RhdC1jYXJkIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTsKICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgfQogCiAgICAgICAgLnN0YXQtbnVtYmVyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgICAgIGNvbG9yOiAjQzhBODRCOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogCiAgICAgICAgLnN0YXQtbGFiZWwgewogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtc2VjdGlvbiB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDsKICAgICAgICAgICAgcGFkZGluZzogNTBweCAzMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWEyYTRhIDAlLCAjMmQzZjVhIDEwMCUpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1zZWN0aW9uIGgyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtc2VjdGlvbiBwIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTU7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1idXR0b24gewogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDOEE4NEI7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDQwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7CiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjQzhBODRCOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtYnV0dG9uOmhvdmVyIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICAgIGNvbG9yOiAjQzhBODRCOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWNvbnRhaW5lciI+CiAgICAgICAgPCEtLSBIZWFkZXIgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaGVhZGVyIj4KICAgICAgICAgICAgPGgxPjI0IEFubmkgZGkgV2VicHJvamVjdCBBLlIuPC9oMT4KICAgICAgICAgICAgPHAgY2xhc3M9InN1YnRpdGxlIj5EYWxsJ2VyYSBkZWkgc2l0aSBIVE1MIHN0YXRpY2kgYWxsJ2ludGVsbGlnZW56YSBhcnRpZmljaWFsZTwvcD4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InllYXJzLWJhZGdlIj4yMDAyIOKGkiAyMDI2PC9zcGFuPgogICAgICAgICAgICA8cCBjbGFzcz0idGFnbGluZSI+T2x0cmUgNTAwIHByb2dldHRpLiAyMDArIGNsaWVudGkgYXR0aXZpLiBVbmEgc29sYSBtaXNzaW9uZTogaWwgdm9zdHJvIHN1Y2Nlc3NvIGRpZ2l0YWxlLjwvcD4KICAgICAgICA8L2Rpdj4KIAogICAgICAgIDwhLS0gU3RhdHMgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ic3RhdHMtZ3JpZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtY2FyZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LW51bWJlciI+MjQrPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5Bbm5pIGRpIEVzcGVyaWVuemE8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtY2FyZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LW51bWJlciI+NTAwKzwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1sYWJlbCI+UHJvZ2V0dGkgUmVhbGl6emF0aTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4yMDArPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5DbGllbnRpIEF0dGl2aTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4xMDAlPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5DbGllbnRpIFNvZGRpc2ZhdHRpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogCiAgICAgICAgPCEtLSBUaW1lbGluZSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CiAgICAgICAgICAgIDwhLS0gMjAwMiAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAwMjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MYSBGb25kYXppb25lPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBBbGRvIFJvbWFuYSBmb25kYSBXZWJwcm9qZWN0IEEuUi4gYSBDYXB1YSAoQ2FzZXJ0YSkuIEVyYSBIVE1MIHB1cm8sIERyZWFtd2VhdmVyLCBlIHZpc2lvbmUgY2hpYXJhOiBhaXV0YXJlIGxlIFBNSSBsb2NhbGkgYSBzY29wcmlyZSBpbCB3ZWIuIElsIHByaW1vIGNsaWVudGU\/IFVuYSBib3R0ZWdhIGRlbCBjZW50cm8gc3RvcmljbyBjaGUgb2dnaSBhbmNvcmEgZ2VuZXJhIGxlYWQgZGFsIHNpdG8gZGVsIDIwMDQuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkhUTUwgNC4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5XZWIgRGVzaWduPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TTUUgTG9jYWxpPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAwNSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAwNS0yMDA4PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkwnRXJhIENTUyBlIGRlaSBCbG9nPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBXb3JkUHJlc3Mgcml2b2x1emlvbmEgaWwgcGFub3JhbWEuIFdlYnByb2plY3QgcGFzc2EgZGEgSFRNTCBhIHRlbXBsYXRlIENNUy4gUHJpbWkgZXNwZXJpbWVudGkgZGkgU0VPOiBrZXl3b3JkIHJlc2VhcmNoIG1hbnVhbGUsIGxpbmsgYnVpbGRpbmcgbG9jYWxlLiBDbGllbnRlIHN0b3JpY28gZGkgb3JlZmljZXJpYSBkZWNpZGUgZGkgc2VndWlyY2kgcGVyIDE4IGFubmkgY29uc2VjdXRpdmkuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPldvcmRQcmVzczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+U0VPIEJhc2U8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkJsb2cgUHVibGlzaGluZzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KIAogICAgICAgICAgICA8IS0tIDIwMDkgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMDktMjAxMjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5TY29wZXJ0YSBkZWxsYSBGb3RvZ3JhZmlhIEF6aWVuZGFsZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgQWxkbyBhY3F1aXN0YSBsYSBwcmltYSBEU0xSIHBlciAiZm90b2dyYWZhcmUgaSBwcm9wcmkgc2l0aSIgZSBzaSBhY2NvcmdlIGNoZSBsYSBxdWFsaXTDoCB2aXNpdmEgZWxldmEgaWwgcHJvZ2V0dG8gd2ViIGRlbCAzMDAlLiBJbml6aWEgYSBvZmZyaXJlIHBhY2NoZXR0aSBpbnRlZ3JhdGU6IHdlYiArIGZvdG8gcHJvcHJpZXRhcmlhLiBJIHNpdGkgaW5pemlhbm8gYWQgYXZlcmUgPGVtPmlkZW50aXTDoDwvZW0+LgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Gb3RvZ3JhZmlhPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5XZWIgKyBWaXN1YWw8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkJyYW5kaW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAxMyAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAxMy0yMDE2PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkwnRXJhIE1vYmlsZSBlIEUtY29tbWVyY2U8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIE1vYmlsZS1maXJzdCBub24gw6ggb3B6aW9uZSwgw6ggb2JibGlnby4gRm9uZGEgY29tcHJhbWlzdWJpdG8uY29tOiBlLWNvbW1lcmNlIGRyb3BzaGlwcGluZyBzdSBQcmVzdGFTaG9wLiBMZXppb25lIGltcGFyYXRhOiBhdXRvbWF0aXp6YXJlIGxhIGNhdGVuYSBkaSBhcHByb3Z2aWdpb25hbWVudG8uIFFOQVAgTkFTIGRpIGNhc2EgZ2VzdGlzY2UgMjAwMCsgU0tVLiBQcmltYSBlc3BlcmllbnphIGNvbiBwcm9ncmFtbWF0aWMgU0VPLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Nb2JpbGUgRGVzaWduPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QcmVzdGFTaG9wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BdXRvbWF0aW9uPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAxNyAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAxNy0yMDE5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPlNwZWNpYWxpenphemlvbmU6IEZvdG9ncmFmaWEgUHJvZmVzc2lvbmFsZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgTGEgZm90b2dyYWZpYSBkaSBBbGRvIGluaXppYSBhIHJhY2NvZ2xpZXJlIHJpY29ub3NjaW1lbnRpIHN1aSBwcm9maWxpIEluc3RhZ3JhbSAoQGFsZG9yb21hbmFfcGhvdG8gcmFnZ2l1bmdlIG1pZ2xpYWlhIGRpIGZvbGxvd2VyKS4gRm90b2dyYWZhIHRlYXRyYWxpLCBhcmNoaXRldHR1cmUsIGNvcnBvcmF0ZSBldmVudHMuIEludGVncmEgbGEgZm90b2dyYWZpYSBjb21lIHNlcnZpemlvIDxzdHJvbmc+c3RhbmRhbG9uZTwvc3Ryb25nPjogbGEgcHJvZmVzc2lvbmFsaXTDoCBjb250YSBwacO5IGRlbCB2b2x1bWUuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkZvdG9ncmFmaWEgRXZlbnQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkFyY2hpdGV0dHVyYTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UGVyc29uYWwgQnJhbmQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDIwIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDIwLTIwMjE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TGEgUGFuZGVtaWEgJiBDb3JlIFdlYiBWaXRhbHM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIE1lbnRyZSBpbCBtb25kbyBzaSBmZXJtYSwgV2VicHJvamVjdCBhZ2dpb3JuYSB0dXR0aSBnbGkgaG9zdGluZyBlIGluZnJhc3RydXR0dXJlLiBHb29nbGUgYW5udW5jaWEgQ29yZSBXZWIgVml0YWxzLiBBbGRvIGRpdmVudGEgZXNwZXJ0byBkaSBwZXJmb3JtYW5jZTogb2duaSBzaXRvIHNjZW5kZSBzb3R0byBpIDIgc2Vjb25kaSBkaSBjYXJpY2FtZW50by4gQ2xpZW50ZSBkaSBmb3RvZ3JhZmlhIHNjb3ByZSBjaGUgdmVsb2NpdMOgID0gY29udmVyc2lvbmkuCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlBlcmZvcm1hbmNlPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QYWdlIFNwZWVkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Db3JlIFdlYiBWaXRhbHM8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDIyIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDIyLTIwMjM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TCdFcmEgZGVsbCdBSSAmIEF1dG9tYXppb25lIEF2YW56YXRhPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBDaGF0R1BUIGNhbWJpYSB0dXR0by4gV2VicHJvamVjdCBzcGVyaW1lbnRhIGNvbiBBSSBwZXIgY29udGVudCBnZW5lcmF0aW9uLCBtYSBtYW50aWVuZSBjb250cm9sbG8gZWRpdG9yaWFsZSB1bWFuby4gSW5pemlhIGNvc3RydXppb25lIGRpIFBXQSBwZXIgY2xpZW50aTogYXBwLWxpa2UgZXhwZXJpZW5jZSBzZW56YSBBcHAgU3RvcmUuIFJpcGFyYSBpIHByaW1pIGRhbm5pIGRhICJBSS1nZW5lcmF0ZWQgY29udGVudCBsb3cgcXVhbGl0eSIgZGkgY29tcGV0aXRvci4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+QUkgJiBNTDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UFdBPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BdXRvbWF0aW9uPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAyNC0yMDI2IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDI0LTIwMjY8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+SW50ZWdyYXppb25lIFRvdGFsZTogV2ViICsgRm90byArIEFJICsgUmVwYWlyPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBXZWJwcm9qZWN0IMOoIG9nZ2kgdW5hIGNvbnN1bHRvcmlhIDxzdHJvbmc+MzYwwrA8L3N0cm9uZz46IGFpdXRhIFBNRSBub24gc29sbyBhIHZlbmRlcmUgb25saW5lLCBtYSBhIGNvc3RydWlyZSA8ZW0+aWRlbnRpdMOgIHZpc2l2YSBjcmVkaWJpbGU8L2VtPi4gUmVwYWlyIHNob3AgcHJvcHJpZXRhcmlvIGRpYWdub3N0aWNhIHByb2JsZW1pIGhhcmR3YXJlIGNvbiBBSS4gQmxvZyBzdSBjb21wcmFtaXN1Yml0byBnZW5lcmEgMjAwMCsgc2Vzc2lvbmkvbWVzZS4gTGlua2VkSW4gcmFnZ2l1bmdlIDE1MDArIGZvbGxvd2VyLiBMJ2VzcGVyaWVuemEgZGkgMjQgYW5uaSBkaXZlbnRhIGlsIHZvc3RybyB2YW50YWdnaW8gY29tcGV0aXRpdm8uCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkZ1bGwtU3RhY2sgQ29uc3VsdGluZzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+U0VPICYgQUk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlZpc3VhbCArIFRlY2g8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlRob3VnaHQgTGVhZGVyc2hpcDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KIAogICAgICAgIDwhLS0gQ1RBIFNlY3Rpb24gLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iY3RhLXNlY3Rpb24iPgogICAgICAgICAgICA8aDI+SWwgVm9zdHJvIFByb3NzaW1vIENhcGl0b2xvPC9oMj4KICAgICAgICAgICAgPHA+MjQgYW5uaSBkaSBlc3BlcmllbnphLiBVbiB0ZWFtIGNoZSBjb25vc2NlIGkgdm9zdHJpIHByb2JsZW1pIHByaW1hIGNoZSBsaSBjb25vc2NpYXRlIHZvaS48L3A+CiAgICAgICAgICAgIDxhIGhyZWY9Ii9jcmVhemlvbmUtc2l0aS13ZWIvI2F0LWNvbnRhY3QiIGNsYXNzPSJjdGEtYnV0dG9uIj5Jbml6aWFtbyBJbnNpZW1lPC9hPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAKICAgIDwhLS0gSlNPTi1MRCBTY2hlbWEgLS0+CiAgICA8c2NyaXB0IHR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iPgogICAgewogICAgICAgICJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLAogICAgICAgICJAdHlwZSI6ICJPcmdhbml6YXRpb24iLAogICAgICAgICJuYW1lIjogIldlYnByb2plY3QgQS5SLiBkaSBBbGRvIFJvbWFuYSIsCiAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53ZWJwYXIuaXQiLAogICAgICAgICJsb2dvIjogImh0dHBzOi8vd3d3LndlYnBhci5pdC9sb2dvLnBuZyIsCiAgICAgICAgImRlc2NyaXB0aW9uIjogIjI0IGFubmkgZGkgd2ViIGRlc2lnbiwgU0VPLCBmb3RvZ3JhZmlhIHByb2Zlc3Npb25hbGUgZSBjb25zdWxlbnphIGRpZ2l0YWxlIHBlciBQTUUgbmVsIFN1ZCBJdGFsaWEiLAogICAgICAgICJmb3VuZGluZ0RhdGUiOiAiMjAwMiIsCiAgICAgICAgImZvdW5kZXIiOiB7CiAgICAgICAgICAgICJAdHlwZSI6ICJQZXJzb24iLAogICAgICAgICAgICAibmFtZSI6ICJBbGRvIFJvbWFuYSIsCiAgICAgICAgICAgICJqb2JUaXRsZSI6ICJGb3VuZGVyICYgRGlnaXRhbCBTdHJhdGVnaXN0IiwKICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vYWxkby1yb21hbmEtNDA3ODYyOTE\/dXRtX3NvdXJjZT1zaGFyZV92aWEmdXRtX2NvbnRlbnQ9cHJvZmlsZSZ1dG1fbWVkaXVtPW1lbWJlcl9pb3MiLAogICAgICAgICAgICAiaW1hZ2UiOiAiaHR0cHM6Ly93ZWJwYXIuaXQvYWxkby1yb21hbmEuanBnIgogICAgICAgIH0sCiAgICAgICAgImxvY2F0aW9uIjogewogICAgICAgICAgICAiQHR5cGUiOiAiUGxhY2UiLAogICAgICAgICAgICAibmFtZSI6ICJDYXB1YSIsCiAgICAgICAgICAgICJhZGRyZXNzIjogewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlBvc3RhbEFkZHJlc3MiLAogICAgICAgICAgICAgICAgImFkZHJlc3NMb2NhbGl0eSI6ICJDYXB1YSIsCiAgICAgICAgICAgICAgICAiYWRkcmVzc1JlZ2lvbiI6ICJDRSIsCiAgICAgICAgICAgICAgICAiYWRkcmVzc0NvdW50cnkiOiAiSVQiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzYW1lQXMiOiBbCiAgICAgICAgICAgICJodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vYWxkby1yb21hbmEtNDA3ODYyOTE\/dXRtX3NvdXJjZT1zaGFyZV92aWEmdXRtX2NvbnRlbnQ9cHJvZmlsZSZ1dG1fbWVkaXVtPW1lbWJlcl9pb3MiLAogICAgICAgICAgICAiaHR0cHM6Ly9pbnN0YWdyYW0uY29tL3dlYnByb2plY3RhciIsCiAgICAgICAgICAgICJodHRwczovL2luc3RhZ3JhbS5jb20vYWxkb3JvbWFuYV9waG90byIKICAgICAgICBdLAogICAgICAgICJzZXJ2aWNlIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJXZWIgRGVzaWduICYgRGV2ZWxvcG1lbnQiLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlNpdGkgd2ViIHByb2Zlc3Npb25hbGkgcGVyIFBNRSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiU0VPIE9wdGltaXphdGlvbiIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiUG9zaXppb25hbWVudG8gbmVpIG1vdG9yaSBkaSByaWNlcmNhIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJGb3RvZ3JhZmlhIEF6aWVuZGFsZSIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiRm90b2dyYWZpYSBwcm9mZXNzaW9uYWxlIHBlciBicmFuZGluZyIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiRS1jb21tZXJjZSBTb2x1dGlvbnMiLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlZlbmRpdGEgb25saW5lIHN1IFByZXN0YVNob3AiCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJhZ2dyZWdhdGVSYXRpbmciOiB7CiAgICAgICAgICAgICJAdHlwZSI6ICJBZ2dyZWdhdGVSYXRpbmciLAogICAgICAgICAgICAicmF0aW5nVmFsdWUiOiAiNSIsCiAgICAgICAgICAgICJiZXN0UmF0aW5nIjogIjUiLAogICAgICAgICAgICAid29yc3RSYXRpbmciOiAiMSIsCiAgICAgICAgICAgICJyYXRpbmdDb3VudCI6ICIyMDAiLAogICAgICAgICAgICAicmV2aWV3Q291bnQiOiAiMjAwIgogICAgICAgIH0sCiAgICAgICAgImtub3dzQWJvdXQiOiBbCiAgICAgICAgICAgICJXZWIgRGVzaWduIiwKICAgICAgICAgICAgIlNFTyIsCiAgICAgICAgICAgICJXb3JkUHJlc3MiLAogICAgICAgICAgICAiUHJlc3RhU2hvcCIsCiAgICAgICAgICAgICJEaWdpdGFsIE1hcmtldGluZyIsCiAgICAgICAgICAgICJQaG90b2dyYXBoeSIsCiAgICAgICAgICAgICJFLWNvbW1lcmNlIiwKICAgICAgICAgICAgIkFJICYgQXV0b21hdGlvbiIKICAgICAgICBdCiAgICB9CiAgICA8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+dwljb3JlL2h0bWx3gqgBPCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9Iml0Ij4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8dGl0bGU+MjQgQW5uaSBkaSBXZWJwcm9qZWN0IEEuUi4gfCBUaW1lbGluZSAyMDAyLTIwMjY8L3RpdGxlPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IkxhIHN0b3JpYSBkaSBXZWJwcm9qZWN0IEEuUi46IDI0IGFubmkgZGkgZXZvbHV6aW9uZSB3ZWIgZGVzaWduLCBTRU8sIGZvdG9ncmFmaWEgZSBpbm5vdmF6aW9uZSBkaWdpdGFsZSBhIENhcHVhLiI+CiAgICA8c3R5bGU+CiAgICAgICAgKiB7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgcGFkZGluZzogMDsKICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CiAKICAgICAgICBib2R5IHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgJ1JvYm90bycsICdPeHlnZW4nLCAnVWJ1bnR1JywgJ0NhbnRhcmVsbCcsIHNhbnMtc2VyaWY7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmNWY3ZmEgMCUsICNmMGYyZjUgMTAwJSk7CiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDsKICAgICAgICAgICAgY29sb3I6ICMzMzM7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciB7CiAgICAgICAgICAgIG1heC13aWR0aDogMTAwMHB4OwogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CiAgICAgICAgIC5jdGEtc2VjdGlvbiBoMiB7CiAgICAgICAgICAgY29sb3I6ICNkOTUzNGYgIWltcG9ydGFudDsKICAgICAgIH0KICAgICAgICAudGltZWxpbmUtaGVhZGVyIHsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJbkRvd24gMC44cyBlYXNlLW91dDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIGgxIHsKICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgycmVtLCA1dncsIDMuNXJlbSk7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1oZWFkZXIgLnN1YnRpdGxlIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07CiAgICAgICAgICAgIGNvbG9yOiAjNjY2OwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1oZWFkZXIgLnRhZ2xpbmUgewogICAgICAgICAgICBmb250LXNpemU6IDFyZW07CiAgICAgICAgICAgIGNvbG9yOiAjOTk5OwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciAueWVhcnMtYmFkZ2UgewogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDOEE4NEI7CiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICAgICAgcGFkZGluZzogMTJweCAyOHB4OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4OwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsKICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4zKTsKICAgICAgICB9CiAKICAgICAgICAvKiBUaW1lbGluZSBNYWluIFN0cnVjdHVyZSAqLwogICAgICAgIC50aW1lbGluZSB7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgcGFkZGluZzogMjBweCAwOwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZTo6YmVmb3JlIHsKICAgICAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgbGVmdDogNTAlOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgICAgIHdpZHRoOiA0cHg7CiAgICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI0M4QTg0QiAwJSwgIzFhMmE0YSAxMDAlKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgICAgIH0KIAogICAgICAgIC8qIFRpbWVsaW5lIEl0ZW0gKi8KICAgICAgICAudGltZWxpbmUtaXRlbSB7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMC44cyBlYXNlLW91dCBib3RoOwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCgxKSB7IGFuaW1hdGlvbi1kZWxheTogMC4xczsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCgyKSB7IGFuaW1hdGlvbi1kZWxheTogMC4yczsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCgzKSB7IGFuaW1hdGlvbi1kZWxheTogMC4zczsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCg0KSB7IGFuaW1hdGlvbi1kZWxheTogMC40czsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCg1KSB7IGFuaW1hdGlvbi1kZWxheTogMC41czsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCg2KSB7IGFuaW1hdGlvbi1kZWxheTogMC42czsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCg3KSB7IGFuaW1hdGlvbi1kZWxheTogMC43czsgfQogICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZCg4KSB7IGFuaW1hdGlvbi1kZWxheTogMC44czsgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKG9kZCkgLmNvbnRlbnQgewogICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsKICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOwogICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTsKICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKGV2ZW4pIC5jb250ZW50IHsKICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsKICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtZG90IHsKICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgICAgICAgICAgd2lkdGg6IDIwcHg7CiAgICAgICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgICAgdG9wOiAzMHB4OwogICAgICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjEpOwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOmhvdmVyIC50aW1lbGluZS1kb3QgewogICAgICAgICAgICB3aWR0aDogMjhweDsKICAgICAgICAgICAgaGVpZ2h0OiAyOHB4OwogICAgICAgICAgICB0b3A6IDI2cHg7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDEycHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFhMmE0YTsKICAgICAgICB9CiAKICAgICAgICAuY29udGVudCB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOwogICAgICAgICAgICBwYWRkaW5nOiAzMHB4OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDgpOwogICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpob3ZlciAuY29udGVudCB7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjEyKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogIzFhMmE0YTsKICAgICAgICB9CiAKICAgICAgICAueWVhciB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgICAgICBjb2xvcjogI0M4QTg0QjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgICAgICBmb250LWZhbWlseTogJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlOwogICAgICAgIH0KIAogICAgICAgIC50aXRsZSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsKICAgICAgICB9CiAKICAgICAgICAuZGVzY3JpcHRpb24gewogICAgICAgICAgICBjb2xvcjogIzY2NjsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS43OwogICAgICAgIH0KIAogICAgICAgIC50YWdzIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgICAgICBnYXA6IDhweDsKICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDsKICAgICAgICB9CiAKICAgICAgICAudGFnIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwMCwgMTY4LCA3NSwgMC4xKTsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4OwogICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogCiAgICAgICAgLmltYWdlLXBsYWNlaG9sZGVyIHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjAwLCAxNjgsIDc1LCAwLjEpLCByZ2JhKDI2LCA0MiwgNzQsIDAuMDUpKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgY29sb3I6ICM5OTk7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtOwogICAgICAgICAgICBtYXJnaW46IDE1cHggMDsKICAgICAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkIHJnYmEoMjAwLCAxNjgsIDc1LCAwLjMpOwogICAgICAgIH0KIAogICAgICAgIC8qIFJlc3BvbnNpdmUgRGVzaWduICovCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7CiAgICAgICAgICAgIC50aW1lbGluZTo6YmVmb3JlIHsKICAgICAgICAgICAgICAgIGxlZnQ6IDA7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQob2RkKSAuY29udGVudCwKICAgICAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKGV2ZW4pIC5jb250ZW50IHsKICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDsKICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWRvdCB7CiAgICAgICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpbWVsaW5lLWhlYWRlciBoMSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGltZWxpbmUtaGVhZGVyIC5zdWJ0aXRsZSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAKICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHsKICAgICAgICAgICAgYm9keSB7CiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGltZWxpbmUtaXRlbSB7CiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLmNvbnRlbnQgewogICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI0M4QTg0QjsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC55ZWFyIHsKICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnRpdGxlIHsKICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLmltYWdlLXBsYWNlaG9sZGVyIHsKICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAKICAgICAgICAvKiBBbmltYXRpb25zICovCiAgICAgICAgQGtleWZyYW1lcyBmYWRlSW5Eb3duIHsKICAgICAgICAgICAgZnJvbSB7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0byB7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgQGtleWZyYW1lcyBmYWRlSW5VcCB7CiAgICAgICAgICAgIGZyb20gewogICAgICAgICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0byB7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgICAgICAgICB9CiAgICAgICAgfQogCiAgICAgICAgLnN0YXRzLWdyaWQgewogICAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTsKICAgICAgICAgICAgZ2FwOiAyMHB4OwogICAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4OwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OwogICAgICAgIH0KIAogICAgICAgIC5zdGF0LWNhcmQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAgICAgICAgICAgcGFkZGluZzogMzBweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDgpOwogICAgICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgI0M4QTg0QjsKICAgICAgICB9CiAKICAgICAgICAuc3RhdC1udW1iZXIgewogICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgY29sb3I6ICNDOEE4NEI7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICB9CiAKICAgICAgICAuc3RhdC1sYWJlbCB7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1zZWN0aW9uIHsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBtYXJnaW4tdG9wOiA4MHB4OwogICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxYTJhNGEgMCUsICMyZDNmNWEgMTAwJSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICB9CiAKICAgICAgICAuY3RhLXNlY3Rpb24gaDIgewogICAgICAgICAgICBmb250LXNpemU6IDJyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1zZWN0aW9uIHAgewogICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsKICAgICAgICAgICAgb3BhY2l0eTogMC45NTsKICAgICAgICB9CiAKICAgICAgICAuY3RhLWJ1dHRvbiB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgYmFja2dyb3VuZDogI0M4QTg0QjsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggNDBweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgICBmb250LXNpemU6IDFyZW07CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNDOEE4NEI7CiAgICAgICAgfQogCiAgICAgICAgLmN0YS1idXR0b246aG92ZXIgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICAgICAgY29sb3I6ICNDOEE4NEI7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMjBweCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4zKTsKICAgICAgICB9CiAgICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgogICAgPGRpdiBjbGFzcz0idGltZWxpbmUtY29udGFpbmVyIj4KICAgICAgICA8IS0tIEhlYWRlciAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1oZWFkZXIiPgogICAgICAgICAgICA8aDE+MjQgQW5uaSBkaSBXZWJwcm9qZWN0IEEuUi48L2gxPgogICAgICAgICAgICA8cCBjbGFzcz0ic3VidGl0bGUiPkRhbGwnZXJhIGRlaSBzaXRpIEhUTUwgc3RhdGljaSBhbGwnaW50ZWxsaWdlbnphIGFydGlmaWNpYWxlPC9wPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0ieWVhcnMtYmFkZ2UiPjIwMDIg4oaSIDIwMjY8L3NwYW4+CiAgICAgICAgICAgIDxwIGNsYXNzPSJ0YWdsaW5lIj5PbHRyZSA1MDAgcHJvZ2V0dGkuIDIwMCsgY2xpZW50aSBhdHRpdmkuIFVuYSBzb2xhIG1pc3Npb25lOiBpbCB2b3N0cm8gc3VjY2Vzc28gZGlnaXRhbGUuPC9wPgogICAgICAgIDwvZGl2PgogCiAgICAgICAgPCEtLSBTdGF0cyAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0cy1ncmlkIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4yNCs8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkFubmkgZGkgRXNwZXJpZW56YTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj41MDArPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5Qcm9nZXR0aSBSZWFsaXp6YXRpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1udW1iZXIiPjIwMCs8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkNsaWVudGkgQXR0aXZpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1udW1iZXIiPjEwMCU8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkNsaWVudGkgU29kZGlzZmF0dGk8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAKICAgICAgICA8IS0tIFRpbWVsaW5lIC0tPgogICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lIj4KICAgICAgICAgICAgPCEtLSAyMDAyIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDAyPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkxhIEZvbmRhemlvbmU8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIEFsZG8gUm9tYW5hIGZvbmRhIFdlYnByb2plY3QgQS5SLiBhIENhcHVhIChDYXNlcnRhKS4gRXJhIEhUTUwgcHVybywgRHJlYW13ZWF2ZXIsIGUgdmlzaW9uZSBjaGlhcmE6IGFpdXRhcmUgbGUgUE1JIGxvY2FsaSBhIHNjb3ByaXJlIGlsIHdlYi4gSWwgcHJpbW8gY2xpZW50ZT8gVW5hIGJvdHRlZ2EgZGVsIGNlbnRybyBzdG9yaWNvIGNoZSBvZ2dpIGFuY29yYSBnZW5lcmEgbGVhZCBkYWwgc2l0byBkZWwgMjAwNC4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+SFRNTCA0LjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPldlYiBEZXNpZ248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlNNRSBMb2NhbGk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDA1IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDA1LTIwMDg8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TCdFcmEgQ1NTIGUgZGVpIEJsb2c8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIFdvcmRQcmVzcyByaXZvbHV6aW9uYSBpbCBwYW5vcmFtYS4gV2VicHJvamVjdCBwYXNzYSBkYSBIVE1MIGEgdGVtcGxhdGUgQ01TLiBQcmltaSBlc3BlcmltZW50aSBkaSBTRU86IGtleXdvcmQgcmVzZWFyY2ggbWFudWFsZSwgbGluayBidWlsZGluZyBsb2NhbGUuIENsaWVudGUgc3RvcmljbyBkaSBvcmVmaWNlcmlhIGRlY2lkZSBkaSBzZWd1aXJjaSBwZXIgMTggYW5uaSBjb25zZWN1dGl2aS4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+V29yZFByZXNzPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TRU8gQmFzZTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+QmxvZyBQdWJsaXNoaW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAwOSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAwOS0yMDEyPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPlNjb3BlcnRhIGRlbGxhIEZvdG9ncmFmaWEgQXppZW5kYWxlPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBBbGRvIGFjcXVpc3RhIGxhIHByaW1hIERTTFIgcGVyICJmb3RvZ3JhZmFyZSBpIHByb3ByaSBzaXRpIiBlIHNpIGFjY29yZ2UgY2hlIGxhIHF1YWxpdMOgIHZpc2l2YSBlbGV2YSBpbCBwcm9nZXR0byB3ZWIgZGVsIDMwMCUuIEluaXppYSBhIG9mZnJpcmUgcGFjY2hldHRpIGludGVncmF0ZTogd2ViICsgZm90byBwcm9wcmlldGFyaWEuIEkgc2l0aSBpbml6aWFubyBhZCBhdmVyZSA8ZW0+aWRlbnRpdMOgPC9lbT4uCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkZvdG9ncmFmaWE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPldlYiArIFZpc3VhbDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+QnJhbmRpbmc8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDEzIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDEzLTIwMTY8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TCdFcmEgTW9iaWxlIGUgRS1jb21tZXJjZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgTW9iaWxlLWZpcnN0IG5vbiDDqCBvcHppb25lLCDDqCBvYmJsaWdvLiBGb25kYSBjb21wcmFtaXN1Yml0by5jb206IGUtY29tbWVyY2UgZHJvcHNoaXBwaW5nIHN1IFByZXN0YVNob3AuIExlemlvbmUgaW1wYXJhdGE6IGF1dG9tYXRpenphcmUgbGEgY2F0ZW5hIGRpIGFwcHJvdnZpZ2lvbmFtZW50by4gUU5BUCBOQVMgZGkgY2FzYSBnZXN0aXNjZSAyMDAwKyBTS1UuIFByaW1hIGVzcGVyaWVuemEgY29uIHByb2dyYW1tYXRpYyBTRU8uCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPk1vYmlsZSBEZXNpZ248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlByZXN0YVNob3A8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkF1dG9tYXRpb248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDE3IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDE3LTIwMTk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+U3BlY2lhbGl6emF6aW9uZTogRm90b2dyYWZpYSBQcm9mZXNzaW9uYWxlPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBMYSBmb3RvZ3JhZmlhIGRpIEFsZG8gaW5pemlhIGEgcmFjY29nbGllcmUgcmljb25vc2NpbWVudGkgc3VpIHByb2ZpbGkgSW5zdGFncmFtIChAYWxkb3JvbWFuYV9waG90byByYWdnaXVuZ2UgbWlnbGlhaWEgZGkgZm9sbG93ZXIpLiBGb3RvZ3JhZmEgdGVhdHJhbGksIGFyY2hpdGV0dHVyZSwgY29ycG9yYXRlIGV2ZW50cy4gSW50ZWdyYSBsYSBmb3RvZ3JhZmlhIGNvbWUgc2Vydml6aW8gPHN0cm9uZz5zdGFuZGFsb25lPC9zdHJvbmc+OiBsYSBwcm9mZXNzaW9uYWxpdMOgIGNvbnRhIHBpw7kgZGVsIHZvbHVtZS4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+Rm90b2dyYWZpYSBFdmVudDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+QXJjaGl0ZXR0dXJhPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QZXJzb25hbCBCcmFuZDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KIAogICAgICAgICAgICA8IS0tIDIwMjAgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMjAtMjAyMTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MYSBQYW5kZW1pYSAmIENvcmUgV2ViIFZpdGFsczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgTWVudHJlIGlsIG1vbmRvIHNpIGZlcm1hLCBXZWJwcm9qZWN0IGFnZ2lvcm5hIHR1dHRpIGdsaSBob3N0aW5nIGUgaW5mcmFzdHJ1dHR1cmUuIEdvb2dsZSBhbm51bmNpYSBDb3JlIFdlYiBWaXRhbHMuIEFsZG8gZGl2ZW50YSBlc3BlcnRvIGRpIHBlcmZvcm1hbmNlOiBvZ25pIHNpdG8gc2NlbmRlIHNvdHRvIGkgMiBzZWNvbmRpIGRpIGNhcmljYW1lbnRvLiBDbGllbnRlIGRpIGZvdG9ncmFmaWEgc2NvcHJlIGNoZSB2ZWxvY2l0w6AgPSBjb252ZXJzaW9uaS4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UGVyZm9ybWFuY2U8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlBhZ2UgU3BlZWQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkNvcmUgV2ViIFZpdGFsczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KIAogICAgICAgICAgICA8IS0tIDIwMjIgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMjItMjAyMzwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MJ0VyYSBkZWxsJ0FJICYgQXV0b21hemlvbmUgQXZhbnphdGE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIENoYXRHUFQgY2FtYmlhIHR1dHRvLiBXZWJwcm9qZWN0IHNwZXJpbWVudGEgY29uIEFJIHBlciBjb250ZW50IGdlbmVyYXRpb24sIG1hIG1hbnRpZW5lIGNvbnRyb2xsbyBlZGl0b3JpYWxlIHVtYW5vLiBJbml6aWEgY29zdHJ1emlvbmUgZGkgUFdBIHBlciBjbGllbnRpOiBhcHAtbGlrZSBleHBlcmllbmNlIHNlbnphIEFwcCBTdG9yZS4gUmlwYXJhIGkgcHJpbWkgZGFubmkgZGEgIkFJLWdlbmVyYXRlZCBjb250ZW50IGxvdyBxdWFsaXR5IiBkaSBjb21wZXRpdG9yLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BSSAmIE1MPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QV0E8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkF1dG9tYXRpb248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDI0LTIwMjYgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMjQtMjAyNjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5JbnRlZ3JhemlvbmUgVG90YWxlOiBXZWIgKyBGb3RvICsgQUkgKyBSZXBhaXI8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIFdlYnByb2plY3Qgw6ggb2dnaSB1bmEgY29uc3VsdG9yaWEgPHN0cm9uZz4zNjDCsDwvc3Ryb25nPjogYWl1dGEgUE1FIG5vbiBzb2xvIGEgdmVuZGVyZSBvbmxpbmUsIG1hIGEgY29zdHJ1aXJlIDxlbT5pZGVudGl0w6AgdmlzaXZhIGNyZWRpYmlsZTwvZW0+LiBSZXBhaXIgc2hvcCBwcm9wcmlldGFyaW8gZGlhZ25vc3RpY2EgcHJvYmxlbWkgaGFyZHdhcmUgY29uIEFJLiBCbG9nIHN1IGNvbXByYW1pc3ViaXRvIGdlbmVyYSAyMDAwKyBzZXNzaW9uaS9tZXNlLiBMaW5rZWRJbiByYWdnaXVuZ2UgMTUwMCsgZm9sbG93ZXIuIEwnZXNwZXJpZW56YSBkaSAyNCBhbm5pIGRpdmVudGEgaWwgdm9zdHJvIHZhbnRhZ2dpbyBjb21wZXRpdGl2by4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+RnVsbC1TdGFjayBDb25zdWx0aW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TRU8gJiBBSTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+VmlzdWFsICsgVGVjaDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+VGhvdWdodCBMZWFkZXJzaGlwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogCiAgICAgICAgPCEtLSBDVEEgU2VjdGlvbiAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJjdGEtc2VjdGlvbiI+CiAgICAgICAgICAgIDxoMj5JbCBWb3N0cm8gUHJvc3NpbW8gQ2FwaXRvbG88L2gyPgogICAgICAgICAgICA8cD4yNCBhbm5pIGRpIGVzcGVyaWVuemEuIFVuIHRlYW0gY2hlIGNvbm9zY2UgaSB2b3N0cmkgcHJvYmxlbWkgcHJpbWEgY2hlIGxpIGNvbm9zY2lhdGUgdm9pLjwvcD4KICAgICAgICAgICAgPGEgaHJlZj0iL2NyZWF6aW9uZS1zaXRpLXdlYi8jYXQtY29udGFjdCIgY2xhc3M9ImN0YS1idXR0b24iPkluaXppYW1vIEluc2llbWU8L2E+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KIAogICAgPCEtLSBKU09OLUxEIFNjaGVtYSAtLT4KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+CiAgICB7CiAgICAgICAgIkBjb250ZXh0IjogImh0dHBzOi8vc2NoZW1hLm9yZyIsCiAgICAgICAgIkB0eXBlIjogIk9yZ2FuaXphdGlvbiIsCiAgICAgICAgIm5hbWUiOiAiV2VicHJvamVjdCBBLlIuIGRpIEFsZG8gUm9tYW5hIiwKICAgICAgICAidXJsIjogImh0dHBzOi8vd3d3LndlYnBhci5pdCIsCiAgICAgICAgImxvZ28iOiAiaHR0cHM6Ly93d3cud2VicGFyLml0L2xvZ28ucG5nIiwKICAgICAgICAiZGVzY3JpcHRpb24iOiAiMjQgYW5uaSBkaSB3ZWIgZGVzaWduLCBTRU8sIGZvdG9ncmFmaWEgcHJvZmVzc2lvbmFsZSBlIGNvbnN1bGVuemEgZGlnaXRhbGUgcGVyIFBNRSBuZWwgU3VkIEl0YWxpYSIsCiAgICAgICAgImZvdW5kaW5nRGF0ZSI6ICIyMDAyIiwKICAgICAgICAiZm91bmRlciI6IHsKICAgICAgICAgICAgIkB0eXBlIjogIlBlcnNvbiIsCiAgICAgICAgICAgICJuYW1lIjogIkFsZG8gUm9tYW5hIiwKICAgICAgICAgICAgImpvYlRpdGxlIjogIkZvdW5kZXIgJiBEaWdpdGFsIFN0cmF0ZWdpc3QiLAogICAgICAgICAgICAidXJsIjogImh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9pbi9hbGRvLXJvbWFuYS00MDc4NjI5MT91dG1fc291cmNlPXNoYXJlX3ZpYSZ1dG1fY29udGVudD1wcm9maWxlJnV0bV9tZWRpdW09bWVtYmVyX2lvcyIsCiAgICAgICAgICAgICJpbWFnZSI6ICJodHRwczovL3dlYnBhci5pdC9hbGRvLXJvbWFuYS5qcGciCiAgICAgICAgfSwKICAgICAgICAibG9jYXRpb24iOiB7CiAgICAgICAgICAgICJAdHlwZSI6ICJQbGFjZSIsCiAgICAgICAgICAgICJuYW1lIjogIkNhcHVhIiwKICAgICAgICAgICAgImFkZHJlc3MiOiB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiUG9zdGFsQWRkcmVzcyIsCiAgICAgICAgICAgICAgICAiYWRkcmVzc0xvY2FsaXR5IjogIkNhcHVhIiwKICAgICAgICAgICAgICAgICJhZGRyZXNzUmVnaW9uIjogIkNFIiwKICAgICAgICAgICAgICAgICJhZGRyZXNzQ291bnRyeSI6ICJJVCIKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInNhbWVBcyI6IFsKICAgICAgICAgICAgImh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9pbi9hbGRvLXJvbWFuYS00MDc4NjI5MT91dG1fc291cmNlPXNoYXJlX3ZpYSZ1dG1fY29udGVudD1wcm9maWxlJnV0bV9tZWRpdW09bWVtYmVyX2lvcyIsCiAgICAgICAgICAgICJodHRwczovL2luc3RhZ3JhbS5jb20vd2VicHJvamVjdGFyIiwKICAgICAgICAgICAgImh0dHBzOi8vaW5zdGFncmFtLmNvbS9hbGRvcm9tYW5hX3Bob3RvIgogICAgICAgIF0sCiAgICAgICAgInNlcnZpY2UiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJAdHlwZSI6ICJTZXJ2aWNlIiwKICAgICAgICAgICAgICAgICJuYW1lIjogIldlYiBEZXNpZ24gJiBEZXZlbG9wbWVudCIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiU2l0aSB3ZWIgcHJvZmVzc2lvbmFsaSBwZXIgUE1FIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJTRU8gT3B0aW1pemF0aW9uIiwKICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJQb3NpemlvbmFtZW50byBuZWkgbW90b3JpIGRpIHJpY2VyY2EiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJAdHlwZSI6ICJTZXJ2aWNlIiwKICAgICAgICAgICAgICAgICJuYW1lIjogIkZvdG9ncmFmaWEgQXppZW5kYWxlIiwKICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJGb3RvZ3JhZmlhIHByb2Zlc3Npb25hbGUgcGVyIGJyYW5kaW5nIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJFLWNvbW1lcmNlIFNvbHV0aW9ucyIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiVmVuZGl0YSBvbmxpbmUgc3UgUHJlc3RhU2hvcCIKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgImFnZ3JlZ2F0ZVJhdGluZyI6IHsKICAgICAgICAgICAgIkB0eXBlIjogIkFnZ3JlZ2F0ZVJhdGluZyIsCiAgICAgICAgICAgICJyYXRpbmdWYWx1ZSI6ICI1IiwKICAgICAgICAgICAgImJlc3RSYXRpbmciOiAiNSIsCiAgICAgICAgICAgICJ3b3JzdFJhdGluZyI6ICIxIiwKICAgICAgICAgICAgInJhdGluZ0NvdW50IjogIjIwMCIsCiAgICAgICAgICAgICJyZXZpZXdDb3VudCI6ICIyMDAiCiAgICAgICAgfSwKICAgICAgICAia25vd3NBYm91dCI6IFsKICAgICAgICAgICAgIldlYiBEZXNpZ24iLAogICAgICAgICAgICAiU0VPIiwKICAgICAgICAgICAgIldvcmRQcmVzcyIsCiAgICAgICAgICAgICJQcmVzdGFTaG9wIiwKICAgICAgICAgICAgIkRpZ2l0YWwgTWFya2V0aW5nIiwKICAgICAgICAgICAgIlBob3RvZ3JhcGh5IiwKICAgICAgICAgICAgIkUtY29tbWVyY2UiLAogICAgICAgICAgICAiQUkgJiBBdXRvbWF0aW9uIgogICAgICAgIF0KICAgIH0KICAgIDwvc2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD57QnnYXHpuUAB9veflhg93JGJhZWM1MTY4LWI3M2EtNDNhYi05MDhkLWI1MjdiMGRjMTkyNHh3DGNvcmUvaGVhZGluZ30CdyQ0NjE2ZTgyNy1lY2Y1LTRjMWQtOTdiNi04NDE3NjdiOGM5Nzh4dwxjb3JlL2hlYWRpbmd9AnckNDRmMjJjNTAtNjE2ZC00NTQ2LWExZmUtYWUxYTI3OGI5YWNleHcMY29yZS9oZWFkaW5nfQJ3JDBiYWIwMWJmLTNkY2ItNDBkMy04ZmZkLWI5MTFlNTA4NzA0OXh3DGNvcmUvaGVhZGluZ30CdyQxYjlkNDUwZS00MmJjLTQxMTEtYWZlMS0yODg0NjM0M2JmNmN3CWNvcmUvY29kZXckMTUxZWYyY2YtMGQ5ZS00ZmE0LWIwY2MtYTQ4ZWI2OTgzYjVieHcOY29yZS9wYXJhZ3JhcGh5d0REaWdpdGEgLyBwZXIgc2NlZ2xpZXJlIHVuIGJsb2NjbyBvcHB1cmUgLy8gcGVyIHV0aWxpenphcmUgQ29udGVudCBBSXckNWVjMTU4YTQtZTJmNy00MDk1LThhMjItYzNjNzEzZGE2ZmI3eHcOY29yZS9wYXJhZ3JhcGh5d0REaWdpdGEgLyBwZXIgc2NlZ2xpZXJlIHVuIGJsb2NjbyBvcHB1cmUgLy8gcGVyIHV0aWxpenphcmUgQ29udGVudCBBSXckZDFjMGI2ZTYtZGUyMS00OGU0LWJkNWEtMTg4NWI5NTRlZTZjdwxjb3JlL2hlYWRpbmd9AnckMWQyZjE1NDUtZjRmYi00NmMxLWFhNWItZTdkY2JkNWUyZDlmdwljb3JlL2NvZGV3JDg5YWIwMjQ2LTNmM2YtNDc1Yy1hZmZjLTA2Y2ZmNTFlYWZhOXh3DmNvcmUvcGFyYWdyYXBoeXdERGlnaXRhIC8gcGVyIHNjZWdsaWVyZSB1biBibG9jY28gb3BwdXJlIC8vIHBlciB1dGlsaXp6YXJlIENvbnRlbnQgQUl3JGE4ZTI2MzE5LTUyNGEtNGM3OS05NjM2LWU2OTkxNjhlZTk2Y3h3DmNvcmUvcGFyYWdyYXBoeXdERGlnaXRhIC8gcGVyIHNjZWdsaWVyZSB1biBibG9jY28gb3BwdXJlIC8vIHBlciB1dGlsaXp6YXJlIENvbnRlbnQgQUl3JGZlZWIyNDc1LTZlODctNDdkNy1iYTc1LWE5NTcxNTYzNjFlNHfzsAE8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iaXQiPgo8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4KICAgIDx0aXRsZT4yNCBBbm5pIGRpIFdlYnByb2plY3QgQS5SLiB8IFRpbWVsaW5lIDIwMDItMjAyNjwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iTGEgc3RvcmlhIGRpIFdlYnByb2plY3QgQS5SLjogMjQgYW5uaSBkaSBldm9sdXppb25lIHdlYiBkZXNpZ24sIFNFTywgZm90b2dyYWZpYSBlIGlubm92YXppb25lIGRpZ2l0YWxlIGEgQ2FwdWEuIj4KICAgIDxzdHlsZT4KICAgICAgICAqIHsKICAgICAgICAgICAgbWFyZ2luOiAwOwogICAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIH0KIAogICAgICAgIGJvZHkgewogICAgICAgICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbicsICdVYnVudHUnLCAnQ2FudGFyZWxsJywgc2Fucy1zZXJpZjsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1ZjdmYSAwJSwgI2YwZjJmNSAxMDAlKTsKICAgICAgICAgICAgcGFkZGluZzogNDBweCAyMHB4OwogICAgICAgICAgICBjb2xvcjogIzMzMzsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtY29udGFpbmVyIHsKICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7CiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgIH0KCiAgICAgICAgLyogU1RJTEUgUEVSIEgyIElOU0VSSVRJICovCiAgICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciBoMiB7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICAgICAgICAgIG1hcmdpbjogNTBweCAwIDIwcHggMDsKICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgfQoKICAgICAgICAuY3RhLXNlY3Rpb24gaDIgewogICAgICAgICAgIGNvbG9yOiAjZDk1MzRmICFpbXBvcnRhbnQ7CiAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsKICAgICAgICB9CgogICAgICAgIC50aW1lbGluZS1oZWFkZXIgewogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluRG93biAwLjhzIGVhc2Utb3V0OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1oZWFkZXIgaDEgewogICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDV2dywgMy41cmVtKTsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciAuc3VidGl0bGUgewogICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgICAgICAgY29sb3I6ICM2NjY7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWhlYWRlciAudGFnbGluZSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgICAgICAgICAgY29sb3I6ICM5OTk7CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaGVhZGVyIC55ZWFycy1iYWRnZSB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgYmFja2dyb3VuZDogI0M4QTg0QjsKICAgICAgICAgICAgY29sb3I6IHdoaXRlOwogICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDI4cHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjMpOwogICAgICAgIH0KIAogICAgICAgIC8qIFRpbWVsaW5lIE1haW4gU3RydWN0dXJlICovCiAgICAgICAgLnRpbWVsaW5lIHsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lOjpiZWZvcmUgewogICAgICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsKICAgICAgICAgICAgd2lkdGg6IDRweDsKICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjQzhBODRCIDAlLCAjMWEyYTRhIDEwMCUpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgfQogCiAgICAgICAgLyogVGltZWxpbmUgSXRlbSAqLwogICAgICAgIC50aW1lbGluZS1pdGVtIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjhzIGVhc2Utb3V0IGJvdGg7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDEpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjFzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDIpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjJzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDMpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjNzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDQpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjRzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDUpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjVzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDYpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjZzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDcpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjdzOyB9CiAgICAgICAgLnRpbWVsaW5lLWl0ZW06bnRoLWNoaWxkKDgpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjhzOyB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQob2RkKSAuY29udGVudCB7CiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpOwogICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsKICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDsKICAgICAgICB9CiAKICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoZXZlbikgLmNvbnRlbnQgewogICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTsKICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1kb3QgewogICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgICAgICAgICB3aWR0aDogMjBweDsKICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAgICAgICAgICAgYm9yZGVyOiA0cHggc29saWQgI0M4QTg0QjsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgICB0b3A6IDMwcHg7CiAgICAgICAgICAgIHotaW5kZXg6IDEwOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYSgyMDAsIDE2OCwgNzUsIDAuMSk7CiAgICAgICAgfQogCiAgICAgICAgLnRpbWVsaW5lLWl0ZW06aG92ZXIgLnRpbWVsaW5lLWRvdCB7CiAgICAgICAgICAgIHdpZHRoOiAyOHB4OwogICAgICAgICAgICBoZWlnaHQ6IDI4cHg7CiAgICAgICAgICAgIHRvcDogMjZweDsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTJweCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4yKTsKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWEyYTRhOwogICAgICAgIH0KIAogICAgICAgIC5jb250ZW50IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7CiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI0M4QTg0QjsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsKICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIH0KIAogICAgICAgIC50aW1lbGluZS1pdGVtOmhvdmVyIC5jb250ZW50IHsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTIpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMWEyYTRhOwogICAgICAgIH0KIAogICAgICAgIC55ZWFyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgICAgIGNvbG9yOiAjQzhBODRCOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7CiAgICAgICAgfQogCiAgICAgICAgLnRpdGxlIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiAjMWEyYTRhOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICAgIH0KIAogICAgICAgIC5kZXNjcmlwdGlvbiB7CiAgICAgICAgICAgIGNvbG9yOiAjNjY2OwogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7CiAgICAgICAgfQogCiAgICAgICAgLnRhZ3MgewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OwogICAgICAgIH0KIAogICAgICAgIC50YWcgewogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjEpOwogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgcGFkZGluZzogNHB4IDEycHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIwMCwgMTY4LCA3NSwgMC4zKTsKICAgICAgICB9CiAKICAgICAgICAuaW1hZ2UtcGxhY2Vob2xkZXIgewogICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyMDAsIDE2OCwgNzUsIDAuMSksIHJnYmEoMjYsIDQyLCA3NCwgMC4wNSkpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgICBjb2xvcjogIzk5OTsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07CiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwOwogICAgICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgcmdiYSgyMDAsIDE2OCwgNzUsIDAuMyk7CiAgICAgICAgfQogCiAgICAgICAgLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi8KICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAgICAgLnRpbWVsaW5lOjpiZWZvcmUgewogICAgICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1pdGVtOm50aC1jaGlsZChvZGQpIC5jb250ZW50LAogICAgICAgICAgICAudGltZWxpbmUtaXRlbTpudGgtY2hpbGQoZXZlbikgLmNvbnRlbnQgewogICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4OwogICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGltZWxpbmUtZG90IHsKICAgICAgICAgICAgICAgIGxlZnQ6IDA7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGltZWxpbmUtaGVhZGVyIGgxIHsKICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1oZWFkZXIgLnN1YnRpdGxlIHsKICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciBoMiB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTsKICAgICAgICAgICAgICAgIG1hcmdpbjogNDBweCAwIDE1cHggMDsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkgewogICAgICAgICAgICBib2R5IHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDsKICAgICAgICAgICAgfQogCiAgICAgICAgICAgIC50aW1lbGluZS1pdGVtIHsKICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAuY29udGVudCB7CiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4OwogICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjQzhBODRCOwogICAgICAgICAgICB9CiAKICAgICAgICAgICAgLnllYXIgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAudGl0bGUgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIH0KIAogICAgICAgICAgICAuaW1hZ2UtcGxhY2Vob2xkZXIgewogICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciBoMiB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwIDEycHggMDsKICAgICAgICAgICAgfQogICAgICAgIH0KIAogICAgICAgIC8qIEFuaW1hdGlvbnMgKi8KICAgICAgICBAa2V5ZnJhbWVzIGZhZGVJbkRvd24gewogICAgICAgICAgICBmcm9tIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRvIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAKICAgICAgICBAa2V5ZnJhbWVzIGZhZGVJblVwIHsKICAgICAgICAgICAgZnJvbSB7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRvIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAKICAgICAgICAuc3RhdHMtZ3JpZCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpOwogICAgICAgICAgICBnYXA6IDIwcHg7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7CiAgICAgICAgfQogCiAgICAgICAgLnN0YXQtY2FyZCB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOwogICAgICAgICAgICBwYWRkaW5nOiAzMHB4OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7CiAgICAgICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjQzhBODRCOwogICAgICAgIH0KIAogICAgICAgIC5zdGF0LW51bWJlciB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgICAgICBjb2xvcjogI0M4QTg0QjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgIH0KIAogICAgICAgIC5zdGF0LWxhYmVsIHsKICAgICAgICAgICAgY29sb3I6ICMxYTJhNGE7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsKICAgICAgICB9CiAKICAgICAgICAuY3RhLXNlY3Rpb24gewogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDgwcHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFhMmE0YSAwJSwgIzJkM2Y1YSAxMDAlKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDsKICAgICAgICAgICAgY29sb3I6IHdoaXRlOwogICAgICAgIH0KIAogICAgICAgIC5jdGEtc2VjdGlvbiBoMiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICB9CiAKICAgICAgICAuY3RhLXNlY3Rpb24gcCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OwogICAgICAgICAgICBvcGFjaXR5OiAwLjk1OwogICAgICAgIH0KIAogICAgICAgIC5jdGEtYnV0dG9uIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjQzhBODRCOwogICAgICAgICAgICBjb2xvcjogIzFhMmE0YTsKICAgICAgICAgICAgcGFkZGluZzogMTRweCA0MHB4OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4OwogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsKICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0M4QTg0QjsKICAgICAgICB9CiAKICAgICAgICAuY3RhLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgICBjb2xvcjogI0M4QTg0QjsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAyMHB4IHJnYmEoMjAwLCAxNjgsIDc1LCAwLjMpOwogICAgICAgIH0KICAgIDwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CgogICAgPGRpdiBjbGFzcz0idGltZWxpbmUtY29udGFpbmVyIj4KICAgICAgICA8IS0tIEhlYWRlciAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1oZWFkZXIiPgogICAgICAgICAgICA8aDE+MjQgQW5uaSBkaSBXZWJwcm9qZWN0IEEuUi48L2gxPgogICAgICAgICAgICA8cCBjbGFzcz0ic3VidGl0bGUiPkRhbGwnZXJhIGRlaSBzaXRpIEhUTUwgc3RhdGljaSBhbGwnaW50ZWxsaWdlbnphIGFydGlmaWNpYWxlPC9wPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0ieWVhcnMtYmFkZ2UiPjIwMDIg4oaSIDIwMjY8L3NwYW4+CiAgICAgICAgICAgIDxwIGNsYXNzPSJ0YWdsaW5lIj5PbHRyZSA1MDAgcHJvZ2V0dGkuIDIwMCsgY2xpZW50aSBhdHRpdmkuIFVuYSBzb2xhIG1pc3Npb25lOiBpbCB2b3N0cm8gc3VjY2Vzc28gZGlnaXRhbGUuPC9wPgogICAgICAgIDwvZGl2PgogCiAgICAgICAgPCEtLSBTdGF0cyAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0cy1ncmlkIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj4yNCs8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkFubmkgZGkgRXNwZXJpZW56YTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1jYXJkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj41MDArPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5Qcm9nZXR0aSBSZWFsaXp6YXRpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1udW1iZXIiPjIwMCs8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkNsaWVudGkgQXR0aXZpPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1udW1iZXIiPjEwMCU8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkNsaWVudGkgU29kZGlzZmF0dGk8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDwhLS0gSDIgIzEgLS0+CiAgICAgICAgPGgyPldlYiBEZXNpZ24gUHJvZmVzc2lvbmFsZSBhIENhcHVhIGRhbCAyMDAyPC9oMj4KIAogICAgICAgIDwhLS0gVGltZWxpbmUgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUiPgogICAgICAgICAgICA8IS0tIDIwMDIgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMDI8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TGEgRm9uZGF6aW9uZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgQWxkbyBSb21hbmEgZm9uZGEgV2VicHJvamVjdCBBLlIuIGEgQ2FwdWEgKENhc2VydGEpLiBFcmEgSFRNTCBwdXJvLCBEcmVhbXdlYXZlciwgZSB2aXNpb25lIGNoaWFyYTogYWl1dGFyZSBsZSBQTUkgbG9jYWxpIGEgc2NvcHJpcmUgaWwgd2ViLiBJbCBwcmltbyBjbGllbnRlPyBVbmEgYm90dGVnYSBkZWwgY2VudHJvIHN0b3JpY28gY2hlIG9nZ2kgYW5jb3JhIGdlbmVyYSBsZWFkIGRhbCBzaXRvIGRlbCAyMDA0LgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5IVE1MIDQuMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+V2ViIERlc2lnbjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+U01FIExvY2FsaTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KIAogICAgICAgICAgICA8IS0tIDIwMDUgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMDUtMjAwODwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5MJ0VyYSBDU1MgZSBkZWkgQmxvZzwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgV29yZFByZXNzIHJpdm9sdXppb25hIGlsIHBhbm9yYW1hLiBXZWJwcm9qZWN0IHBhc3NhIGRhIEhUTUwgYSB0ZW1wbGF0ZSBDTVMuIFByaW1pIGVzcGVyaW1lbnRpIGRpIFNFTzoga2V5d29yZCByZXNlYXJjaCBtYW51YWxlLCBsaW5rIGJ1aWxkaW5nIGxvY2FsZS4gQ2xpZW50ZSBzdG9yaWNvIGRpIG9yZWZpY2VyaWEgZGVjaWRlIGRpIHNlZ3VpcmNpIHBlciAxOCBhbm5pIGNvbnNlY3V0aXZpLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5Xb3JkUHJlc3M8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlNFTyBCYXNlPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5CbG9nIFB1Ymxpc2hpbmc8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDA5IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDA5LTIwMTI8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+U2NvcGVydGEgZGVsbGEgRm90b2dyYWZpYSBBemllbmRhbGU8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIEFsZG8gYWNxdWlzdGEgbGEgcHJpbWEgRFNMUiBwZXIgImZvdG9ncmFmYXJlIGkgcHJvcHJpIHNpdGkiIGUgc2kgYWNjb3JnZSBjaGUgbGEgcXVhbGl0w6AgdmlzaXZhIGVsZXZhIGlsIHByb2dldHRvIHdlYiBkZWwgMzAwJS4gSW5pemlhIGEgb2ZmcmlyZSBwYWNjaGV0dGkgaW50ZWdyYXRlOiB3ZWIgKyBmb3RvIHByb3ByaWV0YXJpYS4gSSBzaXRpIGluaXppYW5vIGFkIGF2ZXJlIDxlbT5pZGVudGl0w6A8L2VtPi4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+Rm90b2dyYWZpYTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+V2ViICsgVmlzdWFsPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5CcmFuZGluZzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDwhLS0gSDIgIzIgLS0+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxoMj5TRU8gZSBGb3RvZ3JhZmlhIEF6aWVuZGFsZSBwZXIgUE1FIENhc2VydGE8L2gyPgoKICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CiAKICAgICAgICAgICAgPCEtLSAyMDEzIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDEzLTIwMTY8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TCdFcmEgTW9iaWxlIGUgRS1jb21tZXJjZTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgTW9iaWxlLWZpcnN0IG5vbiDDqCBvcHppb25lLCDDqCBvYmJsaWdvLiBGb25kYSBjb21wcmFtaXN1Yml0by5jb206IGUtY29tbWVyY2UgZHJvcHNoaXBwaW5nIHN1IFByZXN0YVNob3AuIExlemlvbmUgaW1wYXJhdGE6IGF1dG9tYXRpenphcmUgbGEgY2F0ZW5hIGRpIGFwcHJvdnZpZ2lvbmFtZW50by4gUU5BUCBOQVMgZGkgY2FzYSBnZXN0aXNjZSAyMDAwKyBTS1UuIFByaW1hIGVzcGVyaWVuemEgY29uIHByb2dyYW1tYXRpYyBTRU8uCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFncyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPk1vYmlsZSBEZXNpZ248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlByZXN0YVNob3A8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPkF1dG9tYXRpb248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAKICAgICAgICAgICAgPCEtLSAyMDE3IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDE3LTIwMTk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+U3BlY2lhbGl6emF6aW9uZTogRm90b2dyYWZpYSBQcm9mZXNzaW9uYWxlPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBMYSBmb3RvZ3JhZmlhIGRpIEFsZG8gaW5pemlhIGEgcmFjY29nbGllcmUgcmljb25vc2NpbWVudGkgc3VpIHByb2ZpbGkgSW5zdGFncmFtIChAYWxkb3JvbWFuYV9waG90byByYWdnaXVuZ2UgbWlnbGlhaWEgZGkgZm9sbG93ZXIpLiBGb3RvZ3JhZmEgdGVhdHJhbGksIGFyY2hpdGV0dHVyZSwgY29ycG9yYXRlIGV2ZW50cy4gSW50ZWdyYSBsYSBmb3RvZ3JhZmlhIGNvbWUgc2Vydml6aW8gPHN0cm9uZz5zdGFuZGFsb25lPC9zdHJvbmc+OiBsYSBwcm9mZXNzaW9uYWxpdMOgIGNvbnRhIHBpw7kgZGVsIHZvbHVtZS4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+Rm90b2dyYWZpYSBFdmVudDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+QXJjaGl0ZXR0dXJhPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QZXJzb25hbCBCcmFuZDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDwhLS0gSDIgIzMgLS0+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxoMj5Bc3Npc3RlbnphIEluZm9ybWF0aWNhIGUgUmlwYXJhemlvbmkgUEMgbmVsIFN1ZCBJdGFsaWE8L2gyPgoKICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CiAKICAgICAgICAgICAgPCEtLSAyMDIwIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWRvdCI+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5ZWFyIj4yMDIwLTIwMjE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+TGEgUGFuZGVtaWEgJmFtcDsgQ29yZSBXZWIgVml0YWxzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICBNZW50cmUgaWwgbW9uZG8gc2kgZmVybWEsIFdlYnByb2plY3QgYWdnaW9ybmEgdHV0dGkgZ2xpIGhvc3RpbmcgZSBpbmZyYXN0cnV0dHVyZS4gR29vZ2xlIGFubnVuY2lhIENvcmUgV2ViIFZpdGFscy4gQWxkbyBkaXZlbnRhIGVzcGVydG8gZGkgcGVyZm9ybWFuY2U6IG9nbmkgc2l0byBzY2VuZGUgc290dG8gaSAyIHNlY29uZGkgZGkgY2FyaWNhbWVudG8uIENsaWVudGUgZGkgZm90b2dyYWZpYSBzY29wcmUgY2hlIHZlbG9jaXTDoCA9IGNvbnZlcnNpb25pLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5QZXJmb3JtYW5jZTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UGFnZSBTcGVlZDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+Q29yZSBXZWIgVml0YWxzPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogCiAgICAgICAgICAgIDwhLS0gMjAyMiAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZS1kb3QiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ieWVhciI+MjAyMi0yMDIzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPkwnRXJhIGRlbGwnQUkgJmFtcDsgQXV0b21hemlvbmUgQXZhbnphdGE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIENoYXRHUFQgY2FtYmlhIHR1dHRvLiBXZWJwcm9qZWN0IHNwZXJpbWVudGEgY29uIEFJIHBlciBjb250ZW50IGdlbmVyYXRpb24sIG1hIG1hbnRpZW5lIGNvbnRyb2xsbyBlZGl0b3JpYWxlIHVtYW5vLiBJbml6aWEgY29zdHJ1emlvbmUgZGkgUFdBIHBlciBjbGllbnRpOiBhcHAtbGlrZSBleHBlcmllbmNlIHNlbnphIEFwcCBTdG9yZS4gUmlwYXJhIGkgcHJpbWkgZGFubmkgZGEgIkFJLWdlbmVyYXRlZCBjb250ZW50IGxvdyBxdWFsaXR5IiBkaSBjb21wZXRpdG9yLgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BSSAmYW1wOyBNTDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+UFdBPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5BdXRvbWF0aW9uPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPCEtLSBIMiAjNCAtLT4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGgyPkNvbWUgMjQgQW5uaSBkaSBFc3BlcmllbnphIFRpIEFpdXRhbm8gYSBDcmVzY2VyZSBPbmxpbmU8L2gyPgoKICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lbGluZSI+CiAKICAgICAgICAgICAgPCEtLSAyMDI0LTIwMjYgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWVsaW5lLWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZWxpbmUtZG90Ij48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InllYXIiPjIwMjQtMjAyNjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5JbnRlZ3JhemlvbmUgVG90YWxlOiBXZWIgKyBGb3RvICsgQUkgKyBSZXBhaXI8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIFdlYnByb2plY3Qgw6ggb2dnaSB1bmEgY29uc3VsdG9yaWEgPHN0cm9uZz4zNjDCsDwvc3Ryb25nPjogYWl1dGEgUE1FIG5vbiBzb2xvIGEgdmVuZGVyZSBvbmxpbmUsIG1hIGEgY29zdHJ1aXJlIDxlbT5pZGVudGl0w6AgdmlzaXZhIGNyZWRpYmlsZTwvZW0+LiBSZXBhaXIgc2hvcCBwcm9wcmlldGFyaW8gZGlhZ25vc3RpY2EgcHJvYmxlbWkgaGFyZHdhcmUgY29uIEFJLiBCbG9nIHN1IGNvbXByYW1pc3ViaXRvIGdlbmVyYSAyMDAwKyBzZXNzaW9uaS9tZXNlLiBMaW5rZWRJbiByYWdnaXVuZ2UgMTUwMCsgZm9sbG93ZXIuIEwnZXNwZXJpZW56YSBkaSAyNCBhbm5pIGRpdmVudGEgaWwgdm9zdHJvIHZhbnRhZ2dpbyBjb21wZXRpdGl2by4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWdzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+RnVsbC1TdGFjayBDb25zdWx0aW5nPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFnIj5TRU8gJmFtcDsgQUk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlZpc3VhbCArIFRlY2g8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWciPlRob3VnaHQgTGVhZGVyc2hpcDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KIAogICAgICAgIDwhLS0gQ1RBIFNlY3Rpb24gLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iY3RhLXNlY3Rpb24iPgogICAgICAgICAgICA8aDI+SWwgVm9zdHJvIFByb3NzaW1vIENhcGl0b2xvPC9oMj4KICAgICAgICAgICAgPHA+MjQgYW5uaSBkaSBlc3BlcmllbnphLiBVbiB0ZWFtIGNoZSBjb25vc2NlIGkgdm9zdHJpIHByb2JsZW1pIHByaW1hIGNoZSBsaSBjb25vc2NpYXRlIHZvaS48L3A+CiAgICAgICAgICAgIDxhIGhyZWY9Ii9jcmVhemlvbmUtc2l0aS13ZWIvI2F0LWNvbnRhY3QiIGNsYXNzPSJjdGEtYnV0dG9uIj5Jbml6aWFtbyBJbnNpZW1lPC9hPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAKICAgIDwhLS0gSlNPTi1MRCBTY2hlbWEgLS0+CiAgICA8c2NyaXB0IHR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iPgogICAgewogICAgICAgICJAY29udGV4dCI6ICJodHRwczovL3NjaGVtYS5vcmciLAogICAgICAgICJAdHlwZSI6ICJPcmdhbml6YXRpb24iLAogICAgICAgICJuYW1lIjogIldlYnByb2plY3QgQS5SLiBkaSBBbGRvIFJvbWFuYSIsCiAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53ZWJwYXIuaXQiLAogICAgICAgICJsb2dvIjogImh0dHBzOi8vd3d3LndlYnBhci5pdC9sb2dvLnBuZyIsCiAgICAgICAgImRlc2NyaXB0aW9uIjogIjI0IGFubmkgZGkgd2ViIGRlc2lnbiwgU0VPLCBmb3RvZ3JhZmlhIHByb2Zlc3Npb25hbGUgZSBjb25zdWxlbnphIGRpZ2l0YWxlIHBlciBQTUUgbmVsIFN1ZCBJdGFsaWEiLAogICAgICAgICJmb3VuZGluZ0RhdGUiOiAiMjAwMiIsCiAgICAgICAgImZvdW5kZXIiOiB7CiAgICAgICAgICAgICJAdHlwZSI6ICJQZXJzb24iLAogICAgICAgICAgICAibmFtZSI6ICJBbGRvIFJvbWFuYSIsCiAgICAgICAgICAgICJqb2JUaXRsZSI6ICJGb3VuZGVyICYgRGlnaXRhbCBTdHJhdGVnaXN0IiwKICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vYWxkby1yb21hbmEtNDA3ODYyOTE\/dXRtX3NvdXJjZT1zaGFyZV92aWEmdXRtX2NvbnRlbnQ9cHJvZmlsZSZ1dG1fbWVkaXVtPW1lbWJlcl9pb3MiLAogICAgICAgICAgICAiaW1hZ2UiOiAiaHR0cHM6Ly93ZWJwYXIuaXQvYWxkby1yb21hbmEuanBnIgogICAgICAgIH0sCiAgICAgICAgImxvY2F0aW9uIjogewogICAgICAgICAgICAiQHR5cGUiOiAiUGxhY2UiLAogICAgICAgICAgICAibmFtZSI6ICJDYXB1YSIsCiAgICAgICAgICAgICJhZGRyZXNzIjogewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlBvc3RhbEFkZHJlc3MiLAogICAgICAgICAgICAgICAgImFkZHJlc3NMb2NhbGl0eSI6ICJDYXB1YSIsCiAgICAgICAgICAgICAgICAiYWRkcmVzc1JlZ2lvbiI6ICJDRSIsCiAgICAgICAgICAgICAgICAiYWRkcmVzc0NvdW50cnkiOiAiSVQiCiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzYW1lQXMiOiBbCiAgICAgICAgICAgICJodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vYWxkby1yb21hbmEtNDA3ODYyOTE\/dXRtX3NvdXJjZT1zaGFyZV92aWEmdXRtX2NvbnRlbnQ9cHJvZmlsZSZ1dG1fbWVkaXVtPW1lbWJlcl9pb3MiLAogICAgICAgICAgICAiaHR0cHM6Ly9pbnN0YWdyYW0uY29tL3dlYnByb2plY3RhciIsCiAgICAgICAgICAgICJodHRwczovL2luc3RhZ3JhbS5jb20vYWxkb3JvbWFuYV9waG90byIKICAgICAgICBdLAogICAgICAgICJzZXJ2aWNlIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJXZWIgRGVzaWduICYgRGV2ZWxvcG1lbnQiLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlNpdGkgd2ViIHByb2Zlc3Npb25hbGkgcGVyIFBNRSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiU0VPIE9wdGltaXphdGlvbiIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiUG9zaXppb25hbWVudG8gbmVpIG1vdG9yaSBkaSByaWNlcmNhIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiQHR5cGUiOiAiU2VydmljZSIsCiAgICAgICAgICAgICAgICAibmFtZSI6ICJGb3RvZ3JhZmlhIEF6aWVuZGFsZSIsCiAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiRm90b2dyYWZpYSBwcm9mZXNzaW9uYWxlIHBlciBicmFuZGluZyIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIkB0eXBlIjogIlNlcnZpY2UiLAogICAgICAgICAgICAgICAgIm5hbWUiOiAiRS1jb21tZXJjZSBTb2x1dGlvbnMiLAogICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlZlbmRpdGEgb25saW5lIHN1IFByZXN0YVNob3AiCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJhZ2dyZWdhdGVSYXRpbmciOiB7CiAgICAgICAgICAgICJAdHlwZSI6ICJBZ2dyZWdhdGVSYXRpbmciLAogICAgICAgICAgICAicmF0aW5nVmFsdWUiOiAiNSIsCiAgICAgICAgICAgICJiZXN0UmF0aW5nIjogIjUiLAogICAgICAgICAgICAid29yc3RSYXRpbmciOiAiMSIsCiAgICAgICAgICAgICJyYXRpbmdDb3VudCI6ICIyMDAiLAogICAgICAgICAgICAicmV2aWV3Q291bnQiOiAiMjAwIgogICAgICAgIH0sCiAgICAgICAgImtub3dzQWJvdXQiOiBbCiAgICAgICAgICAgICJXZWIgRGVzaWduIiwKICAgICAgICAgICAgIlNFTyIsCiAgICAgICAgICAgICJXb3JkUHJlc3MiLAogICAgICAgICAgICAiUHJlc3RhU2hvcCIsCiAgICAgICAgICAgICJEaWdpdGFsIE1hcmtldGluZyIsCiAgICAgICAgICAgICJQaG90b2dyYXBoeSIsCiAgICAgICAgICAgICJFLWNvbW1lcmNlIiwKICAgICAgICAgICAgIkFJICYgQXV0b21hdGlvbiIKICAgICAgICBdCiAgICB9CiAgICA8L3NjcmlwdD4KCjwvYm9keT4KPC9odG1sPgH987LDBwzNBxomCKhzStwGUZEDOJ0IOewYEA8ABAADBxPnBh7BAQ==\",\"updateId\":973805463}","om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-1373","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/pages\/1373","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/comments?post=1373"}],"version-history":[{"count":8,"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/pages\/1373\/revisions"}],"predecessor-version":[{"id":1391,"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/pages\/1373\/revisions\/1391"}],"wp:attachment":[{"href":"https:\/\/www.webpar.it\/creazione-siti-web\/wp-json\/wp\/v2\/media?parent=1373"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}