{"id":38538,"date":"2025-11-03T11:55:46","date_gmt":"2025-11-03T10:55:46","guid":{"rendered":"https:\/\/www.vaia.eu\/?page_id=38538"},"modified":"2026-06-15T09:22:11","modified_gmt":"2026-06-15T07:22:11","slug":"eng-home-bozza","status":"publish","type":"page","link":"https:\/\/www.vaia.eu\/en\/","title":{"rendered":"Home"},"content":{"rendered":"\n<div class=\"wp-block-columns alignfull is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<style>\n  \/* Hero section a tutta altezza *\/\n  .hero-video {\n    position: relative;\n    width: 100%;\n    height: 100vh; \/* sempre altezza dello schermo *\/\n    overflow: hidden;\n  }\n\n  .hero-video video {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n    object-fit: cover; \/* riempie la sezione senza deformarsi *\/\n    z-index: 1;\n  }\n\n  \/* Contenuto sopra il video *\/\n  .hero-video .hero-content {\n    position: relative;\n    z-index: 2; \/* sopra il video *\/\n    padding: 2rem;\n    color: #fff;\n  }\n\n  \/* Versioni desktop\/mobile *\/\n  #video-desktop { display: none; }\n  #video-mobile { display: none; }\n\n  @media (min-width: 769px) {\n    #video-desktop { display: block; }\n  }\n\n  @media (max-width: 768px) {\n    #video-mobile { display: block; }\n  }\n<\/style>\n\n<div class=\"hero-video\">\n  <!-- Video Desktop -->\n  <video id=\"video-desktop\" autoplay=\"\" muted=\"\" loop=\"\" playsinline=\"\">\n    <source src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/06\/Video-home-hero-puglia-dolomiti-orizzontale.mp4\" type=\"video\/mp4\">\n  <\/video>\n\n  <!-- Video Mobile -->\n  <video id=\"video-mobile\" autoplay=\"\" muted=\"\" loop=\"\" playsinline=\"\">\n    <source src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/06\/video-home-hero-puglia-dolomiti-verticale.mp4\" type=\"video\/mp4\">\n  <\/video>\n\n  <!-- Contenuto sopra il video -->\n  <div class=\"hero-content\">\n    <!-- Titoli, testo o bottoni sopra il video -->\n  <\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" style=\"margin-bottom: -5vh; margin-left:20px; padding-bottom: 0;\">Our products<\/h2>\n\n\n\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.css\">\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.js\"><\/script>\n\n<div id=\"prodotti\" class=\"sezione\">\n  <h2 class=\"titolo-sezione\"><\/h2>\n  <div class=\"carosello-container\">\n    <div class=\"swiper carosello-prodotti\">\n      <div class=\"swiper-wrapper\">\n\n<a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-cover\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n  <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/06\/Vaia-cover-immagine-home.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n  <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Cover<\/h3><\/div>\n<\/a>\n\n        <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-cube\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2022\/11\/665x755_CUBE.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Cube<\/h3><\/div>\n        <\/a>\n\n  <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-cube-essential-aria\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/03\/3-1.png?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Cube Essential Aria<\/h3><\/div>\n        <\/a>\n\n        <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-cube-imperfetto\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2022\/11\/665x755_IMPERFETTO.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Cube imperfetto<\/h3><\/div>\n        <\/a>\n\n        <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-cube-joy\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2022\/11\/665x755_JOY-2-1.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Cube JOY<\/h3><\/div>\n        <\/a>\n\n        <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-people\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2024\/11\/people-piedistallo.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA People<br>Combo<\/h3><\/div>\n        <\/a>\n        \n        <a href=\"https:\/\/www.vaia.eu\/en\/product\/vaia-people-personalizzato\/\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/10\/People-Personalizzati-21-scaled.jpg?auto=compress&amp;cs=tinysrgb&amp;w=800');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA People Customized<\/h3><\/div>\n        <\/a>\n        \n        <a href=\"\" class=\"swiper-slide card-9-16 card-prodotto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/Prodotti-HP-Focus-BW-esaurito.jpg');\"><\/div>\n          <div class=\"card-content\"><h3 class=\"nome-prodotto\">VAIA Focus &#8211; out of stock<\/h3><\/div>\n        <\/a>\n\n      <\/div>\n    <\/div>\n\n    <!-- \u2705 FRECCE solo desktop -->\n    <div class=\"swiper-button-prev\"><\/div>\n    <div class=\"swiper-button-next\"><\/div>\n\n    <div class=\"swiper-pagination\"><\/div>\n  <\/div>\n<\/div>\n\n<style>\n.sezione { background-color:#f4f0e5; }\n.titolo-sezione {\n  color:#0e3b26;  \n  font-size:2.8rem;  \n  background-color:transparent; \n  padding:0;  \n  border-radius:0;\n  margin-left:20px;\n  margin-bottom:-3vh;\n  padding-bottom:-3vh;\n\n}\n\n.carosello-container { position:relative; padding:60px 0; overflow:hidden; }\n.card-9-16 { aspect-ratio:9\/16; width:300px; border-radius:12px; overflow:hidden; position:relative; }\n.card-bg { width:100%; height:100%; background-size:cover; background-position:center; transition:transform 0.4s ease; }\n.card-9-16:hover .card-bg { transform: scale(1.08); }\n.card-content {\n  position:absolute; top:0; left:0; right:0; bottom:0;  \n  display:flex; justify-content:center; align-items:center;  \n  background:transparent;\n  text-align:center;\n}\n.card-content h3 { color:#f4f0e5; font-size:1.6rem; margin:0; text-shadow:0 2px 6px rgba(0,0,0,0.6); }\n\n.nome-prodotto {\n  opacity: 1;\n  transition: opacity 0.4s ease;\n  text-shadow: 0 2px 5px rgba(0, 0, 0, 0.6);\n  padding: 10px;\n}\n\n.card-prodotto:hover .nome-prodotto {\n  opacity: 1;\n}\n\n\/* FRECCE: solo su desktop, off white, senza cerchio *\/\n.carosello-container .swiper-button-prev,\n.carosello-container .swiper-button-next {\n  color:#f4f0e5;\n  font-weight:600;\n  text-shadow:0 2px 8px rgba(0,0,0,0.4);\n  position:absolute;\n  top:50%;\n  transform:translateY(-50%);\n  z-index:10;\n  font-size:40px;\n  transition:opacity 0.3s ease, transform 0.3s ease;\n}\n.carosello-container .swiper-button-prev:hover,\n.carosello-container .swiper-button-next:hover {\n  opacity:0.8;\n  transform:translateY(-50%) scale(1.1);\n}\n\n.carosello-container .swiper-button-prev { left:10px; }\n.carosello-container .swiper-button-next { right:10px; }\n\n.carosello-container .swiper-pagination {\n  position:static;\n  margin-top:30px;\n}\n.carosello-container .swiper-pagination-bullet-active {\n  background-color:#0e3b26;\n}\n\n\/* Nascondi frecce su tablet e mobile *\/\n@media(max-width:1024px){\n  .carosello-container .swiper-button-prev,\n  .carosello-container .swiper-button-next {\n    display:none;\n  }\n}\n@media(max-width:768px){\n  .titolo-sezione { font-size:2rem; }\n}\n<\/style>\n\n<script>\n\/* Init robusto: collega i bottoni e la paginazione usando elementi DOM,\n   cos\u00ec i next\/prev funzionano sempre anche se la struttura HTML varia leggermente *\/\nfunction initCaroselloDOM(containerSelector, perViewConfig, loopValue = true) {\n  const containers = document.querySelectorAll(containerSelector);\n\n  containers.forEach(container => {\n    const swiperEl = container.querySelector('.swiper'); \/\/ l'elemento con class \"swiper\"\n    const prevBtn = container.querySelector('.swiper-button-prev');\n    const nextBtn = container.querySelector('.swiper-button-next');\n    const paginationEl = container.querySelector('.swiper-pagination');\n\n    if (!swiperEl) return;\n\n    \/\/ Inizializza Swiper passandogli gli elementi (non solo i selettori)\n    new Swiper(swiperEl, {\n      loop: loopValue,\n      grabCursor: true,\n      slidesPerGroup: 1,   \/\/ muove di un solo slide per click\n      speed: 600,\n      pagination: {\n        el: paginationEl,\n        clickable: true,\n      },\n      navigation: {\n        \/\/ se prevBtn\/nextBtn sono null, Swiper ignora la navigation senza crashare\n        prevEl: prevBtn || undefined,\n        nextEl: nextBtn || undefined,\n      },\n      breakpoints: perViewConfig\n    });\n  });\n}\n\ndocument.addEventListener('DOMContentLoaded', function () {\n  \/\/ Nota: il selettore qui punta al contenitore che racchiude .swiper + bottoni + pagination\n  initCaroselloDOM('.carosello-container', {\n    320: { slidesPerView: 1.3, spaceBetween: 15 },\n    768: { slidesPerView: 3.2, spaceBetween: 20 },\n    1024: { slidesPerView: 5.3, spaceBetween: 30 },\n  });\n});\n<\/script>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" style=\"margin-bottom: -5vh; margin-left:20px; padding-bottom: 0;\">Our impact<\/h2>\n\n\n\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.css\">\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/swiper@11\/swiper-bundle.min.js\"><\/script>\n\n<div id=\"aziende\" class=\"sezione-aziende-custom\">\n    <div class=\"carosello-container-aziende\">\n        <div class=\"swiper carosello-aziende-nuovo\">\n            <div class=\"swiper-wrapper\">\n\n  <a href=\"https:\/\/www.vaia.eu\/en\/project\/puglia\/\" class=\"swiper-slide card-1-1 card-progetto\">\n          <div class=\"card-bg\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/09\/MICS-foto-Alberi-in-Puglia.jpg');\"><\/div>\n          <div class=\"card-content\">\n            <h3 class=\"nome-prodotto\">Puglia<\/h3>\n          <\/div>\n        <\/a>\n\n      <a href=\"https:\/\/www.vaia.eu\/en\/project\/glaciers\/\" class=\"swiper-slide card-1-1 card-aziende-nuovo\">\n                    <div class=\"card-bg-aziende\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/HP-progetto-ghiacciai.jpg');\"><\/div>\n                    <div class=\"card-content-aziende\">\n                        <h3 class=\"nome-aziende-visibile\">Glaciers<\/h3>\n                    <\/div>\n                <\/a>\n\n <a href=\"https:\/\/www.vaia.eu\/en\/project\/dolomites\/\" class=\"swiper-slide card-1-1 card-aziende-nuovo\">\n                    <div class=\"card-bg-aziende\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/HP-progetto-dolomiti.jpg');\"><\/div>\n                    <div class=\"card-content-aziende\">\n                        <h3 class=\"nome-aziende-visibile\">Dolomites<\/h3>\n                    <\/div>\n                <\/a>                     \n\n             \n\n <a href=\"https:\/\/www.vaia.eu\/en\/project\/bostrico\/\" class=\"swiper-slide card-1-1 card-aziende-nuovo\">\n                    <div class=\"card-bg-aziende\" style=\"background-image:url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/HP-progetto-bostrico.jpg');\"><\/div>\n                    <div class=\"card-content-aziende\">\n                        <h3 class=\"nome-aziende-visibile\">Bostrico<\/h3>\n                    <\/div>\n                <\/a>   \n                              \n            <\/div>\n        <\/div>\n        <div class=\"swiper-pagination-aziende\"><\/div>\n    <\/div>\n<\/div>\n\n<style>\n\/* ------------------------------------------------------------------ *\/\n\/* STILI ESCLUSIVI PER QUESTA SEZIONE (Correzioni per allineamento) *\/\n\/* ------------------------------------------------------------------ *\/\n\n.sezione-aziende-custom { \n    background-color:#f4f0e5; \n    padding:60px 20px;\n    text-align: center;\n}\n.titolo-sezione-aziende {\n    color:#0e3b26;  \n    font-size:2.8rem;  \n    margin-bottom: 0px;\n}\n.carosello-container-aziende { \n    position:relative; \n    padding:20px 0; \n    overflow:hidden;\n    max-width: 1200px;\n    margin: 0 auto;\n}\n\n\/* CARD QUADRATA (1:1) *\/\n.card-1-1 {\n    aspect-ratio:1\/1;\n    width:350px;\n    border-radius:12px;\n    overflow:hidden;\n    position:relative;\n}\n\n.card-bg-aziende { \n    width:100%; \n    height:100%; \n    background-size:cover; \n    background-position:center; \n    transition:transform 0.4s ease; \n}\n\n\/* EFFETTO ZOOM (Richiesto e Corretto) *\/\n.card-aziende-nuovo:hover .card-bg-aziende { \n    transform: scale(1.08); \n}\n\n.card-content-aziende {\n    position:absolute; top:0; left:0; right:0; bottom:0;  \n    display:flex; \n    flex-direction: column; \/* Aggiunto per allineamento *\/\n    align-items: flex-start; \/* Allinea il contenuto a sinistra *\/\n    justify-content: flex-end; \/* Corretto: Allinea il contenuto in BASSO *\/\n    background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 50%);\n    text-align:left;\n    padding: 20px;\n}\n\n\/* TESTO SEMPRE VISIBILE IN BASSO A SINISTRA *\/\n.nome-aziende-visibile {\n    color:#f4f0e5; \n    font-size:1.6rem; \n    margin: 0; \n    opacity: 1;\n    text-shadow: 0 2px 6px rgba(0,0,0,0.8);\n}\n\n\/* PAGINAZIONE *\/\n.swiper-pagination-aziende { position:static; margin-top:30px; }\n.swiper-pagination-aziende .swiper-pagination-bullet-active { background-color:#0e3b26; }\n\n\n\/* RESPONSIVE *\/\n@media(max-width:768px){\n    .titolo-sezione-aziende { font-size:2rem; }\n    .card-1-1 { \n        width: 100%; \n    }\n}\n<\/style>\n\n<script>\n\/\/ Funzione initCarosello rimane invariata per l'uso generico\nfunction initCarosello(selector, perViewConfig, loopValue = true) {\n    return new Swiper(selector, {\n        loop: loopValue,\n        grabCursor: true,\n        initialSlide: 1,\n        pagination: {\n            \/\/ Importante: qui usiamo la classe specifica della paginazione per questa sezione\n            el: '#aziende .swiper-pagination-aziende',\n            clickable: true,\n        },\n        breakpoints: perViewConfig\n    });\n}\n\n\/\/ Inizializzazione ESCLUSIVA per la sezione ID=\"aziende\"\nwindow.onload = function () {\n    setTimeout(function() {\n        \n        \/\/ Controlla PRIMA se il contenitore principale ESISTE.\n        \/\/ Questo impedisce l'esecuzione dello script se l'ID #aziende non \u00e8 nella pagina.\n        const aziendeContainer = document.getElementById('aziende');\n        \n        if (aziendeContainer) {\n            \/\/ INIZIALIZZAZIONE SEZIONE AZIENDE PERSONALIZZATA\n            \/\/ Selezioniamo il carosello SOLO all'interno del contenitore #aziende\n            initCarosello('#aziende .carosello-aziende-nuovo', {\n                320: { slidesPerView: 1.2, spaceBetween: 15 },\n                768: { slidesPerView: 2, spaceBetween: 20 },\n                1024: { slidesPerView: 3.2, spaceBetween: 30 },\n            });\n        }\n        \n    }, 100); \n};\n<\/script>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignfull is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30px\">\n<div style=\"height:8px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-1024x1024.png\" alt=\"\" class=\"wp-image-54342\" style=\"width:77px;height:auto\" srcset=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-1024x1024.png 1024w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-300x300.png 300w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-150x150.png 150w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-768x768.png 768w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-600x600.png 600w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-100x100.png 100w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75-50x50.png 50w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/75.png 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"display: flex; flex-direction: column; align-items: center; text-align: center; gap: 15px;\">\n    <strong style=\"font-size: 2.2rem; line-height: 1.1;font-weight: 600!important;\">200.000 trees<\/strong>\n    <span style=\"font-size: 1.1rem;\">planted across the Alpine region<\/span>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-1024x1024.png\" alt=\"\" class=\"wp-image-54347\" style=\"width:76px;height:auto\" srcset=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-1024x1024.png 1024w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-300x300.png 300w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-150x150.png 150w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-768x768.png 768w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-600x600.png 600w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-100x100.png 100w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76-50x50.png 50w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/76.png 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"display: flex; flex-direction: column; align-items: center; text-align: center; gap: 15px;\">\n    <strong style=\"font-size: 2.2rem; line-height: 1.1;font-weight: 600!important;\">1.000 tons<\/strong>\n    <span style=\"font-size: 1.1rem;\">of CO\u2082 offset\n\n<\/span>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-1024x1024.png\" alt=\"\" class=\"wp-image-54351\" style=\"width:69px;height:auto\" srcset=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-1024x1024.png 1024w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-300x300.png 300w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-150x150.png 150w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-768x768.png 768w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-600x600.png 600w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-100x100.png 100w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77-50x50.png 50w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/77.png 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"display: flex; flex-direction: column; align-items: center; text-align: center; gap: 15px;\">\n    <strong style=\"font-size: 2.2rem; line-height: 1.1;font-weight: 600!important;\">500 tons<\/strong>\n    <span style=\"font-size: 1.1rem;\">of wood recovered\n\n<\/span>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-1024x1024.png\" alt=\"\" class=\"wp-image-54355\" style=\"width:69px;height:auto\" srcset=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-1024x1024.png 1024w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-300x300.png 300w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-150x150.png 150w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-768x768.png 768w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-600x600.png 600w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-100x100.png 100w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78-50x50.png 50w, https:\/\/www.vaia.eu\/wp-content\/uploads\/2026\/02\/78.png 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"display: flex; flex-direction: column; align-items: center; text-align: center; gap: 15px;\">\n    <strong style=\"font-size: 2.2rem; line-height: 1.1;font-weight: 600!important;\">15 artisans<\/strong>\n    <span style=\"font-size: 1.1rem;\">involved in Italy\n<\/span>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30px\">\n<div style=\"height:8px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignfull is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:15%\">\n<div style=\"height:12px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:70%\">\n<h2 class=\"wp-block-heading has-text-align-center\">Reforestation map from 2019 to present<\/h2>\n\n\n\n<iframe loading=\"lazy\" src=\"https:\/\/www.google.com\/maps\/d\/embed?mid=1QwbVaPZBGRcz_c5Ms4OxE7CggGjhftc&#038;ehbc=2E312F\" width=\"100%\" height=\"480\"><\/iframe>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:15%\">\n<div style=\"height:11px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<h2 class=\"wp-block-heading\" style=\"margin-bottom: 0; margin-left:20px; padding-bottom: 0;\">The VAIA model<\/h2>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\" id=\"pranzo\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<div class=\"vaia-mission-block\">\n\n    <p style=\"margin-left: 20px; margin-right: 10px;\">\n        <strong>Recovery of raw materials<\/strong><br>\n        The first phase focuses on the recovery of wood resulting from the Vaia storm and now also from the bark beetle (Bostrico). Each trunk is selected, cataloged, and prepared, initiating a process that transforms damage into a resource.\n    <\/p>\n\n    <p style=\"margin-left: 20px; margin-right: 10px;\">\n        <strong>Activation of local supply chains<\/strong><br>\n        We collaborate exclusively with artisans and businesses in the affected valleys. This not only guarantees the highest quality of workmanship but also reactivates the local economy and the sense of community.\n    <\/p>\n\n    <p style=\"margin-left: 20px; margin-right: 10px;\">\n        <strong>Design VAIA&#8217;s objects<\/strong><br>\n        Damaged raw material gives rise to minimalist and meaningful design objects with people at the center. Each piece carries the mark of the storm, making it a symbol of resilience and beauty.\n    <\/p>\n\n    <p style=\"margin-left: 20px; margin-right: 10px;\">\n        <strong>Restoration and regeneration projects<\/strong><br>\n        The cycle is completed with restoration. A portion of the proceeds is reinvested in concrete projects for reforestation and regeneration of the territory, helping to heal the wounds left by the storm. For every product sold, a tree is planted, or glaciers are cleaned.\n    <\/p>\n\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"slideshow-container\">\n  <div class=\"slide slide1\"><\/div>\n  <div class=\"slide slide2\"><\/div>\n  <div class=\"slide slide3\"><\/div>\n  <div class=\"slide slide4\"><\/div>\n  <div class=\"slide slide5\"><\/div>\n<\/div>\n\n<style>\n.slideshow-container {\n  position: relative;\n  width: 100%;\n  max-width: 600px;\n  aspect-ratio: 1 \/ 1; \/* quadrato *\/\n  overflow: hidden;\n  margin: 0 auto;\n}\n\n.slide {\n  position: absolute;\n  top:0; left:0;\n  width: 100%;\n  height: 100%;\n  background-size: cover;\n  background-position: center;\n  opacity: 0;\n  animation: fade 16s infinite;\n}\n\n\/* imposta le immagini *\/\n.slide1 { background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/ModelloHP_EN-1.jpg'); animation-delay: 0s; }\n.slide2 { background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/ModelloHP_EN-2.jpg'); animation-delay: 4s; }\n.slide3 { background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/ModelloHP_EN-3.jpg'); animation-delay: 4s; }\n.slide4 { background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/ModelloHP_EN-4.jpg'); animation-delay: 8s; }\n.slide5 { background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/ModelloHP_EN-5.jpg'); animation-delay: 12s; }\n\n@keyframes fade {\n  0% { opacity: 0; }\n  6.25% { opacity: 1; }  \/* fade-in *\/\n  25% { opacity: 1; }    \/* visibile *\/\n  31.25% { opacity: 0; } \/* fade-out *\/\n  100% { opacity: 0; }\n}\n<\/style>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:58px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<h2 class=\"wp-block-heading\">Are you a company?<\/h2>\n<\/div>\n<\/div>\n\n\n\n<!-- HTML -->\n<a href=\"https:\/\/www.vaia.eu\/en\/project\/vaia-4-companies\/\" class=\"vaia-link-aziende\">\n  <div class=\"wp-block-cover alignwide vaia-cover-hover-aziende\">\n    <div class=\"wp-block-cover__image-background-aziende\"\n         style=\"background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2024\/01\/1280x600_clivet-1.jpg'); background-position: 50% 50%;\">\n    <\/div>\n\n    <div class=\"wp-block-cover__inner-container-aziende\">\n      <h1 class=\"vaia-title-aziende\">Create value with us<\/h1>\n    <\/div>\n  <\/div>\n<\/a>\n\n<!-- CSS -->\n<style>\n.vaia-link-aziende {\n  text-decoration: none;\n  display: block;\n}\n\n.vaia-cover-hover-aziende {\n  position: relative;\n  overflow: hidden;\n  display: block;\n  height: 400px;\n}\n\n\/* immagine di sfondo *\/\n.wp-block-cover__image-background-aziende {\n  position: absolute;\n  inset: 0;\n  background-size: cover;\n  background-repeat: no-repeat;\n  transition: filter 0.6s ease, transform 0.6s ease;\n  z-index: 0;\n}\n\n\/* contenitore centrale *\/\n.wp-block-cover__inner-container-aziende {\n  position: relative;\n  z-index: 2;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  height: 100%;\n  text-align: center;\n}\n\n\/* titolo *\/\n.vaia-title-aziende {\n  margin: 0;\n  color: white;\n  font-size: 4rem;\n  font-weight: 700;\n  line-height: 1.1;\n  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);\n  transition: transform 0.6s ease;\n}\n\n\/* effetto hover *\/\n.vaia-cover-hover-aziende:hover .wp-block-cover__image-background-aziende {\n  filter: brightness(1.15);\n  transform: scale(1.05);\n}\n\n.vaia-cover-hover-aziende:hover .vaia-title-aziende {\n  transform: scale(1.08);\n}\n<\/style>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-cd76affd wp-block-buttons-is-layout-flex\">\n<div style=\"--wp--block-button--width: 75;\" class=\"wp-block-button is-style-outline has-custom-width wp-block-button__width wp-block-button__width-75 is-style-outline--1\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.vaia.eu\/en\/project\/vaia-4-companies\/\">Learn more<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!-- HTML -->\n<a href=\"https:\/\/www.vaia.eu\/en\/about-us\/\" class=\"vaia-link-chi-siamo\">\n  <div class=\"wp-block-cover alignwide vaia-cover-hover-chi-siamo\">\n    <div class=\"wp-block-cover__image-background-chi-siamo\"\n         style=\"background-image: url('https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/11\/Chi-siamo-no-text.jpg'); background-position: 50% 55%;\">\n    <\/div>\n\n    <div class=\"wp-block-cover__inner-container-chi-siamo\">\n      <h1 class=\"vaia-title-chi-siamo\">Who we are<\/h1>\n    <\/div>\n  <\/div>\n<\/a>\n\n<!-- CSS -->\n<style>\n.vaia-link-chi-siamo {\n  text-decoration: none;\n  display: block;\n}\n\n.vaia-cover-hover-chi-siamo {\n  position: relative;\n  overflow: hidden;\n  display: block;\n  height: 500px;\n}\n\n\/* immagine di sfondo *\/\n.wp-block-cover__image-background-chi-siamo {\n  position: absolute;\n  inset: 0;\n  background-size: cover;\n  background-repeat: no-repeat;\n  background-position: center;\n  transition: filter 0.6s ease, transform 0.6s ease;\n  z-index: 0;\n}\n\n\/* contenitore testo in alto a sinistra *\/\n.wp-block-cover__inner-container-chi-siamo {\n  position: relative;\n  z-index: 2;\n  display: flex;\n  align-items: flex-start;\n  justify-content: flex-start;\n  height: 100%;\n  padding: 2rem 3rem;\n  text-align: left;\n}\n\n\/* titolo *\/\n.vaia-title-chi-siamo {\n  margin: 0;\n  color: white;\n  font-size: 3.5rem;\n  font-weight: 700;\n  line-height: 1.1;\n  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);\n  transition: transform 0.6s ease;\n}\n\n\/* effetto hover *\/\n.vaia-cover-hover-chi-siamo:hover .wp-block-cover__image-background-chi-siamo {\n  filter: brightness(1.15);\n  transform: scale(1.05);\n}\n\n.vaia-cover-hover-chi-siamo:hover .vaia-title-chi-siamo {\n  transform: scale(1.05);\n}\n<\/style>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-embed alignfull is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"VAIA - Face What Matters\" width=\"1200\" height=\"675\" src=\"https:\/\/www.youtube.com\/embed\/Vyz7K19i_Lc?feature=oembed&#038;enablejsapi=1&#038;origin=https:\/\/www.vaia.eu\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns has-background is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\" id=\"pranzo\" style=\"background:linear-gradient(135deg,rgb(252,185,0) 100%,rgb(255,105,0) 100%)\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Our retailers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Looking to buy our products in store?<br>Find a retailer near you!<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-outline is-style-outline--2\"><a class=\"wp-block-button__link has-background wp-element-button\" href=\"https:\/\/www.vaia.eu\/en\/vaia-ambassadors\/\" style=\"background:linear-gradient(135deg,rgb(252,185,0) 100%,rgb(255,105,0) 100%)\">Go to the page<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<iframe loading=\"lazy\" src=\"https:\/\/snazzymaps.com\/embed\/629773\" width=\"100%\" height=\"400px\" style=\"border:none;\"><\/iframe>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"cards cards-bg-lightyellow\">\n\n            <span class=\"headingcard-title heading-color-violet\">\n            Dicono di noi        <\/span>\n    \n    <div class=\"cards__row\">\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.corriere.it\/cronache\/21_ottobre_28\/start-up-che-rida-vita-foreste-ferite-vaia-051f5de2-382a-11ec-b57d-189900ff8f36.shtml\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_corriere.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/forbes.it\/2020\/07\/08\/startup-vaia-amplificatore-tempesta-under-30\/\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_forbes.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.repubblica.it\/green-and-blue\/dossier\/tutti-per-la-terra\/2023\/09\/19\/news\/vaia-414104952\/?ref=RHRM-BG-P5-S1-T1\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_la-repubblica.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/stream24.ilsole24ore.com\/video\/italia\/foresta-innovatori-1000-alberi-piantati-riforestare-dolomiti\/AFBAtk2\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_sole24ore.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.tgcom24.mediaset.it\/2023\/video\/-studio-aperto-mag---next-generazione-europa-guarda-la-seconda-puntata-su-istruzione-formazione-e-ricerca_61699570-02k.shtml\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_tgcom24.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.faz.net\/aktuell\/technik-motor\/fuenf-am-freitag-rechenbeispiele-18403151\/plus-30-18391902.html\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_frankfurt.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/tg24.sky.it\/tecnologia\/now\/2021\/03\/11\/vaia-casse-musicali-legno-tempesta\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_skytg24.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.chip.de\/news\/Lautsprecher-ohne-Strom-und-Technik-Das-ist-der-VAIA-Cube_184449651.html\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/500x500_chip.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n                    <div class=\"cards__col col-color-violet content-title-color-transparent content-card-color-transparent\">\n                <div class=\"g-card\">\n    \n    \n    \n            <div class=\"g-card__media\">\n                        <a href=\"https:\/\/www.fortuneita.com\/2024\/02\/18\/vaia-cube-il-legno-che-visse-due-volte\/\" target=\"_blank\">\n                            <img loading=\"lazy\" decoding=\"async\" class=\"skip-lazy\" width=\"600\" height=\"400\" src=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2024\/03\/500x500_fortune.png\" alt=\"\" \/>\n                        <\/a>\n                    <\/div>\n    \n    <\/div>\n            <\/div>\n            <\/div>\n<\/div>\n\n\n\n<div style=\"height:54px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div id=\"frm-mltchnl\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Our products VAIA Cover VAIA Cube VAIA Cube Essential Aria VAIA Cube imperfetto VAIA Cube JOY VAIA PeopleCombo VAIA People Customized VAIA Focus &#8211; out of stock Our impact Puglia Glaciers Dolomites Bostrico 200.000 trees planted across the Alpine region 1.000 tons of CO\u2082 offset 500 tons of wood recovered 15 artisans involved in Italy [&hellip;]<\/p>\n","protected":false},"author":336,"featured_media":38716,"parent":0,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_crdt_document":"{\"document\":\"AAD5BJboz\/sc497TkxgA7syetRqCAqPe05MYj5HvjhbuzJ61GgGPke+OFu7MnrUaCI+R744WrsyetRrPke+OFgjuzJ61GgDPke+OFgHuzJ61GgGPke+OFu7MnrUaBI+R744WrsyetRqPke+OFu7MnrUaBo+R744WrsyetRqPke+OFu7MnrUaAo+R744WrsyetRqPke+OFu7MnrUaAs+R744WbO7MnrUaAY+R744WrsyetRqPke+OFu7MnrUaAo+R744WrsyetRqPke+OFu7MnrUaCo+R744WrsyetRqPke+OFu7MnrUaAY+R744WrsyetRqPke+OFu7MnrUaAY+R744W7syetRoEj5HvjhauzJ61Go+R744W7syetRoAz5HvjhYL7syetRoAj5HvjhauzJ61Go+R744W7syetRoBj5HvjhbuzJ61GgPPke+OFg\/uzJ61GgGPke+OFq7MnrUaj5HvjhbuzJ61GgKPke+OFq7MnrUaj5HvjhbuzJ61GgLPke+OFivuzJ61GgGPke+OFq7MnrUaj5HvjhbuzJ61GgHPke+OFg3uzJ61GgGPke+OFq7MnrUaj5HvjhbuzJ61GgHPke+OFg6uzJ61Gs+R744WGa7MnrUaz5HvjhYN7syetRoBj5HvjhauzJ61Go+R744W7syetRoBz5HvjhYOrsyetRrPke+OFh2uzJ61Gs+R744WHa7MnrUaz5HvjhYdrsyetRrPke+OFh2uzJ61Gs+R744WDe7MnrUaAY+R744WrsyetRqPke+OFu7MnrUaAc+R744WHO7MnrUaAY+R744WrsyetRqPke+OFu7MnrUaAc+R744WFO7MnrUaAL4HkCYCyiYKkiCKBYgBiAWyBp4UoNABqnGSC7wCqAiCrAYBAAgCAQIKAEoQAgECCkoOAgECCkpiMgECCgBKEFCQAQECCgBKEFCQAQECCgBKEAIgPwHsA4oFAQIKAEoQAiBykgMBAgoAShBQMgECCgEAShICVLABAQIKSgAQAQIKAEoQUJgBAQIKSgAQAQIKSg5OPgECCkoAEAECCkoAEAECCkoAEAECCgEGSgAgAQIKSgAQAQIKAQBKEgJUpgYBAgpKABABAgoBAUoAFgECCkoAEAECCkrOGZEBAIoFkgMysAEQmAEQPhEBIBCmBhAIzs0JnC66hQnktQmACZIGtO0CpAuexgYCUtrmCQEBCABIAgUAkuYJCtbmCVAUuOUJBgL+5QmK5gkDAC7WAQLe5Qmw5Qnu5Qmy5QkBAjzkAQLA5QmM5QnK5QmO5QmQAcgIAsTeCabkCeTkCajkCQEABM7kCQEDDAIBAgpKABABAgoCQkoALAECCgJCSgCWAgEDDAIBAgoBAQhIAEpOhAEBAgpK5AS0BAEDDAIBAgpKABABAgpKDgIBAgpKDgIBAgpKABABAgpKpt8J1ggC5t0Jst0J8N0JtN0Jggj0CALi1gm+1gn81gmA1wkBBpAIwgkCxNYJkNYJztYJktYJrgjMCdjVCaLVCd7VCZ7eCd4JAvjUCYTVCQMAignaCgLw0wmq1Ano1Ams1AkE1tQJAQIKAQEISABKqt0J5ArU0wme0wna0wmy3Qn+CwL+0AmS0gkDAAAEwNIJAQIKSg4CAQIKAkJKjtwJzAwC5NAJsNAJ7tAJstAJuAv6DQLezQmKzwnIzwmMzwkBAATyzgkBAgpKDgIBAgpKUCABAwwCAQIKSg4CAQMMAgECCkqo2QnqDgLezAmMzQnKzQmQzQkC1ssJAQIKSg4CAQIKSrbYCfoRAt7HCazKCerKCbDKCQL0yQkBAgpKDgIBAgpKUCABAgpKDgIBAgoCQgBKAKABAQIKSvABgAIBAgpKDgIBAgpKpNUJwhcC5MEJqsYJ6MYJrsYJAtLDCQECCkoOAgECCkpQIAEDDAIBAgoBBkoAIAECCkpuPgEDDAIBAgoBBkoAIAECCkpuPgEDDAIBAgoBBkoAIAECCkpuPgEDDAIBAgoBBkoAIAECCkpuPgECCkoOAgECCkqa0AnQGALEvQmQvgnOvgmUvgkCwLkJAQMMAgECCkoAEAECCkoAEAECCkqIzwncGQLstgm4twn2twm8twkC4rYJAQMMAgECCkoAEAECCkqKGhyQR+omkga07QKkC764BnQBANIDAQPKBdAB\/JsJ+wgoAKgBIQAoAicABAAnAAQAgQCEAIEAhAKBAIQAgQCEAScAKAQnACgCJwAHACgDJwAoAScABwAoAycAKAAnAAcAKAMnACEAJwCHACEAKAAhAScAIQEnAAEAAACHACEAKAAhAScAIQEnAAEAAACHACEAKAAhAScAIQEnAAEAAACBAAAAgQAAAIEAAACBAAAAgQAAAIcAIQAoACEBJwAhAScAAQAAAIEAAACBAAAAhwAhACgAIQEnACEBJwABAAAAhwAhACgAIQEnACECJwABAAAAgQAAAIcAIQAoACEBJwAhACcAhwAhACgAIQEnACEBJwABAAAAhwAhACgAIQEnACEAJwCHACEAKAAhAScAIQAnAAEAAACHACEAKAAhAScAIQAnAIcAIQAoACEBJwAhACcAhwAhACgAIQEnACEAJwCHACEAKAAhAScAIQgnAIcAIQAoACEBJwAhACcAhwAhACgAIQEnACECJwABAAAAgQAAAIcAIQAoACEBJwAhACcAhwAhACgAIQEnACEDJwCHACEAKAAhAScAIQAnAIcAIQAoACEBJwAhACcAIQGhAAAAoRAhAagAxACoAcQDoQEhAIcAIQAoACEAJwAhAScAoQCoAKECqAAoAKgAoQEhAKgCKAChASEAqAIoBKEBIQCoAigAoQEhAKgCKAIHACgDJwEHACgDJwAoACcAhwAoAycBBAAoACcAhwAoAycBBAAoACcAhwAoAycBBwAoAycAKAInAAQAKAEnAIcAKAMnACgAJwCHACgDJwEHACgDJwAoACcAhwAoAycAKAAnAAcAKAMnACgAJwAHACgDJwAoACcAhwAoAycAKAAnAKEBIQCoAigAoQEhAKgCKAAnACgGoQCoACEAqAIoAKEBqAKhASEAqAIoAKEAqAAhAKgCKAAHACgDJwAoAicABAAoAScAoQGoAqEBIQCoAigBBwAoAycAKAAnAAcAKAMnAQQAKAAnAKEBIQCoAigAoQEhAKgCKAIHACgDJwAoACcABwAoAycAKAAnAIcAKAMnAQcAKAMnACgAJwAHACgDJwEHACgDJwAoACcAoQEhAKgERwAoAycAKAAnAAcAKAMnACgAJwChASEAqARHACgDJwAoACcABwAoAycAKAAnAMcAKAMnACgAJwAHACgDJwEEACgBJwCHACgDJwAoACcAxwAoAycAKAAnAAcAKAMnACgAJwChASEAqARHACgDJwAoACcABwAoAycAKAAnAMcAKAMnAQcAKAMnACgBJwAoBScAhwAoAycAKAAnAMcAKAMnAQcAKAMnACgBJwAoBScAhwAoAycAKAAnAMcAKAMnAQcAKAMnACgBJwAoBScAhwAoAycAKAAnAMcAKAMnAQcAKAMnACgBJwAoBScAhwAoAycAKAAnAMcAKAMnACgAJwAHACgDJwAoACcAoQEhAKgERwAoAycBBwAoAycAKAAnAIcAKAMnACEAJwCHACgDJwAoACcAqAEoAKgERwAoAycBBwAoAycAKAAnAIcAKAMnACEAJwDB99ECn8wCc3RhdGV2ZXJzaW9uc3RhdGV2ZXJzaW9uZG9jdW1lbnRkYXRlZG9jdW1lbnRzbHVnZG9jdW1lbnRzdGF0dXNkb2N1bWVudHRpdGxlSG9tZWRvY3VtZW50Y29udGVudDwhLS0gd3A6Y29sdW1ucyB7ImFsaWduIjoiZnVsbCJ9IC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWduZnVsbCI+PCEtLSB3cDpjb2x1bW4geyJ3aWR0aCI6IjEwMCUifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczoxMDAlIj48IS0tIHdwOmh0bWwgLS0+CjxzdHlsZT4KICAvKiBIZXJvIHNlY3Rpb24gYSB0dXR0YSBhbHRlenphICovCiAgLmhlcm8tdmlkZW8gewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgd2lkdGg6IDEwMCU7CiAgICBoZWlnaHQ6IDEwMHZoOyAvKiBzZW1wcmUgYWx0ZXp6YSBkZWxsbyBzY2hlcm1vICovCiAgICBvdmVyZmxvdzogaGlkZGVuOwogIH0KCiAgLmhlcm8tdmlkZW8gdmlkZW8gewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAwOwogICAgbGVmdDogMDsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgb2JqZWN0LWZpdDogY292ZXI7IC8qIHJpZW1waWUgbGEgc2V6aW9uZSBzZW56YSBkZWZvcm1hcnNpICovCiAgICB6LWluZGV4OiAxOwogIH0KCiAgLyogQ29udGVudXRvIHNvcHJhIGlsIHZpZGVvICovCiAgLmhlcm8tdmlkZW8gLmhlcm8tY29udGVudCB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAyOyAvKiBzb3ByYSBpbCB2aWRlbyAqLwogICAgcGFkZGluZzogMnJlbTsKICAgIGNvbG9yOiAjZmZmOwogIH0KCiAgLyogVmVyc2lvbmkgZGVza3RvcC9tb2JpbGUgKi8KICAjdmlkZW8tZGVza3RvcCB7IGRpc3BsYXk6IG5vbmU7IH0KICAjdmlkZW8tbW9iaWxlIHsgZGlzcGxheTogbm9uZTsgfQoKICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHsKICAgICN2aWRlby1kZXNrdG9wIHsgZGlzcGxheTogYmxvY2s7IH0KICB9CgogIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgI3ZpZGVvLW1vYmlsZSB7IGRpc3BsYXk6IGJsb2NrOyB9CiAgfQo8L3N0eWxlPgoKPGRpdiBjbGFzcz0iaGVyby12aWRlbyI+CiAgPCEtLSBWaWRlbyBEZXNrdG9wIC0tPgogIDwvdmlkZW8+CgogIDwhLS0gVmlkZW8gTW9iaWxlIC0tPgogIDwvdmlkZW8+CgogIDwhLS0gQ29udGVudXRvIHNvcHJhIGlsIHZpZGVvIC0tPgogIDxkaXYgY2xhc3M9Imhlcm8tY29udGVudCI+CiAgICA8IS0tIFRpdG9saSwgdGVzdG8gbyBib3R0b25pIHNvcHJhIGlsIHZpZGVvIC0tPgogIDwvZGl2Pgo8L2Rpdj4KPCEtLSAvd3A6aHRtbCAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW5zIC0tPgoKPCEtLSB3cDpjb2x1bW5zIHsiYWxpZ24iOiJ3aWRlIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIj48IS0tIHdwOmNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIj48IS0tIHdwOmh0bWwgLS0+CjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgc3R5bGU9Im1hcmdpbi1ib3R0b206IC01dmg7IG1hcmdpbi1sZWZ0OjIwcHg7IHBhZGRpbmctYm90dG9tOiAwOyI+T3VyIHByb2R1Y3RzPC9oMj4KPCEtLSAvd3A6aHRtbCAtLT4KCjwhLS0gd3A6aHRtbCAtLT4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3aXBlckAxMS9zd2lwZXItYnVuZGxlLm1pbi5jc3MiPgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9zd2lwZXJAMTEvc3dpcGVyLWJ1bmRsZS5taW4uanMiPjwvc2NyaXB0PgoKPGRpdiBpZD0icHJvZG90dGkiIGNsYXNzPSJzZXppb25lIj4KICA8aDIgY2xhc3M9InRpdG9sby1zZXppb25lIj48L2gyPgogIDxkaXYgY2xhc3M9ImNhcm9zZWxsby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0ic3dpcGVyIGNhcm9zZWxsby1wcm9kb3R0aSI+CiAgICAgIDxkaXYgY2xhc3M9InN3aXBlci13cmFwcGVyIj4KCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtY3ViZS8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzExLzY2NXg3NTVfQ1VCRS5qcGc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIEN1YmU8L2gzPjwvZGl2PgogICAgICAgIDwvYT4KCiAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtY3ViZS1lc3NlbnRpYWwtYXJpYS8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAzLzMtMS5wbmc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIEN1YmUgRXNzZW50aWFsIEFyaWE8L2gzPjwvZGl2PgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtY3ViZS1pbXBlcmZldHRvLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjIvMTEvNjY1eDc1NV9JTVBFUkZFVFRPLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgQ3ViZSBpbXBlcmZldHRvPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLWN1YmUtam95LyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjIvMTEvNjY1eDc1NV9KT1ktMi0xLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgQ3ViZSBKT1k8L2gzPjwvZGl2PgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtcGVvcGxlLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjQvMTEvcGVvcGxlLXBpZWRpc3RhbGxvLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgUGVvcGxlPGJyPkNvbWJvPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CiAgICAgICAgCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtcGVvcGxlLXBlcnNvbmFsaXp6YXRvLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTAvUGVvcGxlLVBlcnNvbmFsaXp6YXRpLTIxLXNjYWxlZC5qcGc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIFBlb3BsZSBDdXN0b21pemVkPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CiAgICAgICAgCiAgICAgICAgPGEgaHJlZj0iIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Qcm9kb3R0aS1IUC1Gb2N1cy1CVy1lc2F1cml0by5qcGcnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgRm9jdXMgLSBvdXQgb2Ygc3RvY2s8L2gzPjwvZGl2PgogICAgICAgIDwvYT4KCiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPCEtLSDinIUgRlJFQ0NFIHNvbG8gZGVza3RvcCAtLT4KICAgIDxkaXYgY2xhc3M9InN3aXBlci1idXR0b24tcHJldiI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJzd2lwZXItYnV0dG9uLW5leHQiPjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InN3aXBlci1wYWdpbmF0aW9uIj48L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8c3R5bGU+Ci5zZXppb25lIHsgYmFja2dyb3VuZC1jb2xvcjojZjRmMGU1OyB9Ci50aXRvbG8tc2V6aW9uZSB7CiAgY29sb3I6IzBlM2IyNjsgIAogIGZvbnQtc2l6ZToyLjhyZW07ICAKICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyAKICBwYWRkaW5nOjA7ICAKICBib3JkZXItcmFkaXVzOjA7CiAgbWFyZ2luLWxlZnQ6MjBweDsKICBtYXJnaW4tYm90dG9tOi0zdmg7CiAgcGFkZGluZy1ib3R0b206LTN2aDsKCn0KCi5jYXJvc2VsbG8tY29udGFpbmVyIHsgcG9zaXRpb246cmVsYXRpdmU7IHBhZGRpbmc6NjBweCAwOyBvdmVyZmxvdzpoaWRkZW47IH0KLmNhcmQtOS0xNiB7IGFzcGVjdC1yYXRpbzo5LzE2OyB3aWR0aDozMDBweDsgYm9yZGVyLXJhZGl1czoxMnB4OyBvdmVyZmxvdzpoaWRkZW47IHBvc2l0aW9uOnJlbGF0aXZlOyB9Ci5jYXJkLWJnIHsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7IHRyYW5zaXRpb246dHJhbnNmb3JtIDAuNHMgZWFzZTsgfQouY2FyZC05LTE2OmhvdmVyIC5jYXJkLWJnIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsgfQouY2FyZC1jb250ZW50IHsKICBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgcmlnaHQ6MDsgYm90dG9tOjA7ICAKICBkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjsgIAogIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7CiAgdGV4dC1hbGlnbjpjZW50ZXI7Cn0KLmNhcmQtY29udGVudCBoMyB7IGNvbG9yOiNmNGYwZTU7IGZvbnQtc2l6ZToxLjZyZW07IG1hcmdpbjowOyB0ZXh0LXNoYWRvdzowIDJweCA2cHggcmdiYSgwLDAsMCwwLjYpOyB9Cgoubm9tZS1wcm9kb3R0byB7CiAgb3BhY2l0eTogMTsKICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTsKICB0ZXh0LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC42KTsKICBwYWRkaW5nOiAxMHB4Owp9CgouY2FyZC1wcm9kb3R0bzpob3ZlciAubm9tZS1wcm9kb3R0byB7CiAgb3BhY2l0eTogMTsKfQoKLyogRlJFQ0NFOiBzb2xvIHN1IGRlc2t0b3AsIG9mZiB3aGl0ZSwgc2VuemEgY2VyY2hpbyAqLwouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1wcmV2LAouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHsKICBjb2xvcjojZjRmMGU1OwogIGZvbnQtd2VpZ2h0OjYwMDsKICB0ZXh0LXNoYWRvdzowIDJweCA4cHggcmdiYSgwLDAsMCwwLjQpOwogIHBvc2l0aW9uOmFic29sdXRlOwogIHRvcDo1MCU7CiAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7CiAgei1pbmRleDoxMDsKICBmb250LXNpemU6NDBweDsKICB0cmFuc2l0aW9uOm9wYWNpdHkgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4zcyBlYXNlOwp9Ci5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXY6aG92ZXIsCi5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQ6aG92ZXIgewogIG9wYWNpdHk6MC44OwogIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMSk7Cn0KCi5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXYgeyBsZWZ0OjEwcHg7IH0KLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tbmV4dCB7IHJpZ2h0OjEwcHg7IH0KCi5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbiB7CiAgcG9zaXRpb246c3RhdGljOwogIG1hcmdpbi10b3A6MzBweDsKfQouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjojMGUzYjI2Owp9CgovKiBOYXNjb25kaSBmcmVjY2Ugc3UgdGFibGV0IGUgbW9iaWxlICovCkBtZWRpYShtYXgtd2lkdGg6MTAyNHB4KXsKICAuY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1wcmV2LAogIC5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQgewogICAgZGlzcGxheTpub25lOwogIH0KfQpAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsKICAudGl0b2xvLXNlemlvbmUgeyBmb250LXNpemU6MnJlbTsgfQp9Cjwvc3R5bGU+Cgo8c2NyaXB0PgovKiBJbml0IHJvYnVzdG86IGNvbGxlZ2EgaSBib3R0b25pIGUgbGEgcGFnaW5hemlvbmUgdXNhbmRvIGVsZW1lbnRpIERPTSwKICAgY29zw6wgaSBuZXh0L3ByZXYgZnVuemlvbmFubyBzZW1wcmUgYW5jaGUgc2UgbGEgc3RydXR0dXJhIEhUTUwgdmFyaWEgbGVnZ2VybWVudGUgKi8KZnVuY3Rpb24gaW5pdENhcm9zZWxsb0RPTShjb250YWluZXJTZWxlY3RvciwgcGVyVmlld0NvbmZpZywgbG9vcFZhbHVlID0gdHJ1ZSkgewogIGNvbnN0IGNvbnRhaW5lcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGNvbnRhaW5lclNlbGVjdG9yKTsKCiAgY29udGFpbmVycy5mb3JFYWNoKGNvbnRhaW5lciA9PiB7CiAgICBjb25zdCBzd2lwZXJFbCA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcuc3dpcGVyJyk7IC8vIGwnZWxlbWVudG8gY29uIGNsYXNzICJzd2lwZXIiCiAgICBjb25zdCBwcmV2QnRuID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5zd2lwZXItYnV0dG9uLXByZXYnKTsKICAgIGNvbnN0IG5leHRCdG4gPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignLnN3aXBlci1idXR0b24tbmV4dCcpOwogICAgY29uc3QgcGFnaW5hdGlvbkVsID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5zd2lwZXItcGFnaW5hdGlvbicpOwoKICAgIGlmICghc3dpcGVyRWwpIHJldHVybjsKCiAgICAvLyBJbml6aWFsaXp6YSBTd2lwZXIgcGFzc2FuZG9nbGkgZ2xpIGVsZW1lbnRpIChub24gc29sbyBpIHNlbGV0dG9yaSkKICAgIG5ldyBTd2lwZXIoc3dpcGVyRWwsIHsKICAgICAgbG9vcDogbG9vcFZhbHVlLAogICAgICBncmFiQ3Vyc29yOiB0cnVlLAogICAgICBzbGlkZXNQZXJHcm91cDogMSwgICAvLyBtdW92ZSBkaSB1biBzb2xvIHNsaWRlIHBlciBjbGljawogICAgICBzcGVlZDogNjAwLAogICAgICBwYWdpbmF0aW9uOiB7CiAgICAgICAgZWw6IHBhZ2luYXRpb25FbCwKICAgICAgICBjbGlja2FibGU6IHRydWUsCiAgICAgIH0sCiAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAvLyBzZSBwcmV2QnRuL25leHRCdG4gc29ubyBudWxsLCBTd2lwZXIgaWdub3JhIGxhIG5hdmlnYXRpb24gc2VuemEgY3Jhc2hhcmUKICAgICAgICBwcmV2RWw6IHByZXZCdG4gfHwgdW5kZWZpbmVkLAogICAgICAgIG5leHRFbDogbmV4dEJ0biB8fCB1bmRlZmluZWQsCiAgICAgIH0sCiAgICAgIGJyZWFrcG9pbnRzOiBwZXJWaWV3Q29uZmlnCiAgICB9KTsKICB9KTsKfQoKZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIGZ1bmN0aW9uICgpIHsKICAvLyBOb3RhOiBpbCBzZWxldHRvcmUgcXVpIHB1bnRhIGFsIGNvbnRlbml0b3JlIGNoZSByYWNjaGl1ZGUgLnN3aXBlciArIGJvdHRvbmkgKyBwYWdpbmF0aW9uCiAgaW5pdENhcm9zZWxsb0RPTSgnLmNhcm9zZWxsby1jb250YWluZXInLCB7CiAgICAzMjA6IHsgc2xpZGVzUGVyVmlldzogMS4zLCBzcGFjZUJldHdlZW46IDE1IH0sCiAgICA3Njg6IHsgc2xpZGVzUGVyVmlldzogMy4yLCBzcGFjZUJldHdlZW46IDIwIH0sCiAgICAxMDI0OiB7IHNsaWRlc1BlclZpZXc6IDUuMywgc3BhY2VCZXR3ZWVuOiAzMCB9LAogIH0pOwp9KTsKPC9zY3JpcHQ+CjwhLS0gL3dwOmh0bWwgLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbiAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1ucyAtLT4KCjwhLS0gd3A6Y29sdW1ucyB7ImFsaWduIjoid2lkZSJ9IC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWdud2lkZSI+PCEtLSB3cDpjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PCEtLSB3cDpodG1sIC0tPgo8aDIgY2xhc3M9IndwLWJsb2NrLWhlYWRpbmciIHN0eWxlPSJtYXJnaW4tYm90dG9tOiAtNXZoOyBtYXJnaW4tbGVmdDoyMHB4OyBwYWRkaW5nLWJvdHRvbTogMDsiPk91ciBpbXBhY3Q8L2gyPgo8IS0tIC93cDpodG1sIC0tPgoKPCEtLSB3cDpodG1sIC0tPgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9zd2lwZXJAMTEvc3dpcGVyLWJ1bmRsZS5taW4uanMiPjwvc2NyaXB0PgoKPGRpdiBpZD0iYXppZW5kZSIgY2xhc3M9InNlemlvbmUtYXppZW5kZS1jdXN0b20iPgogICAgPGRpdiBjbGFzcz0iY2Fyb3NlbGxvLWNvbnRhaW5lci1hemllbmRlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXIgY2Fyb3NlbGxvLWF6aWVuZGUtbnVvdm8iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItd3JhcHBlciI+CgogICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2plY3QvZ2xhY2llcnMvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtMS0xIGNhcmQtYXppZW5kZS1udW92byI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZy1hemllbmRlIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvSFAtcHJvZ2V0dG8tZ2hpYWNjaWFpLmpwZycpOyI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50LWF6aWVuZGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im5vbWUtYXppZW5kZS12aXNpYmlsZSI+R2xhY2llcnM8L2gzPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9hPgoKIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9kb2xvbWl0ZXMvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtMS0xIGNhcmQtYXppZW5kZS1udW92byI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZy1hemllbmRlIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvSFAtcHJvZ2V0dG8tZG9sb21pdGkuanBnJyk7Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQtYXppZW5kZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibm9tZS1hemllbmRlLXZpc2liaWxlIj5Eb2xvbWl0ZXM8L2gzPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9hPiAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgIAoKIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9ib3N0cmljby8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC0xLTEgY2FyZC1hemllbmRlLW51b3ZvIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnLWF6aWVuZGUiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9IUC1wcm9nZXR0by1ib3N0cmljby5qcGcnKTsiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudC1hemllbmRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJub21lLWF6aWVuZGUtdmlzaWJpbGUiPkJvc3RyaWNvPC9oMz4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvYT4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUiPjwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgoKPHN0eWxlPgovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyogU1RJTEkgRVNDTFVTSVZJIFBFUiBRVUVTVEEgU0VaSU9ORSAoQ29ycmV6aW9uaSBwZXIgYWxsaW5lYW1lbnRvKSAqLwovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KCi5zZXppb25lLWF6aWVuZGUtY3VzdG9tIHsgCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmNGYwZTU7IAogICAgcGFkZGluZzo2MHB4IDIwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLnRpdG9sby1zZXppb25lLWF6aWVuZGUgewogICAgY29sb3I6IzBlM2IyNjsgIAogICAgZm9udC1zaXplOjIuOHJlbTsgIAogICAgbWFyZ2luLWJvdHRvbTogMHB4Owp9Ci5jYXJvc2VsbG8tY29udGFpbmVyLWF6aWVuZGUgeyAKICAgIHBvc2l0aW9uOnJlbGF0aXZlOyAKICAgIHBhZGRpbmc6MjBweCAwOyAKICAgIG92ZXJmbG93OmhpZGRlbjsKICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgbWFyZ2luOiAwIGF1dG87Cn0KCi8qIENBUkQgUVVBRFJBVEEgKDE6MSkgKi8KLmNhcmQtMS0xIHsKICAgIGFzcGVjdC1yYXRpbzoxLzE7CiAgICB3aWR0aDozNTBweDsKICAgIGJvcmRlci1yYWRpdXM6MTJweDsKICAgIG92ZXJmbG93OmhpZGRlbjsKICAgIHBvc2l0aW9uOnJlbGF0aXZlOwp9CgouY2FyZC1iZy1hemllbmRlIHsgCiAgICB3aWR0aDoxMDAlOyAKICAgIGhlaWdodDoxMDAlOyAKICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsgCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsgCiAgICB0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjRzIGVhc2U7IAp9CgovKiBFRkZFVFRPIFpPT00gKFJpY2hpZXN0byBlIENvcnJldHRvKSAqLwouY2FyZC1hemllbmRlLW51b3ZvOmhvdmVyIC5jYXJkLWJnLWF6aWVuZGUgeyAKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IAp9CgouY2FyZC1jb250ZW50LWF6aWVuZGUgewogICAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHJpZ2h0OjA7IGJvdHRvbTowOyAgCiAgICBkaXNwbGF5OmZsZXg7IAogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogQWdnaXVudG8gcGVyIGFsbGluZWFtZW50byAqLwogICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8qIEFsbGluZWEgaWwgY29udGVudXRvIGEgc2luaXN0cmEgKi8KICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8qIENvcnJldHRvOiBBbGxpbmVhIGlsIGNvbnRlbnV0byBpbiBCQVNTTyAqLwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLDAsMCwwLjYpIDAlLCB0cmFuc3BhcmVudCA1MCUpOwogICAgdGV4dC1hbGlnbjpsZWZ0OwogICAgcGFkZGluZzogMjBweDsKfQoKLyogVEVTVE8gU0VNUFJFIFZJU0lCSUxFIElOIEJBU1NPIEEgU0lOSVNUUkEgKi8KLm5vbWUtYXppZW5kZS12aXNpYmlsZSB7CiAgICBjb2xvcjojZjRmMGU1OyAKICAgIGZvbnQtc2l6ZToxLjZyZW07IAogICAgbWFyZ2luOiAwOyAKICAgIG9wYWNpdHk6IDE7CiAgICB0ZXh0LXNoYWRvdzogMCAycHggNnB4IHJnYmEoMCwwLDAsMC44KTsKfQoKLyogUEFHSU5BWklPTkUgKi8KLnN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUgeyBwb3NpdGlvbjpzdGF0aWM7IG1hcmdpbi10b3A6MzBweDsgfQouc3dpcGVyLXBhZ2luYXRpb24tYXppZW5kZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6IzBlM2IyNjsgfQoKCi8qIFJFU1BPTlNJVkUgKi8KQG1lZGlhKG1heC13aWR0aDo3NjhweCl7CiAgICAudGl0b2xvLXNlemlvbmUtYXppZW5kZSB7IGZvbnQtc2l6ZToycmVtOyB9CiAgICAuY2FyZC0xLTEgeyAKICAgICAgICB3aWR0aDogMTAwJTsgCiAgICB9Cn0KPC9zdHlsZT4KCjxzY3JpcHQ+Ci8vIEZ1bnppb25lIGluaXRDYXJvc2VsbG8gcmltYW5lIGludmFyaWF0YSBwZXIgbCd1c28gZ2VuZXJpY28KZnVuY3Rpb24gaW5pdENhcm9zZWxsbyhzZWxlY3RvciwgcGVyVmlld0NvbmZpZywgbG9vcFZhbHVlID0gdHJ1ZSkgewogICAgcmV0dXJuIG5ldyBTd2lwZXIoc2VsZWN0b3IsIHsKICAgICAgICBsb29wOiBsb29wVmFsdWUsCiAgICAgICAgZ3JhYkN1cnNvcjogdHJ1ZSwKICAgICAgICBpbml0aWFsU2xpZGU6IDEsCiAgICAgICAgcGFnaW5hdGlvbjogewogICAgICAgICAgICAvLyBJbXBvcnRhbnRlOiBxdWkgdXNpYW1vIGxhIGNsYXNzZSBzcGVjaWZpY2EgZGVsbGEgcGFnaW5hemlvbmUgcGVyIHF1ZXN0YSBzZXppb25lCiAgICAgICAgICAgIGVsOiAnI2F6aWVuZGUgLnN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUnLAogICAgICAgICAgICBjbGlja2FibGU6IHRydWUsCiAgICAgICAgfSwKICAgICAgICBicmVha3BvaW50czogcGVyVmlld0NvbmZpZwogICAgfSk7Cn0KCi8vIEluaXppYWxpenphemlvbmUgRVNDTFVTSVZBIHBlciBsYSBzZXppb25lIElEPSJhemllbmRlIgp3aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkgewogICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAKICAgICAgICAvLyBDb250cm9sbGEgUFJJTUEgc2UgaWwgY29udGVuaXRvcmUgcHJpbmNpcGFsZSBFU0lTVEUuCiAgICAgICAgLy8gUXVlc3RvIGltcGVkaXNjZSBsJ2VzZWN1emlvbmUgZGVsbG8gc2NyaXB0IHNlIGwnSUQgI2F6aWVuZGUgbm9uIMOoIG5lbGxhIHBhZ2luYS4KICAgICAgICBjb25zdCBhemllbmRlQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2F6aWVuZGUnKTsKICAgICAgICAKICAgICAgICBpZiAoYXppZW5kZUNvbnRhaW5lcikgewogICAgICAgICAgICAvLyBJTklaSUFMSVpaQVpJT05FIFNFWklPTkUgQVpJRU5ERSBQRVJTT05BTElaWkFUQQogICAgICAgICAgICAvLyBTZWxlemlvbmlhbW8gaWwgY2Fyb3NlbGxvIFNPTE8gYWxsJ2ludGVybm8gZGVsIGNvbnRlbml0b3JlICNhemllbmRlCiAgICAgICAgICAgIGluaXRDYXJvc2VsbG8oJyNhemllbmRlIC5jYXJvc2VsbG8tYXppZW5kZS1udW92bycsIHsKICAgICAgICAgICAgICAgIDMyMDogeyBzbGlkZXNQZXJWaWV3OiAxLjIsIHNwYWNlQmV0d2VlbjogMTUgfSwKICAgICAgICAgICAgICAgIDc2ODogeyBzbGlkZXNQZXJWaWV3OiAyLCBzcGFjZUJldHdlZW46IDIwIH0sCiAgICAgICAgICAgICAgICAxMDI0OiB7IHNsaWRlc1BlclZpZXc6IDMuMiwgc3BhY2VCZXR3ZWVuOiAzMCB9LAogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgCiAgICB9LCAxMDApOyAKfTsKPC9zY3JpcHQ+CjwhLS0gL3dwOmh0bWwgLS0+Cgo8IS0tIHdwOnNwYWNlciB7ImhlaWdodCI6IjMwcHgifSAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjMwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOmNvbHVtbnMgeyJhbGlnbiI6ImZ1bGwifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyBhbGlnbmZ1bGwiPjwhLS0gd3A6Y29sdW1uIHsid2lkdGgiOiIzMHB4In0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MzBweCI+PCEtLSB3cDpzcGFjZXIgeyJoZWlnaHQiOiI4cHgifSAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjhweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2Pgo8IS0tIC93cDpzcGFjZXIgLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbiAtLT4KCjwhLS0gd3A6Y29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iPjwhLS0gd3A6aW1hZ2UgeyJpZCI6NTQzNDIsIndpZHRoIjoiNzdweCIsImhlaWdodCI6ImF1dG8iLCJzaXplU2x1ZyI6ImxhcmdlIiwibGlua0Rlc3RpbmF0aW9uIjoibm9uZSIsImFsaWduIjoiY2VudGVyIn0gLS0+CjxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWltYWdlIGFsaWduY2VudGVyIHNpemUtbGFyZ2UgaXMtcmVzaXplZCI+PGltZyBzcmM9Imh0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDIvNzUtMTAyNHgxMDI0LnBuZyIgYWx0PSIiIGNsYXNzPSJ3cC1pbWFnZS01NDM0MiIgc3R5bGU9IndpZHRoOjc3cHg7aGVpZ2h0OmF1dG8iLz48L2ZpZ3VyZT4KPCEtLSAvd3A6aW1hZ2UgLS0+Cgo8IS0tIHdwOmh0bWwgLS0+CjxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHRleHQtYWxpZ246IGNlbnRlcjsgZ2FwOiAxNXB4OyI+CiAgICA8c3Ryb25nIHN0eWxlPSJmb250LXNpemU6IDIuMnJlbTsgbGluZS1oZWlnaHQ6IDEuMTtmb250LXdlaWdodDogNjAwIWltcG9ydGFudDsiPjIwMC4wMDAgdHJlZXM8L3N0cm9uZz4KICAgIDxzcGFuIHN0eWxlPSJmb250LXNpemU6IDEuMXJlbTsiPnBsYW50ZWQgYWNyb3NzIHRoZSBBbHBpbmUgcmVnaW9uPC9zcGFuPgo8L2Rpdj4KPCEtLSAvd3A6aHRtbCAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPgoKPCEtLSB3cDpjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PCEtLSB3cDppbWFnZSB7ImlkIjo1NDM0Nywid2lkdGgiOiI3NnB4IiwiaGVpZ2h0IjoiYXV0byIsInNpemVTbHVnIjoibGFyZ2UiLCJsaW5rRGVzdGluYXRpb24iOiJub25lIiwiYWxpZ24iOiJjZW50ZXIifSAtLT4KPGZpZ3VyZSBjbGFzcz0id3AtYmxvY2staW1hZ2UgYWxpZ25jZW50ZXIgc2l6ZS1sYXJnZSBpcy1yZXNpemVkIj48aW1nIHNyYz0iaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wMi83Ni0xMDI0eDEwMjQucG5nIiBhbHQ9IiIgY2xhc3M9IndwLWltYWdlLTU0MzQ3IiBzdHlsZT0id2lkdGg6NzZweDtoZWlnaHQ6YXV0byIvPjwvZmlndXJlPgo8IS0tIC93cDppbWFnZSAtLT4KCjwhLS0gd3A6aHRtbCAtLT4KPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyBnYXA6IDE1cHg7Ij4KICAgIDxzdHJvbmcgc3R5bGU9ImZvbnQtc2l6ZTogMi4ycmVtOyBsaW5lLWhlaWdodDogMS4xO2ZvbnQtd2VpZ2h0OiA2MDAhaW1wb3J0YW50OyI+MS4wMDAgdG9uczwvc3Ryb25nPgogICAgPHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTogMS4xcmVtOyI+b2YgQ0\/igoIgb2Zmc2V0Cgo8L3NwYW4+CjwvZGl2Pgo8IS0tIC93cDpodG1sIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+Cgo8IS0tIHdwOmNvbHVtbiAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIj48IS0tIHdwOmltYWdlIHsiaWQiOjU0MzUxLCJ3aWR0aCI6IjY5cHgiLCJoZWlnaHQiOiJhdXRvIiwic2l6ZVNsdWciOiJsYXJnZSIsImxpbmtEZXN0aW5hdGlvbiI6Im5vbmUiLCJhbGlnbiI6ImNlbnRlciJ9IC0tPgo8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay1pbWFnZSBhbGlnbmNlbnRlciBzaXplLWxhcmdlIGlzLXJlc2l6ZWQiPjxpbWcgc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAyLzc3LTEwMjR4MTAyNC5wbmciIGFsdD0iIiBjbGFzcz0id3AtaW1hZ2UtNTQzNTEiIHN0eWxlPSJ3aWR0aDo2OXB4O2hlaWdodDphdXRvIi8+PC9maWd1cmU+CjwhLS0gL3dwOmltYWdlIC0tPgoKPCEtLSB3cDpodG1sIC0tPgo8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGdhcDogMTVweDsiPgogICAgPHN0cm9uZyBzdHlsZT0iZm9udC1zaXplOiAyLjJyZW07IGxpbmUtaGVpZ2h0OiAxLjE7Zm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQ7Ij41MDAgdG9uczwvc3Ryb25nPgogICAgPHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTogMS4xcmVtOyI+b2Ygd29vZCByZWNvdmVyZWQKCjwvc3Bhbj4KPC9kaXY+CjwhLS0gL3dwOmh0bWwgLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbiAtLT4KCjwhLS0gd3A6Y29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iPjwhLS0gd3A6aW1hZ2UgeyJpZCI6NTQzNTUsIndpZHRoIjoiNjlweCIsImhlaWdodCI6ImF1dG8iLCJzaXplU2x1ZyI6ImxhcmdlIiwibGlua0Rlc3RpbmF0aW9uIjoibm9uZSIsImFsaWduIjoiY2VudGVyIn0gLS0+CjxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWltYWdlIGFsaWduY2VudGVyIHNpemUtbGFyZ2UgaXMtcmVzaXplZCI+PGltZyBzcmM9Imh0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDIvNzgtMTAyNHgxMDI0LnBuZyIgYWx0PSIiIGNsYXNzPSJ3cC1pbWFnZS01NDM1NSIgc3R5bGU9IndpZHRoOjY5cHg7aGVpZ2h0OmF1dG8iLz48L2ZpZ3VyZT4KPCEtLSAvd3A6aW1hZ2UgLS0+Cgo8IS0tIHdwOmh0bWwgLS0+CjxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHRleHQtYWxpZ246IGNlbnRlcjsgZ2FwOiAxNXB4OyI+CiAgICA8c3Ryb25nIHN0eWxlPSJmb250LXNpemU6IDIuMnJlbTsgbGluZS1oZWlnaHQ6IDEuMTtmb250LXdlaWdodDogNjAwIWltcG9ydGFudDsiPjE1IGFydGlzYW5zPC9zdHJvbmc+CiAgICA8c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxLjFyZW07Ij5pbnZvbHZlZCBpbiBJdGFseQo8L3NwYW4+CjwvZGl2Pgo8IS0tIC93cDpodG1sIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+Cgo8IS0tIHdwOmNvbHVtbiB7IndpZHRoIjoiMzBweCJ9IC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjMwcHgiPjwhLS0gd3A6c3BhY2VyIHsiaGVpZ2h0IjoiOHB4In0gLS0+CjxkaXYgc3R5bGU9ImhlaWdodDo4cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOmNvbHVtbnMgeyJhbGlnbiI6ImZ1bGwifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyBhbGlnbmZ1bGwiPjwhLS0gd3A6Y29sdW1uIHsid2lkdGgiOiIxNSUifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczoxNSUiPjwhLS0gd3A6c3BhY2VyIHsiaGVpZ2h0IjoiMTJweCJ9IC0tPgo8ZGl2IHN0eWxlPSJoZWlnaHQ6MTJweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2Pgo8IS0tIC93cDpzcGFjZXIgLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbiAtLT4KCjwhLS0gd3A6Y29sdW1uIHsid2lkdGgiOiI3MCUifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczo3MCUiPjwhLS0gd3A6aGVhZGluZyB7InN0eWxlIjp7InR5cG9ncmFwaHkiOnsidGV4dEFsaWduIjoiY2VudGVyIn19fSAtLT4KPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIGhhcy10ZXh0LWFsaWduLWNlbnRlciI+UmVmb3Jlc3RhdGlvbiBtYXAgZnJvbSAyMDE5IHRvIHByZXNlbnQ8L2gyPgo8IS0tIC93cDpoZWFkaW5nIC0tPgoKPCEtLSB3cDpodG1sIC0tPgo8aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL2QvZW1iZWQ\/bWlkPTFRd2JWYVBaQkdSY3pfYzVNczRPeEU3Q2dnR2poZnRjJmVoYmM9MkUzMTJGIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSI0ODAiPjwvaWZyYW1lPgo8IS0tIC93cDpodG1sIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+Cgo8IS0tIHdwOmNvbHVtbiB7IndpZHRoIjoiMTUlIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MTUlIj48IS0tIHdwOnNwYWNlciB7ImhlaWdodCI6IjExcHgifSAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjExcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOmNvbHVtbnMgeyJhbGlnbiI6IndpZGUifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyBhbGlnbndpZGUiPjwhLS0gd3A6Y29sdW1uIHsid2lkdGgiOiIxMDAlIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MTAwJSI+PCEtLSB3cDpodG1sIC0tPgo8aDIgY2xhc3M9IndwLWJsb2NrLWhlYWRpbmciIHN0eWxlPSJtYXJnaW4tYm90dG9tOiAwOyBtYXJnaW4tbGVmdDoyMHB4OyBwYWRkaW5nLWJvdHRvbTogMDsiPlRoZSBWQUlBIG1vZGVsPC9oMj4KPCEtLSAvd3A6aHRtbCAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW5zIC0tPgoKPCEtLSB3cDpjb2x1bW5zIHsiYWxpZ24iOiJ3aWRlIiwiYW5jaG9yIjoicHJhbnpvIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIiBpZD0icHJhbnpvIj48IS0tIHdwOmNvbHVtbiB7IndpZHRoIjoiNTAlIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6NTAlIj48IS0tIHdwOmh0bWwgLS0+CjxkaXYgY2xhc3M9InZhaWEtbWlzc2lvbi1ibG9jayI+CgogICAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7Ij4KICAgICAgICA8c3Ryb25nPlJlY292ZXJ5IG9mIHJhdyBtYXRlcmlhbHM8L3N0cm9uZz48YnI+CiAgICAgICAgVGhlIGZpcnN0IHBoYXNlIGZvY3VzZXMgb24gdGhlIHJlY292ZXJ5IG9mIHdvb2QgcmVzdWx0aW5nIGZyb20gdGhlIFZhaWEgc3Rvcm0gYW5kIG5vdyBhbHNvIGZyb20gdGhlIGJhcmsgYmVldGxlIChCb3N0cmljbykuIEVhY2ggdHJ1bmsgaXMgc2VsZWN0ZWQsIGNhdGFsb2dlZCwgYW5kIHByZXBhcmVkLCBpbml0aWF0aW5nIGEgcHJvY2VzcyB0aGF0IHRyYW5zZm9ybXMgZGFtYWdlIGludG8gYSByZXNvdXJjZS4KICAgIDwvcD4KCiAgICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDIwcHg7IG1hcmdpbi1yaWdodDogMTBweDsiPgogICAgICAgIDxzdHJvbmc+QWN0aXZhdGlvbiBvZiBsb2NhbCBzdXBwbHkgY2hhaW5zPC9zdHJvbmc+PGJyPgogICAgICAgIFdlIGNvbGxhYm9yYXRlIGV4Y2x1c2l2ZWx5IHdpdGggYXJ0aXNhbnMgYW5kIGJ1c2luZXNzZXMgaW4gdGhlIGFmZmVjdGVkIHZhbGxleXMuIFRoaXMgbm90IG9ubHkgZ3VhcmFudGVlcyB0aGUgaGlnaGVzdCBxdWFsaXR5IG9mIHdvcmttYW5zaGlwIGJ1dCBhbHNvIHJlYWN0aXZhdGVzIHRoZSBsb2NhbCBlY29ub215IGFuZCB0aGUgc2Vuc2Ugb2YgY29tbXVuaXR5LgogICAgPC9wPgoKICAgIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogMjBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyI+CiAgICAgICAgPHN0cm9uZz5EZXNpZ24gVkFJQSdzIG9iamVjdHM8L3N0cm9uZz48YnI+CiAgICAgICAgRGFtYWdlZCByYXcgbWF0ZXJpYWwgZ2l2ZXMgcmlzZSB0byBtaW5pbWFsaXN0IGFuZCBtZWFuaW5nZnVsIGRlc2lnbiBvYmplY3RzIHdpdGggcGVvcGxlIGF0IHRoZSBjZW50ZXIuIEVhY2ggcGllY2UgY2FycmllcyB0aGUgbWFyayBvZiB0aGUgc3Rvcm0sIG1ha2luZyBpdCBhIHN5bWJvbCBvZiByZXNpbGllbmNlIGFuZCBiZWF1dHkuCiAgICA8L3A+CgogICAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7Ij4KICAgICAgICA8c3Ryb25nPlJlc3RvcmF0aW9uIGFuZCByZWdlbmVyYXRpb24gcHJvamVjdHM8L3N0cm9uZz48YnI+CiAgICAgICAgVGhlIGN5Y2xlIGlzIGNvbXBsZXRlZCB3aXRoIHJlc3RvcmF0aW9uLiBBIHBvcnRpb24gb2YgdGhlIHByb2NlZWRzIGlzIHJlaW52ZXN0ZWQgaW4gY29uY3JldGUgcHJvamVjdHMgZm9yIHJlZm9yZXN0YXRpb24gYW5kIHJlZ2VuZXJhdGlvbiBvZiB0aGUgdGVycml0b3J5LCBoZWxwaW5nIHRvIGhlYWwgdGhlIHdvdW5kcyBsZWZ0IGJ5IHRoZSBzdG9ybS4gRm9yIGV2ZXJ5IHByb2R1Y3Qgc29sZCwgYSB0cmVlIGlzIHBsYW50ZWQsIG9yIGdsYWNpZXJzIGFyZSBjbGVhbmVkLgogICAgPC9wPgoKPC9kaXY+CjwhLS0gL3dwOmh0bWwgLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbiAtLT4KCjwhLS0gd3A6Y29sdW1uIC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iPjwhLS0gd3A6Y29sdW1ucyAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyI+PCEtLSB3cDpjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PCEtLSB3cDpodG1sIC0tPgo8ZGl2IGNsYXNzPSJzbGlkZXNob3ctY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJzbGlkZSBzbGlkZTEiPjwvZGl2PgogIDxkaXYgY2xhc3M9InNsaWRlIHNsaWRlMiI+PC9kaXY+CiAgPGRpdiBjbGFzcz0ic2xpZGUgc2xpZGUzIj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJzbGlkZSBzbGlkZTQiPjwvZGl2PgogIDxkaXYgY2xhc3M9InNsaWRlIHNsaWRlNSI+PC9kaXY+CjwvZGl2PgoKPHN0eWxlPgouc2xpZGVzaG93LWNvbnRhaW5lciB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHdpZHRoOiAxMDAlOwogIG1heC13aWR0aDogNjAwcHg7CiAgYXNwZWN0LXJhdGlvOiAxIC8gMTsgLyogcXVhZHJhdG8gKi8KICBvdmVyZmxvdzogaGlkZGVuOwogIG1hcmdpbjogMCBhdXRvOwp9Cgouc2xpZGUgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6MDsgbGVmdDowOwogIHdpZHRoOiAxMDAlOwogIGhlaWdodDogMTAwJTsKICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOwogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsKICBvcGFjaXR5OiAwOwogIGFuaW1hdGlvbjogZmFkZSAxNnMgaW5maW5pdGU7Cn0KCi8qIGltcG9zdGEgbGUgaW1tYWdpbmkgKi8KLnNsaWRlMSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Nb2RlbGxvSFBfRU4tMS5qcGcnKTsgYW5pbWF0aW9uLWRlbGF5OiAwczsgfQouc2xpZGUyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL01vZGVsbG9IUF9FTi0yLmpwZycpOyBhbmltYXRpb24tZGVsYXk6IDRzOyB9Ci5zbGlkZTMgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvTW9kZWxsb0hQX0VOLTMuanBnJyk7IGFuaW1hdGlvbi1kZWxheTogNHM7IH0KLnNsaWRlNCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Nb2RlbGxvSFBfRU4tNC5qcGcnKTsgYW5pbWF0aW9uLWRlbGF5OiA4czsgfQouc2xpZGU1IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL01vZGVsbG9IUF9FTi01LmpwZycpOyBhbmltYXRpb24tZGVsYXk6IDEyczsgfQoKQGtleWZyYW1lcyBmYWRlIHsKICAwJSB7IG9wYWNpdHk6IDA7IH0KICA2LjI1JSB7IG9wYWNpdHk6IDE7IH0gIC8qIGZhZGUtaW4gKi8KICAyNSUgeyBvcGFjaXR5OiAxOyB9ICAgIC8qIHZpc2liaWxlICovCiAgMzEuMjUlIHsgb3BhY2l0eTogMDsgfSAvKiBmYWRlLW91dCAqLwogIDEwMCUgeyBvcGFjaXR5OiAwOyB9Cn0KPC9zdHlsZT4KPCEtLSAvd3A6aHRtbCAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW5zIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOnNwYWNlciB7ImhlaWdodCI6IjU4cHgifSAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjU4cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPgoKPCEtLSB3cDpjb2x1bW5zIHsiYWxpZ24iOiJ3aWRlIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIj48IS0tIHdwOmNvbHVtbiB7IndpZHRoIjoiMTAwJSJ9IC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjEwMCUiPjwhLS0gd3A6aGVhZGluZyAtLT4KPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIj5BcmUgeW91IGEgY29tcGFueT88L2gyPgo8IS0tIC93cDpoZWFkaW5nIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOmh0bWwgLS0+CjwhLS0gSFRNTCAtLT4KPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3ZhaWEtNC1jb21wYW5pZXMvIiBjbGFzcz0idmFpYS1saW5rLWF6aWVuZGUiPgogIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyIGFsaWdud2lkZSB2YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGUiPgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSIKICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8wMS8xMjgweDYwMF9jbGl2ZXQtMS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTsiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1hemllbmRlIj4KICAgICAgPGgxIGNsYXNzPSJ2YWlhLXRpdGxlLWF6aWVuZGUiPkNyZWF0ZSB2YWx1ZSB3aXRoIHVzPC9oMT4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2E+Cgo8IS0tIENTUyAtLT4KPHN0eWxlPgoudmFpYS1saW5rLWF6aWVuZGUgewogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBkaXNwbGF5OiBibG9jazsKfQoKLnZhaWEtY292ZXItaG92ZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiA0MDBweDsKfQoKLyogaW1tYWdpbmUgZGkgc2ZvbmRvICovCi53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1hemllbmRlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaW5zZXQ6IDA7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIHRyYW5zaXRpb246IGZpbHRlciAwLjZzIGVhc2UsIHRyYW5zZm9ybSAwLjZzIGVhc2U7CiAgei1pbmRleDogMDsKfQoKLyogY29udGVuaXRvcmUgY2VudHJhbGUgKi8KLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDI7CiAgZGlzcGxheTogZmxleDsKICBhbGlnbi1pdGVtczogY2VudGVyOwogIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIGhlaWdodDogMTAwJTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi8qIHRpdG9sbyAqLwoudmFpYS10aXRsZS1hemllbmRlIHsKICBtYXJnaW46IDA7CiAgY29sb3I6IHdoaXRlOwogIGZvbnQtc2l6ZTogNHJlbTsKICBmb250LXdlaWdodDogNzAwOwogIGxpbmUtaGVpZ2h0OiAxLjE7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7Cn0KCi8qIGVmZmV0dG8gaG92ZXIgKi8KLnZhaWEtY292ZXItaG92ZXItYXppZW5kZTpob3ZlciAud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSB7CiAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMTUpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7Cn0KCi52YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGU6aG92ZXIgLnZhaWEtdGl0bGUtYXppZW5kZSB7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsKfQo8L3N0eWxlPgo8IS0tIC93cDpodG1sIC0tPgoKPCEtLSB3cDpidXR0b25zIHsibGF5b3V0Ijp7InR5cGUiOiJmbGV4IiwianVzdGlmeUNvbnRlbnQiOiJjZW50ZXIiLCJ2ZXJ0aWNhbEFsaWdubWVudCI6InRvcCJ9fSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stYnV0dG9ucyI+PCEtLSB3cDpidXR0b24geyJjbGFzc05hbWUiOiJpcy1zdHlsZS1vdXRsaW5lIiwic3R5bGUiOnsiZGltZW5zaW9ucyI6eyJ3aWR0aCI6Ijc1JSJ9fX0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWJ1dHRvbiBpcy1zdHlsZS1vdXRsaW5lIj48YSBjbGFzcz0id3AtYmxvY2stYnV0dG9uX19saW5rIHdwLWVsZW1lbnQtYnV0dG9uIiBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2plY3QvdmFpYS00LWNvbXBhbmllcy8iPkxlYXJuIG1vcmU8L2E+PC9kaXY+CjwhLS0gL3dwOmJ1dHRvbiAtLT48L2Rpdj4KPCEtLSAvd3A6YnV0dG9ucyAtLT4KCjwhLS0gd3A6c3BhY2VyIC0tPgo8ZGl2IHN0eWxlPSJoZWlnaHQ6MTAwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPgoKPCEtLSB3cDpodG1sIC0tPgo8IS0tIEhUTUwgLS0+CjxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vYWJvdXQtdXMvIiBjbGFzcz0idmFpYS1saW5rLWNoaS1zaWFtbyI+CiAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXIgYWxpZ253aWRlIHZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vIj4KICAgIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyX19pbWFnZS1iYWNrZ3JvdW5kLWNoaS1zaWFtbyIKICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9DaGktc2lhbW8tbm8tdGV4dC5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTsiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1jaGktc2lhbW8iPgogICAgICA8aDEgY2xhc3M9InZhaWEtdGl0bGUtY2hpLXNpYW1vIj5XaG8gd2UgYXJlPC9oMT4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2E+Cgo8IS0tIENTUyAtLT4KPHN0eWxlPgoudmFpYS1saW5rLWNoaS1zaWFtbyB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGRpc3BsYXk6IGJsb2NrOwp9CgoudmFpYS1jb3Zlci1ob3Zlci1jaGktc2lhbW8gewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGRpc3BsYXk6IGJsb2NrOwogIGhlaWdodDogNTAwcHg7Cn0KCi8qIGltbWFnaW5lIGRpIHNmb25kbyAqLwoud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtY2hpLXNpYW1vIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaW5zZXQ6IDA7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsKICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC42cyBlYXNlLCB0cmFuc2Zvcm0gMC42cyBlYXNlOwogIHotaW5kZXg6IDA7Cn0KCi8qIGNvbnRlbml0b3JlIHRlc3RvIGluIGFsdG8gYSBzaW5pc3RyYSAqLwoud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1jaGktc2lhbW8gewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAyOwogIGRpc3BsYXk6IGZsZXg7CiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogIGhlaWdodDogMTAwJTsKICBwYWRkaW5nOiAycmVtIDNyZW07CiAgdGV4dC1hbGlnbjogbGVmdDsKfQoKLyogdGl0b2xvICovCi52YWlhLXRpdGxlLWNoaS1zaWFtbyB7CiAgbWFyZ2luOiAwOwogIGNvbG9yOiB3aGl0ZTsKICBmb250LXNpemU6IDMuNXJlbTsKICBmb250LXdlaWdodDogNzAwOwogIGxpbmUtaGVpZ2h0OiAxLjE7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7Cn0KCi8qIGVmZmV0dG8gaG92ZXIgKi8KLnZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vOmhvdmVyIC53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1jaGktc2lhbW8gewogIGZpbHRlcjogYnJpZ2h0bmVzcygxLjE1KTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOwp9CgoudmFpYS1jb3Zlci1ob3Zlci1jaGktc2lhbW86aG92ZXIgLnZhaWEtdGl0bGUtY2hpLXNpYW1vIHsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOwp9Cjwvc3R5bGU+CjwhLS0gL3dwOmh0bWwgLS0+Cgo8IS0tIHdwOnNwYWNlciAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjEwMHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT4KCjwhLS0gd3A6ZW1iZWQgeyJ1cmwiOiJodHRwczovL3lvdXR1LmJlL1Z5ejdLMTlpX0xjIiwidHlwZSI6InZpZGVvIiwicHJvdmlkZXJOYW1lU2x1ZyI6InlvdXR1YmUiLCJyZXNwb25zaXZlIjp0cnVlLCJhbGlnbiI6ImZ1bGwiLCJjbGFzc05hbWUiOiJ3cC1lbWJlZC1hc3BlY3QtMTYtOSB3cC1oYXMtYXNwZWN0LXJhdGlvIn0gLS0+CjxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWVtYmVkIGFsaWduZnVsbCBpcy10eXBlLXZpZGVvIGlzLXByb3ZpZGVyLXlvdXR1YmUgd3AtYmxvY2stZW1iZWQteW91dHViZSB3cC1lbWJlZC1hc3BlY3QtMTYtOSB3cC1oYXMtYXNwZWN0LXJhdGlvIj48ZGl2IGNsYXNzPSJ3cC1ibG9jay1lbWJlZF9fd3JhcHBlciI+Cmh0dHBzOi8veW91dHUuYmUvVnl6N0sxOWlfTGMKPC9kaXY+PC9maWd1cmU+CjwhLS0gL3dwOmVtYmVkIC0tPgoKPCEtLSB3cDpzcGFjZXIgLS0+CjxkaXYgc3R5bGU9ImhlaWdodDoxMDBweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2Pgo8IS0tIC93cDpzcGFjZXIgLS0+Cgo8IS0tIHdwOmNvbHVtbnMgeyJzdHlsZSI6eyJjb2xvciI6eyJncmFkaWVudCI6ImxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1MiwxODUsMCkgMTAwJSxyZ2IoMjU1LDEwNSwwKSAxMDAlKSJ9fSwiYW5jaG9yIjoicHJhbnpvIn0gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgaGFzLWJhY2tncm91bmQiIGlkPSJwcmFuem8iIHN0eWxlPSJiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1MiwxODUsMCkgMTAwJSxyZ2IoMjU1LDEwNSwwKSAxMDAlKSI+PCEtLSB3cDpjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PCEtLSB3cDpzcGFjZXIgeyJoZWlnaHQiOiI1MHB4In0gLS0+CjxkaXYgc3R5bGU9ImhlaWdodDo1MHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT4KCjwhLS0gd3A6aGVhZGluZyAtLT4KPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIj5PdXIgcmV0YWlsZXJzPC9oMj4KPCEtLSAvd3A6aGVhZGluZyAtLT4KCjwhLS0gd3A6cGFyYWdyYXBoIC0tPgo8cD5Mb29raW5nIHRvIGJ1eSBvdXIgcHJvZHVjdHMgaW4gc3RvcmU\/PGJyPkZpbmQgYSByZXRhaWxlciBuZWFyIHlvdSE8L3A+CjwhLS0gL3dwOnBhcmFncmFwaCAtLT4KCjwhLS0gd3A6YnV0dG9ucyAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stYnV0dG9ucyI+PCEtLSB3cDpidXR0b24geyJjbGFzc05hbWUiOiJpcy1zdHlsZS1vdXRsaW5lIiwic3R5bGUiOnsiY29sb3IiOnsiZ3JhZGllbnQiOiJsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTIsMTg1LDApIDEwMCUscmdiKDI1NSwxMDUsMCkgMTAwJSkifX19IC0tPgo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1idXR0b24gaXMtc3R5bGUtb3V0bGluZSI+PGEgY2xhc3M9IndwLWJsb2NrLWJ1dHRvbl9fbGluayBoYXMtYmFja2dyb3VuZCB3cC1lbGVtZW50LWJ1dHRvbiIgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi92YWlhLWFtYmFzc2Fkb3JzLyIgc3R5bGU9ImJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjUyLDE4NSwwKSAxMDAlLHJnYigyNTUsMTA1LDApIDEwMCUpIj5HbyB0byB0aGUgcGFnZTwvYT48L2Rpdj4KPCEtLSAvd3A6YnV0dG9uIC0tPjwvZGl2Pgo8IS0tIC93cDpidXR0b25zIC0tPgoKPCEtLSB3cDpzcGFjZXIgeyJoZWlnaHQiOiI1MHB4In0gLS0+CjxkaXYgc3R5bGU9ImhlaWdodDo1MHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPgoKPCEtLSB3cDpjb2x1bW4gLS0+CjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PCEtLSB3cDpzcGFjZXIgeyJoZWlnaHQiOiI1MHB4In0gLS0+CjxkaXYgc3R5bGU9ImhlaWdodDo1MHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT4KCjwhLS0gd3A6Y29sdW1ucyAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyI+PCEtLSB3cDpjb2x1bW4geyJ3aWR0aCI6IjEwMCUifSAtLT4KPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczoxMDAlIj48IS0tIHdwOmh0bWwgLS0+CjxpZnJhbWUgc3JjPSJodHRwczovL3NuYXp6eW1hcHMuY29tL2VtYmVkLzYyOTc3MyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iNDAwcHgiIHN0eWxlPSJib3JkZXI6bm9uZTsiPjwvaWZyYW1lPgo8IS0tIC93cDpodG1sIC0tPgoKPCEtLSB3cDpzcGFjZXIgeyJoZWlnaHQiOiI1MHB4In0gLS0+CjxkaXYgc3R5bGU9ImhlaWdodDo1MHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT48L2Rpdj4KPCEtLSAvd3A6Y29sdW1uIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW5zIC0tPjwvZGl2Pgo8IS0tIC93cDpjb2x1bW4gLS0+PC9kaXY+CjwhLS0gL3dwOmNvbHVtbnMgLS0+Cgo8IS0tIHdwOnNwYWNlciAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjEwMHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+CjwhLS0gL3dwOnNwYWNlciAtLT4KCjwhLS0gd3A6YWNmL2NhcmRzIHsibmFtZSI6ImFjZi9jYXJkcyIsImRhdGEiOnsiaGVhZGluZyI6IkRpY29ubyBkaSBub2kiLCJfaGVhZGluZyI6ImZpZWxkXzVlNGFiN2ZkM2EyZWYiLCJtYWludGl0bGUtY29sb3IiOiJ2aW9sZXQiLCJfbWFpbnRpdGxlLWNvbG9yIjoiZmllbGRfNWU0YWI3ZmQzYTJlZl8wMCIsImJhY2tncm91bmQiOiJsaWdodHllbGxvdyIsIl9iYWNrZ3JvdW5kIjoiZmllbGRfNWU0YWI3ZmQzYTJlZl8wMSIsInRpdGxlcy1jb2xvciI6InRyYW5zcGFyZW50IiwiX3RpdGxlcy1jb2xvciI6ImZpZWxkXzVlNGFiN2ZkM2EyZWZfMDIiLCJjb250ZW50cy1jb2xvciI6InRyYW5zcGFyZW50IiwiX2NvbnRlbnRzLWNvbG9yIjoiZmllbGRfNWU0YWI3ZmQzYTJlZl8wMyIsImNhcmRzLWNvbG9yIjoidmlvbGV0IiwiX2NhcmRzLWNvbG9yIjoiZmllbGRfNWU0YWI3ZmQzYTJlZl8wNCIsImNhcmRzXzBfaGVhZGluZyI6IiIsIl9jYXJkc18wX2hlYWRpbmciOiJmaWVsZF81ZTI5NjY1YzU3ZDQwIiwiY2FyZHNfMF9jb250ZW50IjoiIiwiX2NhcmRzXzBfY29udGVudCI6ImZpZWxkXzVlMjk2NjYyNTdkNDEiLCJjYXJkc18wX2ltYWdlIjozMjY1LCJfY2FyZHNfMF9pbWFnZSI6ImZpZWxkXzVlMjk2NjY3NTdkNDIiLCJjYXJkc18wX2xpbmstdGV4dCI6IiIsIl9jYXJkc18wX2xpbmstdGV4dCI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAxIiwiY2FyZHNfMF9saW5rLXVybCI6Imh0dHBzOi8vd3d3LmNvcnJpZXJlLml0L2Nyb25hY2hlLzIxX290dG9icmVfMjgvc3RhcnQtdXAtY2hlLXJpZGEtdml0YS1mb3Jlc3RlLWZlcml0ZS12YWlhLTA1MWY1ZGUyLTM4MmEtMTFlYy1iNTdkLTE4OTkwMGZmOGYzNi5zaHRtbCIsIl9jYXJkc18wX2xpbmstdXJsIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDIiLCJjYXJkc18wX2xpbmstY29sb3IiOiJzZWNvbmRhcnkiLCJfY2FyZHNfMF9saW5rLWNvbG9yIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDMiLCJjYXJkc18xX2hlYWRpbmciOiIiLCJfY2FyZHNfMV9oZWFkaW5nIjoiZmllbGRfNWUyOTY2NWM1N2Q0MCIsImNhcmRzXzFfY29udGVudCI6IiIsIl9jYXJkc18xX2NvbnRlbnQiOiJmaWVsZF81ZTI5NjY2MjU3ZDQxIiwiY2FyZHNfMV9pbWFnZSI6MzI2MiwiX2NhcmRzXzFfaW1hZ2UiOiJmaWVsZF81ZTI5NjY2NzU3ZDQyIiwiY2FyZHNfMV9saW5rLXRleHQiOiIiLCJfY2FyZHNfMV9saW5rLXRleHQiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMSIsImNhcmRzXzFfbGluay11cmwiOiJodHRwczovL2ZvcmJlcy5pdC8yMDIwLzA3LzA4L3N0YXJ0dXAtdmFpYS1hbXBsaWZpY2F0b3JlLXRlbXBlc3RhLXVuZGVyLTMwLyIsIl9jYXJkc18xX2xpbmstdXJsIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDIiLCJjYXJkc18xX2xpbmstY29sb3IiOiJwcmltYXJ5IiwiX2NhcmRzXzFfbGluay1jb2xvciI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzIiwiY2FyZHNfMl9oZWFkaW5nIjoiIiwiX2NhcmRzXzJfaGVhZGluZyI6ImZpZWxkXzVlMjk2NjVjNTdkNDAiLCJjYXJkc18yX2NvbnRlbnQiOiIiLCJfY2FyZHNfMl9jb250ZW50IjoiZmllbGRfNWUyOTY2NjI1N2Q0MSIsImNhcmRzXzJfaW1hZ2UiOjMyNTYsIl9jYXJkc18yX2ltYWdlIjoiZmllbGRfNWUyOTY2Njc1N2Q0MiIsImNhcmRzXzJfbGluay10ZXh0IjoiIiwiX2NhcmRzXzJfbGluay10ZXh0IjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEiLCJjYXJkc18yX2xpbmstdXJsIjoiaHR0cHM6Ly93d3cucmVwdWJibGljYS5pdC9ncmVlbi1hbmQtYmx1ZS9kb3NzaWVyL3R1dHRpLXBlci1sYS10ZXJyYS8yMDIzLzA5LzE5L25ld3MvdmFpYS00MTQxMDQ5NTIvP3JlZj1SSFJNLUJHLVA1LVMxLVQxIiwiX2NhcmRzXzJfbGluay11cmwiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMiIsImNhcmRzXzJfbGluay1jb2xvciI6InByaW1hcnkiLCJfY2FyZHNfMl9saW5rLWNvbG9yIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDMiLCJjYXJkc18zX2hlYWRpbmciOiIiLCJfY2FyZHNfM19oZWFkaW5nIjoiZmllbGRfNWUyOTY2NWM1N2Q0MCIsImNhcmRzXzNfY29udGVudCI6IiIsIl9jYXJkc18zX2NvbnRlbnQiOiJmaWVsZF81ZTI5NjY2MjU3ZDQxIiwiY2FyZHNfM19pbWFnZSI6MzI1MCwiX2NhcmRzXzNfaW1hZ2UiOiJmaWVsZF81ZTI5NjY2NzU3ZDQyIiwiY2FyZHNfM19saW5rLXRleHQiOiIiLCJfY2FyZHNfM19saW5rLXRleHQiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMSIsImNhcmRzXzNfbGluay11cmwiOiJodHRwczovL3N0cmVhbTI0Lmlsc29sZTI0b3JlLmNvbS92aWRlby9pdGFsaWEvZm9yZXN0YS1pbm5vdmF0b3JpLTEwMDAtYWxiZXJpLXBpYW50YXRpLXJpZm9yZXN0YXJlLWRvbG9taXRpL0FGQkF0azIiLCJfY2FyZHNfM19saW5rLXVybCI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyIiwiY2FyZHNfM19saW5rLWNvbG9yIjoicHJpbWFyeSIsIl9jYXJkc18zX2xpbmstY29sb3IiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMyIsImNhcmRzXzRfaGVhZGluZyI6IiIsIl9jYXJkc180X2hlYWRpbmciOiJmaWVsZF81ZTI5NjY1YzU3ZDQwIiwiY2FyZHNfNF9jb250ZW50IjoiIiwiX2NhcmRzXzRfY29udGVudCI6ImZpZWxkXzVlMjk2NjYyNTdkNDEiLCJjYXJkc180X2ltYWdlIjozMjQ3LCJfY2FyZHNfNF9pbWFnZSI6ImZpZWxkXzVlMjk2NjY3NTdkNDIiLCJjYXJkc180X2xpbmstdGV4dCI6IiIsIl9jYXJkc180X2xpbmstdGV4dCI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAxIiwiY2FyZHNfNF9saW5rLXVybCI6Imh0dHBzOi8vd3d3LnRnY29tMjQubWVkaWFzZXQuaXQvMjAyMy92aWRlby8tc3R1ZGlvLWFwZXJ0by1tYWdcdTAwMmRcdTAwMmQtbmV4dC1nZW5lcmF6aW9uZS1ldXJvcGEtZ3VhcmRhLWxhLXNlY29uZGEtcHVudGF0YS1zdS1pc3RydXppb25lLWZvcm1hemlvbmUtZS1yaWNlcmNhXzYxNjk5NTcwLTAyay5zaHRtbCIsIl9jYXJkc180X2xpbmstdXJsIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDIiLCJjYXJkc180X2xpbmstY29sb3IiOiJwcmltYXJ5IiwiX2NhcmRzXzRfbGluay1jb2xvciI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzIiwiY2FyZHNfNV9oZWFkaW5nIjoiIiwiX2NhcmRzXzVfaGVhZGluZyI6ImZpZWxkXzVlMjk2NjVjNTdkNDAiLCJjYXJkc181X2NvbnRlbnQiOiIiLCJfY2FyZHNfNV9jb250ZW50IjoiZmllbGRfNWUyOTY2NjI1N2Q0MSIsImNhcmRzXzVfaW1hZ2UiOjMyNTksIl9jYXJkc181X2ltYWdlIjoiZmllbGRfNWUyOTY2Njc1N2Q0MiIsImNhcmRzXzVfbGluay10ZXh0IjoiIiwiX2NhcmRzXzVfbGluay10ZXh0IjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEiLCJjYXJkc181X2xpbmstdXJsIjoiaHR0cHM6Ly93d3cuZmF6Lm5ldC9ha3R1ZWxsL3RlY2huaWstbW90b3IvZnVlbmYtYW0tZnJlaXRhZy1yZWNoZW5iZWlzcGllbGUtMTg0MDMxNTEvcGx1cy0zMC0xODM5MTkwMi5odG1sIiwiX2NhcmRzXzVfbGluay11cmwiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMiIsImNhcmRzXzVfbGluay1jb2xvciI6InByaW1hcnkiLCJfY2FyZHNfNV9saW5rLWNvbG9yIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDMiLCJjYXJkc182X2hlYWRpbmciOiIiLCJfY2FyZHNfNl9oZWFkaW5nIjoiZmllbGRfNWUyOTY2NWM1N2Q0MCIsImNhcmRzXzZfY29udGVudCI6IiIsIl9jYXJkc182X2NvbnRlbnQiOiJmaWVsZF81ZTI5NjY2MjU3ZDQxIiwiY2FyZHNfNl9pbWFnZSI6MzI1MywiX2NhcmRzXzZfaW1hZ2UiOiJmaWVsZF81ZTI5NjY2NzU3ZDQyIiwiY2FyZHNfNl9saW5rLXRleHQiOiIiLCJfY2FyZHNfNl9saW5rLXRleHQiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMSIsImNhcmRzXzZfbGluay11cmwiOiJodHRwczovL3RnMjQuc2t5Lml0L3RlY25vbG9naWEvbm93LzIwMjEvMDMvMTEvdmFpYS1jYXNzZS1tdXNpY2FsaS1sZWduby10ZW1wZXN0YSIsIl9jYXJkc182X2xpbmstdXJsIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDIiLCJjYXJkc182X2xpbmstY29sb3IiOiJwcmltYXJ5IiwiX2NhcmRzXzZfbGluay1jb2xvciI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzIiwiY2FyZHNfN19oZWFkaW5nIjoiIiwiX2NhcmRzXzdfaGVhZGluZyI6ImZpZWxkXzVlMjk2NjVjNTdkNDAiLCJjYXJkc183X2NvbnRlbnQiOiIiLCJfY2FyZHNfN19jb250ZW50IjoiZmllbGRfNWUyOTY2NjI1N2Q0MSIsImNhcmRzXzdfaW1hZ2UiOjMyNjgsIl9jYXJkc183X2ltYWdlIjoiZmllbGRfNWUyOTY2Njc1N2Q0MiIsImNhcmRzXzdfbGluay10ZXh0IjoiIiwiX2NhcmRzXzdfbGluay10ZXh0IjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEiLCJjYXJkc183X2xpbmstdXJsIjoiaHR0cHM6Ly93d3cuY2hpcC5kZS9uZXdzL0xhdXRzcHJlY2hlci1vaG5lLVN0cm9tLXVuZC1UZWNobmlrLURhcy1pc3QtZGVyLVZBSUEtQ3ViZV8xODQ0NDk2NTEuaHRtbCIsIl9jYXJkc183X2xpbmstdXJsIjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDIiLCJjYXJkc183X2xpbmstY29sb3IiOiJwcmltYXJ5IiwiX2NhcmRzXzdfbGluay1jb2xvciI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzIiwiY2FyZHNfOF9oZWFkaW5nIjoiIiwiX2NhcmRzXzhfaGVhZGluZyI6ImZpZWxkXzVlMjk2NjVjNTdkNDAiLCJjYXJkc184X2NvbnRlbnQiOiIiLCJfY2FyZHNfOF9jb250ZW50IjoiZmllbGRfNWUyOTY2NjI1N2Q0MSIsImNhcmRzXzhfaW1hZ2UiOjczNDIsIl9jYXJkc184X2ltYWdlIjoiZmllbGRfNWUyOTY2Njc1N2Q0MiIsImNhcmRzXzhfbGluay10ZXh0IjoiIiwiX2NhcmRzXzhfbGluay10ZXh0IjoiZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEiLCJjYXJkc184X2xpbmstdXJsIjoiaHR0cHM6Ly93d3cuZm9ydHVuZWl0YS5jb20vMjAyNC8wMi8xOC92YWlhLWN1YmUtaWwtbGVnbm8tY2hlLXZpc3NlLWR1ZS12b2x0ZS8iLCJfY2FyZHNfOF9saW5rLXVybCI6ImZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyIiwiY2FyZHNfOF9saW5rLWNvbG9yIjoicHJpbWFyeSIsIl9jYXJkc184X2xpbmstY29sb3IiOiJmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMyIsImNhcmRzIjo5LCJfY2FyZHMiOiJmaWVsZF81ZTI5NjY1MDU3ZDNmIn0sImFsaWduIjoiIiwibW9kZSI6InByZXZpZXcifSAvLS0+Cgo8IS0tIHdwOnNwYWNlciB7ImhlaWdodCI6IjU0cHgifSAtLT4KPGRpdiBzdHlsZT0iaGVpZ2h0OjU0cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj4KPCEtLSAvd3A6c3BhY2VyIC0tPgoKPCEtLSB3cDpodG1sIC0tPgo8ZGl2IGlkPSJmcm0tbWx0Y2hubCI+PC9kaXY+CjwhLS0gL3dwOmh0bWwgLS0+ZG9jdW1lbnRleGNlcnB0ZG9jdW1lbnRhdXRob3Jkb2N1bWVudGZlYXR1cmVkX21lZGlhZG9jdW1lbnRjb21tZW50X3N0YXR1c2RvY3VtZW50cGluZ19zdGF0dXNkb2N1bWVudHRlbXBsYXRlZG9jdW1lbnRtZXRhX2FjZl9jaGFuZ2VkY29udGVudC10eXBlZm9vdG5vdGVzZG9jdW1lbnRibG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lzU3RhY2tlZE9uTW9iaWxlYWxpZ25pbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzd2lkdGhpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpc1N0YWNrZWRPbk1vYmlsZWFsaWduaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lzU3RhY2tlZE9uTW9iaWxlYWxpZ25pbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaXNTdGFja2VkT25Nb2JpbGVhbGlnbmlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpc1N0YWNrZWRPbk1vYmlsZWFsaWduaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lzU3RhY2tlZE9uTW9iaWxlYWxpZ25pbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaXNTdGFja2VkT25Nb2JpbGVhbGlnbmFuY2hvcmlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaXNTdGFja2VkT25Nb2JpbGVhbGlnbmlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2xheW91dGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzdXJsY2FwdGlvbnR5cGVwcm92aWRlck5hbWVTbHVnYWxsb3dSZXNwb25zaXZlcmVzcG9uc2l2ZXByZXZpZXdhYmxlYWxpZ25jbGFzc05hbWVpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaGVpZ2h0aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lzU3RhY2tlZE9uTW9iaWxlc3R5bGVhbmNob3Jpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaGVpZ2h0aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc25hbWVkYXRhYWxpZ25tb2RlaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2hlaWdodGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NzdGF0ZXNhdmVkQXRzdGF0ZXNhdmVkQnlfYWNmX2NvbnRleHRzdGF0ZXZlcnNpb248YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1jb3Zlci8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wNi9WYWlhLWNvdmVyLWltbWFnaW5lLWhvbWUuanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgQ292ZXI8L2gzPjwvZGl2Pgo8L2E+CgogIDx2aWRlbyBpZD0idmlkZW8tZGVza3RvcCIgYXV0b3BsYXk9IiIgbXV0ZWQ9IiIgbG9vcD0iIiBwbGF5c2lubGluZT0iIj4KICAgIDxzb3VyY2Ugc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA2L1ZpZGVvLWhvbWUtaGVyby1wdWdsaWEtZG9sb21pdGktb3JpenpvbnRhbGUubXA0IiB0eXBlPSJ2aWRlby9tcDQiPgogIDx2aWRlbyBpZD0idmlkZW8tbW9iaWxlIiBhdXRvcGxheT0iIiBtdXRlZD0iIiBsb29wPSIiIHBsYXlzaW5saW5lPSIiPgogICAgPHNvdXJjZSBzcmM9Imh0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDYvdmlkZW8taG9tZS1oZXJvLXB1Z2xpYS1kb2xvbWl0aS12ZXJ0aWNhbGUubXA0IiB0eXBlPSJ2aWRlby9tcDQiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vc3dpcGVyQDExL3N3aXBlci1idW5kbGUubWluLmNzcyI+CiAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3B1Z2xpYS8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC0xLTEgY2FyZC1wcm9nZXR0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMDkvTUlDUy1mb3RvLUFsYmVyaS1pbi1QdWdsaWEuanBnJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+CiAgICAgICAgICAgIDxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+UHVnbGlhPC9oMz4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvYT4KCnN0YXRldmVyc2lvbmNsaWVudElkaXNWYWxpZG5hbWVhdHRyaWJ1dGVzY29udGVudGRyb3BDYXBpbm5lckJsb2Nrc29yaWdpbmFsQ29udGVudGNvbnRlbnRoZWlnaHRjb250ZW50bmFtZWRhdGFtb2RlX2FjZl9jb250ZXh0YWxpZ25jb250ZW50aGVpZ2h0Y29udGVudGlzU3RhY2tlZE9uTW9iaWxlc3R5bGVhbmNob3JjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudE91ciByZXRhaWxlcnNsZXZlbGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50TG9va2luZyB0byBidXkgb3VyIHByb2R1Y3RzIGluIHN0b3JlPzxicj5GaW5kIGEgcmV0YWlsZXIgbmVhciB5b3UhZHJvcENhcGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzdGFnTmFtZXR5cGV1cmx0ZXh0R28gdG8gdGhlIHBhZ2VjbGFzc05hbWVzdHlsZWlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2hlaWdodGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpc1N0YWNrZWRPbk1vYmlsZWlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN3aWR0aGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2hlaWdodGlubmVyQmxvY2tzY29udGVudGhlaWdodGNvbnRlbnR1cmxjYXB0aW9udHlwZXByb3ZpZGVyTmFtZVNsdWdhbGxvd1Jlc3BvbnNpdmVyZXNwb25zaXZlcHJldmlld2FibGVhbGlnbmNsYXNzTmFtZWNvbnRlbnRoZWlnaHRjb250ZW50aGVpZ2h0Y29udGVudGxheW91dGNsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzdGFnTmFtZXR5cGV1cmx0ZXh0TGVhcm4gbW9yZWNsYXNzTmFtZXN0eWxlaW5uZXJCbG9ja3Njb250ZW50aXNTdGFja2VkT25Nb2JpbGVhbGlnbmNsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzd2lkdGhpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudEFyZSB5b3UgYSBjb21wYW55P2xldmVsaW5uZXJCbG9ja3Njb250ZW50aGVpZ2h0Y29udGVudGlzU3RhY2tlZE9uTW9iaWxlYWxpZ25hbmNob3JjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc3dpZHRoaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2NvbnRlbnRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lzU3RhY2tlZE9uTW9iaWxlaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3Njb250ZW50Y2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN3aWR0aGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3Njb250ZW50Y2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN3aWR0aGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzd2lkdGhpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudFJlZm9yZXN0YXRpb24gbWFwIGZyb20gMjAxOSB0byBwcmVzZW50bGV2ZWxzdHlsZWlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc3dpZHRoaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2hlaWdodGlubmVyQmxvY2tzY29udGVudGNsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzd2lkdGhpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaGVpZ2h0aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN1cmxhbHRjYXB0aW9uaWR3aWR0aGhlaWdodHNpemVTbHVnbGlua0Rlc3RpbmF0aW9uYWxpZ25pbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzdXJsYWx0Y2FwdGlvbmlkd2lkdGhoZWlnaHRzaXplU2x1Z2xpbmtEZXN0aW5hdGlvbmFsaWduaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2NvbnRlbnRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc3VybGFsdGNhcHRpb25pZHdpZHRoaGVpZ2h0c2l6ZVNsdWdsaW5rRGVzdGluYXRpb25hbGlnbmlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN1cmxhbHRjYXB0aW9uaWR3aWR0aGhlaWdodHNpemVTbHVnbGlua0Rlc3RpbmF0aW9uYWxpZ25pbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXN3aWR0aGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNoZWlnaHRpbm5lckJsb2Nrc2NvbnRlbnRjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2lubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3NjbGllbnRJZGlzVmFsaWRvcmlnaW5hbENvbnRlbnRuYW1lYXR0cmlidXRlc2NvbnRlbnRpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzaGVpZ2h0aW5uZXJCbG9ja3Njb250ZW50Y2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNpbm5lckJsb2Nrc2NsaWVudElkaXNWYWxpZG9yaWdpbmFsQ29udGVudG5hbWVhdHRyaWJ1dGVzY29udGVudGlubmVyQmxvY2tzY2xpZW50SWRpc1ZhbGlkb3JpZ2luYWxDb250ZW50bmFtZWF0dHJpYnV0ZXNjb250ZW50aW5uZXJCbG9ja3MFBwUHCAQIBAgGCAUECAeJECSZA48KkGipBZQEupUDCAcIBggOCA4IC0gBBEwACQgGCAcPBAoRBQsIBw8ECgULCAcPBAoHCwgHDwQKEQULCAcPBAoRBQsIBw8EChEFCwgHDwQKEQULCAcPBAoRBQsIBw8EChEFBgsIBw8ECgYLCAcPBAoRBQsIBw8ECgcLCAcPBAoGCwgHDwQKBgsIBw8ECgcLCAcPBAoGCwgHDwQKAwcEEA8KCwUJCwgHDwQKBgsIBw8EChEFBgsIBw8ECgYLCAcPBApEAAUECwgHDwQKBgsIBw8ECgcLBQcFBwwFB6gFjAOJA5wBqwUFBwgHBApHAAsPBwYHRAEMBQcGBxEFBggHDwQKCwgHDwQKBgsIBw8ECgcNBQsIBw8ECgeCAQcLCAcPBAoLCAcPBAoHBAMEDgkFCwgHDwQKBgsIBw8ECgsIBw8ECgYLCAcPBAoRCwgHDwQKBQsIBw8ECgcLCAcPBAoGCwcGBwMHBBAPCgsFCQcGBwYHBggHDwQKBwQDBAoJBQsHEQUIBw8ECgULCAcPBAoHEgULBwYHEQUGCAcPBAoFCwgHDwQKBwsIBw8ECgsIBw8EChELCAcPBAoLCAcPBAoHCwcIBw8ECgULCAcPBAoHCwcIBw8ECgULCAcPBAoGCwgHDwQKBQsIBw8ECgcmRQALCAcPBAoHCwgHDwQKBQsIBw8ECgYLBwgHDwQKBQsIBw8ECgYLCAcPBAoLCAcPBApDAAcCBQYIDwULCAcPBAoHCwgHDwQKCwgHDwQKQwAHAgUGCA8FCwgHDwQKBwsIBw8ECgsIBw8ECkMABwIFBggPBQsIBw8ECgcLCAcPBAoLCAcPBApDAAcCBQYIDwULCAcPBAoHCwgHDwQKBQsIBw8ECgYLBwgHDwQKCwgHDwQKBwsIBw8ECgcLCAcPBAoGCwcIBw8ECgsIBw8ECgcLCAcPBAoHCxgBBQAAAQAAAAEGAAIBAADCAQEBAAABAQD5AUIBAQBBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAAIAQQACAEEAAEEAAgBBAABBAABBAABBAABBAABBAABBAAACQQACAEEAAEEAAgBBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAAIAQQAAQQAAQQAAQQAAQQAAQQAAQQACAEEAAEEAAEEAAgBBAABBAABBAAIAQQAAQQAAQQACAEEAAEEAAEEAAEEAAEEAAEEAAEEAAEEAAEEAAEEAAD1BBaUCpAK1OJ4BQR0eQQUeQQUPAR4BHgEeAR4BD0EFDwE\/AQ9BBQ9BBg8BHUEKIkEJFkEnmQIBLkH9A4wGBAMAfQF7Qnnsooq2QAB7Qez3P0LAAACmAgB3EzIwMjUtMTEtMDNUMTE6NTU6NDZ3DmVuZy1ob21lLWJvenphdwdwdWJsaXNofZAFfbzcBHcGY2xvc2VkdwZjbG9zZWR3AHl3AHcAdyRhZjU5ZmI1YS04NmRkLTRjYTYtOGEyZi1lNjQ4YjVhNWYyM2V4dy48ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWduZnVsbCI+PC9kaXY+dwxjb3JlL2NvbHVtbnN4dwRmdWxsdyQ4M2ZhZGM4NC1iNDliLTRhOWYtYjEwZi1hNzJjODcxMzYyNmR4dzs8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjEwMCUiPjwvZGl2PncLY29yZS9jb2x1bW53BDEwMCV3JGU1YWI3OTQ4LTdjMjUtNDBjNy05MWEwLWRjMjRmNGYyNzEwYnh3zwo8c3R5bGU+CiAgLyogSGVybyBzZWN0aW9uIGEgdHV0dGEgYWx0ZXp6YSAqLwogIC5oZXJvLXZpZGVvIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDB2aDsgLyogc2VtcHJlIGFsdGV6emEgZGVsbG8gc2NoZXJtbyAqLwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICB9CgogIC5oZXJvLXZpZGVvIHZpZGVvIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIG9iamVjdC1maXQ6IGNvdmVyOyAvKiByaWVtcGllIGxhIHNlemlvbmUgc2VuemEgZGVmb3JtYXJzaSAqLwogICAgei1pbmRleDogMTsKICB9CgogIC8qIENvbnRlbnV0byBzb3ByYSBpbCB2aWRlbyAqLwogIC5oZXJvLXZpZGVvIC5oZXJvLWNvbnRlbnQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgei1pbmRleDogMjsgLyogc29wcmEgaWwgdmlkZW8gKi8KICAgIHBhZGRpbmc6IDJyZW07CiAgICBjb2xvcjogI2ZmZjsKICB9CgogIC8qIFZlcnNpb25pIGRlc2t0b3AvbW9iaWxlICovCiAgI3ZpZGVvLWRlc2t0b3AgeyBkaXNwbGF5OiBub25lOyB9CiAgI3ZpZGVvLW1vYmlsZSB7IGRpc3BsYXk6IG5vbmU7IH0KCiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7CiAgICAjdmlkZW8tZGVza3RvcCB7IGRpc3BsYXk6IGJsb2NrOyB9CiAgfQoKICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICN2aWRlby1tb2JpbGUgeyBkaXNwbGF5OiBibG9jazsgfQogIH0KPC9zdHlsZT4KCjxkaXYgY2xhc3M9Imhlcm8tdmlkZW8iPgogIDwhLS0gVmlkZW8gRGVza3RvcCAtLT4KICA8dmlkZW8gaWQ9InZpZGVvLWRlc2t0b3AiIGF1dG9wbGF5IG11dGVkIGxvb3AgcGxheXNpbmxpbmU+CiAgICA8c291cmNlIHNyYz0iaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOS9BUFBVTlRJLVNPQ0lBTC0xLm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KICA8L3ZpZGVvPgoKICA8IS0tIFZpZGVvIE1vYmlsZSAtLT4KICA8dmlkZW8gaWQ9InZpZGVvLW1vYmlsZSIgYXV0b3BsYXkgbXV0ZWQgbG9vcCBwbGF5c2lubGluZT4KICAgIDxzb3VyY2Ugc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzA5L1N0b3JpZS1Gb3Jlc3RhLTIubXA0IiB0eXBlPSJ2aWRlby9tcDQiPgogIDwvdmlkZW8+CgogIDwhLS0gQ29udGVudXRvIHNvcHJhIGlsIHZpZGVvIC0tPgogIDxkaXYgY2xhc3M9Imhlcm8tY29udGVudCI+CiAgICA8IS0tIFRpdG9saSwgdGVzdG8gbyBib3R0b25pIHNvcHJhIGlsIHZpZGVvIC0tPgogIDwvZGl2Pgo8L2Rpdj53CWNvcmUvaHRtbHh4eHh4eHh4eHh4eHh4eHh4eHh4CwB35jk8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vc3dpcGVyQDExL3N3aXBlci1idW5kbGUubWluLmNzcyI+CjxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3aXBlckAxMS9zd2lwZXItYnVuZGxlLm1pbi5qcyI+PC9zY3JpcHQ+Cgo8ZGl2IGlkPSJwcm9kb3R0aSIgY2xhc3M9InNlemlvbmUiPgogIDxoMiBjbGFzcz0idGl0b2xvLXNlemlvbmUiPjwvaDI+CiAgPGRpdiBjbGFzcz0iY2Fyb3NlbGxvLWNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJzd2lwZXIgY2Fyb3NlbGxvLXByb2RvdHRpIj4KICAgICAgPGRpdiBjbGFzcz0ic3dpcGVyLXdyYXBwZXIiPgoKPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtY292ZXIvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDYvVmFpYS1jb3Zlci1pbW1hZ2luZS1ob21lLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIENvdmVyPC9oMz48L2Rpdj4KPC9hPgoKICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1jdWJlLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjIvMTEvNjY1eDc1NV9DVUJFLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgQ3ViZTwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgoKICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1jdWJlLWVzc2VudGlhbC1hcmlhLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDMvMy0xLnBuZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgQ3ViZSBFc3NlbnRpYWwgQXJpYTwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1jdWJlLWltcGVyZmV0dG8vIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyMi8xMS82NjV4NzU1X0lNUEVSRkVUVE8uanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBDdWJlIGltcGVyZmV0dG88L2gzPjwvZGl2PgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9kdWN0L3ZhaWEtY3ViZS1qb3kvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyMi8xMS82NjV4NzU1X0pPWS0yLTEuanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBDdWJlIEpPWTwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1wZW9wbGUvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMS9wZW9wbGUtcGllZGlzdGFsbG8uanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBQZW9wbGU8YnI+Q29tYm88L2gzPjwvZGl2PgogICAgICAgIDwvYT4KICAgICAgICAKICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1wZW9wbGUtcGVyc29uYWxpenphdG8vIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMC9QZW9wbGUtUGVyc29uYWxpenphdGktMjEtc2NhbGVkLmpwZz9hdXRvPWNvbXByZXNzJmFtcDtjcz10aW55c3JnYiZhbXA7dz04MDAnKTsiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50Ij48aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlZBSUEgUGVvcGxlIEN1c3RvbWl6ZWQ8L2gzPjwvZGl2PgogICAgICAgIDwvYT4KICAgICAgICAKICAgICAgICA8YSBocmVmPSIiIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL1Byb2RvdHRpLUhQLUZvY3VzLUJXLWVzYXVyaXRvLmpwZycpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBGb2N1cyAtIG91dCBvZiBzdG9jazwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgoKICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8IS0tIOKchSBGUkVDQ0Ugc29sbyBkZXNrdG9wIC0tPgogICAgPGRpdiBjbGFzcz0ic3dpcGVyLWJ1dHRvbi1wcmV2Ij48L2Rpdj4KICAgIDxkaXYgY2xhc3M9InN3aXBlci1idXR0b24tbmV4dCI+PC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic3dpcGVyLXBhZ2luYXRpb24iPjwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KCjxzdHlsZT4KLnNlemlvbmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiNmNGYwZTU7IH0KLnRpdG9sby1zZXppb25lIHsKICBjb2xvcjojMGUzYjI2OyAgCiAgZm9udC1zaXplOjIuOHJlbTsgIAogIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IAogIHBhZGRpbmc6MDsgIAogIGJvcmRlci1yYWRpdXM6MDsKICBtYXJnaW4tbGVmdDoyMHB4OwogIG1hcmdpbi1ib3R0b206LTN2aDsKICBwYWRkaW5nLWJvdHRvbTotM3ZoOwoKfQoKLmNhcm9zZWxsby1jb250YWluZXIgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzo2MHB4IDA7IG92ZXJmbG93OmhpZGRlbjsgfQouY2FyZC05LTE2IHsgYXNwZWN0LXJhdGlvOjkvMTY7IHdpZHRoOjMwMHB4OyBib3JkZXItcmFkaXVzOjEycHg7IG92ZXJmbG93OmhpZGRlbjsgcG9zaXRpb246cmVsYXRpdmU7IH0KLmNhcmQtYmcgeyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZC1zaXplOmNvdmVyOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC40cyBlYXNlOyB9Ci5jYXJkLTktMTY6aG92ZXIgLmNhcmQtYmcgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpOyB9Ci5jYXJkLWNvbnRlbnQgewogIHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgbGVmdDowOyByaWdodDowOyBib3R0b206MDsgIAogIGRpc3BsYXk6ZmxleDsganVzdGlmeS1jb250ZW50OmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOyAgCiAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDsKICB0ZXh0LWFsaWduOmNlbnRlcjsKfQouY2FyZC1jb250ZW50IGgzIHsgY29sb3I6I2Y0ZjBlNTsgZm9udC1zaXplOjEuNnJlbTsgbWFyZ2luOjA7IHRleHQtc2hhZG93OjAgMnB4IDZweCByZ2JhKDAsMCwwLDAuNik7IH0KCi5ub21lLXByb2RvdHRvIHsKICBvcGFjaXR5OiAxOwogIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlOwogIHRleHQtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjYpOwogIHBhZGRpbmc6IDEwcHg7Cn0KCi5jYXJkLXByb2RvdHRvOmhvdmVyIC5ub21lLXByb2RvdHRvIHsKICBvcGFjaXR5OiAxOwp9CgovKiBGUkVDQ0U6IHNvbG8gc3UgZGVza3RvcCwgb2ZmIHdoaXRlLCBzZW56YSBjZXJjaGlvICovCi5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXYsCi5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQgewogIGNvbG9yOiNmNGYwZTU7CiAgZm9udC13ZWlnaHQ6NjAwOwogIHRleHQtc2hhZG93OjAgMnB4IDhweCByZ2JhKDAsMCwwLDAuNCk7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgdG9wOjUwJTsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsKICB6LWluZGV4OjEwOwogIGZvbnQtc2l6ZTo0MHB4OwogIHRyYW5zaXRpb246b3BhY2l0eSAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7Cn0KLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tcHJldjpob3ZlciwKLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tbmV4dDpob3ZlciB7CiAgb3BhY2l0eTowLjg7CiAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMS4xKTsKfQoKLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tcHJldiB7IGxlZnQ6MTBweDsgfQouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHsgcmlnaHQ6MTBweDsgfQoKLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uIHsKICBwb3NpdGlvbjpzdGF0aWM7CiAgbWFyZ2luLXRvcDozMHB4Owp9Ci5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiMwZTNiMjY7Cn0KCi8qIE5hc2NvbmRpIGZyZWNjZSBzdSB0YWJsZXQgZSBtb2JpbGUgKi8KQG1lZGlhKG1heC13aWR0aDoxMDI0cHgpewogIC5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXYsCiAgLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tbmV4dCB7CiAgICBkaXNwbGF5Om5vbmU7CiAgfQp9CkBtZWRpYShtYXgtd2lkdGg6NzY4cHgpewogIC50aXRvbG8tc2V6aW9uZSB7IGZvbnQtc2l6ZToycmVtOyB9Cn0KPC9zdHlsZT4KCjxzY3JpcHQ+Ci8qIEluaXQgcm9idXN0bzogY29sbGVnYSBpIGJvdHRvbmkgZSBsYSBwYWdpbmF6aW9uZSB1c2FuZG8gZWxlbWVudGkgRE9NLAogICBjb3PDrCBpIG5leHQvcHJldiBmdW56aW9uYW5vIHNlbXByZSBhbmNoZSBzZSBsYSBzdHJ1dHR1cmEgSFRNTCB2YXJpYSBsZWdnZXJtZW50ZSAqLwpmdW5jdGlvbiBpbml0Q2Fyb3NlbGxvRE9NKGNvbnRhaW5lclNlbGVjdG9yLCBwZXJWaWV3Q29uZmlnLCBsb29wVmFsdWUgPSB0cnVlKSB7CiAgY29uc3QgY29udGFpbmVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoY29udGFpbmVyU2VsZWN0b3IpOwoKICBjb250YWluZXJzLmZvckVhY2goY29udGFpbmVyID0+IHsKICAgIGNvbnN0IHN3aXBlckVsID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5zd2lwZXInKTsgLy8gbCdlbGVtZW50byBjb24gY2xhc3MgInN3aXBlciIKICAgIGNvbnN0IHByZXZCdG4gPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignLnN3aXBlci1idXR0b24tcHJldicpOwogICAgY29uc3QgbmV4dEJ0biA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcuc3dpcGVyLWJ1dHRvbi1uZXh0Jyk7CiAgICBjb25zdCBwYWdpbmF0aW9uRWwgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignLnN3aXBlci1wYWdpbmF0aW9uJyk7CgogICAgaWYgKCFzd2lwZXJFbCkgcmV0dXJuOwoKICAgIC8vIEluaXppYWxpenphIFN3aXBlciBwYXNzYW5kb2dsaSBnbGkgZWxlbWVudGkgKG5vbiBzb2xvIGkgc2VsZXR0b3JpKQogICAgbmV3IFN3aXBlcihzd2lwZXJFbCwgewogICAgICBsb29wOiBsb29wVmFsdWUsCiAgICAgIGdyYWJDdXJzb3I6IHRydWUsCiAgICAgIHNsaWRlc1Blckdyb3VwOiAxLCAgIC8vIG11b3ZlIGRpIHVuIHNvbG8gc2xpZGUgcGVyIGNsaWNrCiAgICAgIHNwZWVkOiA2MDAsCiAgICAgIHBhZ2luYXRpb246IHsKICAgICAgICBlbDogcGFnaW5hdGlvbkVsLAogICAgICAgIGNsaWNrYWJsZTogdHJ1ZSwKICAgICAgfSwKICAgICAgbmF2aWdhdGlvbjogewogICAgICAgIC8vIHNlIHByZXZCdG4vbmV4dEJ0biBzb25vIG51bGwsIFN3aXBlciBpZ25vcmEgbGEgbmF2aWdhdGlvbiBzZW56YSBjcmFzaGFyZQogICAgICAgIHByZXZFbDogcHJldkJ0biB8fCB1bmRlZmluZWQsCiAgICAgICAgbmV4dEVsOiBuZXh0QnRuIHx8IHVuZGVmaW5lZCwKICAgICAgfSwKICAgICAgYnJlYWtwb2ludHM6IHBlclZpZXdDb25maWcKICAgIH0pOwogIH0pOwp9Cgpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24gKCkgewogIC8vIE5vdGE6IGlsIHNlbGV0dG9yZSBxdWkgcHVudGEgYWwgY29udGVuaXRvcmUgY2hlIHJhY2NoaXVkZSAuc3dpcGVyICsgYm90dG9uaSArIHBhZ2luYXRpb24KICBpbml0Q2Fyb3NlbGxvRE9NKCcuY2Fyb3NlbGxvLWNvbnRhaW5lcicsIHsKICAgIDMyMDogeyBzbGlkZXNQZXJWaWV3OiAxLjMsIHNwYWNlQmV0d2VlbjogMTUgfSwKICAgIDc2ODogeyBzbGlkZXNQZXJWaWV3OiAzLjIsIHNwYWNlQmV0d2VlbjogMjAgfSwKICAgIDEwMjQ6IHsgc2xpZGVzUGVyVmlldzogNS4zLCBzcGFjZUJldHdlZW46IDMwIH0sCiAgfSk7Cn0pOwo8L3NjcmlwdD53mws8c3R5bGU+CiAgLyogSGVybyBzZWN0aW9uIGEgdHV0dGEgYWx0ZXp6YSAqLwogIC5oZXJvLXZpZGVvIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDB2aDsgLyogc2VtcHJlIGFsdGV6emEgZGVsbG8gc2NoZXJtbyAqLwogICAgb3ZlcmZsb3c6IGhpZGRlbjsKICB9CgogIC5oZXJvLXZpZGVvIHZpZGVvIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGhlaWdodDogMTAwJTsKICAgIG9iamVjdC1maXQ6IGNvdmVyOyAvKiByaWVtcGllIGxhIHNlemlvbmUgc2VuemEgZGVmb3JtYXJzaSAqLwogICAgei1pbmRleDogMTsKICB9CgogIC8qIENvbnRlbnV0byBzb3ByYSBpbCB2aWRlbyAqLwogIC5oZXJvLXZpZGVvIC5oZXJvLWNvbnRlbnQgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgei1pbmRleDogMjsgLyogc29wcmEgaWwgdmlkZW8gKi8KICAgIHBhZGRpbmc6IDJyZW07CiAgICBjb2xvcjogI2ZmZjsKICB9CgogIC8qIFZlcnNpb25pIGRlc2t0b3AvbW9iaWxlICovCiAgI3ZpZGVvLWRlc2t0b3AgeyBkaXNwbGF5OiBub25lOyB9CiAgI3ZpZGVvLW1vYmlsZSB7IGRpc3BsYXk6IG5vbmU7IH0KCiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7CiAgICAjdmlkZW8tZGVza3RvcCB7IGRpc3BsYXk6IGJsb2NrOyB9CiAgfQoKICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICN2aWRlby1tb2JpbGUgeyBkaXNwbGF5OiBibG9jazsgfQogIH0KPC9zdHlsZT4KCjxkaXYgY2xhc3M9Imhlcm8tdmlkZW8iPgogIDwhLS0gVmlkZW8gRGVza3RvcCAtLT4KICA8dmlkZW8gaWQ9InZpZGVvLWRlc2t0b3AiIGF1dG9wbGF5PSIiIG11dGVkPSIiIGxvb3A9IiIgcGxheXNpbmxpbmU9IiI+CiAgICA8c291cmNlIHNyYz0iaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wNi9WaWRlby1ob21lLWhlcm8tcHVnbGlhLWRvbG9taXRpLW9yaXp6b250YWxlLm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KICA8L3ZpZGVvPgoKICA8IS0tIFZpZGVvIE1vYmlsZSAtLT4KICA8dmlkZW8gaWQ9InZpZGVvLW1vYmlsZSIgYXV0b3BsYXk9IiIgbXV0ZWQ9IiIgbG9vcD0iIiBwbGF5c2lubGluZT0iIj4KICAgIDxzb3VyY2Ugc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA2L3ZpZGVvLWhvbWUtaGVyby1wdWdsaWEtZG9sb21pdGktdmVydGljYWxlLm1wNCIgdHlwZT0idmlkZW8vbXA0Ij4KICA8L3ZpZGVvPgoKICA8IS0tIENvbnRlbnV0byBzb3ByYSBpbCB2aWRlbyAtLT4KICA8ZGl2IGNsYXNzPSJoZXJvLWNvbnRlbnQiPgogICAgPCEtLSBUaXRvbGksIHRlc3RvIG8gYm90dG9uaSBzb3ByYSBpbCB2aWRlbyAtLT4KICA8L2Rpdj4KPC9kaXY+d5wrPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3aXBlckAxMS9zd2lwZXItYnVuZGxlLm1pbi5jc3MiPgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9zd2lwZXJAMTEvc3dpcGVyLWJ1bmRsZS5taW4uanMiPjwvc2NyaXB0PgoKPGRpdiBpZD0iYXppZW5kZSIgY2xhc3M9InNlemlvbmUtYXppZW5kZS1jdXN0b20iPgogICAgPGRpdiBjbGFzcz0iY2Fyb3NlbGxvLWNvbnRhaW5lci1hemllbmRlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXIgY2Fyb3NlbGxvLWF6aWVuZGUtbnVvdm8iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItd3JhcHBlciI+CgogIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9wdWdsaWEvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtMS0xIGNhcmQtcHJvZ2V0dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzA5L01JQ1MtZm90by1BbGJlcmktaW4tUHVnbGlhLmpwZycpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPgogICAgICAgICAgICA8aDMgY2xhc3M9Im5vbWUtcHJvZG90dG8iPlB1Z2xpYTwvaDM+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2E+CgogICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2plY3QvZ2xhY2llcnMvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtMS0xIGNhcmQtYXppZW5kZS1udW92byI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZy1hemllbmRlIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvSFAtcHJvZ2V0dG8tZ2hpYWNjaWFpLmpwZycpOyI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50LWF6aWVuZGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im5vbWUtYXppZW5kZS12aXNpYmlsZSI+R2xhY2llcnM8L2gzPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9hPgoKIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9kb2xvbWl0ZXMvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtMS0xIGNhcmQtYXppZW5kZS1udW92byI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZy1hemllbmRlIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvSFAtcHJvZ2V0dG8tZG9sb21pdGkuanBnJyk7Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQtYXppZW5kZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibm9tZS1hemllbmRlLXZpc2liaWxlIj5Eb2xvbWl0ZXM8L2gzPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9hPiAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgIAoKIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9ib3N0cmljby8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC0xLTEgY2FyZC1hemllbmRlLW51b3ZvIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnLWF6aWVuZGUiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9IUC1wcm9nZXR0by1ib3N0cmljby5qcGcnKTsiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudC1hemllbmRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJub21lLWF6aWVuZGUtdmlzaWJpbGUiPkJvc3RyaWNvPC9oMz4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvYT4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUiPjwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgoKPHN0eWxlPgovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLyogU1RJTEkgRVNDTFVTSVZJIFBFUiBRVUVTVEEgU0VaSU9ORSAoQ29ycmV6aW9uaSBwZXIgYWxsaW5lYW1lbnRvKSAqLwovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KCi5zZXppb25lLWF6aWVuZGUtY3VzdG9tIHsgCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmNGYwZTU7IAogICAgcGFkZGluZzo2MHB4IDIwcHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLnRpdG9sby1zZXppb25lLWF6aWVuZGUgewogICAgY29sb3I6IzBlM2IyNjsgIAogICAgZm9udC1zaXplOjIuOHJlbTsgIAogICAgbWFyZ2luLWJvdHRvbTogMHB4Owp9Ci5jYXJvc2VsbG8tY29udGFpbmVyLWF6aWVuZGUgeyAKICAgIHBvc2l0aW9uOnJlbGF0aXZlOyAKICAgIHBhZGRpbmc6MjBweCAwOyAKICAgIG92ZXJmbG93OmhpZGRlbjsKICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgbWFyZ2luOiAwIGF1dG87Cn0KCi8qIENBUkQgUVVBRFJBVEEgKDE6MSkgKi8KLmNhcmQtMS0xIHsKICAgIGFzcGVjdC1yYXRpbzoxLzE7CiAgICB3aWR0aDozNTBweDsKICAgIGJvcmRlci1yYWRpdXM6MTJweDsKICAgIG92ZXJmbG93OmhpZGRlbjsKICAgIHBvc2l0aW9uOnJlbGF0aXZlOwp9CgouY2FyZC1iZy1hemllbmRlIHsgCiAgICB3aWR0aDoxMDAlOyAKICAgIGhlaWdodDoxMDAlOyAKICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjsgCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsgCiAgICB0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjRzIGVhc2U7IAp9CgovKiBFRkZFVFRPIFpPT00gKFJpY2hpZXN0byBlIENvcnJldHRvKSAqLwouY2FyZC1hemllbmRlLW51b3ZvOmhvdmVyIC5jYXJkLWJnLWF6aWVuZGUgeyAKICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IAp9CgouY2FyZC1jb250ZW50LWF6aWVuZGUgewogICAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHJpZ2h0OjA7IGJvdHRvbTowOyAgCiAgICBkaXNwbGF5OmZsZXg7IAogICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogQWdnaXVudG8gcGVyIGFsbGluZWFtZW50byAqLwogICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8qIEFsbGluZWEgaWwgY29udGVudXRvIGEgc2luaXN0cmEgKi8KICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8qIENvcnJldHRvOiBBbGxpbmVhIGlsIGNvbnRlbnV0byBpbiBCQVNTTyAqLwogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLDAsMCwwLjYpIDAlLCB0cmFuc3BhcmVudCA1MCUpOwogICAgdGV4dC1hbGlnbjpsZWZ0OwogICAgcGFkZGluZzogMjBweDsKfQoKLyogVEVTVE8gU0VNUFJFIFZJU0lCSUxFIElOIEJBU1NPIEEgU0lOSVNUUkEgKi8KLm5vbWUtYXppZW5kZS12aXNpYmlsZSB7CiAgICBjb2xvcjojZjRmMGU1OyAKICAgIGZvbnQtc2l6ZToxLjZyZW07IAogICAgbWFyZ2luOiAwOyAKICAgIG9wYWNpdHk6IDE7CiAgICB0ZXh0LXNoYWRvdzogMCAycHggNnB4IHJnYmEoMCwwLDAsMC44KTsKfQoKLyogUEFHSU5BWklPTkUgKi8KLnN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUgeyBwb3NpdGlvbjpzdGF0aWM7IG1hcmdpbi10b3A6MzBweDsgfQouc3dpcGVyLXBhZ2luYXRpb24tYXppZW5kZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6IzBlM2IyNjsgfQoKCi8qIFJFU1BPTlNJVkUgKi8KQG1lZGlhKG1heC13aWR0aDo3NjhweCl7CiAgICAudGl0b2xvLXNlemlvbmUtYXppZW5kZSB7IGZvbnQtc2l6ZToycmVtOyB9CiAgICAuY2FyZC0xLTEgeyAKICAgICAgICB3aWR0aDogMTAwJTsgCiAgICB9Cn0KPC9zdHlsZT4KCjxzY3JpcHQ+Ci8vIEZ1bnppb25lIGluaXRDYXJvc2VsbG8gcmltYW5lIGludmFyaWF0YSBwZXIgbCd1c28gZ2VuZXJpY28KZnVuY3Rpb24gaW5pdENhcm9zZWxsbyhzZWxlY3RvciwgcGVyVmlld0NvbmZpZywgbG9vcFZhbHVlID0gdHJ1ZSkgewogICAgcmV0dXJuIG5ldyBTd2lwZXIoc2VsZWN0b3IsIHsKICAgICAgICBsb29wOiBsb29wVmFsdWUsCiAgICAgICAgZ3JhYkN1cnNvcjogdHJ1ZSwKICAgICAgICBpbml0aWFsU2xpZGU6IDEsCiAgICAgICAgcGFnaW5hdGlvbjogewogICAgICAgICAgICAvLyBJbXBvcnRhbnRlOiBxdWkgdXNpYW1vIGxhIGNsYXNzZSBzcGVjaWZpY2EgZGVsbGEgcGFnaW5hemlvbmUgcGVyIHF1ZXN0YSBzZXppb25lCiAgICAgICAgICAgIGVsOiAnI2F6aWVuZGUgLnN3aXBlci1wYWdpbmF0aW9uLWF6aWVuZGUnLAogICAgICAgICAgICBjbGlja2FibGU6IHRydWUsCiAgICAgICAgfSwKICAgICAgICBicmVha3BvaW50czogcGVyVmlld0NvbmZpZwogICAgfSk7Cn0KCi8vIEluaXppYWxpenphemlvbmUgRVNDTFVTSVZBIHBlciBsYSBzZXppb25lIElEPSJhemllbmRlIgp3aW5kb3cub25sb2FkID0gZnVuY3Rpb24gKCkgewogICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAKICAgICAgICAvLyBDb250cm9sbGEgUFJJTUEgc2UgaWwgY29udGVuaXRvcmUgcHJpbmNpcGFsZSBFU0lTVEUuCiAgICAgICAgLy8gUXVlc3RvIGltcGVkaXNjZSBsJ2VzZWN1emlvbmUgZGVsbG8gc2NyaXB0IHNlIGwnSUQgI2F6aWVuZGUgbm9uIMOoIG5lbGxhIHBhZ2luYS4KICAgICAgICBjb25zdCBhemllbmRlQ29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2F6aWVuZGUnKTsKICAgICAgICAKICAgICAgICBpZiAoYXppZW5kZUNvbnRhaW5lcikgewogICAgICAgICAgICAvLyBJTklaSUFMSVpaQVpJT05FIFNFWklPTkUgQVpJRU5ERSBQRVJTT05BTElaWkFUQQogICAgICAgICAgICAvLyBTZWxlemlvbmlhbW8gaWwgY2Fyb3NlbGxvIFNPTE8gYWxsJ2ludGVybm8gZGVsIGNvbnRlbml0b3JlICNhemllbmRlCiAgICAgICAgICAgIGluaXRDYXJvc2VsbG8oJyNhemllbmRlIC5jYXJvc2VsbG8tYXppZW5kZS1udW92bycsIHsKICAgICAgICAgICAgICAgIDMyMDogeyBzbGlkZXNQZXJWaWV3OiAxLjIsIHNwYWNlQmV0d2VlbjogMTUgfSwKICAgICAgICAgICAgICAgIDc2ODogeyBzbGlkZXNQZXJWaWV3OiAyLCBzcGFjZUJldHdlZW46IDIwIH0sCiAgICAgICAgICAgICAgICAxMDI0OiB7IHNsaWRlc1BlclZpZXc6IDMuMiwgc3BhY2VCZXR3ZWVuOiAzMCB9LAogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgCiAgICB9LCAxMDApOyAKfTsKPC9zY3JpcHQ+gwUAeHcJY29yZS9odG1sdyQ0M2FkMzIwNC1mY2UxLTQyMWUtOGYyYy1jMmE0YjJjNDRhYmR3HDxkaXYgaWQ9ImZybS1tbHRjaG5sIj48L2Rpdj53HDxkaXYgaWQ9ImZybS1tbHRjaG5sIj48L2Rpdj53JGFmNTIzYmI0LTVjMzItNDExOC04NzgwLTk3YzIyNThjNmJhZXdKPGRpdiBzdHlsZT0iaGVpZ2h0OjU0cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwQ1NHB4dyQwZDU1ZDI0Yy0yMzlhLTQwYWMtYTFiMi1mYmRlMDM2YTY5NjN3AHcJYWNmL2NhcmRzdwlhY2YvY2FyZHN2egdoZWFkaW5ndw1EaWNvbm8gZGkgbm9pCF9oZWFkaW5ndxNmaWVsZF81ZTRhYjdmZDNhMmVmD21haW50aXRsZS1jb2xvcncGdmlvbGV0EF9tYWludGl0bGUtY29sb3J3FmZpZWxkXzVlNGFiN2ZkM2EyZWZfMDAKYmFja2dyb3VuZHcLbGlnaHR5ZWxsb3cLX2JhY2tncm91bmR3FmZpZWxkXzVlNGFiN2ZkM2EyZWZfMDEMdGl0bGVzLWNvbG9ydwt0cmFuc3BhcmVudA1fdGl0bGVzLWNvbG9ydxZmaWVsZF81ZTRhYjdmZDNhMmVmXzAyDmNvbnRlbnRzLWNvbG9ydwt0cmFuc3BhcmVudA9fY29udGVudHMtY29sb3J3FmZpZWxkXzVlNGFiN2ZkM2EyZWZfMDMLY2FyZHMtY29sb3J3BnZpb2xldAxfY2FyZHMtY29sb3J3FmZpZWxkXzVlNGFiN2ZkM2EyZWZfMDQPY2FyZHNfMF9oZWFkaW5ndwAQX2NhcmRzXzBfaGVhZGluZ3cTZmllbGRfNWUyOTY2NWM1N2Q0MA9jYXJkc18wX2NvbnRlbnR3ABBfY2FyZHNfMF9jb250ZW50dxNmaWVsZF81ZTI5NjY2MjU3ZDQxDWNhcmRzXzBfaW1hZ2V9gTMOX2NhcmRzXzBfaW1hZ2V3E2ZpZWxkXzVlMjk2NjY3NTdkNDIRY2FyZHNfMF9saW5rLXRleHR3ABJfY2FyZHNfMF9saW5rLXRleHR3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAxEGNhcmRzXzBfbGluay11cmx3hAFodHRwczovL3d3dy5jb3JyaWVyZS5pdC9jcm9uYWNoZS8yMV9vdHRvYnJlXzI4L3N0YXJ0LXVwLWNoZS1yaWRhLXZpdGEtZm9yZXN0ZS1mZXJpdGUtdmFpYS0wNTFmNWRlMi0zODJhLTExZWMtYjU3ZC0xODk5MDBmZjhmMzYuc2h0bWwRX2NhcmRzXzBfbGluay11cmx3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyEmNhcmRzXzBfbGluay1jb2xvcncJc2Vjb25kYXJ5E19jYXJkc18wX2xpbmstY29sb3J3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzD2NhcmRzXzFfaGVhZGluZ3cAEF9jYXJkc18xX2hlYWRpbmd3E2ZpZWxkXzVlMjk2NjVjNTdkNDAPY2FyZHNfMV9jb250ZW50dwAQX2NhcmRzXzFfY29udGVudHcTZmllbGRfNWUyOTY2NjI1N2Q0MQ1jYXJkc18xX2ltYWdlfb4yDl9jYXJkc18xX2ltYWdldxNmaWVsZF81ZTI5NjY2NzU3ZDQyEWNhcmRzXzFfbGluay10ZXh0dwASX2NhcmRzXzFfbGluay10ZXh0dxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMRBjYXJkc18xX2xpbmstdXJsd0podHRwczovL2ZvcmJlcy5pdC8yMDIwLzA3LzA4L3N0YXJ0dXAtdmFpYS1hbXBsaWZpY2F0b3JlLXRlbXBlc3RhLXVuZGVyLTMwLxFfY2FyZHNfMV9saW5rLXVybHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDISY2FyZHNfMV9saW5rLWNvbG9ydwdwcmltYXJ5E19jYXJkc18xX2xpbmstY29sb3J3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzD2NhcmRzXzJfaGVhZGluZ3cAEF9jYXJkc18yX2hlYWRpbmd3E2ZpZWxkXzVlMjk2NjVjNTdkNDAPY2FyZHNfMl9jb250ZW50dwAQX2NhcmRzXzJfY29udGVudHcTZmllbGRfNWUyOTY2NjI1N2Q0MQ1jYXJkc18yX2ltYWdlfbgyDl9jYXJkc18yX2ltYWdldxNmaWVsZF81ZTI5NjY2NzU3ZDQyEWNhcmRzXzJfbGluay10ZXh0dwASX2NhcmRzXzJfbGluay10ZXh0dxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMRBjYXJkc18yX2xpbmstdXJsd3hodHRwczovL3d3dy5yZXB1YmJsaWNhLml0L2dyZWVuLWFuZC1ibHVlL2Rvc3NpZXIvdHV0dGktcGVyLWxhLXRlcnJhLzIwMjMvMDkvMTkvbmV3cy92YWlhLTQxNDEwNDk1Mi8\/cmVmPVJIUk0tQkctUDUtUzEtVDERX2NhcmRzXzJfbGluay11cmx3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyEmNhcmRzXzJfbGluay1jb2xvcncHcHJpbWFyeRNfY2FyZHNfMl9saW5rLWNvbG9ydxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMw9jYXJkc18zX2hlYWRpbmd3ABBfY2FyZHNfM19oZWFkaW5ndxNmaWVsZF81ZTI5NjY1YzU3ZDQwD2NhcmRzXzNfY29udGVudHcAEF9jYXJkc18zX2NvbnRlbnR3E2ZpZWxkXzVlMjk2NjYyNTdkNDENY2FyZHNfM19pbWFnZX2yMg5fY2FyZHNfM19pbWFnZXcTZmllbGRfNWUyOTY2Njc1N2Q0MhFjYXJkc18zX2xpbmstdGV4dHcAEl9jYXJkc18zX2xpbmstdGV4dHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEQY2FyZHNfM19saW5rLXVybHdyaHR0cHM6Ly9zdHJlYW0yNC5pbHNvbGUyNG9yZS5jb20vdmlkZW8vaXRhbGlhL2ZvcmVzdGEtaW5ub3ZhdG9yaS0xMDAwLWFsYmVyaS1waWFudGF0aS1yaWZvcmVzdGFyZS1kb2xvbWl0aS9BRkJBdGsyEV9jYXJkc18zX2xpbmstdXJsdxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMhJjYXJkc18zX2xpbmstY29sb3J3B3ByaW1hcnkTX2NhcmRzXzNfbGluay1jb2xvcncXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDMPY2FyZHNfNF9oZWFkaW5ndwAQX2NhcmRzXzRfaGVhZGluZ3cTZmllbGRfNWUyOTY2NWM1N2Q0MA9jYXJkc180X2NvbnRlbnR3ABBfY2FyZHNfNF9jb250ZW50dxNmaWVsZF81ZTI5NjY2MjU3ZDQxDWNhcmRzXzRfaW1hZ2V9rzIOX2NhcmRzXzRfaW1hZ2V3E2ZpZWxkXzVlMjk2NjY3NTdkNDIRY2FyZHNfNF9saW5rLXRleHR3ABJfY2FyZHNfNF9saW5rLXRleHR3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAxEGNhcmRzXzRfbGluay11cmx3pwFodHRwczovL3d3dy50Z2NvbTI0Lm1lZGlhc2V0Lml0LzIwMjMvdmlkZW8vLXN0dWRpby1hcGVydG8tbWFnLS0tbmV4dC1nZW5lcmF6aW9uZS1ldXJvcGEtZ3VhcmRhLWxhLXNlY29uZGEtcHVudGF0YS1zdS1pc3RydXppb25lLWZvcm1hemlvbmUtZS1yaWNlcmNhXzYxNjk5NTcwLTAyay5zaHRtbBFfY2FyZHNfNF9saW5rLXVybHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDISY2FyZHNfNF9saW5rLWNvbG9ydwdwcmltYXJ5E19jYXJkc180X2xpbmstY29sb3J3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzD2NhcmRzXzVfaGVhZGluZ3cAEF9jYXJkc181X2hlYWRpbmd3E2ZpZWxkXzVlMjk2NjVjNTdkNDAPY2FyZHNfNV9jb250ZW50dwAQX2NhcmRzXzVfY29udGVudHcTZmllbGRfNWUyOTY2NjI1N2Q0MQ1jYXJkc181X2ltYWdlfbsyDl9jYXJkc181X2ltYWdldxNmaWVsZF81ZTI5NjY2NzU3ZDQyEWNhcmRzXzVfbGluay10ZXh0dwASX2NhcmRzXzVfbGluay10ZXh0dxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMRBjYXJkc181X2xpbmstdXJsd2lodHRwczovL3d3dy5mYXoubmV0L2FrdHVlbGwvdGVjaG5pay1tb3Rvci9mdWVuZi1hbS1mcmVpdGFnLXJlY2hlbmJlaXNwaWVsZS0xODQwMzE1MS9wbHVzLTMwLTE4MzkxOTAyLmh0bWwRX2NhcmRzXzVfbGluay11cmx3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyEmNhcmRzXzVfbGluay1jb2xvcncHcHJpbWFyeRNfY2FyZHNfNV9saW5rLWNvbG9ydxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMw9jYXJkc182X2hlYWRpbmd3ABBfY2FyZHNfNl9oZWFkaW5ndxNmaWVsZF81ZTI5NjY1YzU3ZDQwD2NhcmRzXzZfY29udGVudHcAEF9jYXJkc182X2NvbnRlbnR3E2ZpZWxkXzVlMjk2NjYyNTdkNDENY2FyZHNfNl9pbWFnZX21Mg5fY2FyZHNfNl9pbWFnZXcTZmllbGRfNWUyOTY2Njc1N2Q0MhFjYXJkc182X2xpbmstdGV4dHcAEl9jYXJkc182X2xpbmstdGV4dHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEQY2FyZHNfNl9saW5rLXVybHdQaHR0cHM6Ly90ZzI0LnNreS5pdC90ZWNub2xvZ2lhL25vdy8yMDIxLzAzLzExL3ZhaWEtY2Fzc2UtbXVzaWNhbGktbGVnbm8tdGVtcGVzdGERX2NhcmRzXzZfbGluay11cmx3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAyEmNhcmRzXzZfbGluay1jb2xvcncHcHJpbWFyeRNfY2FyZHNfNl9saW5rLWNvbG9ydxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMw9jYXJkc183X2hlYWRpbmd3ABBfY2FyZHNfN19oZWFkaW5ndxNmaWVsZF81ZTI5NjY1YzU3ZDQwD2NhcmRzXzdfY29udGVudHcAEF9jYXJkc183X2NvbnRlbnR3E2ZpZWxkXzVlMjk2NjYyNTdkNDENY2FyZHNfN19pbWFnZX2EMw5fY2FyZHNfN19pbWFnZXcTZmllbGRfNWUyOTY2Njc1N2Q0MhFjYXJkc183X2xpbmstdGV4dHcAEl9jYXJkc183X2xpbmstdGV4dHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDEQY2FyZHNfN19saW5rLXVybHdhaHR0cHM6Ly93d3cuY2hpcC5kZS9uZXdzL0xhdXRzcHJlY2hlci1vaG5lLVN0cm9tLXVuZC1UZWNobmlrLURhcy1pc3QtZGVyLVZBSUEtQ3ViZV8xODQ0NDk2NTEuaHRtbBFfY2FyZHNfN19saW5rLXVybHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDISY2FyZHNfN19saW5rLWNvbG9ydwdwcmltYXJ5E19jYXJkc183X2xpbmstY29sb3J3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzD2NhcmRzXzhfaGVhZGluZ3cAEF9jYXJkc184X2hlYWRpbmd3E2ZpZWxkXzVlMjk2NjVjNTdkNDAPY2FyZHNfOF9jb250ZW50dwAQX2NhcmRzXzhfY29udGVudHcTZmllbGRfNWUyOTY2NjI1N2Q0MQ1jYXJkc184X2ltYWdlfa5yDl9jYXJkc184X2ltYWdldxNmaWVsZF81ZTI5NjY2NzU3ZDQyEWNhcmRzXzhfbGluay10ZXh0dwASX2NhcmRzXzhfbGluay10ZXh0dxdmaWVsZF81ZTI5NjY1YzU3ZDQwXzAwMRBjYXJkc184X2xpbmstdXJsd01odHRwczovL3d3dy5mb3J0dW5laXRhLmNvbS8yMDI0LzAyLzE4L3ZhaWEtY3ViZS1pbC1sZWduby1jaGUtdmlzc2UtZHVlLXZvbHRlLxFfY2FyZHNfOF9saW5rLXVybHcXZmllbGRfNWUyOTY2NWM1N2Q0MF8wMDISY2FyZHNfOF9saW5rLWNvbG9ydwdwcmltYXJ5E19jYXJkc184X2xpbmstY29sb3J3F2ZpZWxkXzVlMjk2NjVjNTdkNDBfMDAzBWNhcmRzfQkGX2NhcmRzdxNmaWVsZF81ZTI5NjY1MDU3ZDNmdwdwcmV2aWV3dgIGcG9zdElkfYraBAhwb3N0VHlwZXcEcGFnZXcAdyQ5NTRhNTQ4MS1iZTQ3LTRhNjEtYmFlOS00NGIxZmQ5ZDEyZTd3SzxkaXYgc3R5bGU9ImhlaWdodDoxMDBweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3BTEwMHB4dyQxNmE3NTIyZC00MmY4LTRhOWYtODRmZC1mNzZlMjliYzlkMzZ3lAE8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGhhcy1iYWNrZ3JvdW5kIiBpZD0icHJhbnpvIiBzdHlsZT0iYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTIsMTg1LDApIDEwMCUscmdiKDI1NSwxMDUsMCkgMTAwJSkiPgoKPC9kaXY+dwxjb3JlL2NvbHVtbnN4dgEFY29sb3J2AQhncmFkaWVudHc\/bGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjUyLDE4NSwwKSAxMDAlLHJnYigyNTUsMTA1LDApIDEwMCUpdwZwcmFuem93JDgxZTQ2MjA0LTRhMjYtNDE2NC1iZjMxLTllZjM4MjM2ZWQ3MHh3KzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+CgoKCgoKCgo8L2Rpdj53C2NvcmUvY29sdW1udyRjNzY2NTE5OC1iOTgxLTRlM2MtODEyZS01OTZmZjhkZjQzZDl4d0o8ZGl2IHN0eWxlPSJoZWlnaHQ6NTBweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3BDUwcHh3JDRhZmQwMjgyLWZkMDMtNGRhZS04YmRhLWNlZTZlNmExM2VlMXh3LzxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyI+T3VyIHJldGFpbGVyczwvaDI+dwxjb3JlL2hlYWRpbmd9AnckZGU1NGVkZGEtMmEyYi00NWU5LTk3ZmItMmY5MmZkMTAxODEweHdJPHA+TG9va2luZyB0byBidXkgb3VyIHByb2R1Y3RzIGluIHN0b3JlPzxicj5GaW5kIGEgcmV0YWlsZXIgbmVhciB5b3UhPC9wPncOY29yZS9wYXJhZ3JhcGh5dyQ2YmM4OWRkNi1lMjQ1LTQ1NjItYmFmZi1jMTNkNjVmNTUxNGF4dyQ8ZGl2IGNsYXNzPSJ3cC1ibG9jay1idXR0b25zIj48L2Rpdj53DGNvcmUvYnV0dG9uc3ckOWMwYTNlZjQtMmFhMi00NjcwLWIzMTItZTY5MDRkZDBjYTE4eHeLAjxkaXYgY2xhc3M9IndwLWJsb2NrLWJ1dHRvbiBpcy1zdHlsZS1vdXRsaW5lIj48YSBjbGFzcz0id3AtYmxvY2stYnV0dG9uX19saW5rIGhhcy1iYWNrZ3JvdW5kIHdwLWVsZW1lbnQtYnV0dG9uIiBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3ZhaWEtYW1iYXNzYWRvcnMvIiBzdHlsZT0iYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTIsMTg1LDApIDEwMCUscmdiKDI1NSwxMDUsMCkgMTAwJSkiPkdvIHRvIHRoZSBwYWdlPC9hPjwvZGl2PncLY29yZS9idXR0b253AWF3BmJ1dHRvbncoaHR0cHM6Ly93d3cudmFpYS5ldS9lbi92YWlhLWFtYmFzc2Fkb3JzL3cQaXMtc3R5bGUtb3V0bGluZXYBBWNvbG9ydgEIZ3JhZGllbnR3P2xpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1MiwxODUsMCkgMTAwJSxyZ2IoMjU1LDEwNSwwKSAxMDAlKXckOGIzYjIxZDAtOTFkZi00MmQzLTliOTktZjI4ZmQ3OTJmZDU4eHdKPGRpdiBzdHlsZT0iaGVpZ2h0OjUwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwQ1MHB4dyRlMmUzNzI2Mi04ZGYwLTRlZTItYWJiYi1iMGMzOTNjMTdhNTh4dyU8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iPgoKPC9kaXY+dwtjb3JlL2NvbHVtbnckYTM3NmQ3ZjctZGE1OC00ZDIyLWFhMWYtOThhYjEzZTY3YzI5eHdKPGRpdiBzdHlsZT0iaGVpZ2h0OjUwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwQ1MHB4dyQ5NGJkNDI4Yy1jNGU5LTQ2NDctYTYyNC1jNmNlMjBiOWNlZWN4dyQ8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIj48L2Rpdj53DGNvcmUvY29sdW1uc3h3JDcxZTQyOTk2LTQ0OGEtNGFmYy1iMGFmLTg3Y2E1MGVlY2Y4MHh3PTxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MTAwJSI+Cgo8L2Rpdj53C2NvcmUvY29sdW1udwQxMDAldyRkMjlhYmZjYy0yZTk0LTRlMGItODU3NC1hYjVlYjczOGJhZTR4d2w8aWZyYW1lIHNyYz0iaHR0cHM6Ly9zbmF6enltYXBzLmNvbS9lbWJlZC82Mjk3NzMiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjQwMHB4IiBzdHlsZT0iYm9yZGVyOm5vbmU7Ij48L2lmcmFtZT53CWNvcmUvaHRtbHdsPGlmcmFtZSBzcmM9Imh0dHBzOi8vc25henp5bWFwcy5jb20vZW1iZWQvNjI5NzczIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSI0MDBweCIgc3R5bGU9ImJvcmRlcjpub25lOyI+PC9pZnJhbWU+dyRmNTFhZjgxZS05ZDIyLTQ4OTgtYjk2Yi1lYTVlNjg2NmMzYjV4d0o8ZGl2IHN0eWxlPSJoZWlnaHQ6NTBweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3BDUwcHh3JDczNGNhNmQ4LTk1MGItNGQ5Yy1iODE2LTFiMGQ0NmU4MzUyOHdLPGRpdiBzdHlsZT0iaGVpZ2h0OjEwMHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+dwtjb3JlL3NwYWNlcncFMTAwcHh3JDY0OWQ4OTc1LWE4ZmItNGIxOS1iNTkwLTA5NWI3YTkzNGEyNXfdATxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWVtYmVkIGFsaWduZnVsbCBpcy10eXBlLXZpZGVvIGlzLXByb3ZpZGVyLXlvdXR1YmUgd3AtYmxvY2stZW1iZWQteW91dHViZSB3cC1lbWJlZC1hc3BlY3QtMTYtOSB3cC1oYXMtYXNwZWN0LXJhdGlvIj48ZGl2IGNsYXNzPSJ3cC1ibG9jay1lbWJlZF9fd3JhcHBlciI+Cmh0dHBzOi8veW91dHUuYmUvVnl6N0sxOWlfTGMKPC9kaXY+PC9maWd1cmU+dwpjb3JlL2VtYmVkdxxodHRwczovL3lvdXR1LmJlL1Z5ejdLMTlpX0xjdwV2aWRlb3cHeW91dHViZXh4eHcEZnVsbHcod3AtZW1iZWQtYXNwZWN0LTE2LTkgd3AtaGFzLWFzcGVjdC1yYXRpb3cJY29yZS9odG1sdyQxNTFkNmYwYS1lY2MwLTQ1NGMtODk4Yy03NDhkMDkzNjRjYWV3SzxkaXYgc3R5bGU9ImhlaWdodDoxMDBweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3BTEwMHB4dyRlM2IyN2JmNS0zYjdmLTQ4MDktODczMy1hZmFlZjc0ODMyMmN3oA08IS0tIEhUTUwgLS0+CjxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vYWJvdXQtdXMvIiBjbGFzcz0idmFpYS1saW5rLWNoaS1zaWFtbyI+CiAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXIgYWxpZ253aWRlIHZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vIj4KICAgIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyX19pbWFnZS1iYWNrZ3JvdW5kLWNoaS1zaWFtbyIKICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9DaGktc2lhbW8tbm8tdGV4dC5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTsiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1jaGktc2lhbW8iPgogICAgICA8aDEgY2xhc3M9InZhaWEtdGl0bGUtY2hpLXNpYW1vIj5XaG8gd2UgYXJlPC9oMT4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2E+Cgo8IS0tIENTUyAtLT4KPHN0eWxlPgoudmFpYS1saW5rLWNoaS1zaWFtbyB7CiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogIGRpc3BsYXk6IGJsb2NrOwp9CgoudmFpYS1jb3Zlci1ob3Zlci1jaGktc2lhbW8gewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBvdmVyZmxvdzogaGlkZGVuOwogIGRpc3BsYXk6IGJsb2NrOwogIGhlaWdodDogNTAwcHg7Cn0KCi8qIGltbWFnaW5lIGRpIHNmb25kbyAqLwoud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtY2hpLXNpYW1vIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaW5zZXQ6IDA7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsKICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC42cyBlYXNlLCB0cmFuc2Zvcm0gMC42cyBlYXNlOwogIHotaW5kZXg6IDA7Cn0KCi8qIGNvbnRlbml0b3JlIHRlc3RvIGluIGFsdG8gYSBzaW5pc3RyYSAqLwoud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1jaGktc2lhbW8gewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiAyOwogIGRpc3BsYXk6IGZsZXg7CiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogIGhlaWdodDogMTAwJTsKICBwYWRkaW5nOiAycmVtIDNyZW07CiAgdGV4dC1hbGlnbjogbGVmdDsKfQoKLyogdGl0b2xvICovCi52YWlhLXRpdGxlLWNoaS1zaWFtbyB7CiAgbWFyZ2luOiAwOwogIGNvbG9yOiB3aGl0ZTsKICBmb250LXNpemU6IDMuNXJlbTsKICBmb250LXdlaWdodDogNzAwOwogIGxpbmUtaGVpZ2h0OiAxLjE7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7Cn0KCi8qIGVmZmV0dG8gaG92ZXIgKi8KLnZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vOmhvdmVyIC53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1jaGktc2lhbW8gewogIGZpbHRlcjogYnJpZ2h0bmVzcygxLjE1KTsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOwp9CgoudmFpYS1jb3Zlci1ob3Zlci1jaGktc2lhbW86aG92ZXIgLnZhaWEtdGl0bGUtY2hpLXNpYW1vIHsKICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOwp9Cjwvc3R5bGU+d6ANPCEtLSBIVE1MIC0tPgo8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL2Fib3V0LXVzLyIgY2xhc3M9InZhaWEtbGluay1jaGktc2lhbW8iPgogIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyIGFsaWdud2lkZSB2YWlhLWNvdmVyLWhvdmVyLWNoaS1zaWFtbyI+CiAgICA8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1jaGktc2lhbW8iCiAgICAgICAgIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvQ2hpLXNpYW1vLW5vLXRleHQuanBnJyk7IGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1NSU7Ij4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXItY2hpLXNpYW1vIj4KICAgICAgPGgxIGNsYXNzPSJ2YWlhLXRpdGxlLWNoaS1zaWFtbyI+V2hvIHdlIGFyZTwvaDE+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9hPgoKPCEtLSBDU1MgLS0+CjxzdHlsZT4KLnZhaWEtbGluay1jaGktc2lhbW8gewogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBkaXNwbGF5OiBibG9jazsKfQoKLnZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBkaXNwbGF5OiBibG9jazsKICBoZWlnaHQ6IDUwMHB4Owp9CgovKiBpbW1hZ2luZSBkaSBzZm9uZG8gKi8KLndwLWJsb2NrLWNvdmVyX19pbWFnZS1iYWNrZ3JvdW5kLWNoaS1zaWFtbyB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIGluc2V0OiAwOwogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7CiAgdHJhbnNpdGlvbjogZmlsdGVyIDAuNnMgZWFzZSwgdHJhbnNmb3JtIDAuNnMgZWFzZTsKICB6LWluZGV4OiAwOwp9CgovKiBjb250ZW5pdG9yZSB0ZXN0byBpbiBhbHRvIGEgc2luaXN0cmEgKi8KLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXItY2hpLXNpYW1vIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgei1pbmRleDogMjsKICBkaXNwbGF5OiBmbGV4OwogIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsKICBoZWlnaHQ6IDEwMCU7CiAgcGFkZGluZzogMnJlbSAzcmVtOwogIHRleHQtYWxpZ246IGxlZnQ7Cn0KCi8qIHRpdG9sbyAqLwoudmFpYS10aXRsZS1jaGktc2lhbW8gewogIG1hcmdpbjogMDsKICBjb2xvcjogd2hpdGU7CiAgZm9udC1zaXplOiAzLjVyZW07CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBsaW5lLWhlaWdodDogMS4xOwogIHRleHQtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC40KTsKICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlOwp9CgovKiBlZmZldHRvIGhvdmVyICovCi52YWlhLWNvdmVyLWhvdmVyLWNoaS1zaWFtbzpob3ZlciAud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtY2hpLXNpYW1vIHsKICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4xNSk7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsKfQoKLnZhaWEtY292ZXItaG92ZXItY2hpLXNpYW1vOmhvdmVyIC52YWlhLXRpdGxlLWNoaS1zaWFtbyB7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsKfQo8L3N0eWxlPnckNDVmNzZhMGQtOGRhNy00YTE3LWJlNzYtMjg3Y2E0ZmU4N2Y5d0s8ZGl2IHN0eWxlPSJoZWlnaHQ6MTAwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwUxMDBweHcJY29yZS9odG1sdyRiMzFhNzQ5Zi0wZmU5LTQ3NzYtOTVkMy0xOTkwODk0OTMwZDR3JDxkaXYgY2xhc3M9IndwLWJsb2NrLWJ1dHRvbnMiPjwvZGl2PncMY29yZS9idXR0b25zdgMEdHlwZXcEZmxleA5qdXN0aWZ5Q29udGVudHcGY2VudGVyEXZlcnRpY2FsQWxpZ25tZW50dwN0b3B3JDY1N2FlNDA0LTM0ZGMtNDNlMS05ODk4LTdmMGEwMjU4MjViNnh3rQE8ZGl2IGNsYXNzPSJ3cC1ibG9jay1idXR0b24gaXMtc3R5bGUtb3V0bGluZSI+PGEgY2xhc3M9IndwLWJsb2NrLWJ1dHRvbl9fbGluayB3cC1lbGVtZW50LWJ1dHRvbiIgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3ZhaWEtNC1jb21wYW5pZXMvIj5MZWFybiBtb3JlPC9hPjwvZGl2PncLY29yZS9idXR0b253AWF3BmJ1dHRvbncwaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3ZhaWEtNC1jb21wYW5pZXMvdxBpcy1zdHlsZS1vdXRsaW5ldgEKZGltZW5zaW9uc3YBBXdpZHRodwM3NSV3JGQxNmZlYjNmLTM1NTAtNGQwMi04YjJiLWZlMWIxOGU2MDc4N3fRDDwhLS0gSFRNTCAtLT4KPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3ZhaWEtNC1jb21wYW5pZXMvIiBjbGFzcz0idmFpYS1saW5rLWF6aWVuZGUiPgogIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyIGFsaWdud2lkZSB2YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGUiPgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSIKICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8wMS8xMjgweDYwMF9jbGl2ZXQtMS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTsiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1hemllbmRlIj4KICAgICAgPGgxIGNsYXNzPSJ2YWlhLXRpdGxlLWF6aWVuZGUiPkNyZWF0ZSB2YWx1ZSB3aXRoIHVzPC9oMT4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2E+Cgo8IS0tIENTUyAtLT4KPHN0eWxlPgoudmFpYS1saW5rLWF6aWVuZGUgewogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBkaXNwbGF5OiBibG9jazsKfQoKLnZhaWEtY292ZXItaG92ZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiA0MDBweDsKfQoKLyogaW1tYWdpbmUgZGkgc2ZvbmRvICovCi53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1hemllbmRlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaW5zZXQ6IDA7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIHRyYW5zaXRpb246IGZpbHRlciAwLjZzIGVhc2UsIHRyYW5zZm9ybSAwLjZzIGVhc2U7CiAgei1pbmRleDogMDsKfQoKLyogY29udGVuaXRvcmUgY2VudHJhbGUgKi8KLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDI7CiAgZGlzcGxheTogZmxleDsKICBhbGlnbi1pdGVtczogY2VudGVyOwogIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIGhlaWdodDogMTAwJTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi8qIHRpdG9sbyAqLwoudmFpYS10aXRsZS1hemllbmRlIHsKICBtYXJnaW46IDA7CiAgY29sb3I6IHdoaXRlOwogIGZvbnQtc2l6ZTogNHJlbTsKICBmb250LXdlaWdodDogNzAwOwogIGxpbmUtaGVpZ2h0OiAxLjE7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7Cn0KCi8qIGVmZmV0dG8gaG92ZXIgKi8KLnZhaWEtY292ZXItaG92ZXItYXppZW5kZTpob3ZlciAud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSB7CiAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMTUpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7Cn0KCi52YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGU6aG92ZXIgLnZhaWEtdGl0bGUtYXppZW5kZSB7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsKfQo8L3N0eWxlPnfRDDwhLS0gSFRNTCAtLT4KPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L3ZhaWEtNC1jb21wYW5pZXMvIiBjbGFzcz0idmFpYS1saW5rLWF6aWVuZGUiPgogIDxkaXYgY2xhc3M9IndwLWJsb2NrLWNvdmVyIGFsaWdud2lkZSB2YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGUiPgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSIKICAgICAgICAgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8wMS8xMjgweDYwMF9jbGl2ZXQtMS5qcGcnKTsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTsiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0id3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lci1hemllbmRlIj4KICAgICAgPGgxIGNsYXNzPSJ2YWlhLXRpdGxlLWF6aWVuZGUiPkNyZWF0ZSB2YWx1ZSB3aXRoIHVzPC9oMT4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2E+Cgo8IS0tIENTUyAtLT4KPHN0eWxlPgoudmFpYS1saW5rLWF6aWVuZGUgewogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICBkaXNwbGF5OiBibG9jazsKfQoKLnZhaWEtY292ZXItaG92ZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG92ZXJmbG93OiBoaWRkZW47CiAgZGlzcGxheTogYmxvY2s7CiAgaGVpZ2h0OiA0MDBweDsKfQoKLyogaW1tYWdpbmUgZGkgc2ZvbmRvICovCi53cC1ibG9jay1jb3Zlcl9faW1hZ2UtYmFja2dyb3VuZC1hemllbmRlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgaW5zZXQ6IDA7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogIHRyYW5zaXRpb246IGZpbHRlciAwLjZzIGVhc2UsIHRyYW5zZm9ybSAwLjZzIGVhc2U7CiAgei1pbmRleDogMDsKfQoKLyogY29udGVuaXRvcmUgY2VudHJhbGUgKi8KLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXItYXppZW5kZSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHotaW5kZXg6IDI7CiAgZGlzcGxheTogZmxleDsKICBhbGlnbi1pdGVtczogY2VudGVyOwogIGp1c3RpZnktY29udGVudDogY2VudGVyOwogIGhlaWdodDogMTAwJTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi8qIHRpdG9sbyAqLwoudmFpYS10aXRsZS1hemllbmRlIHsKICBtYXJnaW46IDA7CiAgY29sb3I6IHdoaXRlOwogIGZvbnQtc2l6ZTogNHJlbTsKICBmb250LXdlaWdodDogNzAwOwogIGxpbmUtaGVpZ2h0OiAxLjE7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjQpOwogIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2U7Cn0KCi8qIGVmZmV0dG8gaG92ZXIgKi8KLnZhaWEtY292ZXItaG92ZXItYXppZW5kZTpob3ZlciAud3AtYmxvY2stY292ZXJfX2ltYWdlLWJhY2tncm91bmQtYXppZW5kZSB7CiAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMTUpOwogIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7Cn0KCi52YWlhLWNvdmVyLWhvdmVyLWF6aWVuZGU6aG92ZXIgLnZhaWEtdGl0bGUtYXppZW5kZSB7CiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsKfQo8L3N0eWxlPnckNWY4YTFkZjgtYzlmYy00MDcxLThhMDMtYTAyYmNhMGYwNWE1dy48ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWdud2lkZSI+PC9kaXY+dwxjb3JlL2NvbHVtbnN4dwR3aWRldyQ4ZjlhYWZjNS1iYTU0LTRhNzMtYWFhZS1lYTdkY2RmNjU0OWV4dzs8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjEwMCUiPjwvZGl2PncLY29yZS9jb2x1bW53BDEwMCV3JDZkYjQwYmEwLWIxZDUtNDg1ZC05OGM0LTc3NzI1ZGJhYjVjZHh3NDxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyI+QXJlIHlvdSBhIGNvbXBhbnk\/PC9oMj53DGNvcmUvaGVhZGluZ30CdyQwZDNjYjE1ZC0wOGI1LTRjZTktODcyOS03Nzk5Y2I4OTVhOTJ3SjxkaXYgc3R5bGU9ImhlaWdodDo1OHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+dwtjb3JlL3NwYWNlcncENThweHckMjVmNGQ0OWQtMmQ0Ni00ZGQ1LWExNmUtMjBlOGI4M2UwZTc3dzw8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWdud2lkZSIgaWQ9InByYW56byI+Cgo8L2Rpdj53DGNvcmUvY29sdW1uc3h3BHdpZGV3BnByYW56b3ckMDZjMzU3YWUtNjEwMy00NmVmLTliODItYjY1YmUyMTA1MzJjeHc6PGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczo1MCUiPjwvZGl2PncLY29yZS9jb2x1bW53AzUwJXckYTZlYTI5NDItMDdjYi00NmI3LTg2ZjItYzg2YzI4NWJiODg2eHe9CzxkaXYgY2xhc3M9InZhaWEtbWlzc2lvbi1ibG9jayI+CgogICAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7Ij4KICAgICAgICA8c3Ryb25nPlJlY292ZXJ5IG9mIHJhdyBtYXRlcmlhbHM8L3N0cm9uZz48YnI+CiAgICAgICAgVGhlIGZpcnN0IHBoYXNlIGZvY3VzZXMgb24gdGhlIHJlY292ZXJ5IG9mIHdvb2QgcmVzdWx0aW5nIGZyb20gdGhlIFZhaWEgc3Rvcm0gYW5kIG5vdyBhbHNvIGZyb20gdGhlIGJhcmsgYmVldGxlIChCb3N0cmljbykuIEVhY2ggdHJ1bmsgaXMgc2VsZWN0ZWQsIGNhdGFsb2dlZCwgYW5kIHByZXBhcmVkLCBpbml0aWF0aW5nIGEgcHJvY2VzcyB0aGF0IHRyYW5zZm9ybXMgZGFtYWdlIGludG8gYSByZXNvdXJjZS4KICAgIDwvcD4KCiAgICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDIwcHg7IG1hcmdpbi1yaWdodDogMTBweDsiPgogICAgICAgIDxzdHJvbmc+QWN0aXZhdGlvbiBvZiBsb2NhbCBzdXBwbHkgY2hhaW5zPC9zdHJvbmc+PGJyPgogICAgICAgIFdlIGNvbGxhYm9yYXRlIGV4Y2x1c2l2ZWx5IHdpdGggYXJ0aXNhbnMgYW5kIGJ1c2luZXNzZXMgaW4gdGhlIGFmZmVjdGVkIHZhbGxleXMuIFRoaXMgbm90IG9ubHkgZ3VhcmFudGVlcyB0aGUgaGlnaGVzdCBxdWFsaXR5IG9mIHdvcmttYW5zaGlwIGJ1dCBhbHNvIHJlYWN0aXZhdGVzIHRoZSBsb2NhbCBlY29ub215IGFuZCB0aGUgc2Vuc2Ugb2YgY29tbXVuaXR5LgogICAgPC9wPgoKICAgIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogMjBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyI+CiAgICAgICAgPHN0cm9uZz5EZXNpZ24gVkFJQSdzIG9iamVjdHM8L3N0cm9uZz48YnI+CiAgICAgICAgRGFtYWdlZCByYXcgbWF0ZXJpYWwgZ2l2ZXMgcmlzZSB0byBtaW5pbWFsaXN0IGFuZCBtZWFuaW5nZnVsIGRlc2lnbiBvYmplY3RzIHdpdGggcGVvcGxlIGF0IHRoZSBjZW50ZXIuIEVhY2ggcGllY2UgY2FycmllcyB0aGUgbWFyayBvZiB0aGUgc3Rvcm0sIG1ha2luZyBpdCBhIHN5bWJvbCBvZiByZXNpbGllbmNlIGFuZCBiZWF1dHkuCiAgICA8L3A+CgogICAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7Ij4KICAgICAgICA8c3Ryb25nPlJlc3RvcmF0aW9uIGFuZCByZWdlbmVyYXRpb24gcHJvamVjdHM8L3N0cm9uZz48YnI+CiAgICAgICAgVGhlIGN5Y2xlIGlzIGNvbXBsZXRlZCB3aXRoIHJlc3RvcmF0aW9uLiBBIHBvcnRpb24gb2YgdGhlIHByb2NlZWRzIGlzIHJlaW52ZXN0ZWQgaW4gY29uY3JldGUgcHJvamVjdHMgZm9yIHJlZm9yZXN0YXRpb24gYW5kIHJlZ2VuZXJhdGlvbiBvZiB0aGUgdGVycml0b3J5LCBoZWxwaW5nIHRvIGhlYWwgdGhlIHdvdW5kcyBsZWZ0IGJ5IHRoZSBzdG9ybS4gRm9yIGV2ZXJ5IHByb2R1Y3Qgc29sZCwgYSB0cmVlIGlzIHBsYW50ZWQsIG9yIGdsYWNpZXJzIGFyZSBjbGVhbmVkLgogICAgPC9wPgoKPC9kaXY+dwljb3JlL2h0bWx3vQs8ZGl2IGNsYXNzPSJ2YWlhLW1pc3Npb24tYmxvY2siPgoKICAgIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogMjBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyI+CiAgICAgICAgPHN0cm9uZz5SZWNvdmVyeSBvZiByYXcgbWF0ZXJpYWxzPC9zdHJvbmc+PGJyPgogICAgICAgIFRoZSBmaXJzdCBwaGFzZSBmb2N1c2VzIG9uIHRoZSByZWNvdmVyeSBvZiB3b29kIHJlc3VsdGluZyBmcm9tIHRoZSBWYWlhIHN0b3JtIGFuZCBub3cgYWxzbyBmcm9tIHRoZSBiYXJrIGJlZXRsZSAoQm9zdHJpY28pLiBFYWNoIHRydW5rIGlzIHNlbGVjdGVkLCBjYXRhbG9nZWQsIGFuZCBwcmVwYXJlZCwgaW5pdGlhdGluZyBhIHByb2Nlc3MgdGhhdCB0cmFuc2Zvcm1zIGRhbWFnZSBpbnRvIGEgcmVzb3VyY2UuCiAgICA8L3A+CgogICAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiAyMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7Ij4KICAgICAgICA8c3Ryb25nPkFjdGl2YXRpb24gb2YgbG9jYWwgc3VwcGx5IGNoYWluczwvc3Ryb25nPjxicj4KICAgICAgICBXZSBjb2xsYWJvcmF0ZSBleGNsdXNpdmVseSB3aXRoIGFydGlzYW5zIGFuZCBidXNpbmVzc2VzIGluIHRoZSBhZmZlY3RlZCB2YWxsZXlzLiBUaGlzIG5vdCBvbmx5IGd1YXJhbnRlZXMgdGhlIGhpZ2hlc3QgcXVhbGl0eSBvZiB3b3JrbWFuc2hpcCBidXQgYWxzbyByZWFjdGl2YXRlcyB0aGUgbG9jYWwgZWNvbm9teSBhbmQgdGhlIHNlbnNlIG9mIGNvbW11bml0eS4KICAgIDwvcD4KCiAgICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDIwcHg7IG1hcmdpbi1yaWdodDogMTBweDsiPgogICAgICAgIDxzdHJvbmc+RGVzaWduIFZBSUEncyBvYmplY3RzPC9zdHJvbmc+PGJyPgogICAgICAgIERhbWFnZWQgcmF3IG1hdGVyaWFsIGdpdmVzIHJpc2UgdG8gbWluaW1hbGlzdCBhbmQgbWVhbmluZ2Z1bCBkZXNpZ24gb2JqZWN0cyB3aXRoIHBlb3BsZSBhdCB0aGUgY2VudGVyLiBFYWNoIHBpZWNlIGNhcnJpZXMgdGhlIG1hcmsgb2YgdGhlIHN0b3JtLCBtYWtpbmcgaXQgYSBzeW1ib2wgb2YgcmVzaWxpZW5jZSBhbmQgYmVhdXR5LgogICAgPC9wPgoKICAgIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogMjBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyI+CiAgICAgICAgPHN0cm9uZz5SZXN0b3JhdGlvbiBhbmQgcmVnZW5lcmF0aW9uIHByb2plY3RzPC9zdHJvbmc+PGJyPgogICAgICAgIFRoZSBjeWNsZSBpcyBjb21wbGV0ZWQgd2l0aCByZXN0b3JhdGlvbi4gQSBwb3J0aW9uIG9mIHRoZSBwcm9jZWVkcyBpcyByZWludmVzdGVkIGluIGNvbmNyZXRlIHByb2plY3RzIGZvciByZWZvcmVzdGF0aW9uIGFuZCByZWdlbmVyYXRpb24gb2YgdGhlIHRlcnJpdG9yeSwgaGVscGluZyB0byBoZWFsIHRoZSB3b3VuZHMgbGVmdCBieSB0aGUgc3Rvcm0uIEZvciBldmVyeSBwcm9kdWN0IHNvbGQsIGEgdHJlZSBpcyBwbGFudGVkLCBvciBnbGFjaWVycyBhcmUgY2xlYW5lZC4KICAgIDwvcD4KCjwvZGl2PnckYjhkYjc3MzItNjdjOS00Zjg5LWFiYWYtYjc0MjY0MmFiYjQ3eHcjPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIj48L2Rpdj53C2NvcmUvY29sdW1udyQ5ZDEzODVkYS0zZjQyLTRlMjUtYjI0My0yZDBmNWJjOGZmOGF4dyQ8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIj48L2Rpdj53DGNvcmUvY29sdW1uc3h3JGE0YWVlZmVjLTdmMjktNGFmYi1hMDgwLWFhZDEyZTgzZjZjYXh3IzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+PC9kaXY+dwtjb3JlL2NvbHVtbnckNGNhODY2ZjgtN2RkZC00MjQ2LWJjMzUtM2JhMzRlZjZlZDczeHeFCzxkaXYgY2xhc3M9InNsaWRlc2hvdy1jb250YWluZXIiPgogIDxkaXYgY2xhc3M9InNsaWRlIHNsaWRlMSI+PC9kaXY+CiAgPGRpdiBjbGFzcz0ic2xpZGUgc2xpZGUyIj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJzbGlkZSBzbGlkZTMiPjwvZGl2PgogIDxkaXYgY2xhc3M9InNsaWRlIHNsaWRlNCI+PC9kaXY+CiAgPGRpdiBjbGFzcz0ic2xpZGUgc2xpZGU1Ij48L2Rpdj4KPC9kaXY+Cgo8c3R5bGU+Ci5zbGlkZXNob3ctY29udGFpbmVyIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgd2lkdGg6IDEwMCU7CiAgbWF4LXdpZHRoOiA2MDBweDsKICBhc3BlY3QtcmF0aW86IDEgLyAxOyAvKiBxdWFkcmF0byAqLwogIG92ZXJmbG93OiBoaWRkZW47CiAgbWFyZ2luOiAwIGF1dG87Cn0KCi5zbGlkZSB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDowOyBsZWZ0OjA7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMDAlOwogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7CiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOwogIG9wYWNpdHk6IDA7CiAgYW5pbWF0aW9uOiBmYWRlIDE2cyBpbmZpbml0ZTsKfQoKLyogaW1wb3N0YSBsZSBpbW1hZ2luaSAqLwouc2xpZGUxIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL01vZGVsbG9IUF9FTi0xLmpwZycpOyBhbmltYXRpb24tZGVsYXk6IDBzOyB9Ci5zbGlkZTIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvTW9kZWxsb0hQX0VOLTIuanBnJyk7IGFuaW1hdGlvbi1kZWxheTogNHM7IH0KLnNsaWRlMyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Nb2RlbGxvSFBfRU4tMy5qcGcnKTsgYW5pbWF0aW9uLWRlbGF5OiA0czsgfQouc2xpZGU0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL01vZGVsbG9IUF9FTi00LmpwZycpOyBhbmltYXRpb24tZGVsYXk6IDhzOyB9Ci5zbGlkZTUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvTW9kZWxsb0hQX0VOLTUuanBnJyk7IGFuaW1hdGlvbi1kZWxheTogMTJzOyB9CgpAa2V5ZnJhbWVzIGZhZGUgewogIDAlIHsgb3BhY2l0eTogMDsgfQogIDYuMjUlIHsgb3BhY2l0eTogMTsgfSAgLyogZmFkZS1pbiAqLwogIDI1JSB7IG9wYWNpdHk6IDE7IH0gICAgLyogdmlzaWJpbGUgKi8KICAzMS4yNSUgeyBvcGFjaXR5OiAwOyB9IC8qIGZhZGUtb3V0ICovCiAgMTAwJSB7IG9wYWNpdHk6IDA7IH0KfQo8L3N0eWxlPncJY29yZS9odG1sd4ULPGRpdiBjbGFzcz0ic2xpZGVzaG93LWNvbnRhaW5lciI+CiAgPGRpdiBjbGFzcz0ic2xpZGUgc2xpZGUxIj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJzbGlkZSBzbGlkZTIiPjwvZGl2PgogIDxkaXYgY2xhc3M9InNsaWRlIHNsaWRlMyI+PC9kaXY+CiAgPGRpdiBjbGFzcz0ic2xpZGUgc2xpZGU0Ij48L2Rpdj4KICA8ZGl2IGNsYXNzPSJzbGlkZSBzbGlkZTUiPjwvZGl2Pgo8L2Rpdj4KCjxzdHlsZT4KLnNsaWRlc2hvdy1jb250YWluZXIgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB3aWR0aDogMTAwJTsKICBtYXgtd2lkdGg6IDYwMHB4OwogIGFzcGVjdC1yYXRpbzogMSAvIDE7IC8qIHF1YWRyYXRvICovCiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBtYXJnaW46IDAgYXV0bzsKfQoKLnNsaWRlIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOjA7IGxlZnQ6MDsKICB3aWR0aDogMTAwJTsKICBoZWlnaHQ6IDEwMCU7CiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsKICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7CiAgb3BhY2l0eTogMDsKICBhbmltYXRpb246IGZhZGUgMTZzIGluZmluaXRlOwp9CgovKiBpbXBvc3RhIGxlIGltbWFnaW5pICovCi5zbGlkZTEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvTW9kZWxsb0hQX0VOLTEuanBnJyk7IGFuaW1hdGlvbi1kZWxheTogMHM7IH0KLnNsaWRlMiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Nb2RlbGxvSFBfRU4tMi5qcGcnKTsgYW5pbWF0aW9uLWRlbGF5OiA0czsgfQouc2xpZGUzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL01vZGVsbG9IUF9FTi0zLmpwZycpOyBhbmltYXRpb24tZGVsYXk6IDRzOyB9Ci5zbGlkZTQgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvTW9kZWxsb0hQX0VOLTQuanBnJyk7IGFuaW1hdGlvbi1kZWxheTogOHM7IH0KLnNsaWRlNSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9Nb2RlbGxvSFBfRU4tNS5qcGcnKTsgYW5pbWF0aW9uLWRlbGF5OiAxMnM7IH0KCkBrZXlmcmFtZXMgZmFkZSB7CiAgMCUgeyBvcGFjaXR5OiAwOyB9CiAgNi4yNSUgeyBvcGFjaXR5OiAxOyB9ICAvKiBmYWRlLWluICovCiAgMjUlIHsgb3BhY2l0eTogMTsgfSAgICAvKiB2aXNpYmlsZSAqLwogIDMxLjI1JSB7IG9wYWNpdHk6IDA7IH0gLyogZmFkZS1vdXQgKi8KICAxMDAlIHsgb3BhY2l0eTogMDsgfQp9Cjwvc3R5bGU+dyQ2ZTM4MDllZi0zNzM4LTQ1OWYtODc2Ny1kMDllY2FmMjcyMjZ3LjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIj48L2Rpdj53DGNvcmUvY29sdW1uc3h3BHdpZGV3JDcyYjEzNGEyLTk0ZDktNDYxMC1hNjA4LWM2MTM4ZTZiOTgxZHh3OzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MTAwJSI+PC9kaXY+dwtjb3JlL2NvbHVtbncEMTAwJXckZjRjZmEzMDMtNTNmMi00ZTY3LWIwMzktMzg3NjM4NDI2NWFjeHdvPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMDsgbWFyZ2luLWxlZnQ6MjBweDsgcGFkZGluZy1ib3R0b206IDA7Ij5UaGUgVkFJQSBtb2RlbDwvaDI+dwljb3JlL2h0bWx3bzxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDA7IG1hcmdpbi1sZWZ0OjIwcHg7IHBhZGRpbmctYm90dG9tOiAwOyI+VGhlIFZBSUEgbW9kZWw8L2gyPnckMDI4ZGJlZDAtOWU1OS00YTBhLWE5OGEtZjcxYzM5YmMyNjA5dzI8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW5zIGFsaWduZnVsbCI+CgoKCjwvZGl2PncMY29yZS9jb2x1bW5zeHcEZnVsbHckMGY3YWUzYmQtODg4Mi00ODRlLWIzMWUtMjcyYTc1ZDBlYzlmeHc6PGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczoxNSUiPjwvZGl2PncLY29yZS9jb2x1bW53AzE1JXckYjUwZjU0MGUtODRhMy00MDhhLTk0YjctNjYxZWRmZmFiMGZkeHdKPGRpdiBzdHlsZT0iaGVpZ2h0OjEycHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwQxMnB4dyRhMzQ3M2EyNi1kN2YzLTQxZDUtODFjOS04YjE4ZWQ1MDk0ZGJ4dzw8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjcwJSI+Cgo8L2Rpdj53C2NvcmUvY29sdW1udwM3MCV3JDEzODY2YmJiLTY0ZTMtNDQwMC1hOWY1LWFlOTNhYmFjMWE1Ynh3XjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyBoYXMtdGV4dC1hbGlnbi1jZW50ZXIiPlJlZm9yZXN0YXRpb24gbWFwIGZyb20gMjAxOSB0byBwcmVzZW50PC9oMj53DGNvcmUvaGVhZGluZ30CdgEKdHlwb2dyYXBoeXYBCXRleHRBbGlnbncGY2VudGVydyRjNTg0MDcwMi02MDZiLTRhNDEtYWE0Yi1jYjEzMzY4ZjhiZGV4d4YBPGlmcmFtZSBzcmM9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vbWFwcy9kL2VtYmVkP21pZD0xUXdiVmFQWkJHUmN6X2M1TXM0T3hFN0NnZ0dqaGZ0YyZlaGJjPTJFMzEyRiIgd2lkdGg9IjEwMCUiIGhlaWdodD0iNDgwIj48L2lmcmFtZT53CWNvcmUvaHRtbHeGATxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZC9lbWJlZD9taWQ9MVF3YlZhUFpCR1Jjel9jNU1zNE94RTdDZ2dHamhmdGMmZWhiYz0yRTMxMkYiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjQ4MCI+PC9pZnJhbWU+dyQ4YmJmNmIxYS1iNmMzLTQ0NTMtYjZkMS0xZDRmMjU1MzRhMjV4dzo8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iIHN0eWxlPSJmbGV4LWJhc2lzOjE1JSI+PC9kaXY+dwtjb3JlL2NvbHVtbncDMTUldyQwYmYxNTk2Yi1lZjc2LTQ0YjEtYTQzZC05NmU4NWY5MjU4YzR4d0o8ZGl2IHN0eWxlPSJoZWlnaHQ6MTFweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3BDExcHh3JGE5Y2Y0MTI2LTM3ZDAtNDE3Ny05Nzk4LTBiYzIxMzE5NTRhYXc4PGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1ucyBhbGlnbmZ1bGwiPgoKCgoKCgoKCgo8L2Rpdj53DGNvcmUvY29sdW1uc3h3BGZ1bGx3JDRmYzhmOGNkLWEzZDEtNDJiZi05ZTZmLTRhNDI4ZTg5ZjU0M3h3OzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiIgc3R5bGU9ImZsZXgtYmFzaXM6MzBweCI+PC9kaXY+dwtjb3JlL2NvbHVtbncEMzBweHckOWFjYWFjMDgtMGFmMy00N2RjLWJhYTItN2I2OGEzZDQ1NTRmeHdJPGRpdiBzdHlsZT0iaGVpZ2h0OjhweCIgYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJ3cC1ibG9jay1zcGFjZXIiPjwvZGl2PncLY29yZS9zcGFjZXJ3AzhweHckYTIyODQ4NzgtZWE1MS00YTU3LThlZTItOWI0MjFiMGNkZjQ3eHclPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIj4KCjwvZGl2PncLY29yZS9jb2x1bW53JDRkY2ZiYjRlLTY0OTktNGUzNS05ODM4LWI4YWVhZmIzNWJjZnh30wE8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay1pbWFnZSBhbGlnbmNlbnRlciBzaXplLWxhcmdlIGlzLXJlc2l6ZWQiPjxpbWcgc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAyLzc1LTEwMjR4MTAyNC5wbmciIGFsdD0iIiBjbGFzcz0id3AtaW1hZ2UtNTQzNDIiIHN0eWxlPSJ3aWR0aDo3N3B4O2hlaWdodDphdXRvIi8+PC9maWd1cmU+dwpjb3JlL2ltYWdldz9odHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAyLzc1LTEwMjR4MTAyNC5wbmd3AH2G0QZ3BDc3cHh3BGF1dG93BWxhcmdldwRub25ldwZjZW50ZXJ3JDlhMDExNTdlLWNjM2UtNGM3My1hZTMyLWJhMWFhZjgwZjU3MHh3pwI8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGdhcDogMTVweDsiPgogICAgPHN0cm9uZyBzdHlsZT0iZm9udC1zaXplOiAyLjJyZW07IGxpbmUtaGVpZ2h0OiAxLjE7Zm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQ7Ij4yMDAuMDAwIHRyZWVzPC9zdHJvbmc+CiAgICA8c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxLjFyZW07Ij5wbGFudGVkIGFjcm9zcyB0aGUgQWxwaW5lIHJlZ2lvbjwvc3Bhbj4KPC9kaXY+dwljb3JlL2h0bWx3pwI8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGdhcDogMTVweDsiPgogICAgPHN0cm9uZyBzdHlsZT0iZm9udC1zaXplOiAyLjJyZW07IGxpbmUtaGVpZ2h0OiAxLjE7Zm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQ7Ij4yMDAuMDAwIHRyZWVzPC9zdHJvbmc+CiAgICA8c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxLjFyZW07Ij5wbGFudGVkIGFjcm9zcyB0aGUgQWxwaW5lIHJlZ2lvbjwvc3Bhbj4KPC9kaXY+dyRmMmI4NWE3Ni0zMDQ1LTRjZjAtOGJiMC02ZjZlZWI0MTllNjZ4dyU8ZGl2IGNsYXNzPSJ3cC1ibG9jay1jb2x1bW4iPgoKPC9kaXY+dwtjb3JlL2NvbHVtbnckZGQ2NmM0YTQtYzFkZC00ZWRlLWJiMjEtZjI1ZGU3ZTJhNjM0eHfTATxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWltYWdlIGFsaWduY2VudGVyIHNpemUtbGFyZ2UgaXMtcmVzaXplZCI+PGltZyBzcmM9Imh0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDIvNzYtMTAyNHgxMDI0LnBuZyIgYWx0PSIiIGNsYXNzPSJ3cC1pbWFnZS01NDM0NyIgc3R5bGU9IndpZHRoOjc2cHg7aGVpZ2h0OmF1dG8iLz48L2ZpZ3VyZT53CmNvcmUvaW1hZ2V3P2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDIvNzYtMTAyNHgxMDI0LnBuZ3cAfYvRBncENzZweHcEYXV0b3cFbGFyZ2V3BG5vbmV3BmNlbnRlcnckN2MxOGQwYzAtOTcyYy00OTk5LWE3YWUtZDk3ZTBiNDdkYTFkeHeVAjxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHRleHQtYWxpZ246IGNlbnRlcjsgZ2FwOiAxNXB4OyI+CiAgICA8c3Ryb25nIHN0eWxlPSJmb250LXNpemU6IDIuMnJlbTsgbGluZS1oZWlnaHQ6IDEuMTtmb250LXdlaWdodDogNjAwIWltcG9ydGFudDsiPjEuMDAwIHRvbnM8L3N0cm9uZz4KICAgIDxzcGFuIHN0eWxlPSJmb250LXNpemU6IDEuMXJlbTsiPm9mIENP4oKCIG9mZnNldAoKPC9zcGFuPgo8L2Rpdj53CWNvcmUvaHRtbHeVAjxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHRleHQtYWxpZ246IGNlbnRlcjsgZ2FwOiAxNXB4OyI+CiAgICA8c3Ryb25nIHN0eWxlPSJmb250LXNpemU6IDIuMnJlbTsgbGluZS1oZWlnaHQ6IDEuMTtmb250LXdlaWdodDogNjAwIWltcG9ydGFudDsiPjEuMDAwIHRvbnM8L3N0cm9uZz4KICAgIDxzcGFuIHN0eWxlPSJmb250LXNpemU6IDEuMXJlbTsiPm9mIENP4oKCIG9mZnNldAoKPC9zcGFuPgo8L2Rpdj53JDBmMWViMzIzLTU5MTEtNDkwNy1iYWJkLTJiMGE1NjBlNGUyZHh3JTxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+Cgo8L2Rpdj53C2NvcmUvY29sdW1udyRhMmRmNjFiMS1jNDcwLTQwYjUtOTcxMi01OTRiNjEwODMzZTl4d9MBPGZpZ3VyZSBjbGFzcz0id3AtYmxvY2staW1hZ2UgYWxpZ25jZW50ZXIgc2l6ZS1sYXJnZSBpcy1yZXNpemVkIj48aW1nIHNyYz0iaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wMi83Ny0xMDI0eDEwMjQucG5nIiBhbHQ9IiIgY2xhc3M9IndwLWltYWdlLTU0MzUxIiBzdHlsZT0id2lkdGg6NjlweDtoZWlnaHQ6YXV0byIvPjwvZmlndXJlPncKY29yZS9pbWFnZXc\/aHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wMi83Ny0xMDI0eDEwMjQucG5ndwB9j9EGdwQ2OXB4dwRhdXRvdwVsYXJnZXcEbm9uZXcGY2VudGVydyQ1MTRkNmY1OS1jNDExLTQ5MTMtYWNiMS1iNjZkNDNiZjUxYmZ4d5UCPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyBnYXA6IDE1cHg7Ij4KICAgIDxzdHJvbmcgc3R5bGU9ImZvbnQtc2l6ZTogMi4ycmVtOyBsaW5lLWhlaWdodDogMS4xO2ZvbnQtd2VpZ2h0OiA2MDAhaW1wb3J0YW50OyI+NTAwIHRvbnM8L3N0cm9uZz4KICAgIDxzcGFuIHN0eWxlPSJmb250LXNpemU6IDEuMXJlbTsiPm9mIHdvb2QgcmVjb3ZlcmVkCgo8L3NwYW4+CjwvZGl2PncJY29yZS9odG1sd5UCPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyBnYXA6IDE1cHg7Ij4KICAgIDxzdHJvbmcgc3R5bGU9ImZvbnQtc2l6ZTogMi4ycmVtOyBsaW5lLWhlaWdodDogMS4xO2ZvbnQtd2VpZ2h0OiA2MDAhaW1wb3J0YW50OyI+NTAwIHRvbnM8L3N0cm9uZz4KICAgIDxzcGFuIHN0eWxlPSJmb250LXNpemU6IDEuMXJlbTsiPm9mIHdvb2QgcmVjb3ZlcmVkCgo8L3NwYW4+CjwvZGl2PnckNTJkODhhMTItYWJkZC00Njc0LTg1MzktYjExZWQ3ZmJhNmVmeHclPGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIj4KCjwvZGl2PncLY29yZS9jb2x1bW53JGUzZmVlNmE1LWE3NWItNDY1ZC04NjgwLTlmMjMyN2Y1OTU1MXh30wE8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay1pbWFnZSBhbGlnbmNlbnRlciBzaXplLWxhcmdlIGlzLXJlc2l6ZWQiPjxpbWcgc3JjPSJodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAyLzc4LTEwMjR4MTAyNC5wbmciIGFsdD0iIiBjbGFzcz0id3AtaW1hZ2UtNTQzNTUiIHN0eWxlPSJ3aWR0aDo2OXB4O2hlaWdodDphdXRvIi8+PC9maWd1cmU+dwpjb3JlL2ltYWdldz9odHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzAyLzc4LTEwMjR4MTAyNC5wbmd3AH2T0QZ3BDY5cHh3BGF1dG93BWxhcmdldwRub25ldwZjZW50ZXJ3JGMzMmNlZTg3LTFmZTYtNDYxZi05NTBhLWJmNDk0YTAzOWYzYnh3lwI8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGdhcDogMTVweDsiPgogICAgPHN0cm9uZyBzdHlsZT0iZm9udC1zaXplOiAyLjJyZW07IGxpbmUtaGVpZ2h0OiAxLjE7Zm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQ7Ij4xNSBhcnRpc2Fuczwvc3Ryb25nPgogICAgPHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTogMS4xcmVtOyI+aW52b2x2ZWQgaW4gSXRhbHkKPC9zcGFuPgo8L2Rpdj53CWNvcmUvaHRtbHeXAjxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHRleHQtYWxpZ246IGNlbnRlcjsgZ2FwOiAxNXB4OyI+CiAgICA8c3Ryb25nIHN0eWxlPSJmb250LXNpemU6IDIuMnJlbTsgbGluZS1oZWlnaHQ6IDEuMTtmb250LXdlaWdodDogNjAwIWltcG9ydGFudDsiPjE1IGFydGlzYW5zPC9zdHJvbmc+CiAgICA8c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxLjFyZW07Ij5pbnZvbHZlZCBpbiBJdGFseQo8L3NwYW4+CjwvZGl2PnckMDk2YThmN2QtZThiZC00NjA5LWE1OWYtYjNjYmZhZGEwOTVieHc7PGRpdiBjbGFzcz0id3AtYmxvY2stY29sdW1uIiBzdHlsZT0iZmxleC1iYXNpczozMHB4Ij48L2Rpdj53C2NvcmUvY29sdW1udwQzMHB4dyRmMWIzMjQzOS0xYzkxLTRmNzktYjRhMi02NDI4NTY2NTM1Y2F4d0k8ZGl2IHN0eWxlPSJoZWlnaHQ6OHB4IiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9IndwLWJsb2NrLXNwYWNlciI+PC9kaXY+dwtjb3JlL3NwYWNlcncDOHB4dyQ2NmVkNjQ3NC02NDYzLTQwZDQtYjdkMy03OGE1MGI4YTFkNGZ3LjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIj48L2Rpdj53DGNvcmUvY29sdW1uc3h3BHdpZGV3JDdhY2ZlMzk3LTI5MWEtNGJjMy04MmViLWZlMzg4NWY5NjhhYnh3JzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+CgoKCjwvZGl2PncLY29yZS9jb2x1bW53JGIxNjc0MmY0LTc4MjYtNGU5NS1hOTYxLWUzMzdkOWZjYjY3Znh3bjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgc3R5bGU9Im1hcmdpbi1ib3R0b206IC01dmg7IG1hcmdpbi1sZWZ0OjIwcHg7IHBhZGRpbmctYm90dG9tOiAwOyI+T3VyIGltcGFjdDwvaDI+dwljb3JlL2h0bWx3bjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgc3R5bGU9Im1hcmdpbi1ib3R0b206IC01dmg7IG1hcmdpbi1sZWZ0OjIwcHg7IHBhZGRpbmctYm90dG9tOiAwOyI+T3VyIGltcGFjdDwvaDI+dyRjNWJiZGRhMC1mN2Q4LTQwNTUtOTM3Yy01ZGY4Y2IyYjc2MTh4d7MoPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3aXBlckAxMS9zd2lwZXItYnVuZGxlLm1pbi5jc3MiIC8+CjxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3N3aXBlckAxMS9zd2lwZXItYnVuZGxlLm1pbi5qcyI+PC9zY3JpcHQ+Cgo8ZGl2IGlkPSJhemllbmRlIiBjbGFzcz0ic2V6aW9uZS1hemllbmRlLWN1c3RvbSI+CiAgICA8ZGl2IGNsYXNzPSJjYXJvc2VsbG8tY29udGFpbmVyLWF6aWVuZGUiPgogICAgICAgIDxkaXYgY2xhc3M9InN3aXBlciBjYXJvc2VsbG8tYXppZW5kZS1udW92byI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN3aXBlci13cmFwcGVyIj4KCiAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvamVjdC9nbGFjaWVycy8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC0xLTEgY2FyZC1hemllbmRlLW51b3ZvIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnLWF6aWVuZGUiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9IUC1wcm9nZXR0by1naGlhY2NpYWkuanBnJyk7Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQtYXppZW5kZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibm9tZS1hemllbmRlLXZpc2liaWxlIj5HbGFjaWVyczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2E+CgogPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L2RvbG9taXRlcy8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC0xLTEgY2FyZC1hemllbmRlLW51b3ZvIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnLWF6aWVuZGUiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8xMS9IUC1wcm9nZXR0by1kb2xvbWl0aS5qcGcnKTsiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudC1hemllbmRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJub21lLWF6aWVuZGUtdmlzaWJpbGUiPkRvbG9taXRlczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2E+ICAgICAgICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgCgogPGEgaHJlZj0iaHR0cHM6Ly93d3cudmFpYS5ldS9lbi9wcm9qZWN0L2Jvc3RyaWNvLyIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTEtMSBjYXJkLWF6aWVuZGUtbnVvdm8iPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmctYXppZW5kZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzExL0hQLXByb2dldHRvLWJvc3RyaWNvLmpwZycpOyI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1jb250ZW50LWF6aWVuZGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im5vbWUtYXppZW5kZS12aXNpYmlsZSI+Qm9zdHJpY288L2gzPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9hPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic3dpcGVyLXBhZ2luYXRpb24tYXppZW5kZSI+PC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+Cgo8c3R5bGU+Ci8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKiBTVElMSSBFU0NMVVNJVkkgUEVSIFFVRVNUQSBTRVpJT05FIChDb3JyZXppb25pIHBlciBhbGxpbmVhbWVudG8pICovCi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKLnNlemlvbmUtYXppZW5kZS1jdXN0b20geyAKICAgIGJhY2tncm91bmQtY29sb3I6I2Y0ZjBlNTsgCiAgICBwYWRkaW5nOjYwcHggMjBweDsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKfQoudGl0b2xvLXNlemlvbmUtYXppZW5kZSB7CiAgICBjb2xvcjojMGUzYjI2OyAgCiAgICBmb250LXNpemU6Mi44cmVtOyAgCiAgICBtYXJnaW4tYm90dG9tOiAwcHg7Cn0KLmNhcm9zZWxsby1jb250YWluZXItYXppZW5kZSB7IAogICAgcG9zaXRpb246cmVsYXRpdmU7IAogICAgcGFkZGluZzoyMHB4IDA7IAogICAgb3ZlcmZsb3c6aGlkZGVuOwogICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICBtYXJnaW46IDAgYXV0bzsKfQoKLyogQ0FSRCBRVUFEUkFUQSAoMToxKSAqLwouY2FyZC0xLTEgewogICAgYXNwZWN0LXJhdGlvOjEvMTsKICAgIHdpZHRoOjM1MHB4OwogICAgYm9yZGVyLXJhZGl1czoxMnB4OwogICAgb3ZlcmZsb3c6aGlkZGVuOwogICAgcG9zaXRpb246cmVsYXRpdmU7Cn0KCi5jYXJkLWJnLWF6aWVuZGUgeyAKICAgIHdpZHRoOjEwMCU7IAogICAgaGVpZ2h0OjEwMCU7IAogICAgYmFja2dyb3VuZC1zaXplOmNvdmVyOyAKICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyOyAKICAgIHRyYW5zaXRpb246dHJhbnNmb3JtIDAuNHMgZWFzZTsgCn0KCi8qIEVGRkVUVE8gWk9PTSAoUmljaGllc3RvIGUgQ29ycmV0dG8pICovCi5jYXJkLWF6aWVuZGUtbnVvdm86aG92ZXIgLmNhcmQtYmctYXppZW5kZSB7IAogICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsgCn0KCi5jYXJkLWNvbnRlbnQtYXppZW5kZSB7CiAgICBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgcmlnaHQ6MDsgYm90dG9tOjA7ICAKICAgIGRpc3BsYXk6ZmxleDsgCiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBBZ2dpdW50byBwZXIgYWxsaW5lYW1lbnRvICovCiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLyogQWxsaW5lYSBpbCBjb250ZW51dG8gYSBzaW5pc3RyYSAqLwogICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLyogQ29ycmV0dG86IEFsbGluZWEgaWwgY29udGVudXRvIGluIEJBU1NPICovCiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsMCwwLDAuNikgMCUsIHRyYW5zcGFyZW50IDUwJSk7CiAgICB0ZXh0LWFsaWduOmxlZnQ7CiAgICBwYWRkaW5nOiAyMHB4Owp9CgovKiBURVNUTyBTRU1QUkUgVklTSUJJTEUgSU4gQkFTU08gQSBTSU5JU1RSQSAqLwoubm9tZS1hemllbmRlLXZpc2liaWxlIHsKICAgIGNvbG9yOiNmNGYwZTU7IAogICAgZm9udC1zaXplOjEuNnJlbTsgCiAgICBtYXJnaW46IDA7IAogICAgb3BhY2l0eTogMTsKICAgIHRleHQtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLDAsMCwwLjgpOwp9CgovKiBQQUdJTkFaSU9ORSAqLwouc3dpcGVyLXBhZ2luYXRpb24tYXppZW5kZSB7IHBvc2l0aW9uOnN0YXRpYzsgbWFyZ2luLXRvcDozMHB4OyB9Ci5zd2lwZXItcGFnaW5hdGlvbi1hemllbmRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjojMGUzYjI2OyB9CgoKLyogUkVTUE9OU0lWRSAqLwpAbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsKICAgIC50aXRvbG8tc2V6aW9uZS1hemllbmRlIHsgZm9udC1zaXplOjJyZW07IH0KICAgIC5jYXJkLTEtMSB7IAogICAgICAgIHdpZHRoOiAxMDAlOyAKICAgIH0KfQo8L3N0eWxlPgoKPHNjcmlwdD4KLy8gRnVuemlvbmUgaW5pdENhcm9zZWxsbyByaW1hbmUgaW52YXJpYXRhIHBlciBsJ3VzbyBnZW5lcmljbwpmdW5jdGlvbiBpbml0Q2Fyb3NlbGxvKHNlbGVjdG9yLCBwZXJWaWV3Q29uZmlnLCBsb29wVmFsdWUgPSB0cnVlKSB7CiAgICByZXR1cm4gbmV3IFN3aXBlcihzZWxlY3RvciwgewogICAgICAgIGxvb3A6IGxvb3BWYWx1ZSwKICAgICAgICBncmFiQ3Vyc29yOiB0cnVlLAogICAgICAgIGluaXRpYWxTbGlkZTogMSwKICAgICAgICBwYWdpbmF0aW9uOiB7CiAgICAgICAgICAgIC8vIEltcG9ydGFudGU6IHF1aSB1c2lhbW8gbGEgY2xhc3NlIHNwZWNpZmljYSBkZWxsYSBwYWdpbmF6aW9uZSBwZXIgcXVlc3RhIHNlemlvbmUKICAgICAgICAgICAgZWw6ICcjYXppZW5kZSAuc3dpcGVyLXBhZ2luYXRpb24tYXppZW5kZScsCiAgICAgICAgICAgIGNsaWNrYWJsZTogdHJ1ZSwKICAgICAgICB9LAogICAgICAgIGJyZWFrcG9pbnRzOiBwZXJWaWV3Q29uZmlnCiAgICB9KTsKfQoKLy8gSW5pemlhbGl6emF6aW9uZSBFU0NMVVNJVkEgcGVyIGxhIHNlemlvbmUgSUQ9ImF6aWVuZGUiCndpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgIAogICAgICAgIC8vIENvbnRyb2xsYSBQUklNQSBzZSBpbCBjb250ZW5pdG9yZSBwcmluY2lwYWxlIEVTSVNURS4KICAgICAgICAvLyBRdWVzdG8gaW1wZWRpc2NlIGwnZXNlY3V6aW9uZSBkZWxsbyBzY3JpcHQgc2UgbCdJRCAjYXppZW5kZSBub24gw6ggbmVsbGEgcGFnaW5hLgogICAgICAgIGNvbnN0IGF6aWVuZGVDb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYXppZW5kZScpOwogICAgICAgIAogICAgICAgIGlmIChhemllbmRlQ29udGFpbmVyKSB7CiAgICAgICAgICAgIC8vIElOSVpJQUxJWlpBWklPTkUgU0VaSU9ORSBBWklFTkRFIFBFUlNPTkFMSVpaQVRBCiAgICAgICAgICAgIC8vIFNlbGV6aW9uaWFtbyBpbCBjYXJvc2VsbG8gU09MTyBhbGwnaW50ZXJubyBkZWwgY29udGVuaXRvcmUgI2F6aWVuZGUKICAgICAgICAgICAgaW5pdENhcm9zZWxsbygnI2F6aWVuZGUgLmNhcm9zZWxsby1hemllbmRlLW51b3ZvJywgewogICAgICAgICAgICAgICAgMzIwOiB7IHNsaWRlc1BlclZpZXc6IDEuMiwgc3BhY2VCZXR3ZWVuOiAxNSB9LAogICAgICAgICAgICAgICAgNzY4OiB7IHNsaWRlc1BlclZpZXc6IDIsIHNwYWNlQmV0d2VlbjogMjAgfSwKICAgICAgICAgICAgICAgIDEwMjQ6IHsgc2xpZGVzUGVyVmlldzogMy4yLCBzcGFjZUJldHdlZW46IDMwIH0sCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICAKICAgIH0sIDEwMCk7IAp9Owo8L3NjcmlwdD53CWNvcmUvaHRtbHckYThiNDUwZjMtMmU1NC00ODE5LTlkZDYtNTE0ZWY4MjFkNTk4eHdKPGRpdiBzdHlsZT0iaGVpZ2h0OjMwcHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0id3AtYmxvY2stc3BhY2VyIj48L2Rpdj53C2NvcmUvc3BhY2VydwQzMHB4dyQ0NWJkMTU5Zi01ZDJkLTQ3NDctOGJmZS0yNzY2ZTBmZThjOGZ3CWNvcmUvaHRtbHfnAjxzY3JpcHQ+CihmdW5jdGlvbigpIHsKICAgIHZhciByZWRpcmVjdFVybCA9ICJodHRwczovL3d3dy52YWlhLmV1L2VuL25ldy1ob21lLyI7CiAgICB2YXIgdGFyZ2V0ID0gbmV3IERhdGUoRGF0ZS5VVEMoMjAyNiwgNSwgMTIsIDE4LCAzMCwgMCkpLmdldFRpbWUoKTsKICAgIGZ1bmN0aW9uIGNoZWNrQW5kUmVkaXJlY3QoKSB7CiAgICAgICAgaWYgKG5ldyBEYXRlKCkuZ2V0VGltZSgpID49IHRhcmdldCkgeyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZShyZWRpcmVjdFVybCk7IH0KICAgIH0KICAgIGNoZWNrQW5kUmVkaXJlY3QoKTsKICAgIHNldEludGVydmFsKGNoZWNrQW5kUmVkaXJlY3QsIDYwMDAwKTsKfSkoKTsKPC9zY3JpcHQ+dyRiNzgzNWRmZi0yM2Q5LTQ4OTYtYTJmNS1jMmZiZjYwMjc4ZTR3LjxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbnMgYWxpZ253aWRlIj48L2Rpdj53DGNvcmUvY29sdW1uc3h3BHdpZGV3JGJhMjg4MWVmLTE1OTQtNDA2MC05N2U3LTQ3MzZiODFkNWE3MHh3JzxkaXYgY2xhc3M9IndwLWJsb2NrLWNvbHVtbiI+CgoKCjwvZGl2PncLY29yZS9jb2x1bW53JDViMmY2ZDQ1LWUxMzctNDdlZS1iMTYwLTBmYmM2OTRlMjcyNnh3cDxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgc3R5bGU9Im1hcmdpbi1ib3R0b206IC01dmg7IG1hcmdpbi1sZWZ0OjIwcHg7IHBhZGRpbmctYm90dG9tOiAwOyI+T3VyIHByb2R1Y3RzPC9oMj53CWNvcmUvaHRtbHdwPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogLTV2aDsgbWFyZ2luLWxlZnQ6MjBweDsgcGFkZGluZy1ib3R0b206IDA7Ij5PdXIgcHJvZHVjdHM8L2gyPnckYzc5NzEzMTYtMTQ1ZC00NjU2LThhZmQtMzVkMjZmYjMyODdjeHf+NjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9zd2lwZXJAMTEvc3dpcGVyLWJ1bmRsZS5taW4uY3NzIj4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vc3dpcGVyQDExL3N3aXBlci1idW5kbGUubWluLmpzIj48L3NjcmlwdD4KCjxkaXYgaWQ9InByb2RvdHRpIiBjbGFzcz0ic2V6aW9uZSI+CiAgPGgyIGNsYXNzPSJ0aXRvbG8tc2V6aW9uZSI+PC9oMj4KICA8ZGl2IGNsYXNzPSJjYXJvc2VsbG8tY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InN3aXBlciBjYXJvc2VsbG8tcHJvZG90dGkiPgogICAgICA8ZGl2IGNsYXNzPSJzd2lwZXItd3JhcHBlciI+CgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLWN1YmUvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyMi8xMS82NjV4NzU1X0NVQkUuanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBDdWJlPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CgogIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLWN1YmUtZXNzZW50aWFsLWFyaWEvIiBjbGFzcz0ic3dpcGVyLXNsaWRlIGNhcmQtOS0xNiBjYXJkLXByb2RvdHRvIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYmciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly93d3cudmFpYS5ldS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wMy8zLTEucG5nP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBDdWJlIEVzc2VudGlhbCBBcmlhPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLWN1YmUtaW1wZXJmZXR0by8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzExLzY2NXg3NTVfSU1QRVJGRVRUTy5qcGc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIEN1YmUgaW1wZXJmZXR0bzwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy52YWlhLmV1L2VuL3Byb2R1Y3QvdmFpYS1jdWJlLWpveS8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzExLzY2NXg3NTVfSk9ZLTItMS5qcGc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIEN1YmUgSk9ZPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLXBlb3BsZS8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI0LzExL3Blb3BsZS1waWVkaXN0YWxsby5qcGc\/YXV0bz1jb21wcmVzcyZhbXA7Y3M9dGlueXNyZ2ImYW1wO3c9ODAwJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIFBlb3BsZTxicj5Db21ibzwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgogICAgICAgIAogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnZhaWEuZXUvZW4vcHJvZHVjdC92YWlhLXBlb3BsZS1wZXJzb25hbGl6emF0by8iIGNsYXNzPSJzd2lwZXItc2xpZGUgY2FyZC05LTE2IGNhcmQtcHJvZG90dG8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1iZyIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3d3dy52YWlhLmV1L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI1LzEwL1Blb3BsZS1QZXJzb25hbGl6emF0aS0yMS1zY2FsZWQuanBnP2F1dG89Y29tcHJlc3MmYW1wO2NzPXRpbnlzcmdiJmFtcDt3PTgwMCcpOyI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWNvbnRlbnQiPjxoMyBjbGFzcz0ibm9tZS1wcm9kb3R0byI+VkFJQSBQZW9wbGUgQ3VzdG9taXplZDwvaDM+PC9kaXY+CiAgICAgICAgPC9hPgogICAgICAgIAogICAgICAgIDxhIGhyZWY9IiIgY2xhc3M9InN3aXBlci1zbGlkZSBjYXJkLTktMTYgY2FyZC1wcm9kb3R0byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWJnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vd3d3LnZhaWEuZXUvd3AtY29udGVudC91cGxvYWRzLzIwMjUvMTEvUHJvZG90dGktSFAtRm9jdXMtQlctZXNhdXJpdG8uanBnJyk7Ij48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtY29udGVudCI+PGgzIGNsYXNzPSJub21lLXByb2RvdHRvIj5WQUlBIEZvY3VzIC0gb3V0IG9mIHN0b2NrPC9oMz48L2Rpdj4KICAgICAgICA8L2E+CgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDwhLS0g4pyFIEZSRUNDRSBzb2xvIGRlc2t0b3AgLS0+CiAgICA8ZGl2IGNsYXNzPSJzd2lwZXItYnV0dG9uLXByZXYiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0ic3dpcGVyLWJ1dHRvbi1uZXh0Ij48L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzd2lwZXItcGFnaW5hdGlvbiI+PC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPHN0eWxlPgouc2V6aW9uZSB7IGJhY2tncm91bmQtY29sb3I6I2Y0ZjBlNTsgfQoudGl0b2xvLXNlemlvbmUgewogIGNvbG9yOiMwZTNiMjY7ICAKICBmb250LXNpemU6Mi44cmVtOyAgCiAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgCiAgcGFkZGluZzowOyAgCiAgYm9yZGVyLXJhZGl1czowOwogIG1hcmdpbi1sZWZ0OjIwcHg7CiAgbWFyZ2luLWJvdHRvbTotM3ZoOwogIHBhZGRpbmctYm90dG9tOi0zdmg7Cgp9CgouY2Fyb3NlbGxvLWNvbnRhaW5lciB7IHBvc2l0aW9uOnJlbGF0aXZlOyBwYWRkaW5nOjYwcHggMDsgb3ZlcmZsb3c6aGlkZGVuOyB9Ci5jYXJkLTktMTYgeyBhc3BlY3QtcmF0aW86OS8xNjsgd2lkdGg6MzAwcHg7IGJvcmRlci1yYWRpdXM6MTJweDsgb3ZlcmZsb3c6aGlkZGVuOyBwb3NpdGlvbjpyZWxhdGl2ZTsgfQouY2FyZC1iZyB7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7IGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyOyB0cmFuc2l0aW9uOnRyYW5zZm9ybSAwLjRzIGVhc2U7IH0KLmNhcmQtOS0xNjpob3ZlciAuY2FyZC1iZyB7IHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IH0KLmNhcmQtY29udGVudCB7CiAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHJpZ2h0OjA7IGJvdHRvbTowOyAgCiAgZGlzcGxheTpmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7ICAKICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50OwogIHRleHQtYWxpZ246Y2VudGVyOwp9Ci5jYXJkLWNvbnRlbnQgaDMgeyBjb2xvcjojZjRmMGU1OyBmb250LXNpemU6MS42cmVtOyBtYXJnaW46MDsgdGV4dC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsMC42KTsgfQoKLm5vbWUtcHJvZG90dG8gewogIG9wYWNpdHk6IDE7CiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2U7CiAgdGV4dC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuNik7CiAgcGFkZGluZzogMTBweDsKfQoKLmNhcmQtcHJvZG90dG86aG92ZXIgLm5vbWUtcHJvZG90dG8gewogIG9wYWNpdHk6IDE7Cn0KCi8qIEZSRUNDRTogc29sbyBzdSBkZXNrdG9wLCBvZmYgd2hpdGUsIHNlbnphIGNlcmNoaW8gKi8KLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tcHJldiwKLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tbmV4dCB7CiAgY29sb3I6I2Y0ZjBlNTsKICBmb250LXdlaWdodDo2MDA7CiAgdGV4dC1zaGFkb3c6MCAycHggOHB4IHJnYmEoMCwwLDAsMC40KTsKICBwb3NpdGlvbjphYnNvbHV0ZTsKICB0b3A6NTAlOwogIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOwogIHotaW5kZXg6MTA7CiAgZm9udC1zaXplOjQwcHg7CiAgdHJhbnNpdGlvbjpvcGFjaXR5IDAuM3MgZWFzZSwgdHJhbnNmb3JtIDAuM3MgZWFzZTsKfQouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1wcmV2OmhvdmVyLAouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0OmhvdmVyIHsKICBvcGFjaXR5OjAuODsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjEpOwp9CgouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1wcmV2IHsgbGVmdDoxMHB4OyB9Ci5jYXJvc2VsbG8tY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQgeyByaWdodDoxMHB4OyB9CgouY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLXBhZ2luYXRpb24gewogIHBvc2l0aW9uOnN0YXRpYzsKICBtYXJnaW4tdG9wOjMwcHg7Cn0KLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUgewogIGJhY2tncm91bmQtY29sb3I6IzBlM2IyNjsKfQoKLyogTmFzY29uZGkgZnJlY2NlIHN1IHRhYmxldCBlIG1vYmlsZSAqLwpAbWVkaWEobWF4LXdpZHRoOjEwMjRweCl7CiAgLmNhcm9zZWxsby1jb250YWluZXIgLnN3aXBlci1idXR0b24tcHJldiwKICAuY2Fyb3NlbGxvLWNvbnRhaW5lciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHsKICAgIGRpc3BsYXk6bm9uZTsKICB9Cn0KQG1lZGlhKG1heC13aWR0aDo3NjhweCl7CiAgLnRpdG9sby1zZXppb25lIHsgZm9udC1zaXplOjJyZW07IH0KfQo8L3N0eWxlPgoKPHNjcmlwdD4KLyogSW5pdCByb2J1c3RvOiBjb2xsZWdhIGkgYm90dG9uaSBlIGxhIHBhZ2luYXppb25lIHVzYW5kbyBlbGVtZW50aSBET00sCiAgIGNvc8OsIGkgbmV4dC9wcmV2IGZ1bnppb25hbm8gc2VtcHJlIGFuY2hlIHNlIGxhIHN0cnV0dHVyYSBIVE1MIHZhcmlhIGxlZ2dlcm1lbnRlICovCmZ1bmN0aW9uIGluaXRDYXJvc2VsbG9ET00oY29udGFpbmVyU2VsZWN0b3IsIHBlclZpZXdDb25maWcsIGxvb3BWYWx1ZSA9IHRydWUpIHsKICBjb25zdCBjb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChjb250YWluZXJTZWxlY3Rvcik7CgogIGNvbnRhaW5lcnMuZm9yRWFjaChjb250YWluZXIgPT4gewogICAgY29uc3Qgc3dpcGVyRWwgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignLnN3aXBlcicpOyAvLyBsJ2VsZW1lbnRvIGNvbiBjbGFzcyAic3dpcGVyIgogICAgY29uc3QgcHJldkJ0biA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcuc3dpcGVyLWJ1dHRvbi1wcmV2Jyk7CiAgICBjb25zdCBuZXh0QnRuID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5zd2lwZXItYnV0dG9uLW5leHQnKTsKICAgIGNvbnN0IHBhZ2luYXRpb25FbCA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcuc3dpcGVyLXBhZ2luYXRpb24nKTsKCiAgICBpZiAoIXN3aXBlckVsKSByZXR1cm47CgogICAgLy8gSW5pemlhbGl6emEgU3dpcGVyIHBhc3NhbmRvZ2xpIGdsaSBlbGVtZW50aSAobm9uIHNvbG8gaSBzZWxldHRvcmkpCiAgICBuZXcgU3dpcGVyKHN3aXBlckVsLCB7CiAgICAgIGxvb3A6IGxvb3BWYWx1ZSwKICAgICAgZ3JhYkN1cnNvcjogdHJ1ZSwKICAgICAgc2xpZGVzUGVyR3JvdXA6IDEsICAgLy8gbXVvdmUgZGkgdW4gc29sbyBzbGlkZSBwZXIgY2xpY2sKICAgICAgc3BlZWQ6IDYwMCwKICAgICAgcGFnaW5hdGlvbjogewogICAgICAgIGVsOiBwYWdpbmF0aW9uRWwsCiAgICAgICAgY2xpY2thYmxlOiB0cnVlLAogICAgICB9LAogICAgICBuYXZpZ2F0aW9uOiB7CiAgICAgICAgLy8gc2UgcHJldkJ0bi9uZXh0QnRuIHNvbm8gbnVsbCwgU3dpcGVyIGlnbm9yYSBsYSBuYXZpZ2F0aW9uIHNlbnphIGNyYXNoYXJlCiAgICAgICAgcHJldkVsOiBwcmV2QnRuIHx8IHVuZGVmaW5lZCwKICAgICAgICBuZXh0RWw6IG5leHRCdG4gfHwgdW5kZWZpbmVkLAogICAgICB9LAogICAgICBicmVha3BvaW50czogcGVyVmlld0NvbmZpZwogICAgfSk7CiAgfSk7Cn0KCmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbiAoKSB7CiAgLy8gTm90YTogaWwgc2VsZXR0b3JlIHF1aSBwdW50YSBhbCBjb250ZW5pdG9yZSBjaGUgcmFjY2hpdWRlIC5zd2lwZXIgKyBib3R0b25pICsgcGFnaW5hdGlvbgogIGluaXRDYXJvc2VsbG9ET00oJy5jYXJvc2VsbG8tY29udGFpbmVyJywgewogICAgMzIwOiB7IHNsaWRlc1BlclZpZXc6IDEuMywgc3BhY2VCZXR3ZWVuOiAxNSB9LAogICAgNzY4OiB7IHNsaWRlc1BlclZpZXc6IDMuMiwgc3BhY2VCZXR3ZWVuOiAyMCB9LAogICAgMTAyNDogeyBzbGlkZXNQZXJWaWV3OiA1LjMsIHNwYWNlQmV0d2VlbjogMzAgfSwKICB9KTsKfSk7Cjwvc2NyaXB0PncJY29yZS9odG1sA66mz5oNSQAAkgikASSjAfg6tBzpAl2wzQEAAScBAAEBAQEBHgEAAQEBAQGbAQEAAQEBAQFfAQABAQEBAQ8BAAEBAQIBLQEAAQEBAAIAAQEBAQEiAQABAQEAAgABAQEAARYBAAEBAQACAAEBAQACAAEBAQACAAEBAQgCAAEBAQACAAEBAQIByAEBAAEBAQACAAEBAQMCAAEBAQACAAEBAQABFaPv6YkMAgAAxwkBz8i3hwseAAABAAEAAQEBAAECAwIEAggCBALPAQIEAgwAAQAEAQMCBAABABsBAwIoAgQCNAIVAmUCoQECGgAJAhoAAYsD\",\"updateId\":684648327}","content-type":"","footnotes":""},"class_list":["post-38538","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>VAIA | face what matters<\/title>\n<meta name=\"description\" content=\"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vaia.eu\/en\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"VAIA | face what matters\" \/>\n<meta property=\"og:description\" content=\"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vaia.eu\/en\/\" \/>\n<meta property=\"og:site_name\" content=\"VAIA\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/therealvaia\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-15T07:22:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/1920x1080_header-home.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/\",\"url\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/\",\"name\":\"VAIA | face what matters\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.vaia.eu\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/HP_DesktopSettembre.jpg\",\"datePublished\":\"2025-11-03T10:55:46+00:00\",\"dateModified\":\"2026-06-15T07:22:11+00:00\",\"description\":\"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vaia.eu\\\/en\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.vaia.eu\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/HP_DesktopSettembre.jpg\",\"contentUrl\":\"https:\\\/\\\/www.vaia.eu\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/HP_DesktopSettembre.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vaia.eu\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Home\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#website\",\"url\":\"https:\\\/\\\/www.vaia.eu\\\/\",\"name\":\"VAIA - Face what matters\",\"description\":\"Face What Matters\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vaia.eu\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#organization\",\"name\":\"VAIA\",\"url\":\"https:\\\/\\\/www.vaia.eu\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vaia.eu\\\/wp-content\\\/uploads\\\/2023\\\/12\\\/logo-vaia.svg\",\"contentUrl\":\"https:\\\/\\\/www.vaia.eu\\\/wp-content\\\/uploads\\\/2023\\\/12\\\/logo-vaia.svg\",\"width\":1000,\"height\":1000,\"caption\":\"VAIA\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vaia.eu\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/therealvaia\\\/\",\"https:\\\/\\\/www.instagram.com\\\/therealvaia\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/vaiasrl\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCPtTJEh97yiEMm-vE_Ux3Aw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"VAIA | face what matters","description":"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vaia.eu\/en\/","og_locale":"en_US","og_type":"article","og_title":"VAIA | face what matters","og_description":"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.","og_url":"https:\/\/www.vaia.eu\/en\/","og_site_name":"VAIA","article_publisher":"https:\/\/www.facebook.com\/therealvaia\/","article_modified_time":"2026-06-15T07:22:11+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/10\/1920x1080_header-home.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vaia.eu\/en\/","url":"https:\/\/www.vaia.eu\/en\/","name":"VAIA | face what matters","isPartOf":{"@id":"https:\/\/www.vaia.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vaia.eu\/en\/#primaryimage"},"image":{"@id":"https:\/\/www.vaia.eu\/en\/#primaryimage"},"thumbnailUrl":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/09\/HP_DesktopSettembre.jpg","datePublished":"2025-11-03T10:55:46+00:00","dateModified":"2026-06-15T07:22:11+00:00","description":"More than 42 million trees were felled by the VAIA storm. Thus, from the wood of those trees, the VAIA Cube mobile amplifier was born.","breadcrumb":{"@id":"https:\/\/www.vaia.eu\/en\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vaia.eu\/en\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.vaia.eu\/en\/#primaryimage","url":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/09\/HP_DesktopSettembre.jpg","contentUrl":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2025\/09\/HP_DesktopSettembre.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/www.vaia.eu\/en\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vaia.eu\/en\/"},{"@type":"ListItem","position":2,"name":"Home"}]},{"@type":"WebSite","@id":"https:\/\/www.vaia.eu\/#website","url":"https:\/\/www.vaia.eu\/","name":"VAIA - Face what matters","description":"Face What Matters","publisher":{"@id":"https:\/\/www.vaia.eu\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vaia.eu\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.vaia.eu\/#organization","name":"VAIA","url":"https:\/\/www.vaia.eu\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.vaia.eu\/#\/schema\/logo\/image\/","url":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/12\/logo-vaia.svg","contentUrl":"https:\/\/www.vaia.eu\/wp-content\/uploads\/2023\/12\/logo-vaia.svg","width":1000,"height":1000,"caption":"VAIA"},"image":{"@id":"https:\/\/www.vaia.eu\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/therealvaia\/","https:\/\/www.instagram.com\/therealvaia\/","https:\/\/www.linkedin.com\/company\/vaiasrl\/","https:\/\/www.youtube.com\/channel\/UCPtTJEh97yiEMm-vE_Ux3Aw"]}]}},"_links":{"self":[{"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/pages\/38538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/users\/336"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/comments?post=38538"}],"version-history":[{"count":20,"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/pages\/38538\/revisions"}],"predecessor-version":[{"id":58396,"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/pages\/38538\/revisions\/58396"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/media\/38716"}],"wp:attachment":[{"href":"https:\/\/www.vaia.eu\/en\/wp-json\/wp\/v2\/media?parent=38538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}