/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/app/css/base.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, button, hr, input, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

*, *:after, *:before {
  position: relative;
  box-sizing: border-box;
}

html {
  position: relative;
  overflow-x: hidden;
  scrollbar-width: thin;
  scroll-behavior: smooth;
}

:root {
  /* color */
  --primary-values: 224, 73%, 15%;
  --primary: hsl(224, 73%, 15%);
  --secondary-values: 208, 68%, 21%;
  --secondary: hsl(208, 68%, 21%);
  --tertiary-values: 45, 69%, 52%;
  --tertiary: hsl(45, 69%, 52%);
  --BrandColor1-values: 224, 73%, 15%;
  --BrandColor1: hsl(224, 73%, 15%);
  --BrandColor2-values: 208, 68%, 21%;
  --BrandColor2: hsl(208, 68%, 21%);
  --BrandColor3-values: 45, 69%, 52%;
  --BrandColor3: hsl(45, 69%, 52%);
  --white-values: 0, 0%, 100%;
  --white: hsl(0, 0%, 100%);
  --black-values: 0, 0%, 0%;
  --black: hsl(0, 0%, 0%);
  --dark-values: 0, 0%, 9%;
  --dark: hsl(0, 0%, 9%);
  --light-values: 0, 0%, 98%;
  --light: hsl(0, 0%, 98%);
  --background-values: 0, 0%, 96%;
  --background: hsl(0, 0%, 96%);
  --text-values: 0, 0%, 32%;
  --text: hsl(0, 0%, 32%);
  --danger-values: 0, 72%, 51%;
  --danger: hsl(0, 72%, 51%);
  --warning-values: 21, 90%, 48%;
  --warning: hsl(21, 90%, 48%);
  --success-values: 142, 76%, 36%;
  --success: hsl(142, 76%, 36%);
  --info-values: 221, 83%, 53%;
  --info: hsl(221, 83%, 53%);
  --gray-900-values: 0, 0%, 9%;
  --gray-900: hsl(0, 0%, 9%);
  --gray-800-values: 0, 0%, 15%;
  --gray-800: hsl(0, 0%, 15%);
  --gray-700-values: 0, 0%, 25%;
  --gray-700: hsl(0, 0%, 25%);
  --gray-600-values: 0, 0%, 32%;
  --gray-600: hsl(0, 0%, 32%);
  --gray-500-values: 0, 0%, 45%;
  --gray-500: hsl(0, 0%, 45%);
  --gray-400-values: 0, 0%, 64%;
  --gray-400: hsl(0, 0%, 64%);
  --gray-300-values: 0, 0%, 83%;
  --gray-300: hsl(0, 0%, 83%);
  --gray-200-values: 0, 0%, 90%;
  --gray-200: hsl(0, 0%, 90%);
  --gray-100-values: 0, 0%, 96%;
  --gray-100: hsl(0, 0%, 96%);
  --gray-50-values: 0, 0%, 98%;
  --gray-50: hsl(0, 0%, 98%);
  --red-900-values: 0, 63%, 31%;
  --red-900: hsl(0, 63%, 31%);
  --red-800-values: 0, 70%, 35%;
  --red-800: hsl(0, 70%, 35%);
  --red-700-values: 0, 74%, 42%;
  --red-700: hsl(0, 74%, 42%);
  --red-600-values: 0, 72%, 51%;
  --red-600: hsl(0, 72%, 51%);
  --red-500-values: 0, 84%, 60%;
  --red-500: hsl(0, 84%, 60%);
  --red-400-values: 0, 91%, 71%;
  --red-400: hsl(0, 91%, 71%);
  --red-300-values: 0, 94%, 82%;
  --red-300: hsl(0, 94%, 82%);
  --red-200-values: 0, 96%, 89%;
  --red-200: hsl(0, 96%, 89%);
  --red-100-values: 0, 93%, 94%;
  --red-100: hsl(0, 93%, 94%);
  --red-50-values: 0, 86%, 97%;
  --red-50: hsl(0, 86%, 97%);
  --green-900-values: 144, 61%, 20%;
  --green-900: hsl(144, 61%, 20%);
  --green-800-values: 143, 64%, 24%;
  --green-800: hsl(143, 64%, 24%);
  --green-700-values: 142, 72%, 29%;
  --green-700: hsl(142, 72%, 29%);
  --green-600-values: 142, 76%, 36%;
  --green-600: hsl(142, 76%, 36%);
  --green-500-values: 142, 71%, 45%;
  --green-500: hsl(142, 71%, 45%);
  --green-400-values: 142, 69%, 58%;
  --green-400: hsl(142, 69%, 58%);
  --green-300-values: 142, 77%, 73%;
  --green-300: hsl(142, 77%, 73%);
  --green-200-values: 141, 79%, 85%;
  --green-200: hsl(141, 79%, 85%);
  --green-100-values: 141, 84%, 93%;
  --green-100: hsl(141, 84%, 93%);
  --green-50-values: 138, 76%, 97%;
  --green-50: hsl(138, 76%, 97%);
  --blue-900-values: 224, 64%, 33%;
  --blue-900: hsl(224, 64%, 33%);
  --blue-800-values: 226, 71%, 40%;
  --blue-800: hsl(226, 71%, 40%);
  --blue-700-values: 224, 76%, 48%;
  --blue-700: hsl(224, 76%, 48%);
  --blue-600-values: 221, 83%, 53%;
  --blue-600: hsl(221, 83%, 53%);
  --blue-500-values: 217, 91%, 60%;
  --blue-500: hsl(217, 91%, 60%);
  --blue-400-values: 213, 94%, 68%;
  --blue-400: hsl(213, 94%, 68%);
  --blue-300-values: 212, 96%, 78%;
  --blue-300: hsl(212, 96%, 78%);
  --blue-200-values: 213, 97%, 87%;
  --blue-200: hsl(213, 97%, 87%);
  --blue-100-values: 214, 95%, 93%;
  --blue-100: hsl(214, 95%, 93%);
  --blue-50-values: 214, 100%, 97%;
  --blue-50: hsl(214, 100%, 97%);
  --orange-900-values: 15, 75%, 28%;
  --orange-900: hsl(15, 75%, 28%);
  --orange-800-values: 15, 79%, 34%;
  --orange-800: hsl(15, 79%, 34%);
  --orange-700-values: 17, 88%, 40%;
  --orange-700: hsl(17, 88%, 40%);
  --orange-600-values: 21, 90%, 48%;
  --orange-600: hsl(21, 90%, 48%);
  --orange-500-values: 25, 95%, 53%;
  --orange-500: hsl(25, 95%, 53%);
  --orange-400-values: 27, 96%, 61%;
  --orange-400: hsl(27, 96%, 61%);
  --orange-300-values: 31, 97%, 72%;
  --orange-300: hsl(31, 97%, 72%);
  --orange-200-values: 32, 98%, 83%;
  --orange-200: hsl(32, 98%, 83%);
  --orange-100-values: 34, 100%, 92%;
  --orange-100: hsl(34, 100%, 92%);
  --orange-50-values: 33, 100%, 96%;
  --orange-50: hsl(33, 100%, 96%);
  --gradient: linear-gradient(0deg, var(--BrandColor1), var(--BrandColor2));
  /* shape */
  --radius: 8px;
  --radius-inside: 4px;
  --radius-round: 100em;
  /* shadow */
  --shadow: 2px 4px 12px hsl(var(--dark-values), 10%);
  --shadow-hover: 2px 4px 16px hsl(var(--dark-values), 25%);
  /* transition */
  --fast-transition: .4s;
  --slow-transition: .8s;
  --easing: ease-in-out;
  /* fonts */
  --font-base: Outfit, sans-serif;
  --font-title: Outfit, sans-serif;
  --font-weight: 300;
  --font-scale: 1.4;
  --letter-spacing: var(--font-scale)px;
  --font-xs: 12px;
  --font-s: clamp(12px, 4vw, 14px);
  --font-m: clamp(14px, 4vw, 16px);
  --font-l: clamp(18px, 4vw, 24px);
  --font-xl: clamp(24px, 4vw, 28px);
  --font-xxl: clamp(28px, 4vw, 40px);
  --font-huge: clamp(32px, 4vw, 48px);
  /* espacements  */
  --button-height: 36px;
  --header-height: calc(var(--header-main) + var(--header-info));
  --header-main: calc((42px + 40px) + (var(--space-m) + var(--space-s)));
  --header-info: 3vh;
  --header-padding: var(--space-s);
  --container-width: 100vw;
  --space-xs: 4px;
  --space-s: 8px;
  --space-m: 14px;
  --space-l: clamp(1rem,2vw,2rem);
  --space-xl: clamp(2rem,4vw,4rem);
}

/* font-face  */
@font-face {
  font-family: Outfit;
  font-display: fallback;
  font-weight: 200 800;
  src: url(/build/fonts/Outfit-VariableFont_wght.27503cc2.woff2) format("woff2");
  unicode-range: U+20-5F, U+61-7A, U+7C, U+A0, U+A7, U+A9, U+AB, U+B2-B3, U+BB, U+C0, U+C2, U+C6-CB, U+CE-CF, U+D4, U+D9, U+DB-DC, U+E0, U+E2, U+E6-EB, U+EE-EF, U+F4, U+F9, U+FB-FC, U+FF, U+152-153, U+178, U+2B3, U+2E2, U+1D48-1D49, U+2010-2011, U+2013-2014, U+2019, U+201C-201D, U+2020-2021, U+2026, U+202F-2030, U+20AC, U+2212;
}
/* pages */
main {
  padding-bottom: var(--space-xl);
}

/* section */
section + section {
  margin-top: var(--space-xl);
}

.section-background {
  background-color: var(--white);
  padding: var(--space-xl) 0;
}

/* container */
.container {
  margin: auto;
  width: 90%;
}

.container-narrow {
  margin: auto;
  width: 70%;
}

main .container,
main .container-narrow {
  max-width: 1536px;
}

@media screen and (max-width: 1350px) {
  .container-narrow {
    min-width: auto;
    width: 90%;
  }
}
/* layout */
.row,
.column {
  max-width: 100%;
  display: flex;
  justify-content: start;
  gap: var(--space-m);
}
.row.justify-center,
.column.justify-center {
  justify-content: center;
}
.row.justify-start,
.column.justify-start {
  justify-content: start;
}
.row.justify-end,
.column.justify-end {
  justify-content: end;
}
.row.align-center,
.column.align-center {
  align-items: center;
}
.row.align-start,
.column.align-start {
  align-items: flex-start;
}
.row.align-end,
.column.align-end {
  align-items: flex-end;
}
.row.text-center,
.column.text-center {
  text-align: center;
}
.row.text-start,
.column.text-start {
  text-align: start;
}
.row.text-end,
.column.text-end {
  text-align: end;
}

.row {
  flex-flow: row wrap;
}

.column {
  flex-flow: column;
}

.grid-elements {
  --grid-gap: var(--space-m);
  --grid-col: 2;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: var(--grid-gap);
}
.grid-elements > * {
  width: calc((100% - var(--grid-gap) * (var(--grid-col) - 1)) / var(--grid-col));
}
.grid-elements:has(> * + *) {
  --grid-col: 2;
}
.grid-elements.grid-3 {
  --grid-col: 3;
}
.grid-elements.grid-4 {
  --grid-col: 4;
}
@media screen and (max-width: 1280px) {
  .grid-elements.grid-4 {
    --grid-col: 3;
  }
}
@media screen and (max-width: 1024px) {
  .grid-elements.grid-3, .grid-elements.grid-4 {
    --grid-col: 2;
  }
}
@media screen and (max-width: 768px) {
  .grid-elements {
    justify-content: center;
  }
  .grid-elements:has(> * + *), .grid-elements.grid-3, .grid-elements.grid-4 {
    --grid-col: 1;
  }
}

.badge {
  --background-badge: var(--gray-700);
  --color-badge: var(--gray-50);
  --border-badge: transparent;
  background: var(--background-badge);
  color: var(--color-badge);
  border: 1px solid var(--border-badge);
  font-size: 12px;
  font-weight: 400;
  padding: 4px 6px;
  border-radius: var(--radius-round);
  width: fit-content;
  max-width: 100%;
  letter-spacing: 0.2px;
}
.badge.secondary {
  --border-badge: var(--gray-700);
  --color-badge: var(--gray-700);
  background: none;
}
.badge.danger {
  --background-badge: var(--red-700);
  --color-badge: var(--red-50);
}
.badge.danger.secondary {
  --border-badge: var(--red-300);
  --color-badge: var(--red-700);
}
.badge.warning {
  --background-badge: var(--orange-700);
  --color-badge: var(--orange-50);
}
.badge.warning.secondary {
  --border-badge: var(--orange-300);
  --color-badge: var(--orange-700);
}
.badge.success {
  --background-badge: var(--green-700);
  --color-badge: var(--green-50);
}
.badge.success.secondary {
  --border-badge: var(--green-300);
  --color-badge: var(--green-700);
}
.badge.info {
  --background-badge: var(--blue-700);
  --color-badge: var(--blue-50);
}
.badge.info.secondary {
  --border-badge: var(--blue-300);
  --color-badge: var(--blue-700);
}

/* link */
a,
.link {
  --color-link: var(--primary);
  --background-button: transparent;
  color: var(--color-link);
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
  background: var(--background-button);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: calc(var(--radius) / 6);
  width: fit-content;
  max-width: 100%;
}
a:focus, a:hover, a:active, a.active,
.link:focus,
.link:hover,
.link:active,
.link.active {
  --color-link: var(--secondary);
  --background-button: var(--background-button);
}
a:disabled, a.disabled,
.link:disabled,
.link.disabled {
  --background-button: var(--background-button)!important;
  --color-link: var(--gray-600)!important;
  cursor: default;
}
a svg.icon,
.link svg.icon {
  --color-svg: var(--color-link);
}
a.icon-reverse,
.link.icon-reverse {
  flex-direction: row-reverse;
}
a:has(> .icon:only-child),
.link:has(> .icon:only-child) {
  --space-button: var(--space-s);
}
a.button-tab,
.link.button-tab {
  --tab-color: var(--primary);
  height: 40px;
  text-decoration: none;
  font-weight: 500;
  color: var(--tab-color);
  padding: 0 2px;
  font-size: var(--font-m);
}
a.button-tab.red,
.link.button-tab.red {
  --tab-color: var(--red-600);
}
a.button-tab.blue,
.link.button-tab.blue {
  --tab-color: var(--blue-600);
}
a.button-tab.green,
.link.button-tab.green {
  --tab-color: var(--green-600);
}
a.button-tab:before,
.link.button-tab:before {
  content: "";
  position: absolute;
  width: 100%;
  bottom: 0;
  height: 2px;
  opacity: 0;
  background-color: var(--tab-color);
  border-radius: var(--radius-round);
}
a.button-tab:hover:before, a.button-tab:focus:before,
.link.button-tab:hover:before,
.link.button-tab:focus:before {
  opacity: 1;
}

/* button */
.button {
  min-height: var(--button-height);
}

button,
.button,
.button.primary {
  --background-button: var(--primary);
  --color-button: var(--white);
  --space-button: 8px 16px;
  cursor: pointer;
  text-decoration: none;
  padding: var(--space-button);
  background: var(--background-button);
  color: var(--color-button);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: var(--radius-round);
  width: fit-content;
  max-width: 100%;
  min-width: 42px;
  min-height: 42px;
  font-size: var(--font-s);
  /* icon */
  /* secondary / avec border */
  /* tertiary */
  /* size */
}
button:focus, button:hover, button:active, button.active,
.button:focus,
.button:hover,
.button:active,
.button.active,
.button.primary:focus,
.button.primary:hover,
.button.primary:active,
.button.primary.active {
  --background-button: var(--secondary);
}
button:disabled, button.disabled,
.button:disabled,
.button.disabled,
.button.primary:disabled,
.button.primary.disabled {
  --background-button: var(--gray-200)!important;
  --color-button: var(--gray-600)!important;
  border: none !important;
  cursor: default;
}
button svg.icon,
.button svg.icon,
.button.primary svg.icon {
  --color-svg: var(--color-button);
}
button.icon-reverse,
.button.icon-reverse,
.button.primary.icon-reverse {
  display: flex;
  flex-direction: row-reverse;
}
button:has(> .icon:only-child),
.button:has(> .icon:only-child),
.button.primary:has(> .icon:only-child) {
  --space-button: var(--space-s);
}
button.secondary,
.button.secondary,
.button.primary.secondary {
  --background-button: transparent;
  --color-button: var(--secondary);
  border: 1px solid var(--color-button);
}
button.secondary.red,
.button.secondary.red,
.button.primary.secondary.red {
  --color-button: var(--red-600);
}
button.secondary.blue,
.button.secondary.blue,
.button.primary.secondary.blue {
  --color-button: var(--blue-600);
}
button.secondary.green,
.button.secondary.green,
.button.primary.secondary.green {
  --color-button: var(--green-600);
}
button.secondary:focus, button.secondary:hover, button.secondary:active, button.secondary.active,
.button.secondary:focus,
.button.secondary:hover,
.button.secondary:active,
.button.secondary.active,
.button.primary.secondary:focus,
.button.primary.secondary:hover,
.button.primary.secondary:active,
.button.primary.secondary.active {
  --background-button: transparent;
  opacity: 0.6;
}
button.tertiary,
.button.tertiary,
.button.primary.tertiary {
  --color-button: var(--white);
  --background-button: hsl(var(--white-values), 5%);
  border: 1px solid hsl(var(--white-values), 25%);
}
button.tertiary:focus, button.tertiary:hover, button.tertiary:active, button.tertiary.active,
.button.tertiary:focus,
.button.tertiary:hover,
.button.tertiary:active,
.button.tertiary.active,
.button.primary.tertiary:focus,
.button.primary.tertiary:hover,
.button.primary.tertiary:active,
.button.primary.tertiary.active {
  --background-button: var(--secondary);
}
button.huge,
.button.huge,
.button.primary.huge {
  --space-button: var(--space-m);
  font-weight: 500;
  font-size: var(--font-m);
}
button.huge.secondary,
.button.huge.secondary,
.button.primary.huge.secondary {
  border: 2px solid var(--color-button);
}
button.small,
.button.small,
.button.primary.small {
  --space-button: calc(var(--space-s)/1.6) calc(var(--space-s)*1.2);
  font-size: var(--font-s);
  min-height: auto;
}

/* tabs */
a.button-tab,
button.button-tab {
  --tab-color: var(--primary);
  height: 40px;
  text-decoration: none;
  font-weight: 500;
  color: var(--tab-color);
  padding: 0 2px;
  font-size: var(--font-m);
}
a.button-tab.red,
button.button-tab.red {
  --tab-color: var(--red-600);
}
a.button-tab.blue,
button.button-tab.blue {
  --tab-color: var(--blue-600);
}
a.button-tab.green,
button.button-tab.green {
  --tab-color: var(--green-600);
}
a.button-tab:before,
button.button-tab:before {
  content: "";
  position: absolute;
  width: 100%;
  bottom: 2px;
  height: 2px;
  opacity: 0;
  background-color: var(--tab-color);
  border-radius: var(--radius-round);
}
a.button-tab:hover:before, a.button-tab:focus:before, a.button-tab.active:before,
button.button-tab:hover:before,
button.button-tab:focus:before,
button.button-tab.active:before {
  opacity: 1;
}

/* card */
.card {
  --background-card: var(--white);
  --color-card: var(--text);
  max-width: 100%;
  padding: 4%;
  background-color: var(--background-card);
  color: var(--text);
  border-radius: var(--radius);
  transition: var(--slow-transition);
  /* card with link */
}
.card.column {
  gap: var(--space-m);
}
.card picture {
  aspect-ratio: 16/9;
  overflow: hidden;
  isolation: isolate;
  border-radius: var(--radius-inside);
}
.card picture img {
  scale: 1;
  transition: var(--fast-transition);
  object-fit: cover;
}
.card .column,
.card .row {
  gap: var(--space-s);
}
.card.shadow {
  box-shadow: var(--shadow);
}
.card[data-link] {
  cursor: pointer;
}
.card[data-link]:hover picture, .card[data-link]:focus picture {
  overflow: hidden;
}
.card[data-link]:hover picture img, .card[data-link]:focus picture img {
  scale: 1.1;
  transition: var(--fast-transition);
}
.card[data-link].shadow:hover, .card[data-link].shadow:focus {
  box-shadow: var(--shadow-hover);
  transition: var(--slow-transition);
}
.card.info {
  text-shadow: 0 0 8px var(--dark);
  aspect-ratio: 1.6;
}
.card.info h1, .card.info .h1 {
  --color-h1: var(--white);
  letter-spacing: 0.4px;
  text-transform: uppercase;
}
.card.info h2 {
  --color-title: var(--white);
  text-align: start;
}
.card.info picture {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.card.info picture:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -50%;
  height: auto;
  border-radius: var(--radius-round);
  width: 100%;
  aspect-ratio: 1/1;
  background-color: hsl(var(--secondary-values), 0.1);
  backdrop-filter: blur(10px);
  z-index: 1;
  box-shadow: var(--shadow);
}
.card.info .content {
  height: 100%;
  width: 100%;
  justify-content: flex-end;
  color: var(--white);
}
.card.info .content .title a {
  text-decoration: none;
  color: var(--light);
}
.card.product .row:has(.badge) {
  position: absolute;
  top: 0;
  left: 0;
}
.card.product picture {
  aspect-ratio: 1/1;
  background-color: var(--white);
}
.card.product picture img {
  object-fit: contain;
}
.card.product .content {
  gap: var(--space-xs);
}
.card.product .content a.title {
  font-size: var(--font-m);
  text-decoration: none;
}
.card.country svg.icon {
  --size-svg: 32px;
}
.card.country .column {
  align-items: flex-end;
}
.card.country .column h3 a {
  text-decoration: none;
  text-align: end;
  font-size: var(--font-xl);
  color: var(--secondary);
}
.card.news {
  aspect-ratio: 0.9;
  text-shadow: 0 0 4px var(--dark);
  padding: var(--space-l);
}
.card.news picture:before {
  content: "";
  position: absolute;
  top: 15%;
  left: -100%;
  height: auto;
  border-radius: var(--radius-round);
  width: 200%;
  aspect-ratio: 1/1;
  background-color: hsl(var(--secondary-values), 0.1);
  backdrop-filter: blur(10px);
  z-index: 1;
  box-shadow: var(--shadow);
}
.card.news .content {
  max-width: 25em;
}
.card.news .content h3 a {
  text-decoration: none;
  font-size: var(--font-l);
  color: var(--white);
}
.card.review {
  cursor: auto;
}
.card.review svg.icon {
  --size-svg: 32px;
  --color-svg: var(--secondary);
}
.card.review .paragraph {
  padding: 0 var(--space-s);
}
.card.review .right {
  align-items: flex-end;
}
.card.review .right h3 {
  color: var(--secondary);
}

@media screen and (max-width: 1024px) {
  .card.news {
    aspect-ratio: auto;
    padding: var(--space-xl);
  }
  .card.news picture:before {
    top: 0;
    left: 0;
    border-radius: initial;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    backdrop-filter: blur(40px);
  }
}
img, svg {
  vertical-align: bottom;
  height: auto;
}

svg.icon {
  --color-svg: var(--dark);
  --size-svg: 20px;
  fill: var(--color-svg);
  width: var(--size-svg);
  height: var(--size-svg);
}
svg.fill-white, svg.fill-white > * {
  fill: var(--white);
}

picture {
  display: block;
}

picture img {
  width: 100%;
  height: 100%;
}

/* title */
h1, .h1 {
  --color-h1: var(--gray-500);
  font-size: var(--font-xs);
  font-weight: 400;
  text-wrap: balance;
  color: var(--color-h1);
}

h2, .h2 {
  --color-title: var(--secondary);
  color: var(--color-title);
  font-size: var(--font-xxl);
  letter-spacing: 1px;
  font-weight: 700;
}

h3, .h3 {
  font-size: var(--font-l);
}

h4, .h4 {
  font-size: var(--font-m);
}

h3, h4, h5, .title {
  font-weight: 600;
  line-height: 1.2;
  text-wrap: balance;
}
h3.huge, h4.huge, h5.huge, .title.huge {
  font-size: clamp(var(--font-xl), 4vw, var(--font-xxl));
}
h3.small, h4.small, h5.small, .title.small {
  font-size: 10px;
  letter-spacing: 1px;
}

small {
  font-size: 10px;
  letter-spacing: 1px;
}

/* text */
strong, b {
  font-weight: 500;
}

em, i {
  font-style: italic;
}

ol, ul {
  list-style: none;
}

.paragraph ol, .paragraph ul {
  margin-left: 1rem;
  list-style: initial;
}
.paragraph blockquote {
  border-left: 4px solid;
  font-style: italic;
  padding-left: 1em;
  opacity: 0.9;
}

/* banner */
.banner {
  overflow: hidden;
  border-radius: var(--radius);
  background-color: var(--white);
  margin: var(--space-m);
}
.banner .column {
  padding: 4vh 0;
  display: flex;
  flex-direction: column-reverse;
}
.banner .banner-background {
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: var(--gray-50);
  border: 2px solid var(--gray-200);
  border-radius: var(--radius);
}

/* Hn */
.title-banner {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--space-s);
}

/* background */
.background-img {
  position: absolute;
  height: 100%;
  width: 100%;
  background: linear-gradient(225deg, var(--BrandColor1), var(--BrandColor2), var(--BrandColor3));
}
.background-img picture {
  height: 100%;
  width: 100%;
}
.background-img picture img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

/* split banner (mobile first) */
.split-banner-grid {
  display: grid;
  grid-template-rows: 1fr auto auto;
  gap: var(--space-m);
}
.split-banner-grid > * {
  aspect-ratio: 1.2;
}

@media screen and (min-width: 640px) {
  .split-banner-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
  .split-banner-grid > * {
    aspect-ratio: 1.6;
  }
  .split-banner-grid > *:nth-of-type(1) {
    grid-row: span 2;
    grid-column: span 2;
  }
  .split-banner-grid > *:nth-child(2),
  .split-banner-grid > *:nth-child(3) {
    aspect-ratio: auto;
  }
}
@media screen and (min-width: 1024px) {
  .split-banner-grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
}
.breadcrumb {
  font-size: var(--font-xs);
  padding-top: var(--min-gutter);
  gap: 0;
}
.breadcrumb > div {
  display: flex;
}
.breadcrumb > div + div:before {
  --color-link: var(--gray-600);
  content: "/";
  margin: 0 4px;
  color: var(--color-link);
}
.breadcrumb > div a {
  font-weight: 300;
  text-decoration: none;
  --color-link: var(--gray-600);
}
.breadcrumb > div a:hover, .breadcrumb > div a:focus {
  --color-link: var(--gray-400);
}
.breadcrumb > div [aria-current=page] {
  --color-link: var(--gray-400);
  cursor: default;
  pointer-events: none;
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--space-s);
}
.pagination .current {
  --background-button: transparent;
  --color-button: var(--gray-400);
  --space-button: 8px;
  border: none;
  cursor: default;
  padding: var(--space-button);
  background: var(--background-button);
  color: var(--color-button);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: var(--radius-round);
  width: fit-content;
  min-width: 42px;
  min-height: 42px;
  font-size: var(--font-s);
}
.pagination .first a,
.pagination .previous a,
.pagination .page a,
.pagination .next a,
.pagination .last a {
  --background-button: var(--gray-200);
  --color-link: var(--primary);
  --space-button: 8px;
  text-decoration: none;
  padding: var(--space-button);
  min-width: 42px;
  min-height: 42px;
  border-radius: var(--radius-round);
}
.pagination .first a:focus, .pagination .first a:hover, .pagination .first a:active, .pagination .first a.active,
.pagination .previous a:focus,
.pagination .previous a:hover,
.pagination .previous a:active,
.pagination .previous a.active,
.pagination .page a:focus,
.pagination .page a:hover,
.pagination .page a:active,
.pagination .page a.active,
.pagination .next a:focus,
.pagination .next a:hover,
.pagination .next a:active,
.pagination .next a.active,
.pagination .last a:focus,
.pagination .last a:hover,
.pagination .last a:active,
.pagination .last a.active {
  --background-button: var(--secondary);
  --color-link: var(--white);
}

/* page alert */
main#alert {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

/* alert */
.alert {
  --background-alert: var(--gray-200);
  --color-alert: var(--gray-800);
  --border-alert: var(--gray-300);
  background: var(--background-alert);
  color: var(--color-alert);
  border: 1px solid var(--border-alert);
  border-radius: var(--radius-inside);
  font-size: var(--font-s);
  line-height: 1.4;
  display: flex;
  gap: var(--space-s);
  text-decoration: none;
  font-weight: 500;
  padding: var(--space-m);
  width: fit-content;
  max-width: 100%;
}
.alert svg.icon {
  --color-svg: var(--color-alert);
  min-width: var(--size-svg);
  min-height: var(--size-svg);
}
.alert.danger {
  --background-alert: var(--red-100);
  --color-alert: var(--red-800);
  --border-alert: var(--red-300);
}
.alert.warning {
  --background-alert: var(--orange-100);
  --color-alert: var(--orange-800);
  --border-alert: var(--orange-300);
}
.alert.success {
  --background-alert: var(--green-100);
  --color-alert: var(--green-800);
  --border-alert: var(--green-300);
}
.alert.info {
  --background-alert: var(--blue-100);
  --color-alert: var(--blue-800);
  --border-alert: var(--blue-300);
}
.alert.secondary {
  background: transparent;
  border: none;
  padding: 0 var(--space-s);
}
.alert.secondary.danger {
  --color-alert: var(--red-600);
}
.alert.secondary.warning {
  --color-alert: var(--orange-600);
}
.alert.secondary.success {
  --color-alert: var(--green-600);
}
.alert.secondary.info {
  --color-alert: var(--blue-600);
}

/* search default */
header .search {
  z-index: -1;
  position: absolute;
  height: calc(110vh - var(--header-height));
  width: 100%;
  padding-bottom: var(--header-height);
  background-color: var(--color-body);
  overflow-y: scroll;
  transform: translateY(-102%);
  transition: var(--fast-transition);
}
header .search .container {
  flex-direction: column;
  align-items: flex-start;
}
header .search .container > * {
  margin-top: var(--gutter);
}
header .search form {
  width: 100%;
}

/* btns */
.btn_search .btn_open,
.search-open .btn_search .btn_close {
  opacity: 1;
  transition: var(--fast-transition);
  transform: translateX(0);
}

.btn_search .btn_close {
  opacity: 0;
  transition: var(--fast-transition);
  transform: translateX(-100%);
}

.search-open .btn_search .btn_open {
  opacity: 0;
  transform: translateX(100%);
}

/* search open */
.search-open header .search {
  transform: translateY(0);
  transition: var(--fast-transition);
}

/* customs */
form.column {
  gap: var(--space-m);
}

fieldset {
  --space-fieldset: var(--space-s) var(--space-m);
  --color-fieldset: var(--tertiary-values);
  --border-fieldset: var(--gray-300);
  --background-fieldset: var(--white);
  --height-fieldset: 42px;
  font-size: var(--font-s);
  max-width: 100%;
  border: 1px solid var(--border-fieldset);
  background-color: var(--background-fieldset);
  min-height: var(--height-fieldset);
  /* label : input, select, textarea */
  /* textarea */
  /* checkbox, radio */
}
fieldset.column {
  gap: var(--space-fieldset);
}
fieldset .row {
  gap: var(--space-xs);
}
fieldset select,
fieldset [type=range],
fieldset [type=file],
fieldset [type=datetime-local],
fieldset [type=checkbox],
fieldset [type=radio],
fieldset [type=checkbox] ~ label,
fieldset [type=radio] ~ label {
  cursor: pointer;
}
fieldset textarea {
  resize: none;
  min-height: 200px;
}
fieldset select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
fieldset:has(label) {
  margin-top: 2rem;
}
fieldset:has(input), fieldset:has(select), fieldset:has(textarea) {
  border-radius: var(--radius-round);
}
fieldset:has(input) label, fieldset:has(select) label, fieldset:has(textarea) label {
  position: absolute;
  z-index: 1;
  padding: var(--space-s) var(--space-m);
  color: var(--text);
  width: fit-content;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  top: -2.2rem;
}
fieldset:has(input) input, fieldset:has(input) select, fieldset:has(input) textarea, fieldset:has(select) input, fieldset:has(select) select, fieldset:has(select) textarea, fieldset:has(textarea) input, fieldset:has(textarea) select, fieldset:has(textarea) textarea {
  min-height: var(--height-fieldset);
  max-width: 100%;
  width: 100%;
  padding: var(--space-fieldset);
  border: 1px solid transparent;
  background-color: transparent;
  border-radius: var(--radius-round);
  -webkit-transition: var(--fast-transition);
  transition: var(--fast-transition);
  outline: none;
  /* button input */
}
fieldset:has(input) input[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(input) input[type=file]::file-selector-button, fieldset:has(input) select[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(input) select[type=file]::file-selector-button, fieldset:has(input) textarea[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(input) textarea[type=file]::file-selector-button, fieldset:has(select) input[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(select) input[type=file]::file-selector-button, fieldset:has(select) select[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(select) select[type=file]::file-selector-button, fieldset:has(select) textarea[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(select) textarea[type=file]::file-selector-button, fieldset:has(textarea) input[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(textarea) input[type=file]::file-selector-button, fieldset:has(textarea) select[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(textarea) select[type=file]::file-selector-button, fieldset:has(textarea) textarea[type=datetime-local]::-webkit-calendar-picker-indicator, fieldset:has(textarea) textarea[type=file]::file-selector-button {
  display: none;
}
fieldset:has(input) input ~ button, fieldset:has(input) select ~ button, fieldset:has(input) textarea ~ button, fieldset:has(select) input ~ button, fieldset:has(select) select ~ button, fieldset:has(select) textarea ~ button, fieldset:has(textarea) input ~ button, fieldset:has(textarea) select ~ button, fieldset:has(textarea) textarea ~ button {
  height: var(--height-fieldset);
  width: var(--height-fieldset);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  padding: var(--space-fieldset);
  cursor: pointer;
}
fieldset:has(input) input ~ button svg.icon, fieldset:has(input) select ~ button svg.icon, fieldset:has(input) textarea ~ button svg.icon, fieldset:has(select) input ~ button svg.icon, fieldset:has(select) select ~ button svg.icon, fieldset:has(select) textarea ~ button svg.icon, fieldset:has(textarea) input ~ button svg.icon, fieldset:has(textarea) select ~ button svg.icon, fieldset:has(textarea) textarea ~ button svg.icon {
  --size-svg: 16px;
}
fieldset:has(input) input ~ button > *:last-child, fieldset:has(input) select ~ button > *:last-child, fieldset:has(input) textarea ~ button > *:last-child, fieldset:has(select) input ~ button > *:last-child, fieldset:has(select) select ~ button > *:last-child, fieldset:has(select) textarea ~ button > *:last-child, fieldset:has(textarea) input ~ button > *:last-child, fieldset:has(textarea) select ~ button > *:last-child, fieldset:has(textarea) textarea ~ button > *:last-child {
  position: absolute;
}
fieldset:has(input) input:has(~ button), fieldset:has(input) select:has(~ button), fieldset:has(input) textarea:has(~ button), fieldset:has(select) input:has(~ button), fieldset:has(select) select:has(~ button), fieldset:has(select) textarea:has(~ button), fieldset:has(textarea) input:has(~ button), fieldset:has(textarea) select:has(~ button), fieldset:has(textarea) textarea:has(~ button) {
  width: calc(100% - var(--height-fieldset));
}
fieldset:has(input) input[type=password] + #password_reveal > *:first-child, fieldset:has(input) select[type=password] + #password_reveal > *:first-child, fieldset:has(input) textarea[type=password] + #password_reveal > *:first-child, fieldset:has(select) input[type=password] + #password_reveal > *:first-child, fieldset:has(select) select[type=password] + #password_reveal > *:first-child, fieldset:has(select) textarea[type=password] + #password_reveal > *:first-child, fieldset:has(textarea) input[type=password] + #password_reveal > *:first-child, fieldset:has(textarea) select[type=password] + #password_reveal > *:first-child, fieldset:has(textarea) textarea[type=password] + #password_reveal > *:first-child {
  display: block;
}
fieldset:has(input) input[type=password] + #password_reveal > *:last-child, fieldset:has(input) select[type=password] + #password_reveal > *:last-child, fieldset:has(input) textarea[type=password] + #password_reveal > *:last-child, fieldset:has(select) input[type=password] + #password_reveal > *:last-child, fieldset:has(select) select[type=password] + #password_reveal > *:last-child, fieldset:has(select) textarea[type=password] + #password_reveal > *:last-child, fieldset:has(textarea) input[type=password] + #password_reveal > *:last-child, fieldset:has(textarea) select[type=password] + #password_reveal > *:last-child, fieldset:has(textarea) textarea[type=password] + #password_reveal > *:last-child {
  display: none;
}
fieldset:has(input) input[type=text] + #password_reveal > *:first-child, fieldset:has(input) select[type=text] + #password_reveal > *:first-child, fieldset:has(input) textarea[type=text] + #password_reveal > *:first-child, fieldset:has(select) input[type=text] + #password_reveal > *:first-child, fieldset:has(select) select[type=text] + #password_reveal > *:first-child, fieldset:has(select) textarea[type=text] + #password_reveal > *:first-child, fieldset:has(textarea) input[type=text] + #password_reveal > *:first-child, fieldset:has(textarea) select[type=text] + #password_reveal > *:first-child, fieldset:has(textarea) textarea[type=text] + #password_reveal > *:first-child {
  display: none;
}
fieldset:has(input) input[type=text] + #password_reveal > *:last-child, fieldset:has(input) select[type=text] + #password_reveal > *:last-child, fieldset:has(input) textarea[type=text] + #password_reveal > *:last-child, fieldset:has(select) input[type=text] + #password_reveal > *:last-child, fieldset:has(select) select[type=text] + #password_reveal > *:last-child, fieldset:has(select) textarea[type=text] + #password_reveal > *:last-child, fieldset:has(textarea) input[type=text] + #password_reveal > *:last-child, fieldset:has(textarea) select[type=text] + #password_reveal > *:last-child, fieldset:has(textarea) textarea[type=text] + #password_reveal > *:last-child {
  display: block;
}
fieldset:has(input:focus), fieldset:has(select:focus), fieldset:has(textarea:focus) {
  -webkit-transition: var(--fast-transition);
  transition: var(--fast-transition);
}
fieldset:has(input:focus:valid), fieldset:has(select:focus:valid), fieldset:has(textarea:focus:valid) {
  --border-fieldset: var(--blue-300);
}
fieldset:has(input:focus:invalid), fieldset:has(select:focus:invalid), fieldset:has(textarea:focus:invalid) {
  --border-fieldset: var(--red-300);
}
fieldset label:has(+ input:required):after,
fieldset label:has(+ select:required):after,
fieldset label:has(+ textarea:required):after {
  content: "*";
  color: var(--danger);
  padding-left: 4px;
}
fieldset:has(textarea) {
  --height-fieldset: 200px;
  --space-fieldset: var(--space-m);
  --radius-fieldset: 24px;
  border-radius: var(--radius-fieldset);
}
fieldset:has(textarea) textarea {
  border-radius: var(--radius-fieldset);
}
fieldset:has([type=checkbox]), fieldset:has([type=radio]) {
  margin-top: 0;
  --space-fieldset: var(--space-s);
  gap: var(--space-m);
  border: 1px solid var(--border-fieldset);
  padding: var(--space-s) var(--space-l);
  align-items: center;
}
fieldset:has([type=checkbox]) .row, fieldset:has([type=radio]) .row {
  align-items: center;
}
fieldset:has([type=checkbox]) label, fieldset:has([type=radio]) label {
  position: relative;
  top: auto;
  opacity: 1;
  pointer-events: auto;
}
fieldset [type=checkbox],
fieldset [type=radio] {
  --height-fieldset: 16px;
  padding: 0;
  min-height: var(--height-fieldset);
  width: var(--height-fieldset);
  height: var(--height-fieldset);
  border: 1px solid var(--border-fieldset);
  left: 0;
  top: 0;
}

html:has(.nav-open) {
  overflow: clip;
}

/* button panels */
.panel-button .panel-open {
  opacity: 1;
  transition: var(--fast-transition) ease-out;
  transform: translateX(0);
}

.panel-button .panel-close {
  opacity: 0;
  transition: var(--fast-transition) ease-out;
  transform: translateX(-100%);
}

/* panels */
.cart-main,
.nav-main {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  position: fixed;
  z-index: 4;
  left: var(--space-m);
  top: calc(var(--header-main) + var(--space-m));
  width: calc(100% - var(--space-m) * 2);
  overflow: hidden;
  box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.1);
  border-radius: 8px;
  scrollbar-color: var(--secondary);
  transition: var(--fast-transition) ease-out;
  background-color: var(--white);
}
.cart-main .cart-wrapper,
.cart-main .nav-wrapper,
.nav-main .cart-wrapper,
.nav-main .nav-wrapper {
  display: flex;
  flex-direction: column;
  padding: var(--space-l);
  transform: translateY(-100%);
  transition: var(--fast-transition) ease-out;
  overflow-y: scroll;
  max-height: calc(100vh - (var(--header-main) + var(--space-m) * 2));
  scrollbar-color: var(--secondary);
}
.cart-main .cart-wrapper:hover,
.cart-main .nav-wrapper:hover,
.nav-main .cart-wrapper:hover,
.nav-main .nav-wrapper:hover {
  scrollbar-width: thin;
}
.cart-main .cart-wrapper::-webkit-scrollbar,
.cart-main .nav-wrapper::-webkit-scrollbar,
.nav-main .cart-wrapper::-webkit-scrollbar,
.nav-main .nav-wrapper::-webkit-scrollbar {
  background-color: var(--white);
}

/* nav */
.nav-main {
  max-width: 30em;
}
.nav-main .nav-item .button {
  --color-button: var(--primary);
  justify-content: flex-start;
  width: 100%;
  font-size: var(--font-l);
}
.nav-main .nav-item .button:focus, .nav-main .nav-item .button:hover, .nav-main .nav-item .button:active, .nav-main .nav-item .button.active {
  --background-button: transparent;
  opacity: 0.6;
}
.nav-main .nav-item:has(.green),
.nav-main .nav-item:has(.red),
.nav-main .nav-item:has(.blue) {
  display: none;
  visibility: hidden;
}

.nav-overlay {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  background: hsl(var(--tertiary-values), 0.1);
  z-index: 3;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: var(--fast-transition) ease-out;
}

/* nav-open */
.nav-open {
  /* button */
}
.nav-open .nav-main {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: var(--fast-transition) ease-out;
}
.nav-open .nav-wrapper {
  transform: translateY(0);
  transition: var(--fast-transition) ease-out;
}
.nav-open .nav-overlay {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: var(--fast-transition) ease-out;
}
.nav-open .panel-button.nav-button .panel-close {
  opacity: 1;
  transition: var(--fast-transition) ease-out;
  transform: translateX(0);
}
.nav-open .panel-button.nav-button .panel-open {
  opacity: 0;
  transition: var(--fast-transition) ease-out;
  transform: translateX(100%);
}

/* cart */
.cart-main {
  max-width: 40em;
  right: var(--space-m);
  left: auto;
}
.cart-main .cart-product {
  display: flex;
  align-items: flex-start;
  gap: var(--space-m);
  padding-bottom: var(--space-s);
  border-bottom: 1px solid var(--gray-300);
}
.cart-main .cart-product picture {
  aspect-ratio: 1/1;
}
.cart-main .cart-product picture img {
  object-fit: contain;
}

/* cart-open */
.cart-open {
  /* button */
}
.cart-open .cart-main {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: var(--fast-transition) ease-out;
}
.cart-open .cart-wrapper {
  transform: translateY(0);
  transition: var(--fast-transition) ease-out;
}
.cart-open .panel-button.cart-button .panel-close {
  opacity: 1;
  transition: var(--fast-transition) ease-out;
  transform: translateX(0);
}
.cart-open .panel-button.cart-button .panel-open {
  opacity: 0;
  transition: var(--fast-transition) ease-out;
  transform: translateX(100%);
}

@media screen and (max-width: 1024px) {
  .nav-main .nav-item:has(.green),
  .nav-main .nav-item:has(.red),
  .nav-main .nav-item:has(.blue) {
    display: flex;
    visibility: visible;
  }
}
header {
  --logo-width: var(--header-height);
  --nav-button: 86px;
}
header .header-fixed {
  position: fixed;
  z-index: 99;
  width: 100%;
  font-size: var(--font-xs);
  background-color: var(--primary);
  color: var(--white);
  height: var(--header-main);
  max-width: 100%;
  overflow-y: hidden;
  box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.1);
}
header .header-fixed .header-logo {
  position: fixed;
  top: 0;
  z-index: 2;
}
header .header-fixed .header-logo picture {
  aspect-ratio: 1/1;
  height: var(--header-main);
}
header .header-fixed .header-main {
  height: var(--header-main);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-l);
  padding-left: calc(var(--logo-width) + var(--space-l));
  padding-top: var(--space-m);
}
header .header-fixed .header-main .header-nav {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
}
header .header-fixed .header-main .header-nav .header-search {
  display: flex;
  align-items: flex-start;
  gap: var(--space-m);
}
header .header-fixed .header-main .header-nav .header-search .panel-button {
  width: var(--nav-button);
  font-size: var(--font-xs);
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) {
  width: calc(100% - var(--nav-button) - var(--space-m));
  flex: 1;
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset {
  --background-fieldset: hsl(var(--white-values), 5%);
  --border-fieldset: hsl(var(--white-values), 25%);
  color: var(--white);
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset input {
  color: var(--white);
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset input::-webkit-search-cancel-button {
  filter: invert(1);
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset input::placeholder {
  color: var(--white);
  font-weight: 100;
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset .button-input.link {
  border: none;
}
header .header-fixed .header-main .header-nav .header-search form:has([type=search]) fieldset .button-input.link svg.icon {
  --color-svg: var(--white);
}
header .header-fixed .header-main .header-nav .header-tabs {
  display: flex;
  align-items: center;
  gap: var(--space-m);
}
header .header-fixed .header-main .header-nav .header-tabs .button-tab {
  font-size: var(--font-s);
  --tab-color: var(--light);
  font-weight: 500;
  text-transform: uppercase;
  white-space: nowrap;
}
header .header-fixed .header-main .header-nav .header-tabs .button-tab.red {
  --tab-color: var(--red-600);
}
header .header-fixed .header-main .header-nav .header-tabs .button-tab.blue {
  --tab-color: var(--blue-600);
}
header .header-fixed .header-main .header-nav .header-tabs .button-tab.green {
  --tab-color: var(--green-600);
}
header .header-fixed .header-main .header-button {
  height: 100%;
  width: fit-content;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: var(--space-m);
  text-align: center;
}
header .header-fixed .header-main .header-button > * {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-s);
  font-size: 12px;
  cursor: pointer;
  width: fit-content;
}
header .header-fixed .header-main .header-button > *:focus .button, header .header-fixed .header-main .header-button > *:hover .button {
  --background-button: var(--secondary);
}
header .header-fixed .header-main .header-button > * span {
  white-space: nowrap;
}
header .header-fixed .header-main .header-button > * .header-bubble {
  position: absolute;
  z-index: 2;
  background-color: var(--tertiary);
  color: var(--primary);
  font-weight: 600;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  transform: translateX(20px);
  font-size: 10px;
  width: 18px;
  height: 18px;
  border-radius: var(--radius-round);
  display: flex;
  justify-content: center;
  align-items: center;
}
header .header-fixed .header-main .header-button div[data-link]:has([data-action="toggle#menu"]) {
  display: none;
  visibility: hidden;
}
header .header-info {
  padding-top: var(--header-main);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--tertiary);
  font-weight: 500;
}
header .header-info [data-controller=swiper] {
  height: 100%;
}
header .header-info [data-controller=swiper] > * {
  height: 100%;
  max-width: 50em;
  width: 75%;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  overflow: hidden;
}
header .header-info [data-controller=swiper] .swiper-wrapper {
  align-items: center;
}
header .header-info [data-controller=swiper] .swiper-wrapper .swiper-slide {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-s);
  color: var(--primary);
}
header .header-info [data-controller=swiper] .swiper-wrapper .swiper-slide a {
  color: var(--primary);
  font-size: var(--font-xs);
}
header .header-info [data-controller=swiper] .swiper-wrapper .swiper-slide a:hover, header .header-info [data-controller=swiper] .swiper-wrapper .swiper-slide a:focus {
  color: var(--secondary);
}
header .header-info [data-controller=swiper] .swiper-nav {
  top: 0;
  max-width: 60em;
  left: 0;
  right: 0;
  margin: auto;
  width: 90%;
}
header .header-info [data-controller=swiper] .swiper-nav button {
  --space-button: 0;
  --size-button: 3vh;
  padding: 0;
  background-color: transparent;
  box-shadow: none;
  min-height: 100%;
  min-width: auto;
}
header .header-info [data-controller=swiper] .swiper-nav button svg.icon {
  --color-svg: var(--primary);
}
header .header-info [data-controller=swiper] .swiper-nav button:hover svg.icon, header .header-info [data-controller=swiper] .swiper-nav button:focus svg.icon {
  --color-svg: var(--secondary);
}
header .header-info [data-controller=swiper] .swiper-nav button:disabled svg.icon {
  opacity: 0.4;
}

@media screen and (min-width: 1025px) {
  header .tab-flyout .menu-flyout {
    background-color: var(--light);
    position: fixed;
    overflow-y: auto;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    border-radius: var(--radius);
    color: var(--primary);
    transition: var(--fast-transition);
    max-width: 25em;
    box-shadow: var(--shadow);
  }
  header .tab-flyout .menu-flyout > * {
    width: 100%;
    text-align: start;
    justify-content: flex-start;
    padding: var(--space-m);
  }
  header .tab-flyout .menu-flyout .category-title:before {
    content: "";
    position: absolute;
    bottom: 0;
    background-color: var(--gray-300);
    height: 1px;
    width: calc(100% - var(--space-m) * 2);
  }
  header .tab-flyout .menu-flyout .link {
    height: 42px;
    color: var(--primary);
    text-decoration: none;
  }
  header .tab-flyout .menu-flyout .link:hover {
    background: var(--gray-200);
  }
  header .tab-flyout:hover .menu-flyout {
    transition: var(--fast-transition);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    max-height: calc(100vh - (var(--header-main) + var(--space-m) * 2));
  }
}
@media screen and (max-width: 1024px) {
  header {
    --logo-width: var(--header-main);
  }
  header .header-logo {
    left: 0;
  }
  header .header-fixed .header-main {
    flex-direction: column;
    gap: var(--space-xs);
    padding-bottom: var(--space-s);
    padding-top: var(--space-s);
    padding-left: calc(var(--logo-width) - 5% + var(--space-s));
  }
  header .header-fixed .header-main .header-nav .header-search .panel-button {
    display: none;
    visibility: hidden;
  }
  header .header-fixed .header-main .header-nav .header-search form:has([type=search]) {
    width: 100%;
  }
  header .header-fixed .header-main .header-nav .header-tabs {
    display: none;
    visibility: hidden;
  }
  header .header-fixed .header-main .header-button > * {
    width: fit-content;
  }
  header .header-fixed .header-main .header-button > * > span {
    display: none;
    visibility: hidden;
  }
  header .header-fixed .header-main .header-button > * > button, header .header-fixed .header-main .header-button > * > a {
    --background-button: transparent;
    border: none;
  }
  header .header-fixed .header-main .header-button div[data-link]:has([data-action="toggle#menu"]) {
    display: flex;
    visibility: visible;
  }
}
footer {
  background-color: var(--white);
}
footer .footer-main {
  background-color: var(--primary);
  padding: var(--space-xl) 0;
  color: var(--light);
}
footer .footer-main a,
footer .footer-main .link {
  text-decoration: none;
  --color-link: var(--light);
}
footer .footer-main a:hover, footer .footer-main a:focus,
footer .footer-main .link:hover,
footer .footer-main .link:focus {
  opacity: 0.8;
}
footer .footer-main .container-narrow > * {
  justify-content: space-between;
}
footer .footer-main .infos .row svg.icon {
  --size-svg: 48px;
}
footer .footer-main ul.column {
  gap: var(--space-s);
}
footer .footer-main ul.column .nav-item {
  font-weight: 100;
}
footer .footer-bottom {
  padding: var(--space-s);
  background-color: var(--white);
}
footer .footer-bottom .container-narrow > * {
  justify-content: center;
  text-align: center;
  padding: var(--space-s);
}

@media screen and (max-width: 1024px) {
  .footer-logo {
    display: none;
    visibility: hidden;
  }
}
@media screen and (max-width: 768px) {
  footer .footer-main .container-narrow > * {
    flex-direction: column;
    gap: var(--space-xl);
  }
  footer .footer-main .container-narrow > * .infos {
    order: 4;
  }
}
/* tabs */
.tabs_content {
  height: 0;
  opacity: 0;
  transform: translateY(100%);
  visibility: hidden;
  pointer-events: none;
  transition: var(--fast-transition);
}
.tabs_content.active {
  height: auto;
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
  transition: var(--fast-transition);
}

/* reset */
body {
  margin: 0 !important;
}

.ch-cookie-consent * {
  margin: 0;
}

.ch-cookie-consent *:before {
  display: none;
}

/* cookies */
.ch-cookie-consent {
  --color-light: #fff;
  --color-dark: #000;
  color: var(--color-dark);
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  width: max-content;
  margin-left: 8px;
  z-index: 99999;
  padding: 35px 40px;
  margin-bottom: 8px;
  border-radius: 5px;
  font-family: sans-serif;
}

.ch-cookie-consent h3 {
  border-radius: 2px;
  color: var(--color-dark);
  font-size: clamp(16px, 4vw, 32px);
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: 10px;
  padding: 10px 0;
  width: 100%;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
}

.ch-cookie-consent p {
  color: var(--color-dark);
  font-weight: 400;
}

.ch-cookie-consent__form > * + * {
  margin-top: 10px;
}

/* btns */
.ch-cookie-consent .btn,
.ch-cookie-consent a {
  color: var(--color-dark) !important;
  font-size: 14px;
}

.ch-cookie-consent .btn {
  border-radius: 5px;
  border: none;
  background: rgba(0, 0, 0, 0.1);
  box-shadow: none;
  width: 100%;
  display: flex;
  font-weight: 500;
  justify-content: center;
  overflow: hidden;
  padding: 0.5rem 1rem;
  text-align: center;
}

.ch-cookie-consent a,
.ch-cookie-consent span {
  cursor: pointer;
  color: var(--color-dark);
  text-decoration: underline;
  font-size: 14px;
  font-weight: 400;
  opacity: 0.8;
}

.ch-cookie-consent__toggle-details-hide {
  display: none;
}

.ch-cookie-consent__btn-group {
  display: flex;
  flex-direction: column-reverse;
}

.ch-cookie-consent__btn-group > * + * {
  margin-bottom: 10px;
}

/* input radio */
.ch-cookie-consent__category-group {
  display: none;
  background: rgba(0, 0, 0, 0.05);
  padding: 20px;
  border-radius: 5px;
  margin-top: 10px;
}

.ch-cookie-consent__category-group > * + * {
  margin-top: 10px;
}

.ch-cookie-consent__category-group .ch-cookie-consent__category {
  display: flex;
  flex-direction: column-reverse;
}

.ch-cookie-consent__category-group h4 {
  font-size: 12px;
  font-weight: 400;
}

.ch-cookie-consent__category-group input {
  appearance: button;
  -webkit-appearance: button;
  padding: 0;
  height: 14px;
  width: 14px;
  margin: 10px;
}

@media screen and (max-width: 700px) {
  .ch-cookie-consent {
    width: 100%;
    margin-left: 0;
    margin-bottom: 0;
    border-radius: none;
  }
}
section:has(.swiper) {
  overflow: hidden;
}

/* swiper nav */
.swiper-nav {
  --size-button: 40px;
  display: flex;
  pointer-events: none;
  justify-content: flex-end;
}
.swiper-nav.align {
  position: absolute;
  top: 0;
  height: 100%;
  z-index: 2;
  width: calc(100% + 8vw);
  justify-content: space-between;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 90vw;
  pointer-events: none;
  display: flex;
  align-items: center;
}
.swiper-nav > * {
  pointer-events: auto;
  transition: opacity 0.5s;
  height: 100%;
}
.swiper-nav > *:active {
  transform: scale(0.9);
}
.swiper-nav > * + * {
  margin-left: 10px;
}
.swiper-nav button {
  --background-button: var(--primary);
  width: var(--size-button);
  height: var(--size-button);
  box-shadow: var(--shadow);
}
.swiper-nav button svg.icon {
  --color-svg: var(--white);
}
.swiper-nav .swiper-button-disabled svg.icon {
  --color-svg: var(--primary);
}

/* pagination */
.swiper-pagination {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
  background-color: hsl(var(--secondary-values), 0.1);
  border-radius: var(--radius-round);
}
.swiper-pagination .swiper-pagination-progressbar-fill {
  border-radius: var(--radius-round);
  background: var(--secondary);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

/* all swiper */
[data-controller=swiper] {
  width: 100%;
}
[data-controller=swiper] > .row {
  justify-content: space-between;
}
[data-controller=swiper] .swiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
  height: 100%;
}
[data-controller=swiper] .swiper-wrapper .swiper-slide {
  --slide-size: 1;
  --space-slide: 10px;
  flex: 1 0 auto;
  max-width: calc(100% / var(--slide-size));
  margin-right: var(--space-slide);
}

[data-swiper-type-value=default] .swiper,
[data-swiper-type-value=product] .swiper {
  padding-left: 2rem;
}
[data-swiper-type-value=default] .swiper .swiper-wrapper,
[data-swiper-type-value=product] .swiper .swiper-wrapper {
  margin-left: -2rem;
}
[data-swiper-type-value=default] > *,
[data-swiper-type-value=product] > * {
  margin-bottom: var(--space-m);
}

[data-swiper-type-value=anim] .swiper-wrapper {
  transition-timing-function: linear;
}
[data-swiper-type-value=anim] .swiper-wrapper .swiper-slide {
  --space-slide: 20px;
  --slide-size: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 480px) {
  [data-swiper-type-value=anim] .swiper-wrapper .swiper-slide {
    --slide-size: 3;
  }
}
@media screen and (min-width: 640px) {
  [data-swiper-type-value=anim] .swiper-wrapper .swiper-slide {
    --slide-size: 4;
  }
}
@media screen and (min-width: 768px) {
  [data-swiper-type-value=anim] .swiper-wrapper .swiper-slide {
    --slide-size: 5;
  }
}
@media screen and (min-width: 1024px) {
  [data-swiper-type-value=anim] .swiper-wrapper .swiper-slide {
    --slide-size: 6;
  }
}

/* swiper slide per view */
@media screen and (min-width: 768px) {
  [data-swiper-type-value=default] .swiper-wrapper .swiper-slide {
    --slide-size: 2;
  }
}
@media screen and (min-width: 1024px) {
  [data-swiper-type-value=default] .swiper-wrapper .swiper-slide {
    --slide-size: 3;
  }
}

@media screen and (min-width: 480px) {
  [data-swiper-type-value=product] .swiper-wrapper .swiper-slide {
    --slide-size: 2;
  }
}
@media screen and (min-width: 640px) {
  [data-swiper-type-value=product] .swiper-wrapper .swiper-slide {
    --slide-size: 3;
  }
}
@media screen and (min-width: 768px) {
  [data-swiper-type-value=product] .swiper-wrapper .swiper-slide {
    --slide-size: 4;
  }
}
@media screen and (min-width: 1024px) {
  [data-swiper-type-value=product] .swiper-wrapper .swiper-slide {
    --slide-size: 5;
  }
}

/* swiper thumbs */
[data-swiper-type-value=swiper-thumbs] {
  display: none;
  visibility: hidden;
  pointer-events: none;
  padding: 0;
  min-height: auto;
  margin-top: 0;
}
[data-swiper-type-value=swiper-thumbs] [data-swiper-target=container] {
  overflow: hidden;
  width: 100%;
  height: 100%;
  background-color: var(--white);
}
[data-swiper-type-value=swiper-thumbs] [data-swiper-target=container] .swiper-slide {
  max-height: 50vh;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
}
[data-swiper-type-value=swiper-thumbs] [data-swiper-target=container] .swiper-slide picture {
  height: 100%;
  width: 100%;
}
[data-swiper-type-value=swiper-thumbs] [data-swiper-target=container] .swiper-slide picture img {
  object-fit: contain;
}
[data-swiper-type-value=swiper-thumbs] .swiper-thumbs {
  padding: var(--space-s);
  width: 100%;
}
[data-swiper-type-value=swiper-thumbs] .swiper-thumbs .swiper-slide {
  max-height: 60px;
  max-width: 60px;
  aspect-ratio: 1/1;
  border-radius: var(--radius);
  cursor: pointer;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(var(--dark-rgb), 50%);
}
[data-swiper-type-value=swiper-thumbs] .swiper-thumbs .swiper-slide.swiper-slide.swiper-slide-thumb-active {
  border: 2px solid var(--secondary);
}
[data-swiper-type-value=swiper-thumbs] .swiper-thumbs .swiper-slide picture {
  height: 100%;
  width: 100%;
}
[data-swiper-type-value=swiper-thumbs] .swiper-thumbs .swiper-slide picture img {
  object-fit: cover;
}

/* zoom img */
[data-action="click->zoom#open"] {
  cursor: zoom-in;
}
[data-action="click->zoom#open"] picture {
  aspect-ratio: 1/1;
  background-color: var(--white);
}
[data-action="click->zoom#open"] picture img {
  object-fit: contain;
}

.modal {
  display: none;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  cursor: zoom-out;
}
.modal.active {
  display: flex;
}
.modal .modal-image {
  max-width: 80%;
  max-height: 80%;
  transition: transform 0.3s ease-in-out;
}

section.reassurance {
  background-color: var(--secondary);
  padding: var(--space-l) 0;
  color: var(--light);
}
section.reassurance .container-narrow > .row {
  justify-content: center;
  gap: var(--space-xl);
}
section.reassurance .container-narrow > .row svg.icon {
  --color-svg: var(--light);
  --size-svg: 32px;
  rotate: -10deg;
}
section.reassurance .container-narrow > .row > .row {
  align-items: center;
}

@media screen and (max-width: 640px) {
  section.reassurance .container-narrow > .row {
    justify-content: flex-start;
    gap: var(--space-m);
  }
}
.accordion {
  background-color: var(--blue-10);
  border-radius: var(--radius);
}
.accordion .accordion__intro {
  padding: var(--space-m);
  border-bottom: 1px solid var(--gray-300);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}
.accordion .accordion__intro h4 {
  width: calc(100% - (var(--space-m) + var(--space-s)));
}
.accordion .accordion__intro div.plus {
  font-size: var(--font-l);
  transform: rotate(0);
  transition: 0.3s ease-in-out;
  position: absolute;
  right: var(--space-m);
}
.accordion .accordion__content {
  overflow: hidden;
  max-height: 0;
  border-radius: var(--radius);
}
.accordion .accordion__content > * {
  padding: var(--space-m);
}
.accordion .accordion__content:has(input[type=checkbox]) > * {
  border-radius: initial;
  border: none;
  cursor: pointer;
}
.accordion.accordion__active div.plus {
  transform: rotate(45deg);
  transition: 0.3s ease-in-out;
}
.accordion.accordion__active .accordion__content {
  max-height: 100%;
}

html, body {
  line-height: 1.2;
  background: var(--background);
  color: var(--text);
  width: 100%;
  font-family: var(--font-base);
  font-size: var(--font-s);
  font-weight: var(--font-weight);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#app, header, footer {
  font-family: var(--font-title);
  font-size: var(--font-s);
  font-weight: var(--font-weight);
}

[data-mail][data-domain]::after {
  content: attr(data-mail) "@" attr(data-domain);
  cursor: pointer;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUNDSjs7QURDQTtFQUNJO0VBQ0E7QUNFSjs7QURBQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FDR0o7O0FDbkJBO0VBQ0k7RUFHTTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFpRko7RUFFRjtFQUNJO0VBQ0E7RUFDQTtFQUVKO0VBQ0k7RUFDQTtFQUVKO0VBQ0U7RUFDQTtFQUNBO0VBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNB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QUtub0JZO0VBQ0k7QUxxb0JoQjtBS2xvQlE7RUFDSTtBTG9vQlo7QUtub0JZO0VBQ0k7RUFDQTtBTHFvQmhCO0FLaG9CUTtFQUNJO0FMa29CWjtBS2hvQlE7RUFDSTtBTGtvQlo7QUtob0JnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FMa29CcEI7QUs3bkJJO0VBQ0k7RUFDQTtFQUNBO0FMK25CUjtBSzduQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUwrbkJoQjtBSzVuQlE7RUFDSTtBTDhuQlo7QUs1bkJnQjtFQUNJO0VBQ0E7RUFDQTtBTDhuQnBCO0FLem5CSTtFQUNJO0FMMm5CUjtBSzFuQlE7RUFDSTtFQUNBO0FMNG5CWjtBSzFuQlE7RUFDSTtBTDRuQlo7QUsxbkJRO0VBQ0k7QUw0bkJaO0FLM25CWTtFQUNJO0FMNm5CaEI7O0FLdm5CQTtFQUVRO0lBQ0k7SUFDQTtFTHluQlY7RUt2bkJjO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUx5bkJsQjtBQUNGO0FNN3pCQTtFQUNJO0VBQ0E7QU4rekJKOztBTTV6Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOK3pCUjtBTTd6Qkk7RUFFSTtBTjh6QlI7O0FNM3pCQTtFQUNJO0FOOHpCSjs7QU01ekJBO0VBQ0k7RUFDQTtBTit6Qko7O0FPcjFCQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUHcxQko7O0FPdDFCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVB5MUJKOztBT3YxQkE7RUFDSTtBUDAxQko7O0FPeDFCQTtFQUNJO0FQMjFCSjs7QU96MUJBO0VBQ0k7RUFDQTtFQUNBO0FQNDFCSjtBTzMxQkk7RUFDSTtBUDYxQlI7QU8zMUJJO0VBQ0k7RUFDQTtBUDYxQlI7O0FPMTFCQTtFQUNJO0VBQ0E7QVA2MUJKOztBTzExQkE7QUFDQTtFQUNJO0FQNjFCSjs7QU8zMUJBO0VBQ0k7QVA4MUJKOztBTzUxQkE7RUFDSTtBUCsxQko7O0FPNTFC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RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjByQ047QWF4ckNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUEyQkE7QWJncUNOO0FhMXJDTTtFQUVFO0FiMnJDUjtBYXpyQ007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiMnJDUjtBYTFyQ1E7RUFDRTtBYjRyQ1Y7QWExckNRO0VBQ0U7QWI0ckNWO0FhenJDTTtFQUNFO0FiMnJDUjtBYXZyQ1E7RUFDRTtBYnlyQ1Y7QWF2ckNRO0VBQ0U7QWJ5ckNWO0FhcnJDUTtFQUNFO0FidXJDVjtBYXJyQ1E7RUFDRTtBYnVyQ1Y7QWFsckNFO0VBR0U7RUFDQTtBYmtyQ0o7QWFockNFO0VBR0U7QWJnckNKO0FhOXFDRTtFQUdFO0FiOHFDSjtBYTNxQ0U7OztFQUdFO0VBQ0E7RUFDQTtBYjZxQ0o7QWExcUNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWI0cUNKO0FhM3FDSTtFQUNFO0FiNnFDTjtBYXpxQ0U7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIwcUNKO0FhenFDSTtFQUNFO0FiMnFDTjtBYXpxQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBYjJxQ047QWF4cUNFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIwcUNKOztBYzcxQ0E7RUFDSTtBZGcyQ0o7O0FjNzFDQTtBQUNJO0VBQ0k7RUFDQTtFQUNBO0FkZzJDUjs7QWM5MUNJO0VBQ0k7RUFDQTtFQUNBO0FkaTJDUjs7QWM5MUNBO0FBQ0k7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZGkyQ1I7QWNoMkNROzs7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZG8yQ1o7QWNuMkNZOzs7O0VBQ0k7QWR3MkNoQjtBY3QyQ1k7Ozs7RUFDSTtBZDIyQ2hCOztBY3QyQ0E7QUFDSTtFQUNJO0FkeTJDUjtBY3gyQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZDAyQ1o7QWN6MkNZO0VBSUU7RUFDQTtBZHcyQ2Q7QWNyMkNROzs7RUFHSTtFQUNBO0FkdTJDWjs7QWNwMkNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWR1MkNSOztBY3IyQ0k7QUFDSTtFQWlCSTtBZHcxQ1o7QWN4MkNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQwMkNoQjtBY3gyQ1k7RUFDSTtFQUNBO0FkMDJDaEI7QWN4MkNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQwMkNoQjtBY3YyQ2dCO0VBQ0k7RUFDQTtFQUNBO0FkeTJDcEI7QWN2MkNnQjtFQUNJO0VBQ0E7RUFDQTtBZHkyQ3BCOztBY3IyQ0E7QUFDSTtFQUNJO0VBQ0E7RUFDQTtBZHcyQ1I7QWN2MkNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZHkyQ1o7QWN4MkNZO0VBQ0k7QWQwMkNoQjtBY3oyQ2dCO0VBQ0k7QWQyMkNwQjs7QWN0MkNJO0FBQ0k7RUFXSTtBZCsxQ1o7QWN6MkNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQyMkNoQjtBY3oyQ1k7RUFDSTtFQUNBO0FkMjJDaEI7QWN4MkNnQjtFQUNJO0VBQ0E7RUFDQTtBZDAyQ3BCO0FjeDJDZ0I7RUFDSTtFQUNBO0VBQ0E7QWQwMkNwQjs7QWN0MkNBO0VBRVE7OztJQUdJO0lBQ0E7RWR3MkNWO0FBQ0Y7QWVoaERBO0VBQ0k7RUFDQTtBZmtoREo7QWVqaERJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZtaERSO0FlbGhEUTtFQUNJO0VBQ0E7RUFDQTtBZm9oRFo7QWVuaERZO0VBQ0k7RUFDQTtBZnFoRGhCO0FlbGhEUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fmb2hEWjtBZW5oRFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmcWhEaEI7QWVwaERnQjtFQUNJO0VBQ0E7RUFDQTtBZnNoRHBCO0FlcmhEb0I7RUFDSTtFQUNBO0FmdWhEeEI7QWVyaERvQjtFQUNJO0VBQ0E7QWZ1aER4QjtBZXRoRHdCO0VBQ0k7RUFDQTtFQUNBO0Fmd2hENUI7QWV2aEQ0QjtFQUNFO0FmeWhEOUI7QWV4aEQ4QjtFQUNFO0FmMGhEaEM7QWV4aEQ4QjtFQUNFO0VBQ0E7QWYwaERoQztBZXZoRDRCO0VBQ0U7QWZ5aEQ5QjtBZXhoRDhCO0VBQ0U7QWYwaERoQztBZXBoRGdCO0VBQ0k7RUFDQTtFQUNBO0Fmc2hEcEI7QWVyaERvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZ1aER4QjtBZXRoRHdCO0VBQU87QWZ5aEQvQjtBZXhoRHdCO0VBQVE7QWYyaERoQztBZTFoRHdCO0VBQVM7QWY2aERqQztBZXpoRFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjJoRGhCO0FlMWhEZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmNGhEcEI7QWUzaERvQjtFQUVJO0FmNGhEeEI7QWUxaERvQjtFQUNJO0FmNGhEeEI7QWUxaERvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWY0aER4QjtBZXpoRGdCO0VBQ0k7RUFDQTtBZjJoRHBCO0FlcmhESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnVoRFI7QWV0aERRO0VBQ0k7QWZ3aERaO0FldmhEWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZ5aERoQjtBZXZoRFk7RUFDSTtBZnloRGhCO0FleGhEZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWYwaERwQjtBZXpoRG9CO0VBQ0k7RUFDQTtBZjJoRHhCO0FlMWhEd0I7RUFFSTtBZjJoRDVCO0FldGhEWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZndoRGhCO0FldmhEZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnloRHBCO0FleGhEb0I7RUFDSTtBZjBoRHhCO0FldGhEc0I7RUFDRTtBZndoRHhCO0FlcGhEd0I7RUFDRTtBZnNoRDFCOztBZTdnREE7RUFHTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZjhnRE47RWU3Z0RNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWYrZ0RSO0VlN2dETTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZitnRFI7RWU3Z0RNO0lBQ0U7SUFDQTtJQUNBO0VmK2dEUjtFZTlnRFE7SUFDRTtFZmdoRFY7RWU1Z0RJO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZjhnRE47QUFDRjtBZXpnREE7RUFDSTtJQUNJO0VmMmdETjtFZTFnRE07SUFDSTtFZjRnRFY7RWV6Z0RVO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZjJnRGQ7RWV4Z0RzQjtJQUNJO0lBQ0E7RWYwZ0QxQjtFZXhnRHNCO0lBQ0k7RWYwZ0QxQjtFZXRnRGtCO0lBQ0k7SUFDQTtFZndnRHRCO0VlcGdEa0I7SUFDSTtFZnNnRHRCO0VlcmdEc0I7SUFDSTtJQUNBO0VmdWdEMUI7RWVyZ0RzQjtJQUVFO0lBQ0E7RWZzZ0R4QjtFZW5nRGtCO0lBQ0k7SUFDQTtFZnFnRHRCO0FBQ0Y7QWdCNXpEQTtFQUNJO0FoQjh6REo7QWdCN3pESTtFQUNJO0VBQ0E7RUFDQTtBaEIrekRSO0FnQjl6RFE7O0VBRUk7RUFDQTtBaEJnMERaO0FnQi96RFk7OztFQUVJO0FoQmswRGhCO0FnQi96RFE7RUFDSTtBaEJpMERaO0FnQjl6RFk7RUFDSTtBaEJnMERoQjtBZ0I3ekRRO0VBQ0k7QWhCK3pEWjtBZ0I5ekRZO0VBQ0k7QWhCZzBEaEI7QWdCNXpESTtFQUNJO0VBQ0E7QWhCOHpEUjtBZ0I3ekRRO0VBQ0k7RUFDQTtFQUNBO0FoQit6RFo7O0FnQjF6REE7RUFDSTtJQUNJO0lBQ0E7RWhCNnpETjtBQUNGO0FnQjN6REE7RUFDSTtJQUNJO0lBQ0E7RWhCNnpETjtFZ0I1ekRNO0lBQ0k7RWhCOHpEVjtBQUNGO0FpQm4zREE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJxM0RKO0FpQnAzREk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCczNEUjs7QWtCcDREQTtBQUNBO0VBQ0k7QWxCdTRESjs7QWtCcjREQTtFQUNJO0FsQnc0REo7O0FrQnQ0REE7RUFDSTtBbEJ5NERKOztBa0J0NERBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQnk0REo7O0FrQnY0REE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEIwNERKOztBa0J4NERBO0VBQ0k7RUFDQTtBbEIyNERKOztBa0J6NERBO0VBQ0k7QWxCNDRESjs7QWtCejREQTtBQUNBOztFQUVJO0VBQ0E7QWxCNDRESjs7QWtCMTREQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCNjRESjs7QWtCMzREQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCODRESjs7QWtCNTREQTtFQUNJO0FsQis0REo7O0FrQjc0REE7RUFDSTtFQUNBO0FsQmc1REo7O0FrQjk0REE7RUFDSTtBbEJpNURKOztBa0I5NERBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQmk1REo7O0FrQi80REE7RUFDSTtBbEJrNURKOztBa0JoNURBO0VBQ0k7RUFDQTtBbEJtNURKOztBa0JqNURBO0VBQ0k7RUFDQTtBbEJvNURKOztBa0JsNURBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQnE1REo7O0FrQmo1REE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VsQm81RE47QUFD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c0JueUVFO0VBQ0U7RUFDQTtFQUNBO0F0QnF5RUo7QXNCcHlFSTtFQUNFO0F0QnN5RU47QXNCcHlFSTtFQUNFO0VBQ0E7RUFDQTtBdEJzeUVOO0FzQmx5RUk7RUFDRTtFQUNBO0F0Qm95RU47QXNCbHlFSTtFQUNFO0F0Qm95RU47O0FBeHpFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTJ6RUo7O0FBeHpFQTtFQUNJO0VBQ0E7RUFDQTtBQTJ6RUo7O0FBeHpFQTtFQUNJO0VBQ0E7QUEyekVKLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9yZXNldC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy92YXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9zdHJ1Y3R1cmUuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX2FjdGlvbi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fZm9ybS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX3BhbmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX2Nvb2tpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19zd2lwZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvYXBwL2Nzcy9jb21wb25lbnRzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9hcHAvY3NzL2NvbXBvbmVudHMvX3JlYXNzdXJhbmNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2FwcC9jc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSwgZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLCBzbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLCBiLCB1LCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLCBmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8sIGJ1dHRvbiwgaHIsIGlucHV0LCB0ZXh0YXJlYSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbiosICo6YWZ0ZXIsICo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbmh0bWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5cbiIsIkB1c2UgXCJyZXNldC5zY3NzXCI7XG5AdXNlIFwidmFyLnNjc3NcIjtcbkB1c2UgXCJzdHJ1Y3R1cmUuc2Nzc1wiO1xuXG5AdXNlIFwiY29tcG9uZW50cy9fYmFkZ2Uuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX2FjdGlvbi5zY3NzXCI7XG5AdXNlIFwiY29tcG9uZW50cy9fY2FyZC5zY3NzXCI7XG5AdXNlIFwiY29tcG9uZW50cy9fbWVkaWEuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX3RleHQuc2Nzc1wiO1xuXG5AdXNlIFwiY29tcG9uZW50cy9fYmFubmVyLnNjc3NcIjtcbkB1c2UgXCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3NcIjtcbkB1c2UgXCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3NcIjtcbkB1c2UgXCJjb21wb25lbnRzL19hbGVydC5zY3NzXCI7XG5AdXNlIFwiY29tcG9uZW50cy9faGVhZGVyLnNjc3NcIjtcbkB1c2UgXCJjb21wb25lbnRzL19mb290ZXIuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX3RhYnMuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX2Nvb2tpZXMuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX3N3aXBlci5zY3NzXCI7XG5AdXNlIFwiY29tcG9uZW50cy9fbW9kYWwuc2Nzc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvX3JlYXNzdXJhbmNlLnNjc3NcIjtcbkB1c2UgXCJjb21wb25lbnRzL19hY2NvcmRpb24uc2Nzc1wiO1xuXG5odG1sLCBib2R5IHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1iYXNlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtcyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0KTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4jYXBwLCBoZWFkZXIsIGZvb3RlcntcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC10aXRsZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCk7XG59XG5cbltkYXRhLW1haWxdW2RhdGEtZG9tYWluXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1tYWlsKSBcIkBcIiBhdHRyKGRhdGEtZG9tYWluKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiOnJvb3Qge1xyXG4gICAgLyogY29sb3IgKi9cclxuICAgICAgQG1peGluIGhzbENvbG9yKCRjb2xvcnMpe1xyXG4gICAgICAgIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGNvbG9yc3tcclxuICAgICAgICAgIC0tI3skbmFtZX0tdmFsdWVzOiAjeyR2YWx1ZX07XHJcbiAgICAgICAgICAtLSN7JG5hbWV9OiBoc2woI3skdmFsdWV9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaHNsQ29sb3IoKFxyXG4gICAgICAgICAgICAgIFwicHJpbWFyeVwiOiBcIjIyNCwgNzMlLCAxNSVcIixcclxuICAgICAgICAgICAgICBcInNlY29uZGFyeVwiOiBcIjIwOCwgNjglLCAyMSVcIixcclxuICAgICAgICAgICAgICBcInRlcnRpYXJ5XCI6IFwiNDUsIDY5JSwgNTIlXCIsXHJcblxyXG4gICAgICAgICAgICAgIFwiQnJhbmRDb2xvcjFcIjogXCIyMjQsIDczJSwgMTUlXCIsXHJcbiAgICAgICAgICAgICAgXCJCcmFuZENvbG9yMlwiOiBcIjIwOCwgNjglLCAyMSVcIixcclxuICAgICAgICAgICAgICBcIkJyYW5kQ29sb3IzXCI6IFwiNDUsIDY5JSwgNTIlXCIsXHJcblxyXG4gICAgICAgICAgICAgIFwid2hpdGVcIjpcIjAsIDAlLCAxMDAlXCIsXHJcbiAgICAgICAgICAgICAgXCJibGFja1wiOlwiMCwgMCUsIDAlXCIsXHJcbiAgICAgICAgICAgICAgXCJkYXJrXCI6XCIwLCAwJSwgOSVcIixcclxuICAgICAgICAgICAgICBcImxpZ2h0XCI6XCIwLCAwJSwgOTglXCIsXHJcblxyXG4gICAgICAgICAgICAgIFwiYmFja2dyb3VuZFwiOlwiMCwgMCUsIDk2JVwiLFxyXG4gICAgICAgICAgICAgIFwidGV4dFwiOiBcIjAsIDAlLCAzMiVcIixcclxuXHJcbiAgICAgICAgICAgICAgXCJkYW5nZXJcIjpcIjAsIDcyJSwgNTElXCIsXHJcbiAgICAgICAgICAgICAgXCJ3YXJuaW5nXCI6XCIyMSwgOTAlLCA0OCVcIixcclxuICAgICAgICAgICAgICBcInN1Y2Nlc3NcIjpcIjE0MiwgNzYlLCAzNiVcIixcclxuICAgICAgICAgICAgICBcImluZm9cIjpcIjIyMSwgODMlLCA1MyVcIixcclxuXHJcbiAgICAgICAgICAgICAgXCJncmF5LTkwMFwiOlwiMCwgMCUsIDklXCIsXHJcbiAgICAgICAgICAgICAgXCJncmF5LTgwMFwiOlwiMCwgMCUsIDE1JVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JheS03MDBcIjpcIjAsIDAlLCAyNSVcIixcclxuICAgICAgICAgICAgICBcImdyYXktNjAwXCI6XCIwLCAwJSwgMzIlXCIsXHJcbiAgICAgICAgICAgICAgXCJncmF5LTUwMFwiOlwiMCwgMCUsIDQ1JVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JheS00MDBcIjpcIjAsIDAlLCA2NCVcIixcclxuICAgICAgICAgICAgICBcImdyYXktMzAwXCI6XCIwLCAwJSwgODMlXCIsXHJcbiAgICAgICAgICAgICAgXCJncmF5LTIwMFwiOlwiMCwgMCUsIDkwJVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JheS0xMDBcIjpcIjAsIDAlLCA5NiVcIixcclxuICAgICAgICAgICAgICBcImdyYXktNTBcIjpcIjAsIDAlLCA5OCVcIixcclxuXHJcbiAgICAgICAgICAgICAgXCJyZWQtOTAwXCI6XCIwLCA2MyUsIDMxJVwiLFxyXG4gICAgICAgICAgICAgIFwicmVkLTgwMFwiOlwiMCwgNzAlLCAzNSVcIixcclxuICAgICAgICAgICAgICBcInJlZC03MDBcIjpcIjAsIDc0JSwgNDIlXCIsXHJcbiAgICAgICAgICAgICAgXCJyZWQtNjAwXCI6XCIwLCA3MiUsIDUxJVwiLFxyXG4gICAgICAgICAgICAgIFwicmVkLTUwMFwiOlwiMCwgODQlLCA2MCVcIixcclxuICAgICAgICAgICAgICBcInJlZC00MDBcIjpcIjAsIDkxJSwgNzElXCIsXHJcbiAgICAgICAgICAgICAgXCJyZWQtMzAwXCI6XCIwLCA5NCUsIDgyJVwiLFxyXG4gICAgICAgICAgICAgIFwicmVkLTIwMFwiOlwiMCwgOTYlLCA4OSVcIixcclxuICAgICAgICAgICAgICBcInJlZC0xMDBcIjpcIjAsIDkzJSwgOTQlXCIsXHJcbiAgICAgICAgICAgICAgXCJyZWQtNTBcIjpcIjAsIDg2JSwgOTclXCIsXHJcblxyXG4gICAgICAgICAgICAgIFwiZ3JlZW4tOTAwXCI6XCIxNDQsIDYxJSwgMjAlXCIsXHJcbiAgICAgICAgICAgICAgXCJncmVlbi04MDBcIjpcIjE0MywgNjQlLCAyNCVcIixcclxuICAgICAgICAgICAgICBcImdyZWVuLTcwMFwiOlwiMTQyLCA3MiUsIDI5JVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JlZW4tNjAwXCI6XCIxNDIsIDc2JSwgMzYlXCIsXHJcbiAgICAgICAgICAgICAgXCJncmVlbi01MDBcIjpcIjE0MiwgNzElLCA0NSVcIixcclxuICAgICAgICAgICAgICBcImdyZWVuLTQwMFwiOlwiMTQyLCA2OSUsIDU4JVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JlZW4tMzAwXCI6XCIxNDIsIDc3JSwgNzMlXCIsXHJcbiAgICAgICAgICAgICAgXCJncmVlbi0yMDBcIjpcIjE0MSwgNzklLCA4NSVcIixcclxuICAgICAgICAgICAgICBcImdyZWVuLTEwMFwiOlwiMTQxLCA4NCUsIDkzJVwiLFxyXG4gICAgICAgICAgICAgIFwiZ3JlZW4tNTBcIjpcIjEzOCwgNzYlLCA5NyVcIixcclxuXHJcbiAgICAgICAgICAgICAgXCJibHVlLTkwMFwiOlwiMjI0LCA2NCUsIDMzJVwiLFxyXG4gICAgICAgICAgICAgIFwiYmx1ZS04MDBcIjpcIjIyNiwgNzElLCA0MCVcIixcclxuICAgICAgICAgICAgICBcImJsdWUtNzAwXCI6XCIyMjQsIDc2JSwgNDglXCIsXHJcbiAgICAgICAgICAgICAgXCJibHVlLTYwMFwiOlwiMjIxLCA4MyUsIDUzJVwiLFxyXG4gICAgICAgICAgICAgIFwiYmx1ZS01MDBcIjpcIjIxNywgOTElLCA2MCVcIixcclxuICAgICAgICAgICAgICBcImJsdWUtNDAwXCI6XCIyMTMsIDk0JSwgNjglXCIsXHJcbiAgICAgICAgICAgICAgXCJibHVlLTMwMFwiOlwiMjEyLCA5NiUsIDc4JVwiLFxyXG4gICAgICAgICAgICAgIFwiYmx1ZS0yMDBcIjpcIjIxMywgOTclLCA4NyVcIixcclxuICAgICAgICAgICAgICBcImJsdWUtMTAwXCI6XCIyMTQsIDk1JSwgOTMlXCIsXHJcbiAgICAgICAgICAgICAgXCJibHVlLTUwXCI6XCIyMTQsIDEwMCUsIDk3JVwiLFxyXG5cclxuICAgICAgICAgICAgICBcIm9yYW5nZS05MDBcIjpcIjE1LCA3NSUsIDI4JVwiLFxyXG4gICAgICAgICAgICAgIFwib3JhbmdlLTgwMFwiOlwiMTUsIDc5JSwgMzQlXCIsXHJcbiAgICAgICAgICAgICAgXCJvcmFuZ2UtNzAwXCI6XCIxNywgODglLCA0MCVcIixcclxuICAgICAgICAgICAgICBcIm9yYW5nZS02MDBcIjpcIjIxLCA5MCUsIDQ4JVwiLFxyXG4gICAgICAgICAgICAgIFwib3JhbmdlLTUwMFwiOlwiMjUsIDk1JSwgNTMlXCIsXHJcbiAgICAgICAgICAgICAgXCJvcmFuZ2UtNDAwXCI6XCIyNywgOTYlLCA2MSVcIixcclxuICAgICAgICAgICAgICBcIm9yYW5nZS0zMDBcIjpcIjMxLCA5NyUsIDcyJVwiLFxyXG4gICAgICAgICAgICAgIFwib3JhbmdlLTIwMFwiOlwiMzIsIDk4JSwgODMlXCIsXHJcbiAgICAgICAgICAgICAgXCJvcmFuZ2UtMTAwXCI6XCIzNCwgMTAwJSwgOTIlXCIsXHJcbiAgICAgICAgICAgICAgXCJvcmFuZ2UtNTBcIjpcIjMzLCAxMDAlLCA5NiVcIixcclxuICAgICAgKSk7XHJcblxyXG4gICAgICAtLWdyYWRpZW50IDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLUJyYW5kQ29sb3IxKSwgdmFyKC0tQnJhbmRDb2xvcjIpKTtcclxuXHJcbiAgICAvKiBzaGFwZSAqL1xyXG4gICAgICAgIC0tcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgLS1yYWRpdXMtaW5zaWRlOiA0cHg7XHJcbiAgICAgICAgLS1yYWRpdXMtcm91bmQ6IDEwMGVtO1xyXG5cclxuICAgIC8qIHNoYWRvdyAqL1xyXG4gICAgICAgIC0tc2hhZG93OiAycHggNHB4IDEycHggaHNsKHZhcigtLWRhcmstdmFsdWVzKSwgMTAlKTtcclxuICAgICAgICAtLXNoYWRvdy1ob3ZlcjogMnB4IDRweCAxNnB4IGhzbCh2YXIoLS1kYXJrLXZhbHVlcyksIDI1JSk7XHJcblxyXG4gICAgLyogdHJhbnNpdGlvbiAqL1xyXG4gICAgICAtLWZhc3QtdHJhbnNpdGlvbiA6IC40cztcclxuICAgICAgLS1zbG93LXRyYW5zaXRpb24gOiAuOHM7XHJcbiAgICAgIC0tZWFzaW5nIDogZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgLyogZm9udHMgKi9cclxuICAgICAgLS1mb250LWJhc2U6IE91dGZpdCwgc2Fucy1zZXJpZjtcclxuICAgICAgLS1mb250LXRpdGxlOiBPdXRmaXQsIHNhbnMtc2VyaWY7XHJcbiAgICAgIC0tZm9udC13ZWlnaHQgOiAzMDA7XHJcbiAgICAgIC0tZm9udC1zY2FsZTogMS40O1xyXG4gICAgICAtLWxldHRlci1zcGFjaW5nIDogdmFyKC0tZm9udC1zY2FsZSlweDtcclxuXHJcbiAgICAgIC0tZm9udC14czogMTJweDtcclxuICAgICAgLS1mb250LXM6IGNsYW1wKDEycHgsIDR2dywgMTRweCk7XHJcbiAgICAgIC0tZm9udC1tOiBjbGFtcCgxNHB4LCA0dncsIDE2cHgpO1xyXG4gICAgICAtLWZvbnQtbDogY2xhbXAoMThweCwgNHZ3LCAyNHB4KTtcclxuICAgICAgLS1mb250LXhsOiBjbGFtcCgyNHB4LCA0dncsIDI4cHgpO1xyXG4gICAgICAtLWZvbnQteHhsOiBjbGFtcCgyOHB4LCA0dncsIDQwcHgpO1xyXG4gICAgICAtLWZvbnQtaHVnZTogY2xhbXAoMzJweCwgNHZ3LCA0OHB4KTtcclxuXHJcbiAgICAvKiBlc3BhY2VtZW50cyAgKi9cclxuICAgICAgLS1idXR0b24taGVpZ2h0IDogMzZweDtcclxuXHJcbiAgICAgIC0taGVhZGVyLWhlaWdodDogY2FsYyh2YXIoLS1oZWFkZXItbWFpbikgKyB2YXIoLS1oZWFkZXItaW5mbykpO1xyXG4gICAgICAtLWhlYWRlci1tYWluOiBjYWxjKCg0MnB4ICsgNDBweCkgKyAodmFyKC0tc3BhY2UtbSkgKyB2YXIoLS1zcGFjZS1zKSkpO1xyXG4gICAgICAtLWhlYWRlci1pbmZvIDogM3ZoO1xyXG4gICAgICAtLWhlYWRlci1wYWRkaW5nIDogdmFyKC0tc3BhY2Utcyk7XHJcblxyXG4gICAgICAtLWNvbnRhaW5lci13aWR0aDogMTAwdnc7XHJcblxyXG4gICAgICAtLXNwYWNlLXhzOiA0cHg7XHJcbiAgICAgIC0tc3BhY2UtczogOHB4O1xyXG4gICAgICAtLXNwYWNlLW06IDE0cHg7XHJcbiAgICAgIC0tc3BhY2UtbDogY2xhbXAoMXJlbSwydncsMnJlbSk7XHJcbiAgICAgIC0tc3BhY2UteGw6IGNsYW1wKDJyZW0sNHZ3LDRyZW0pO1xyXG5cclxufVxyXG5cclxuLyogZm9udC1mYWNlICAqL1xyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogT3V0Zml0O1xyXG4gICAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcclxuICAgIGZvbnQtd2VpZ2h0OiAyMDAgODAwO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL291dGZpdC9PdXRmaXQtVmFyaWFibGVGb250X3dnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgICB1bmljb2RlLXJhbmdlOiBVKzIwLTVGLCBVKzYxLTdBLCBVKzdDLCBVK0EwLCBVK0E3LCBVK0E5LCBVK0FCLCBVK0IyLUIzLCBVK0JCLCBVK0MwLCBVK0MyLFxyXG4gICAgVStDNi1DQiwgVStDRS1DRiwgVStENCwgVStEOSwgVStEQi1EQywgVStFMCwgVStFMiwgVStFNi1FQiwgVStFRS1FRiwgVStGNCwgVStGOSwgVStGQi1GQyxcclxuICAgIFUrRkYsIFUrMTUyLTE1MywgVSsxNzgsIFUrMkIzLCBVKzJFMiwgVSsxRDQ4LTFENDksIFUrMjAxMC0yMDExLCBVKzIwMTMtMjAxNCwgVSsyMDE5LFxyXG4gICAgVSsyMDFDLTIwMUQsIFUrMjAyMC0yMDIxLCBVKzIwMjYsIFUrMjAyRi0yMDMwLCBVKzIwQUMsIFUrMjIxMjtcclxufSIsIi8qIHBhZ2VzICovXG4gICAgbWFpbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS14bCk7XG4gICAgfVxuXG5cbi8qIHNlY3Rpb24gKi9cbiAgICBzZWN0aW9uICsgc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXhsKTtcbiAgICB9XG4gICAgLnNlY3Rpb24tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UteGwpIDA7XG4gICAgfVxuXG5cbi8qIGNvbnRhaW5lciAqL1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuICAgIC5jb250YWluZXItbmFycm93IHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICBtYWluIC5jb250YWluZXIsXG4gICAgbWFpbiAuY29udGFpbmVyLW5hcnJvdyB7XG4gICAgICAgIG1heC13aWR0aDogMTUzNnB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzUwcHgpIHtcbiAgICAgICAgLmNvbnRhaW5lci1uYXJyb3cge1xuICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4vKiBsYXlvdXQgKi9cbiAgICAucm93LFxuICAgIC5jb2x1bW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2UtbSk7XG4gICAgICAgICYuanVzdGlmeS1jZW50ZXIge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgJi5qdXN0aWZ5LXN0YXJ0IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5qdXN0aWZ5LWVuZCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgfVxuICAgICAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgICYuYWxpZ24tc3RhcnQge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5hbGlnbi1lbmQge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgICAgICYudGV4dC1jZW50ZXJ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgJi50ZXh0LXN0YXJ0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICB9XG4gICAgICAgICYudGV4dC1lbmQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5yb3d7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgfVxuICAgIC5jb2x1bW57XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cbiAgICAuZ3JpZC1lbGVtZW50cyB7XG4gICAgICAgIC0tZ3JpZC1nYXA6IHZhcigtLXNwYWNlLW0pO1xuICAgICAgICAtLWdyaWQtY29sIDogMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiB2YXIoLS1ncmlkLWdhcCk7XG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gdmFyKC0tZ3JpZC1nYXApICogKHZhcigtLWdyaWQtY29sKSAtIDEpKSAvIHZhcigtLWdyaWQtY29sKSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpoYXMoPiAqICsgKikge1xuICAgICAgICAgICAgLS1ncmlkLWNvbDogMjtcbiAgICAgICAgfVxuICAgICAgICAmLmdyaWQtMyB7XG4gICAgICAgICAgICAtLWdyaWQtY29sOiAzO1xuICAgICAgICB9XG4gICAgICAgICYuZ3JpZC00IHtcbiAgICAgICAgICAgIC0tZ3JpZC1jb2w6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgICAmLmdyaWQtNCB7XG4gICAgICAgICAgICAgICAgLS1ncmlkLWNvbDogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICYuZ3JpZC0zLFxuICAgICAgICAgICAgJi5ncmlkLTQge1xuICAgICAgICAgICAgICAgIC0tZ3JpZC1jb2w6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICY6aGFzKD4gKiArICopLFxuICAgICAgICAgICAgJi5ncmlkLTMsXG4gICAgICAgICAgICAmLmdyaWQtNCB7XG4gICAgICAgICAgICAgICAgLS1ncmlkLWNvbDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpIHt9XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIHt9XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHt9XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge31cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7fVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHt9XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge30iLCIuYmFkZ2Uge1xuICAgIC0tYmFja2dyb3VuZC1iYWRnZSA6IHZhcigtLWdyYXktNzAwKTtcbiAgICAtLWNvbG9yLWJhZGdlIDogdmFyKC0tZ3JheS01MCk7XG4gICAgLS1ib3JkZXItYmFkZ2UgOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLWJhZGdlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFkZ2UpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1iYWRnZSk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogNHB4IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICYuc2Vjb25kYXJ5IHtcbiAgICAgICAgLS1ib3JkZXItYmFkZ2UgOiB2YXIoLS1ncmF5LTcwMCk7XG4gICAgICAgIC0tY29sb3ItYmFkZ2UgOiB2YXIoLS1ncmF5LTcwMCk7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICAgICYuZGFuZ2VyIHtcbiAgICAgICAgLS1iYWNrZ3JvdW5kLWJhZGdlIDogdmFyKC0tcmVkLTcwMCk7XG4gICAgICAgIC0tY29sb3ItYmFkZ2UgOiB2YXIoLS1yZWQtNTApO1xuICAgICAgICAmLnNlY29uZGFyeSB7XG4gICAgICAgICAgICAtLWJvcmRlci1iYWRnZSA6IHZhcigtLXJlZC0zMDApO1xuICAgICAgICAgICAgLS1jb2xvci1iYWRnZSA6IHZhcigtLXJlZC03MDApO1xuICAgICAgICB9XG4gICAgfVxuICAgICYud2FybmluZyB7XG4gICAgICAgIC0tYmFja2dyb3VuZC1iYWRnZSA6IHZhcigtLW9yYW5nZS03MDApO1xuICAgICAgICAtLWNvbG9yLWJhZGdlIDogdmFyKC0tb3JhbmdlLTUwKTtcbiAgICAgICAgJi5zZWNvbmRhcnkge1xuICAgICAgICAgICAgLS1ib3JkZXItYmFkZ2UgOiB2YXIoLS1vcmFuZ2UtMzAwKTtcbiAgICAgICAgICAgIC0tY29sb3ItYmFkZ2UgOiB2YXIoLS1vcmFuZ2UtNzAwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAtLWJhY2tncm91bmQtYmFkZ2UgOiB2YXIoLS1ncmVlbi03MDApO1xuICAgICAgICAtLWNvbG9yLWJhZGdlIDogdmFyKC0tZ3JlZW4tNTApO1xuICAgICAgICAmLnNlY29uZGFyeSB7XG4gICAgICAgICAgICAtLWJvcmRlci1iYWRnZSA6IHZhcigtLWdyZWVuLTMwMCk7XG4gICAgICAgICAgICAtLWNvbG9yLWJhZGdlIDogdmFyKC0tZ3JlZW4tNzAwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmluZm8ge1xuICAgICAgICAtLWJhY2tncm91bmQtYmFkZ2UgOiB2YXIoLS1ibHVlLTcwMCk7XG4gICAgICAgIC0tY29sb3ItYmFkZ2UgOiB2YXIoLS1ibHVlLTUwKTtcbiAgICAgICAgJi5zZWNvbmRhcnkge1xuICAgICAgICAgICAgLS1ib3JkZXItYmFkZ2UgOiB2YXIoLS1ibHVlLTMwMCk7XG4gICAgICAgICAgICAtLWNvbG9yLWJhZGdlIDogdmFyKC0tYmx1ZS03MDApO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qIGxpbmsgKi9cclxuICBhLFxyXG4gIC5saW5rIHtcclxuICAgIC0tY29sb3ItbGluayA6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgLS1iYWNrZ3JvdW5kLWJ1dHRvbiA6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1idXR0b24pO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBnYXA6IDRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSAvIDYpO1xyXG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgJjpmb2N1cyxcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgLS1jb2xvci1saW5rOiB2YXIoLS1zZWNvbmRhcnkpO1xyXG4gICAgICAtLWJhY2tncm91bmQtYnV0dG9uOiB2YXIoLS1iYWNrZ3JvdW5kLWJ1dHRvbik7XHJcbiAgICB9XHJcbiAgICAmOmRpc2FibGVkLFxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIC0tYmFja2dyb3VuZC1idXR0b24gOiB2YXIoLS1iYWNrZ3JvdW5kLWJ1dHRvbikhaW1wb3J0YW50O1xyXG4gICAgICAtLWNvbG9yLWxpbmsgOiB2YXIoLS1ncmF5LTYwMCkhaW1wb3J0YW50O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAmIHN2Zy5pY29uIHtcclxuICAgICAgLS1jb2xvci1zdmcgOiB2YXIoLS1jb2xvci1saW5rKTtcclxuXHJcbiAgICB9XHJcbiAgICAmLmljb24tcmV2ZXJzZSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgIH1cclxuICAgICY6aGFzKD4uaWNvbjpvbmx5LWNoaWxkKXtcclxuICAgICAgLS1zcGFjZS1idXR0b24gOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgIH1cclxuICAgICYuYnV0dG9uLXRhYiB7XHJcbiAgICAgIC0tdGFiLWNvbG9yIDogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yKTtcclxuICAgICAgcGFkZGluZzogMCAycHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1tKTtcclxuICAgICAgJi5yZWQgey0tdGFiLWNvbG9yIDogdmFyKC0tcmVkLTYwMCk7fVxyXG4gICAgICAmLmJsdWUgey0tdGFiLWNvbG9yIDogdmFyKC0tYmx1ZS02MDApO31cclxuICAgICAgJi5ncmVlbiB7LS10YWItY29sb3IgOiB2YXIoLS1ncmVlbi02MDApO31cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYi1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXJvdW5kKTtcclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyOmJlZm9yZSxcclxuICAgICAgJjpmb2N1czpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4vKiBidXR0b24gKi9cclxuICAuYnV0dG9uIHtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWJ1dHRvbi1oZWlnaHQpO1xyXG4gIH1cclxuICBidXR0b24sXHJcbiAgLmJ1dHRvbixcclxuICAuYnV0dG9uLnByaW1hcnkge1xyXG4gICAgLS1iYWNrZ3JvdW5kLWJ1dHRvbiA6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgLS1jb2xvci1idXR0b24gOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAtLXNwYWNlLWJ1dHRvbiA6IDhweCAxNnB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtYnV0dG9uKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtYnV0dG9uKTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24pO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogNHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXJvdW5kKTtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogNDJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDQycHg7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtcyk7XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAtLWJhY2tncm91bmQtYnV0dG9uOiB2YXIoLS1zZWNvbmRhcnkpO1xyXG4gICAgfVxyXG4gICAgJjpkaXNhYmxlZCxcclxuICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAtLWJhY2tncm91bmQtYnV0dG9uIDogdmFyKC0tZ3JheS0yMDApIWltcG9ydGFudDtcclxuICAgICAgLS1jb2xvci1idXR0b24gOiB2YXIoLS1ncmF5LTYwMCkhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAvKiBpY29uICovXHJcbiAgICAgICYgc3ZnLmljb24ge1xyXG4gICAgICAgIC0tY29sb3Itc3ZnIDogdmFyKC0tY29sb3ItYnV0dG9uKTtcclxuICAgICAgfVxyXG4gICAgICAmLmljb24tcmV2ZXJzZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcbiAgICAgIH1cclxuICAgICAgJjpoYXMoPi5pY29uOm9ubHktY2hpbGQpe1xyXG4gICAgICAgIC0tc3BhY2UtYnV0dG9uIDogdmFyKC0tc3BhY2Utcyk7XHJcbiAgICAgIH1cclxuICAgIC8qIHNlY29uZGFyeSAvIGF2ZWMgYm9yZGVyICovXHJcbiAgICAgICYuc2Vjb25kYXJ5IHtcclxuICAgICAgICAtLWJhY2tncm91bmQtYnV0dG9uIDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgLS1jb2xvci1idXR0b24gOiB2YXIoLS1zZWNvbmRhcnkpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbik7XHJcbiAgICAgICAgJi5yZWQgey0tY29sb3ItYnV0dG9uIDogdmFyKC0tcmVkLTYwMCk7fVxyXG4gICAgICAgICYuYmx1ZSB7LS1jb2xvci1idXR0b24gOiB2YXIoLS1ibHVlLTYwMCk7fVxyXG4gICAgICAgICYuZ3JlZW4gey0tY29sb3ItYnV0dG9uIDogdmFyKC0tZ3JlZW4tNjAwKTt9XHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIC0tYmFja2dyb3VuZC1idXR0b246IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgLyogdGVydGlhcnkgKi9cclxuICAgICAgJi50ZXJ0aWFyeSB7XHJcbiAgICAgICAgLS1jb2xvci1idXR0b24gOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgLS1iYWNrZ3JvdW5kLWJ1dHRvbjogaHNsKHZhcigtLXdoaXRlLXZhbHVlcyksIDUlKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0td2hpdGUtdmFsdWVzKSwgMjUlKTtcclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgLS1iYWNrZ3JvdW5kLWJ1dHRvbjogdmFyKC0tc2Vjb25kYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIC8qIHNpemUgKi9cclxuICAgICAgJi5odWdle1xyXG4gICAgICAgIC0tc3BhY2UtYnV0dG9uIDogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtbSk7XHJcbiAgICAgICAgJi5zZWNvbmRhcnkge1xyXG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItYnV0dG9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5zbWFsbHtcclxuICAgICAgICAtLXNwYWNlLWJ1dHRvbjogY2FsYyh2YXIoLS1zcGFjZS1zKS8xLjYpIGNhbGModmFyKC0tc3BhY2UtcykqMS4yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtcyk7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gIH1cclxuXHJcbi8qIHRhYnMgKi9cclxuICBhLFxyXG4gIGJ1dHRvbiB7XHJcbiAgICAmLmJ1dHRvbi10YWIge1xyXG4gICAgICAtLXRhYi1jb2xvciA6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgY29sb3I6IHZhcigtLXRhYi1jb2xvcik7XHJcbiAgICAgIHBhZGRpbmc6IDAgMnB4O1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtbSk7XHJcbiAgICAgICYucmVkIHstLXRhYi1jb2xvciA6IHZhcigtLXJlZC02MDApO31cclxuICAgICAgJi5ibHVlIHstLXRhYi1jb2xvciA6IHZhcigtLWJsdWUtNjAwKTt9XHJcbiAgICAgICYuZ3JlZW4gey0tdGFiLWNvbG9yIDogdmFyKC0tZ3JlZW4tNjAwKTt9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3R0b206IDJweDtcclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYi1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXJvdW5kKTtcclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyOmJlZm9yZSxcclxuICAgICAgJjpmb2N1czpiZWZvcmUsXHJcbiAgICAgICYuYWN0aXZlOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuIiwiLyogY2FyZCAqL1xuLmNhcmQge1xuICAgIC0tYmFja2dyb3VuZC1jYXJkOiB2YXIoLS13aGl0ZSk7XG4gICAgLS1jb2xvci1jYXJkOiB2YXIoLS10ZXh0KTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jYXJkKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1zbG93LXRyYW5zaXRpb24pO1xuICAgICYuY29sdW1uIHtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1tKTtcbiAgICB9XG4gICAgcGljdHVyZSB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1pbnNpZGUpO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgc2NhbGU6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbHVtbixcbiAgICAucm93IHtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1zKTtcbiAgICB9XG4gICAgJi5zaGFkb3cge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuICAgIH1cbiAgICAvKiBjYXJkIHdpdGggbGluayAqL1xuICAgICAgICAmW2RhdGEtbGlua10ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGU6IDEuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnNoYWRvdyB7XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWhvdmVyKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tc2xvdy10cmFuc2l0aW9uKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAmLmluZm8ge1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDhweCB2YXIoLS1kYXJrKTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxLjY7XG4gICAgICAgIGgxLCAuaDEge1xuICAgICAgICAgICAgLS1jb2xvci1oMSA6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjRweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgLS1jb2xvci10aXRsZSA6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICB9XG4gICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC01MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1yb3VuZCk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2wodmFyKC0tc2Vjb25kYXJ5LXZhbHVlcyksIDAuMSk7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgLnRpdGxlIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYucHJvZHVjdHtcbiAgICAgICAgLnJvdzpoYXMoLmJhZGdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLyAxO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xuICAgICAgICAgICAgYS50aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LW0pO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNvdW50cnkge1xuICAgICAgICBzdmcuaWNvbiB7XG4gICAgICAgICAgICAtLXNpemUtc3ZnOiAzMnB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXhsKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYubmV3cyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMC45O1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDRweCB2YXIoLS1kYXJrKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbCk7XG4gICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTUlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXNlY29uZGFyeS12YWx1ZXMpLCAwLjEpO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNWVtO1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1sKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5yZXZpZXcge1xuICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgIHN2Zy5pY29uIHtcbiAgICAgICAgICAgIC0tc2l6ZS1zdmc6IDMycHg7XG4gICAgICAgICAgICAtLWNvbG9yLXN2ZzogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICAgICAgfVxuICAgICAgICAucGFyYWdyYXBoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2Utcyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNhcmQge1xuICAgICAgICAmLm5ld3Mge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UteGwpO1xuICAgICAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDQwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJpbWcsIHN2ZyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5zdmcge1xuICAgICYuaWNvbiB7XG4gICAgICAgIC0tY29sb3Itc3ZnIDogdmFyKC0tZGFyayk7XG4gICAgICAgIC0tc2l6ZS1zdmcgOiAyMHB4O1xuICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1zdmcpO1xuICAgICAgICB3aWR0aDogdmFyKC0tc2l6ZS1zdmcpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNpemUtc3ZnKTtcbiAgICB9XG4gICAgJi5maWxsLXdoaXRlLFxuICAgICYuZmlsbC13aGl0ZSA+ICoge1xuICAgICAgICBmaWxsOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxufVxucGljdHVyZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5waWN0dXJlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufSIsIi8qIHRpdGxlICovXG5oMSwgLmgxIHtcbiAgICAtLWNvbG9yLWgxIDogdmFyKC0tZ3JheS01MDApO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC14cyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWgxKTtcbn1cbmgyLCAuaDIge1xuICAgIC0tY29sb3ItdGl0bGU6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRpdGxlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQteHhsKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5oMywgLmgzICB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LWwpO1xufVxuaDQsIC5oNCAge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1tKTtcbn1cbmgzLCBoNCwgaDUsIC50aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAmLmh1Z2V7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAodmFyKC0tZm9udC14bCksIDR2dywgdmFyKC0tZm9udC14eGwpKTtcbiAgICB9XG4gICAgJi5zbWFsbHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIH1cbn1cbnNtYWxse1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG4vKiB0ZXh0ICovXG5zdHJvbmcsIGJ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbmVtLCBpe1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbm9sLCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5wYXJhZ3JhcGgge1xuICAgIG9sLCB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICBsaXN0LXN0eWxlOiBpbml0aWFsO1xuICAgIH1cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZDtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgIH1cbn0iLCIvKiBiYW5uZXIgKi9cbiAgICAuYmFubmVyIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNlLW0pO1xuICAgICAgICAuY29sdW1uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDR2aCAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgfVxuICAgICAgICAuYmFubmVyLWJhY2tncm91bmQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTUwKTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbi8qIEhuICovXG4gICAgLnRpdGxlLWJhbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1zKTtcbiAgICB9XG5cbi8qIGJhY2tncm91bmQgKi9cbiAgICAuYmFja2dyb3VuZC1pbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMjVkZWcsIHZhcigtLUJyYW5kQ29sb3IxKSwgdmFyKC0tQnJhbmRDb2xvcjIpLCB2YXIoLS1CcmFuZENvbG9yMykpO1xuICAgICAgICAmIHBpY3R1cmUge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4vKiBzcGxpdCBiYW5uZXIgKG1vYmlsZSBmaXJzdCkgKi9cbiAgICAuc3BsaXQtYmFubmVyLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3MgOiAxZnIgYXV0byBhdXRvO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNlLW0pO1xuICAgICAgICA+ICoge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLjI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLnNwbGl0LWJhbm5lci1ncmlkIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEuNjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gKjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiAqOm50aC1jaGlsZCgyKSxcbiAgICAgICAgICAgID4gKjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLnNwbGl0LWJhbm5lci1ncmlkIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICB9XG4gICAgfSIsIi5icmVhZGNydW1ie1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC14cyk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLW1pbi1ndXR0ZXIpO1xuICAgIGdhcDogMDtcbiAgICAmID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgJiArIGRpdjpiZWZvcmUge1xuICAgICAgICAgICAgLS1jb2xvci1saW5rIDogdmFyKC0tZ3JheS02MDApO1xuICAgICAgICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICAgICAgICBtYXJnaW46IDAgNHB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICAgICAgICB9XG4gICAgICAgICYgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgLS1jb2xvci1saW5rIDogdmFyKC0tZ3JheS02MDApO1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIC0tY29sb3ItbGluayA6IHZhcigtLWdyYXktNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmIFthcmlhLWN1cnJlbnQ9XCJwYWdlXCJdIHtcbiAgICAgICAgICAgIC0tY29sb3ItbGluayA6IHZhcigtLWdyYXktNDAwKTtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5wYWdpbmF0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXAgOiB2YXIoLS1zcGFjZS1zKTtcclxuXHJcbiAgICAuY3VycmVudCB7XHJcbiAgICAgIC0tYmFja2dyb3VuZC1idXR0b24gOiB0cmFuc3BhcmVudDtcclxuICAgICAgLS1jb2xvci1idXR0b24gOiB2YXIoLS1ncmF5LTQwMCk7XHJcbiAgICAgIC0tc3BhY2UtYnV0dG9uIDogOHB4O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtYnV0dG9uKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1idXR0b24pO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uKTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGdhcDogNHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xyXG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAgIG1pbi13aWR0aDogNDJweDtcclxuICAgICAgbWluLWhlaWdodDogNDJweDtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXMpO1xyXG4gICAgfVxyXG4gICAgLmZpcnN0LFxyXG4gICAgLnByZXZpb3VzLFxyXG4gICAgLnBhZ2UsXHJcbiAgICAubmV4dCxcclxuICAgIC5sYXN0IHtcclxuICAgICAgJiBhIHtcclxuICAgICAgICAtLWJhY2tncm91bmQtYnV0dG9uIDogdmFyKC0tZ3JheS0yMDApO1xyXG4gICAgICAgIC0tY29sb3ItbGluayA6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICAgIC0tc3BhY2UtYnV0dG9uIDogOHB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1idXR0b24pO1xyXG4gICAgICAgIG1pbi13aWR0aDogNDJweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1yb3VuZCk7XHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIC0tYmFja2dyb3VuZC1idXR0b246IHZhcigtLXNlY29uZGFyeSk7XHJcbiAgICAgICAgICAtLWNvbG9yLWxpbmsgOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKiBwYWdlIGFsZXJ0ICovXHJcbiAgICBtYWluI2FsZXJ0IHtcclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuLyogYWxlcnQgKi9cclxuLmFsZXJ0IHtcclxuICAgIC0tYmFja2dyb3VuZC1hbGVydCA6IHZhcigtLWdyYXktMjAwKTtcclxuICAgIC0tY29sb3ItYWxlcnQgOiB2YXIoLS1ncmF5LTgwMCk7XHJcbiAgICAtLWJvcmRlci1hbGVydCA6IHZhcigtLWdyYXktMzAwKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtYWxlcnQpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1hbGVydCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtaW5zaWRlKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tKTtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHN2ZyB7XHJcbiAgICAgICAgJi5pY29uIHtcclxuICAgICAgICAgICAgLS1jb2xvci1zdmcgOiB2YXIoLS1jb2xvci1hbGVydCk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0tc2l6ZS1zdmcpO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zaXplLXN2Zyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kYW5nZXIge1xyXG4gICAgICAgIC0tYmFja2dyb3VuZC1hbGVydCA6IHZhcigtLXJlZC0xMDApO1xyXG4gICAgICAgIC0tY29sb3ItYWxlcnQgOiB2YXIoLS1yZWQtODAwKTtcclxuICAgICAgICAtLWJvcmRlci1hbGVydCA6IHZhcigtLXJlZC0zMDApO1xyXG4gICAgfVxyXG4gICAgJi53YXJuaW5nIHtcclxuICAgICAgICAtLWJhY2tncm91bmQtYWxlcnQgOiB2YXIoLS1vcmFuZ2UtMTAwKTtcclxuICAgICAgICAtLWNvbG9yLWFsZXJ0IDogdmFyKC0tb3JhbmdlLTgwMCk7XHJcbiAgICAgICAgLS1ib3JkZXItYWxlcnQgOiB2YXIoLS1vcmFuZ2UtMzAwKTtcclxuICAgIH1cclxuICAgICYuc3VjY2VzcyB7XHJcbiAgICAgICAgLS1iYWNrZ3JvdW5kLWFsZXJ0IDogdmFyKC0tZ3JlZW4tMTAwKTtcclxuICAgICAgICAtLWNvbG9yLWFsZXJ0IDogdmFyKC0tZ3JlZW4tODAwKTtcclxuICAgICAgICAtLWJvcmRlci1hbGVydCA6IHZhcigtLWdyZWVuLTMwMCk7XHJcbiAgICB9XHJcbiAgICAmLmluZm8ge1xyXG4gICAgICAgIC0tYmFja2dyb3VuZC1hbGVydCA6IHZhcigtLWJsdWUtMTAwKTtcclxuICAgICAgICAtLWNvbG9yLWFsZXJ0IDogdmFyKC0tYmx1ZS04MDApO1xyXG4gICAgICAgIC0tYm9yZGVyLWFsZXJ0IDogdmFyKC0tYmx1ZS0zMDApO1xyXG4gICAgfVxyXG4gICAgJi5zZWNvbmRhcnkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLXMpO1xyXG4gICAgICAgICYuZGFuZ2VyIHtcclxuICAgICAgICAgICAgLS1jb2xvci1hbGVydCA6IHZhcigtLXJlZC02MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLndhcm5pbmcge1xyXG4gICAgICAgICAgICAtLWNvbG9yLWFsZXJ0IDogdmFyKC0tb3JhbmdlLTYwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc3VjY2VzcyB7XHJcbiAgICAgICAgICAgIC0tY29sb3ItYWxlcnQgOiB2YXIoLS1ncmVlbi02MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmluZm8ge1xyXG4gICAgICAgICAgICAtLWNvbG9yLWFsZXJ0IDogdmFyKC0tYmx1ZS02MDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbiIsIi8qIHNlYXJjaCBkZWZhdWx0ICovXG4gICAgaGVhZGVyIC5zZWFyY2h7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMTB2aCAtIHZhcigtLWhlYWRlci1oZWlnaHQpKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9keSk7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDIlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcbiAgICAgICAgLmNvbnRhaW5lcntcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1ndXR0ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyogYnRucyAqL1xuICAgICAgICAuYnRuX3NlYXJjaCAuYnRuX29wZW4sXG4gICAgICAgIC5zZWFyY2gtb3BlbiAuYnRuX3NlYXJjaCAuYnRuX2Nsb3NlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB9XG4gICAgICAgIC5idG5fc2VhcmNoIC5idG5fY2xvc2Uge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICB9XG4gICAgICAgIC5zZWFyY2gtb3BlbiAuYnRuX3NlYXJjaCAuYnRuX29wZW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgfVxuXG4vKiBzZWFyY2ggb3BlbiAqL1xuICAgIC5zZWFyY2gtb3BlbiBoZWFkZXIgLnNlYXJjaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcbiAgICB9IiwiLyogY3VzdG9tcyAqL1xyXG5mb3JtIHtcclxuICAmLmNvbHVtbiB7XHJcbiAgICBnYXA6IHZhcigtLXNwYWNlLW0pO1xyXG4gIH1cclxufVxyXG5maWVsZHNldCB7XHJcbiAgLS1zcGFjZS1maWVsZHNldDogdmFyKC0tc3BhY2UtcykgdmFyKC0tc3BhY2UtbSk7XHJcbiAgLS1jb2xvci1maWVsZHNldDogdmFyKC0tdGVydGlhcnktdmFsdWVzKTtcclxuICAtLWJvcmRlci1maWVsZHNldDogdmFyKC0tZ3JheS0zMDApO1xyXG4gIC0tYmFja2dyb3VuZC1maWVsZHNldDogdmFyKC0td2hpdGUpO1xyXG4gIC0taGVpZ2h0LWZpZWxkc2V0OiA0MnB4O1xyXG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zKTtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWZpZWxkc2V0KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWZpZWxkc2V0KTtcclxuICBtaW4taGVpZ2h0OiB2YXIoLS1oZWlnaHQtZmllbGRzZXQpO1xyXG4gICYuY29sdW1uIHtcclxuICAgIGdhcDogdmFyKC0tc3BhY2UtZmllbGRzZXQpO1xyXG4gIH1cclxuICAmIC5yb3cge1xyXG4gICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XHJcbiAgfVxyXG4gIHNlbGVjdCxcclxuICBbdHlwZT1cInJhbmdlXCJdLFxyXG4gIFt0eXBlPVwiZmlsZVwiXSxcclxuICBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxyXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbiAgW3R5cGU9XCJyYWRpb1wiXSxcclxuICBbdHlwZT1cImNoZWNrYm94XCJdIH4gbGFiZWwsXHJcbiAgW3R5cGU9XCJyYWRpb1wiXSB+IGxhYmVsIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgdGV4dGFyZWEge1xyXG4gICAgcmVzaXplOiBub25lO1xyXG4gICAgbWluLWhlaWdodDogMjAwcHg7XHJcbiAgfVxyXG4gIHNlbGVjdCB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gIH1cclxuICAmOmhhcyhsYWJlbCkge1xyXG4gICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICB9XHJcbiAgJjpoYXMoaW5wdXQpLFxyXG4gICY6aGFzKHNlbGVjdCksXHJcbiAgJjpoYXModGV4dGFyZWEpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1yb3VuZCk7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtcykgdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0KTtcclxuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICB0b3A6IC0yLjJyZW07XHJcbiAgICB9XHJcbiAgICBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWhlaWdodC1maWVsZHNldCk7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLWZpZWxkc2V0KTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XHJcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICZbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3IsXHJcbiAgICAgICZbdHlwZT1cImZpbGVcIl06OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgICYgfiBidXR0b24ge1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LWZpZWxkc2V0KTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taGVpZ2h0LWZpZWxkc2V0KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLWZpZWxkc2V0KTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgJiBzdmcuaWNvbiB7XHJcbiAgICAgICAgICAtLXNpemUtc3ZnOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpoYXMoIH4gYnV0dG9uKSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWhlaWdodC1maWVsZHNldCkpO1xyXG4gICAgICB9XHJcbiAgICAgIC8qIGJ1dHRvbiBpbnB1dCAqL1xyXG4gICAgICAmW3R5cGU9XCJwYXNzd29yZFwiXSArICNwYXNzd29yZF9yZXZlYWwgPiAqIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJlt0eXBlPVwidGV4dFwiXSArICNwYXNzd29yZF9yZXZlYWwgPiAqIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJjpoYXMoaW5wdXQ6Zm9jdXMpLFxyXG4gICY6aGFzKHNlbGVjdDpmb2N1cyksXHJcbiAgJjpoYXModGV4dGFyZWE6Zm9jdXMpIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcclxuICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XHJcbiAgfVxyXG4gICY6aGFzKGlucHV0OmZvY3VzOnZhbGlkKSxcclxuICAmOmhhcyhzZWxlY3Q6Zm9jdXM6dmFsaWQpLFxyXG4gICY6aGFzKHRleHRhcmVhOmZvY3VzOnZhbGlkKSB7XHJcbiAgICAtLWJvcmRlci1maWVsZHNldDogdmFyKC0tYmx1ZS0zMDApO1xyXG4gIH1cclxuICAmOmhhcyhpbnB1dDpmb2N1czppbnZhbGlkKSxcclxuICAmOmhhcyhzZWxlY3Q6Zm9jdXM6aW52YWxpZCksXHJcbiAgJjpoYXModGV4dGFyZWE6Zm9jdXM6aW52YWxpZCkge1xyXG4gICAgLS1ib3JkZXItZmllbGRzZXQ6IHZhcigtLXJlZC0zMDApO1xyXG4gIH1cclxuICAvKiBsYWJlbCA6IGlucHV0LCBzZWxlY3QsIHRleHRhcmVhICovXHJcbiAgbGFiZWw6aGFzKCsgaW5wdXQ6cmVxdWlyZWQpOmFmdGVyLFxyXG4gIGxhYmVsOmhhcygrIHNlbGVjdDpyZXF1aXJlZCk6YWZ0ZXIsXHJcbiAgbGFiZWw6aGFzKCsgdGV4dGFyZWE6cmVxdWlyZWQpOmFmdGVye1xyXG4gICAgY29udGVudDogJyonO1xyXG4gICAgY29sb3I6IHZhcigtLWRhbmdlcik7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDtcclxuICB9XHJcbiAgLyogdGV4dGFyZWEgKi9cclxuICAmOmhhcyh0ZXh0YXJlYSkge1xyXG4gICAgLS1oZWlnaHQtZmllbGRzZXQ6IDIwMHB4O1xyXG4gICAgLS1zcGFjZS1maWVsZHNldDogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAtLXJhZGl1cy1maWVsZHNldDogMjRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1maWVsZHNldCk7XHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1maWVsZHNldCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIGNoZWNrYm94LCByYWRpbyAqL1xyXG4gICY6aGFzKFt0eXBlPVwiY2hlY2tib3hcIl0pLFxyXG4gICY6aGFzKFt0eXBlPVwicmFkaW9cIl0pIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAtLXNwYWNlLWZpZWxkc2V0OiB2YXIoLS1zcGFjZS1zKTtcclxuICAgIGdhcDogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItZmllbGRzZXQpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtcykgdmFyKC0tc3BhY2UtbCk7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcclxuICBbdHlwZT1cInJhZGlvXCJde1xyXG4gICAgLS1oZWlnaHQtZmllbGRzZXQgOiAxNnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWhlaWdodC1maWVsZHNldCk7XHJcbiAgICB3aWR0aDogdmFyKC0taGVpZ2h0LWZpZWxkc2V0KTtcclxuICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LWZpZWxkc2V0KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1maWVsZHNldCk7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxufSIsImh0bWw6aGFzKC5uYXYtb3Blbikge1xyXG4gICAgb3ZlcmZsb3c6IGNsaXA7XHJcbn1cclxuXHJcbi8qIGJ1dHRvbiBwYW5lbHMgKi9cclxuICAgIC5wYW5lbC1idXR0b24gLnBhbmVsLW9wZW4ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB9XHJcbiAgICAucGFuZWwtYnV0dG9uIC5wYW5lbC1jbG9zZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pIGVhc2Utb3V0O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcbiAgICB9XHJcblxyXG4vKiBwYW5lbHMgKi9cclxuICAgIC5jYXJ0LW1haW4sXHJcbiAgICAubmF2LW1haW4ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgIGxlZnQ6IHZhcigtLXNwYWNlLW0pO1xyXG4gICAgICAgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItbWFpbikgKyB2YXIoLS1zcGFjZS1tKSk7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICh2YXIoLS1zcGFjZS1tKSAqIDIpKTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IGhzbGEoMCwgMCUsIDAlLCAwLjEpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgLmNhcnQtd3JhcHBlcixcclxuICAgICAgICAubmF2LXdyYXBwZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1sKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gKHZhcigtLWhlYWRlci1tYWluKSArICh2YXIoLS1zcGFjZS1tKSAqIDIpKSk7XHJcbiAgICAgICAgICAgIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuLyogbmF2ICovXHJcbiAgICAubmF2LW1haW4ge1xyXG4gICAgICAgIG1heC13aWR0aDogMzBlbTtcclxuICAgICAgICAubmF2LWl0ZW0gLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgIC0tY29sb3ItYnV0dG9uIDogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1sKTtcclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAtLWJhY2tncm91bmQtYnV0dG9uOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm5hdi1pdGVtOmhhcyguZ3JlZW4pLFxyXG4gICAgICAgIC5uYXYtaXRlbTpoYXMoLnJlZCksXHJcbiAgICAgICAgLm5hdi1pdGVtOmhhcyguYmx1ZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm5hdi1vdmVybGF5IHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xyXG4gICAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogaHNsKHZhcigtLXRlcnRpYXJ5LXZhbHVlcyksIDAuMSk7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgIH1cclxuICAgIC8qIG5hdi1vcGVuICovXHJcbiAgICAgICAgLm5hdi1vcGVuIHtcclxuICAgICAgICAgICAgLm5hdi1tYWluIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5uYXYtd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5uYXYtb3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBidXR0b24gKi9cclxuICAgICAgICAgICAgICAgIC5wYW5lbC1idXR0b24ubmF2LWJ1dHRvbiAucGFuZWwtY2xvc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucGFuZWwtYnV0dG9uLm5hdi1idXR0b24gLnBhbmVsLW9wZW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuLyogY2FydCAqL1xyXG4gICAgLmNhcnQtbWFpbiB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MGVtO1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjZS1tKTtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIC5jYXJ0LXByb2R1Y3Qge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1tKTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLXMpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS0zMDApO1xyXG4gICAgICAgICAgICBwaWN0dXJlIHtcclxuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogY2FydC1vcGVuICovXHJcbiAgICAgICAgLmNhcnQtb3BlbiB7XHJcbiAgICAgICAgICAgIC5jYXJ0LW1haW4ge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbikgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNhcnQtd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1mYXN0LXRyYW5zaXRpb24pIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8qIGJ1dHRvbiAqL1xyXG4gICAgICAgICAgICAgICAgLnBhbmVsLWJ1dHRvbi5jYXJ0LWJ1dHRvbiAucGFuZWwtY2xvc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKSBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucGFuZWwtYnV0dG9uLmNhcnQtYnV0dG9uIC5wYW5lbC1vcGVuIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbikgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICAgLm5hdi1tYWluIHtcclxuICAgICAgICAubmF2LWl0ZW06aGFzKC5ncmVlbiksXHJcbiAgICAgICAgLm5hdi1pdGVtOmhhcygucmVkKSxcclxuICAgICAgICAubmF2LWl0ZW06aGFzKC5ibHVlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiQGltcG9ydCBcIl9zZWFyY2guc2Nzc1wiO1xyXG5AaW1wb3J0IFwiX2Zvcm0uc2Nzc1wiO1xyXG5AaW1wb3J0IFwiX3BhbmVsLnNjc3NcIjtcclxuXHJcbmhlYWRlciB7XHJcbiAgICAtLWxvZ28td2lkdGggOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcclxuICAgIC0tbmF2LWJ1dHRvbiA6IDg2cHg7XHJcbiAgICAuaGVhZGVyLWZpeGVkIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXhzKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgICAgY29sb3IgOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItbWFpbik7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCBoc2woMCwgMCUsIDAlLCAxMCUpO1xyXG4gICAgICAgIC5oZWFkZXItbG9nbyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBwaWN0dXJlIHtcclxuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWhlYWRlci1tYWluKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaGVhZGVyLW1haW4ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWhlYWRlci1tYWluKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2UtbCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1sb2dvLXdpZHRoKSArIHZhcigtLXNwYWNlLWwpKTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLW0pO1xyXG4gICAgICAgICAgICAuaGVhZGVyLW5hdiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgICAgICAgICAgICAgIC5oZWFkZXItc2VhcmNoIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgLnBhbmVsLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1uYXYtYnV0dG9uKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXhzKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZm9ybTpoYXMoW3R5cGU9XCJzZWFyY2hcIl0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSB2YXIoLS1uYXYtYnV0dG9uKSkgLSB2YXIoLS1zcGFjZS1tKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tYmFja2dyb3VuZC1maWVsZHNldDogaHNsKHZhcigtLXdoaXRlLXZhbHVlcyksIDUlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tYm9yZGVyLWZpZWxkc2V0OiBoc2wodmFyKC0td2hpdGUtdmFsdWVzKSwgMjUlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idXR0b24taW5wdXQubGluayB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tY29sb3Itc3ZnOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5oZWFkZXItdGFicyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgLmJ1dHRvbi10YWIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tdGFiLWNvbG9yIDogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnJlZCB7LS10YWItY29sb3IgOiB2YXIoLS1yZWQtNjAwKTt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYmx1ZSB7LS10YWItY29sb3IgOiB2YXIoLS1ibHVlLTYwMCk7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmdyZWVuIHstLXRhYi1jb2xvciA6IHZhcigtLWdyZWVuLTYwMCk7fVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaGVhZGVyLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1tKTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMgLmJ1dHRvbixcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIC5idXR0b257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tYmFja2dyb3VuZC1idXR0b246IHZhcigtLXNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuaGVhZGVyLWJ1YmJsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGVydGlhcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1yb3VuZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRpdltkYXRhLWxpbmtdOmhhcyhbZGF0YS1hY3Rpb249XCJ0b2dnbGUjbWVudVwiXSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5oZWFkZXItaW5mbyB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1tYWluKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGVydGlhcnkpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgW2RhdGEtY29udHJvbGxlcj1cInN3aXBlclwiXSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTBlbTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXhzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3dpcGVyLW5hdiB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwZW07XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAtLXNwYWNlLWJ1dHRvbiA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgLS1zaXplLWJ1dHRvbiA6IDN2aDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtLWNvbG9yLXN2ZyA6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3ZnLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtLWNvbG9yLXN2ZyA6IHZhcigtLXNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC40O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcclxuICBoZWFkZXIge1xyXG4gICAgLnRhYi1mbHlvdXQge1xyXG4gICAgICAubWVudS1mbHlvdXQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLWZhc3QtdHJhbnNpdGlvbik7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNWVtO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XHJcbiAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2F0ZWdvcnktdGl0bGU6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0zMDApO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLXNwYWNlLW0pKjIpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpbmt7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0yMDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIC5tZW51LWZseW91dCB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtICh2YXIoLS1oZWFkZXItbWFpbikgKyAodmFyKC0tc3BhY2UtbSkgKiAyKSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgIGhlYWRlciB7XHJcbiAgICAgICAgLS1sb2dvLXdpZHRoOiB2YXIoLS1oZWFkZXItbWFpbik7XHJcbiAgICAgICAgLmhlYWRlci1sb2dvIHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmhlYWRlci1maXhlZHtcclxuICAgICAgICAgICAgLmhlYWRlci1tYWluIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXhzKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygodmFyKC0tbG9nby13aWR0aCkgLSA1JSkgKyB2YXIoLS1zcGFjZS1zKSk7XHJcbiAgICAgICAgICAgICAgICAuaGVhZGVyLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmhlYWRlci1zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAucGFuZWwtYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybTpoYXMoW3R5cGU9XCJzZWFyY2hcIl0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuaGVhZGVyLXRhYnMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmhlYWRlci1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBidXR0b24sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAtLWJhY2tncm91bmQtYnV0dG9uIDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGRpdltkYXRhLWxpbmtdOmhhcyhbZGF0YS1hY3Rpb249XCJ0b2dnbGUjbWVudVwiXSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAuZm9vdGVyLW1haW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhsKSAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgICAgYSxcclxuICAgICAgICAubGluayB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgLS1jb2xvci1saW5rOiB2YXIoLS1saWdodCk7XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250YWluZXItbmFycm93ID4gKiB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmluZm9zIHtcclxuICAgICAgICAgICAgLnJvdyBzdmcuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAtLXNpemUtc3ZnIDogNDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB1bC5jb2x1bW4ge1xyXG4gICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXMpO1xyXG4gICAgICAgICAgICAubmF2LWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb290ZXItYm90dG9tIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgLmNvbnRhaW5lci1uYXJyb3cgPiAqIHtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2Utcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgIC5mb290ZXItbG9nbyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIGZvb3RlciAuZm9vdGVyLW1haW4gLmNvbnRhaW5lci1uYXJyb3cgPiAqIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2UteGwpO1xyXG4gICAgICAgIC5pbmZvcyB7XHJcbiAgICAgICAgICAgIG9yZGVyOiA0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qIHRhYnMgKi9cbi50YWJzX2NvbnRlbnQge1xuICAgIGhlaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tZmFzdC10cmFuc2l0aW9uKTtcbiAgICB9XG59IiwiLyogcmVzZXQgKi9cbmJvZHkge1xuICAgIG1hcmdpbjogMCFpbXBvcnRhbnQ7XG59XG4uY2gtY29va2llLWNvbnNlbnQgKntcbiAgICBtYXJnaW46IDA7XG59XG4uY2gtY29va2llLWNvbnNlbnQgKjpiZWZvcmV7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogY29va2llcyAqL1xuLmNoLWNvb2tpZS1jb25zZW50IHtcbiAgICAtLWNvbG9yLWxpZ2h0OiAjZmZmO1xuICAgIC0tY29sb3ItZGFyazogIzAwMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUsIDc1JSk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDQwcHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDQwcHgpO1xuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiKDAsIDAsIDAsIDEwJSk7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgei1pbmRleDogOTk5OTk7XG4gICAgcGFkZGluZzogMzVweCA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG59XG4uY2gtY29va2llLWNvbnNlbnQgaDMge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxNnB4LCA0dncsIDMycHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMCwgMCwgMCwgMjUlKTtcbn1cbi5jaC1jb29raWUtY29uc2VudCBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5jaC1jb29raWUtY29uc2VudF9fZm9ybSA+ICogKyAqe1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi8qIGJ0bnMgKi9cbi5jaC1jb29raWUtY29uc2VudCAuYnRuLFxuLmNoLWNvb2tpZS1jb25zZW50IGF7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG4uY2gtY29va2llLWNvbnNlbnQgLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kIDogcmdiYSgwLCAwLCAwLCAxMCUpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogLjVyZW0gMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY2gtY29va2llLWNvbnNlbnQgYSxcbi5jaC1jb29raWUtY29uc2VudCBzcGFuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG9wYWNpdHk6IDAuODtcbn1cbi5jaC1jb29raWUtY29uc2VudF9fdG9nZ2xlLWRldGFpbHMtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5jaC1jb29raWUtY29uc2VudF9fYnRuLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cbi5jaC1jb29raWUtY29uc2VudF9fYnRuLWdyb3VwID4gKiArICoge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi8qIGlucHV0IHJhZGlvICovXG4uY2gtY29va2llLWNvbnNlbnRfX2NhdGVnb3J5LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQgOiByZ2JhKDAsIDAsIDAsIDUlKTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuLmNoLWNvb2tpZS1jb25zZW50X19jYXRlZ29yeS1ncm91cCA+ICogKyAqe1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG4uY2gtY29va2llLWNvbnNlbnRfX2NhdGVnb3J5LWdyb3VwIC5jaC1jb29raWUtY29uc2VudF9fY2F0ZWdvcnl7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG4uY2gtY29va2llLWNvbnNlbnRfX2NhdGVnb3J5LWdyb3VwIGg0IHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5jaC1jb29raWUtY29uc2VudF9fY2F0ZWdvcnktZ3JvdXAgaW5wdXQge1xuICAgIGFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMTRweDtcbiAgICB3aWR0aDogMTRweDtcbiAgICBtYXJnaW46IDEwcHg7XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAuY2gtY29va2llLWNvbnNlbnR7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogbm9uZTtcbiAgICB9XG59Iiwic2VjdGlvbjpoYXMoLnN3aXBlcikge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogc3dpcGVyIG5hdiAqL1xyXG4gICAgLnN3aXBlci1uYXYge1xyXG4gICAgICAgIC0tc2l6ZS1idXR0b24gOiA0MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAmLmFsaWduIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDh2dyk7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MHZ3O1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmICsgKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAtLWJhY2tncm91bmQtYnV0dG9uOiB2YXIoLS1wcmltYXJ5KTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNpemUtYnV0dG9uKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1zaXplLWJ1dHRvbik7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XHJcbiAgICAgICAgICAgIHN2Zy5pY29uIHtcclxuICAgICAgICAgICAgICAgIC0tY29sb3Itc3ZnIDogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcclxuICAgICAgICAgICAgc3ZnLmljb24ge1xyXG4gICAgICAgICAgICAgICAgLS1jb2xvci1zdmcgOiB2YXIoLS1wcmltYXJ5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbi8qIHBhZ2luYXRpb24gKi9cclxuICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xyXG4gICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKHZhcigtLXNlY29uZGFyeS12YWx1ZXMpLCAwLjEpO1xyXG4gICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xyXG4gICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XHJcbiAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcm91bmQpO1xyXG4gICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcclxuICAgICAgICAgfVxyXG4gICAgIH1cclxuXHJcbi8qIGFsbCBzd2lwZXIgKi9cclxuICAgIFtkYXRhLWNvbnRyb2xsZXI9XCJzd2lwZXJcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICYgPiAucm93IHtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAmIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgICAgICAgICAgLS1zbGlkZS1zaXplOiAxO1xyXG4gICAgICAgICAgICAgICAgLS1zcGFjZS1zbGlkZTogMTBweDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLyB2YXIoLS1zbGlkZS1zaXplKSk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQgOiB2YXIoLS1zcGFjZS1zbGlkZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgW2RhdGEtc3dpcGVyLXR5cGUtdmFsdWU9XCJkZWZhdWx0XCJdLFxyXG4gICAgW2RhdGEtc3dpcGVyLXR5cGUtdmFsdWU9XCJwcm9kdWN0XCJdIHtcclxuICAgICAgICAuc3dpcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG4gICAgICAgICAgICAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0ycmVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFtkYXRhLXN3aXBlci10eXBlLXZhbHVlPVwiYW5pbVwiXSAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcbiAgICAgICAgJiAuc3dpcGVyLXNsaWRlIHtcclxuICAgICAgICAgICAgLS1zcGFjZS1zbGlkZTogMjBweDtcclxuICAgICAgICAgICAgLS1zbGlkZS1zaXplOiAyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICAgICAgICAgIC0tc2xpZGUtc2l6ZTogMztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xyXG4gICAgICAgICAgICAgICAgLS1zbGlkZS1zaXplOiA0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAtLXNsaWRlLXNpemU6IDU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAgICAgICAgICAgICAtLXNsaWRlLXNpemU6IDY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4vKiBzd2lwZXIgc2xpZGUgcGVyIHZpZXcgKi9cclxuICAgIFtkYXRhLXN3aXBlci10eXBlLXZhbHVlPVwiZGVmYXVsdFwiXSAuc3dpcGVyLXdyYXBwZXIgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgLS1zbGlkZS1zaXplOiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICAgICAgLS1zbGlkZS1zaXplOiAzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFtkYXRhLXN3aXBlci10eXBlLXZhbHVlPVwicHJvZHVjdFwiXSAuc3dpcGVyLXdyYXBwZXIgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICAgICAgLS1zbGlkZS1zaXplOiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xyXG4gICAgICAgICAgICAtLXNsaWRlLXNpemU6IDM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIC0tc2xpZGUtc2l6ZTogNDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAgICAgICAgIC0tc2xpZGUtc2l6ZTogNTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4vKiBzd2lwZXIgdGh1bWJzICovXHJcbiAgICBbZGF0YS1zd2lwZXItdHlwZS12YWx1ZT1cInN3aXBlci10aHVtYnNcIl0ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIFtkYXRhLXN3aXBlci10YXJnZXQ9XCJjb250YWluZXJcIl0ge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNTB2aDtcclxuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBpY3R1cmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zd2lwZXItdGh1bWJzIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2Utcyk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAuc3dpcGVyLXNsaWRle1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjBweDtcclxuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKHZhcigtLWRhcmstcmdiKSwgNTAlKTtcclxuICAgICAgICAgICAgICAgICYuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS10aHVtYi1hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHBpY3R1cmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0iLCIvKiB6b29tIGltZyAqL1xuICAgIFtkYXRhLWFjdGlvbj1cImNsaWNrLT56b29tI29wZW5cIl0ge1xuICAgICAgICBjdXJzb3I6IHpvb20taW47XG4gICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1vZGFsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHpvb20tb3V0O1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgIC5tb2RhbC1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDgwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgfSIsInNlY3Rpb24ucmVhc3N1cmFuY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbCkgMDtcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIC5jb250YWluZXItbmFycm93IHtcbiAgICAgICAgJiA+IC5yb3cge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXhsKTtcbiAgICAgICAgICAgIHN2Zy5pY29uIHtcbiAgICAgICAgICAgICAgICAtLWNvbG9yLXN2ZyA6IHZhcigtLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAtLXNpemUtc3ZnIDogMzJweDtcbiAgICAgICAgICAgICAgICByb3RhdGU6IC0xMGRlZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYgPiAucm93IHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICBzZWN0aW9uLnJlYXNzdXJhbmNlIHtcbiAgICAgICAgLmNvbnRhaW5lci1uYXJyb3cge1xuICAgICAgICAgICAgJiA+IC5yb3cge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNlLW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmFjY29yZGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUtMTApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAmIC5hY2NvcmRpb25fX2ludHJvIHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmspO1xuICAgIC8vY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICAvL2JvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktMzAwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoNCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLXNwYWNlLW0pICsgdmFyKC0tc3BhY2UtcykpKTtcbiAgICB9XG4gICAgJiBkaXYucGx1cyB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtbCk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogdmFyKC0tc3BhY2UtbSk7XG4gICAgfVxuICB9XG4gICYgLmFjY29yZGlvbl9fY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgJiA+ICoge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbSk7XG4gICAgfVxuICAgICY6aGFzKGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSkgPiAqe1xuICAgICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgJi5hY2NvcmRpb25fX2FjdGl2ZSB7XG4gICAgJiBkaXYucGx1cyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICAmIC5hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/