@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");
@import url("../fonts/EurostileLTStd.woff2");
@font-face {
  font-family: "EurostileLTStd";
  src: url("../fonts/EurostileLTStd.woff2") format("woff2"); }

.bg-pink {
  background-color: #ff00aa; }

.bg-dark-grey {
  background-color: #333333; }

/*
 * Adapted from this article on CSS-Tricks: https://css-tricks.com/snippets/css/media-queries-for-standard-devices/
 */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

*,
*:before,
*:after {
  box-sizing: inherit; }

html {
  font-size: 16px;
  font-family: "Roboto Condensed", sans-serif; }

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-style: italic;
  text-rendering: optimizeLegibility;
  word-break: break-word;
  margin: 0;
  font-weight: initial; }

h2 {
  font-size: 1.625rem; }

h3 {
  font-size: 1.5rem;
  font-weight: initial; }

#pcars3-primary-col-2 span:lang(es),
#pcars3-primary-col-2 span:lang(pl),
#pcars3-primary-col-2 span:lang(ru),
#pcars3-primary-col-2 span:lang(br) {
  font-size: 1.25rem; }

.pc-button:lang(es),
.pc-button:lang(pl),
.pc-button:lang(ru),
.pc-button:lang(br) {
  font-size: 1.25rem; }

a {
  text-decoration: none; }

li {
  font-size: 1.25rem;
  font-style: italic;
  padding: 0; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.grid {
  display: grid; }

#footer {
  background-color: #000;
  padding: 3.75rem 1.875rem;
  text-align: center;
  color: white; }

#footer-text {
  max-width: 50rem;
  margin: 0 auto; }

#footer-company-logos {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 30px;
  width: 100%;
  justify-items: center;
  margin-bottom: 30px; }

.cc-window.cc-floating {
  background-color: #292929cc !important;
  border-radius: 0 !important; }

.cc-btn {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.2rem !important;
  font-weight: lighter;
  font-style: italic;
  text-transform: uppercase;
  border-radius: 0 !important; }

.full-page {
  color: white;
  height: 100vh;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .full-page div {
    padding: 0 1.875rem; }

#nav-main {
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: all 0.3s;
  z-index: 1000; }

.nav-logo-cont {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: "logo nav nav";
  align-items: center;
  padding: 1.875rem;
  border-bottom: 1px solid #333333;
  position: relative;
  z-index: 2000; }

.header-logo {
  height: 80px; }
  .header-logo img {
    height: 100%;
    width: auto; }

.noscroll {
  overflow: hidden; }

#nav-mobile-hamburger {
  width: 30px;
  cursor: pointer; }
  #nav-mobile-hamburger div {
    width: 100%;
    height: 1px;
    background-color: white;
    margin: 8px 0; }

#nav-main-mobile-drawer {
  height: calc(100vh - 230px);
  position: fixed;
  margin-top: 14.375rem;
  background-color: #787878;
  width: 100%;
  transition: top 0.2s;
  z-index: 500; }

.mobile-nav-open {
  top: 0; }

.mobile-nav-close {
  top: -140vh; }

#sub-menu {
  justify-content: flex-end;
  padding-right: 2.5rem; }
  #sub-menu h2 {
    padding: 0 1.875rem; }

#sub-menu {
  color: white; }

.sub-menu {
  display: none; }

#nav-mobile {
  display: none; }

.scrollUp {
  transform: translateY(-140px); }

#menu-wpml {
  padding: 0; }
  #menu-wpml li {
    position: relative;
    padding: 0.6rem 0; }
  #menu-wpml li a {
    font-size: calc(0.7vw + 0.4rem); }
    #menu-wpml li a span {
      position: relative;
      bottom: 3px; }

#nav-desktop ul.sub-menu {
  display: none; }

.language-selector-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100vh;
  width: 100vw;
  background-color: rgba(27, 27, 27, 0.658);
  z-index: 2000;
  justify-content: center;
  align-items: center;
  display: flex;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s; }

.display {
  visibility: visible;
  opacity: 1; }

.language-selector-wrapper .sub-menu {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
  z-index: 3000; }
  .language-selector-wrapper .sub-menu .menu-item {
    font-size: calc(1vw + 1rem);
    padding: 0.75rem 1rem; }

.language-selector-overlay {
  position: fixed;
  height: 100vh;
  width: 100vw;
  top: 0;
  left: 0;
  opacity: 0; }

.menu {
  list-style: none;
  padding: 0 0 0 1.875rem; }

.menu-item {
  font-size: 1.625rem; }

.wpml-ls-item a {
  color: black;
  transition: all 0.25s; }

.wpml-ls-item:hover a {
  color: white; }

.wpml-ls-menu-item .wpml-ls-flag {
  width: 40px;
  height: 23px; }

.language-selector-container .sub-menu .wpml-ls-flag {
  width: 10vw;
  height: auto;
  transition: all 0.3s; }

body {
  background-color: black; }

.pc-button {
  background: none;
  color: white;
  position: relative;
  display: inline-block;
  padding: 1.25rem;
  font-size: 1.625rem;
  font-style: italic;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  width: fit-content;
  height: fit-content; }

.pc-button:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: inherit;
  border: 2px solid white;
  -webkit-transform: skewX(-12deg);
  -moz-transform: skewX(-12deg);
  -ms-transform: skewX(-12deg);
  transform: skewX(-12deg);
  transition: all 1s; }

.pc-button:focus {
  outline: none; }

.hero {
  height: 55vh;
  justify-content: center;
  align-items: center;
  color: white; }

.titles {
  padding: 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }

.features {
  height: 75vh;
  padding: 30px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  border-bottom: 1px solid #787878; }
  .features h3 {
    max-width: 81.1875rem; }

.two-col-cont {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 80vw 1fr; }

#pcars3-section {
  background-image: url("../images/project-cars-3-hub-col-2@2x.jpg");
  background-size: 102%;
  background-position: center; }

#pcars2-section {
  background-image: url("../images/project-cars-2-hub-col-2@2x.jpg");
  background-size: cover;
  background-position: center; }

.no-webp .pcars3-eu {
  background: url("../images/project-cars-3-hub-col-1-v2@2x.jpg"); }

.webp .pcars3-eu {
  background: url("../images/project-cars-3-hub-col-1-v2@2x.webp"); }

.primary-col-1 {
  overflow: hidden;
  background-size: cover !important;
  background-position: center !important; }

.hero-logo {
  width: 100%; }

#pcars3-primary-col-2 {
  padding: 1.875rem 1.875rem;
  text-align: center; }
  #pcars3-primary-col-2 .pc-button {
    position: relative; }
  #pcars3-primary-col-2 .pc-button::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f7961e+0,fde900+100 */
    background: #f7961e;
    /* Old browsers */
    background: -moz-linear-gradient(left, #f7961e 0%, #fde900 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f7961e 0%, #fde900 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f7961e 0%, #fde900 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7961e', endColorstr='#fde900',GradientType=1 );
    /* IE6-9 */
    -webkit-transform: skewX(-12deg);
    -moz-transform: skewX(-12deg);
    -ms-transform: skewX(-12deg);
    transform: skewX(-12deg);
    transition: all 1s; }
  #pcars3-primary-col-2 .pc-button:after {
    border: 0; }
  #pcars3-primary-col-2 span {
    color: #000;
    font-weight: bold;
    -webkit-transform: skewX(12deg);
    -moz-transform: skewX(12deg);
    -ms-transform: skewX(12deg);
    transform: skewX(12deg);
    position: relative;
    z-index: 3; }
  #pcars3-primary-col-2 .yellow-text {
    color: #fde900;
    display: none; }
  #pcars3-primary-col-2 p {
    color: white;
    font-size: calc(1vw + 1rem); }

#pcars2-primary-col-1 {
  background-image: url("../images/project-cars-2-hub-col-1-v2@2x.jpg");
  background-size: cover;
  background-position: center; }

#pcars2-primary-col-2 {
  padding: 3.75rem 1.875rem; }
  #pcars2-primary-col-2 p {
    font-family: "EurostileLTStd", sans-serif;
    font-style: initial;
    color: #7baeff;
    text-align: center;
    font-size: calc(1vw + 1rem); }

.col-2-inner-cont {
  display: grid;
  row-gap: 1.875rem;
  justify-items: center;
  max-width: 100%; }
  .col-2-inner-cont h2 {
    color: white;
    font-weight: 400; }

#social-cont {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 1.875rem; }

#pcars1-primary-col-1 {
  background-image: url("../images/project-cars-1@2x.jpg");
  background-size: cover;
  background-position: center; }

.u-responsive-video {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 35px;
  height: 0;
  overflow: hidden; }
  .u-responsive-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.flex {
  display: flex; }

.flex-col {
  flex-direction: column; }

.align-center {
  align-items: center; }

.flex-justify-between {
  justify-content: space-between; }

.flex-justify-center {
  justify-content: center; }

/* Smartphones (portrait and landscape) ----------- */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  /* Styles */ }

/* Smartphones (landscape) ----------- */
@media only screen and (min-width: 321px) and (orientation: landscape) {
  /* Styles */
  .hero-logo {
    width: 50%; }
  .two-col-cont {
    grid-template-rows: 50vw 1fr; }
  .language-selector-wrapper .sub-menu {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
  .language-selector-container .sub-menu .wpml-ls-flag {
    width: 6vw; } }

/* Smartphones (portrait) ----------- */
@media only screen and (max-width: 320px) {
  /* Styles */ }

/* iPads (portrait and landscape) ----------- */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /* Styles */
  #pcars3-primary-col-2 {
    padding: 3.75rem 1.875rem; } }

/* iPads (landscape) ----------- */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
  /* Styles */
  .primary-col-1,
  #pcars2-primary-col-1,
  #pcars1-primary-col-1 {
    clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
    -webkit-clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%); }
  .two-col-cont {
    min-height: 62vh;
    grid-template-columns: 1.5fr 1fr;
    grid-template-rows: 1fr; }
  #pcars3-primary-col-2 p {
    font-size: calc(0.9vw + 0.5rem); }
  #pcars2-primary-col-2 p {
    font-size: calc(0.9vw + 0.3rem); }
  .language-selector-wrapper .sub-menu {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; }
  .language-selector-container .sub-menu .wpml-ls-flag {
    width: 5vw; } }

/* iPads (portrait) ----------- */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {
  /* Styles */
  .hero-logo {
    width: 50%; }
  .two-col-cont {
    grid-template-rows: 60vw 1fr; }
  .language-selector-wrapper .sub-menu {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; }
  .language-selector-container .sub-menu .wpml-ls-flag {
    width: 6vw; } }

/* Desktops and laptops ----------- */
@media only screen and (min-width: 1224px) {
  #menu-wpml li a {
    padding: 20px; }
  .language-selector-wrapper .sub-menu .menu-item {
    padding: 0.75rem 2rem; }
  .language-selector-wrapper .sub-menu {
    display: flex;
    align-items: center;
    grid-template-columns: initial; }
  .language-selector-container .sub-menu .wpml-ls-flag {
    width: 3vw;
    height: auto;
    transition: all 0.3s; }
  .language-selector-container .sub-menu .wpml-ls-flag:hover {
    width: 5vw; }
  /* Styles */
  .col-2-inner-cont {
    max-width: 100%; }
  .hero-logo {
    width: 50%; }
  #pcars3-primary-col-2 p {
    font-size: calc(0.5vw + 0.5rem); }
  #pcars2-primary-col-2 p {
    font-size: calc(0.5vw + 0.3rem); }
  #nav-mobile-hamburger {
    display: none; }
  #nav-main {
    text-align: left; }
  #sub-menu h2 {
    padding: 0 7.5rem; }
  #nav-desktop {
    display: block;
    grid-area: nav; }
    #nav-desktop ul {
      justify-content: flex-end;
      list-style: none; }
      #nav-desktop ul li {
        margin-left: 1.875rem;
        cursor: pointer; }
  .two-col-cont {
    min-height: 62vh;
    grid-template-columns: 1.5fr 1fr;
    grid-template-rows: 1fr; }
  #primary-col-1 {
    background-position: center; }
  .features {
    height: 55vh; }
  .primary-col-1,
  #pcars2-primary-col-1,
  #pcars1-primary-col-1 {
    clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
    -webkit-clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%); }
  .col-2-inner-cont {
    max-width: 65vh; }
  .primary-col-1 {
    background: none;
    transition: all 1s; }
  .no-webp .pcars3-eu::before {
    background: url("../images/project-cars-3-hub-col-1-v2@2x.jpg"); }
  .no-webp .pcars3-us::before {
    background: url("../images/project-cars-3-hub-col-1-v2-us@2x.jpg"); }
  .no-webp .pcars3-as::before {
    background: url("../images/project-cars-3-hub-col-1-v2-asia@2x.jpg"); }
  .webp .pcars3-eu::before {
    background: url("../images/project-cars-3-hub-col-1-v2@2x.webp"); }
  .webp .pcars3-us::before {
    background: url("../images/project-cars-3-hub-col-1-v2-us@2x.webp"); }
  .webp .pcars3-as::before {
    background: url("../images/project-cars-3-hub-col-1-v2-asia@2x.webp"); }
  .primary-col-1::before {
    content: "";
    position: absolute;
    width: 60%;
    min-height: 72vh;
    top: 0px;
    left: 0px;
    z-index: -1;
    background-size: cover !important;
    background-position: center !important;
    transition: all 1.5s; }
  #pcars3-section:hover .pc-button::before {
    transform: scaleX(1.1) skewX(-11deg); }
  #pcars3-section:hover .primary-col-1 {
    clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%);
    -webkit-clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%); }
  #pcars3-section:hover .primary-col-1::before {
    transform: scale(1.05); }
  #pcars2-primary-col-1 {
    background: none;
    position: relative;
    transition: all 1s; }
  #pcars2-primary-col-1::before {
    content: "";
    position: absolute;
    width: 100%;
    min-height: 72vh;
    top: 0px;
    left: 0px;
    z-index: -1;
    background: url("../images/project-cars-2-hub-col-1-v2@2x.jpg");
    background-size: cover;
    background-position: center;
    transition: all 1.5s; }
  #pcars2-section:hover .pc-button::after {
    transform: scaleX(1.1) skewX(-11deg); }
  #pcars2-section:hover #pcars2-primary-col-1 {
    clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%);
    -webkit-clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%); }
  #pcars2-section:hover #pcars2-primary-col-1::before {
    transform: scale(1.05); }
  #pcars1-primary-col-1 {
    background: none;
    position: relative;
    transition: all 1s; }
  #pcars1-primary-col-1::before {
    content: "";
    position: absolute;
    width: 100%;
    min-height: 72vh;
    top: 0px;
    left: 0px;
    z-index: -1;
    background: url("../images/project-cars-1@2x.jpg");
    background-size: cover;
    background-position: top;
    transition: all 1.5s; }
  #pcars1-section:hover .pc-button::after {
    transform: scaleX(1.1) skewX(-11deg); }
  #pcars1-section:hover #pcars1-primary-col-1 {
    clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%);
    -webkit-clip-path: polygon(0 0, 98% 0%, 83% 100%, 0% 100%); }
  #pcars1-section:hover #pcars1-primary-col-1::before {
    transform: scale(1.05); } }

/* Tall 1080p monitor  -------------- */
@media only screen and (min-width: 1080px) and (min-height: 1920px) {
  .hero-logo {
    width: 50%; } }

/* Large screens ----------- */
@media only screen and (min-width: 1824px) {
  /* Styles */
  .hero-logo {
    width: 100%; } }

/* Ultrawide 1080p / 1440p --------- */
@media only screen and (min-width: 2500px) {
  .col-2-inner-cont {
    max-width: 100%; }
  .hero-logo {
    width: 50%; }
  #pcars3-primary-col-2 p {
    font-size: calc(0.5vw + 0.5rem); }
  #pcars2-primary-col-2 p {
    font-size: calc(0.5vw + 0.3rem); }
  .primary-col-1::before {
    min-height: 62vh;
    background-position: right center; }
  #pcars2-primary-col-1::before {
    min-height: 62vh;
    background-position: right center; } }

/* Ultrawide 4k --------- */
@media only screen and (min-width: 3800px) and (min-height: 1600px) {
  .primary-col-1::before {
    min-height: 63vh;
    background-position: right -18vh; }
  #pcars2-primary-col-1::before {
    min-height: 82vh;
    background-position: right -18vh; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmNzcyIsInNvdXJjZXMiOlsiYnVuZGxlLnNjc3MiLCJzZXR0aW5ncy9fZ2xvYmFsLnNjc3MiLCJzZXR0aW5ncy9fY29sb3Vycy5zY3NzIiwic2V0dGluZ3MvX2JyZWFrLXBvaW50cy5zY3NzIiwic2V0dGluZ3MvX3R5cG9ncmFwaHkuc2NzcyIsInRvb2xzL191bml0cy5zY3NzIiwidG9vbHMvX2JyZWFrcG9pbnQuc2NzcyIsImdlbmVyaWMvX25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplLmNzcyIsImdlbmVyaWMvX2JveC1zaXppbmcuc2NzcyIsImVsZW1lbnRzL19nZW5lcmFsLnNjc3MiLCJlbGVtZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwiZWxlbWVudHMvX2Zvcm0uc2NzcyIsImVsZW1lbnRzL19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCJvYmplY3RzL193cC5zY3NzIiwib2JqZWN0cy9fZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fd2lkZ2V0LnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fY29tbWVudC5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLWZvcm0uc2NzcyIsImNvbXBvbmVudHMvX25hdi1saW5rcy5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbnMuc2NzcyIsInV0aWxzL19oZWxwZXJzLnNjc3MiLCJ1dGlscy9fZmxleC5zY3NzIiwidXRpbHMvX21hcmdpbnMuc2NzcyIsInJlc3BvbnNpdmUvbWFpbi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuL3NldHRpbmdzL2dsb2JhbFwiO1xuQGltcG9ydCBcIi4vc2V0dGluZ3MvY29sb3Vyc1wiO1xuQGltcG9ydCBcIi4vc2V0dGluZ3MvYnJlYWstcG9pbnRzXCI7XG5AaW1wb3J0IFwiLi9zZXR0aW5ncy90eXBvZ3JhcGh5XCI7XG5cbkBpbXBvcnQgXCIuL3Rvb2xzL3VuaXRzXCI7XG5AaW1wb3J0IFwiLi90b29scy9icmVha3BvaW50XCI7XG5cbkBpbXBvcnQgXCIuL2dlbmVyaWMvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiLi9nZW5lcmljL2JveC1zaXppbmdcIjtcblxuQGltcG9ydCBcIi4vZWxlbWVudHMvZ2VuZXJhbFwiO1xuQGltcG9ydCBcIi4vZWxlbWVudHMvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcIi4vZWxlbWVudHMvZm9ybVwiO1xuQGltcG9ydCBcIi4vZWxlbWVudHMvcHJpbnRcIjtcbi8vICRmYS1mb250LXBhdGg6IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3dlYmZvbnRzXCI7XG4vLyBAaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvZmEtc29saWQuc2Nzc1wiO1xuLy8gQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2ZhLXJlZ3VsYXIuc2Nzc1wiO1xuLy8gQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2ZvbnRhd2Vzb21lXCI7XG5cbkBpbXBvcnQgXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2Nzc1wiO1xuXG5AaW1wb3J0IFwiLi9vYmplY3RzL3dwXCI7XG5AaW1wb3J0IFwiLi9vYmplY3RzL2dyaWRcIjtcblxuQGltcG9ydCBcIi4vY29tcG9uZW50cy9wb3N0XCI7XG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL3BhZ2VcIjtcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvd2lkZ2V0XCI7XG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL2Zvb3RlclwiO1xuQGltcG9ydCBcIi4vY29tcG9uZW50cy9oZWFkZXJcIjtcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvY29tbWVudFwiO1xuQGltcG9ydCBcIi4vY29tcG9uZW50cy9zZWFyY2gtZm9ybVwiO1xuQGltcG9ydCBcIi4vY29tcG9uZW50cy9uYXYtbGlua3NcIjtcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcblxuQGltcG9ydCBcIi4vdXRpbHMvaGVscGVyc1wiO1xuQGltcG9ydCBcIi4vdXRpbHMvZmxleFwiO1xuQGltcG9ydCBcIi4vdXRpbHMvbWFyZ2luc1wiO1xuXG5AaW1wb3J0IFwiLi9yZXNwb25zaXZlL21haW5cIjtcbiIsIi8vIEBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvK01vbm86MzAwLDQwMCw1MDAsNzAwLDcwMGknKTtcbi8vIEBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bytTbGFiOjMwMCw0MDAsNzAwXCIpO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVJvYm90bytDb25kZW5zZWQ6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNzAwOzEsMzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcFwiKTtcblxuQGltcG9ydCB1cmwoXCIuLi9mb250cy9FdXJvc3RpbGVMVFN0ZC53b2ZmMlwiKTtcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkV1cm9zdGlsZUxUU3RkXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvRXVyb3N0aWxlTFRTdGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG59XG5cbi8vICRib2R5LWJhY2tncm91bmQ6ICNmM2YzZjMgIWRlZmF1bHQ7XG4vLyAkYm9keS1iYWNrZ3JvdW5kOiBibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiBcIlJvYm90byBDb25kZW5zZWRcIiwgc2Fucy1zZXJpZjtcbiRwY2FyczItZm9udDogXCJFdXJvc3RpbGVMVFN0ZFwiLCBzYW5zLXNlcmlmO1xuXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IDQwMCAhZGVmYXVsdDtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuJGJvZHktZm9udC1jb2xvcjogIzAwMDAwMCAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtc2l6ZTogMTUwJSAhZGVmYXVsdDtcbi8vICRnbG9iYWwtd2lkdGg6IDEyMDAgIWRlZmF1bHQ7XG5cbi8vIHJlbS1jYWxjIGZ1bmN0aW9uXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHNpemUpIHtcbiAgJHJlbVNpemU6ICRzaXplIC8gMTY7XG4gIEByZXR1cm4gI3skcmVtU2l6ZX1yZW07XG59XG5cbiRpbm5lci13aWR0aDogcmVtLWNhbGMoMTI5OSk7XG4kaW5uZXItd2lkdGgtc21hbGw6IHJlbS1jYWxjKDgwMCk7XG4iLCIvLyAkcHJpbWFyeS1jb2xvdXI6IHJnYigzMiwgMjIxLCAxNzQpO1xuJHByaW1hcnktY29sb3VyOiB3aGl0ZTtcbiRwcmltYXJ5LWNvbG91ci1kaW06ICMwYTk2OWI7XG5cbiR5ZWxsb3ctY29sb3VyOiAjZmRlOTAwO1xuXG4kc2Vjb25kYXJ5LWNvbG91cjogIzQ5ZmYxMTtcbiRhbGVydC1jb2xvdXI6ICNmMDM7XG4kd2FybmluZy1jb2xvdXI6IHllbGxvdztcbiRzdWNjZXNzLWNvbG91cjogZ3JlZW47XG5cbiRncmV5OiAjY2NjO1xuJGxpZ2h0LWdyZXk6ICM3ODc4Nzg7XG4kbWVkaXVtLWdyZXk6ICM0MDQwNDA7XG4kZGFyay1ncmV5OiAjMzMzMzMzO1xuXG4kcGluay1jb2xvdXI6ICNmZjAwYWE7XG4kYmxhY2stY29sb3VyOiAjMDAwO1xuXG4kcGNhcnMyLWxpZ2h0LWJsdWU6ICM3YmFlZmY7XG5cbi5iZy1waW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBpbmstY29sb3VyO1xufVxuXG4uYmctZGFyay1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JleTtcbn1cbiIsIi8vICRicmVha3BvaW50czogKFxuLy8gICAgIHNtYWxsOiAwLFxuLy8gICAgIG1lZGl1bTogNjQwcHgsXG4vLyAgICAgbGFyZ2U6IDEwMjRweCxcbi8vICAgICB4bGFyZ2U6IDEyMDBweCxcbi8vICk7XG5cbi8qXG4gKiBBZGFwdGVkIGZyb20gdGhpcyBhcnRpY2xlIG9uIENTUy1Ucmlja3M6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL21lZGlhLXF1ZXJpZXMtZm9yLXN0YW5kYXJkLWRldmljZXMvXG4gKi9cbiIsIi8vICRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuLy8gJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuLy8gJGhlYWRlci1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG4vLyAkZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gJGZvbnQtZmFtaWx5LXNlcmlmOiBcInNlcmlmXCIgIWRlZmF1bHQ7XG4vLyAkaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuLy8gJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4vLyAkaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcbi8vICRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAjMzMzMzMzICFkZWZhdWx0O1xuLy8gJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG4vLyAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzOiAoXG4vLyAgIHNtYWxsOiAoXG4vLyAgICAgXCJoMVwiOiAoXG4vLyAgICAgICBcImZvbnQtc2l6ZVwiOiAyNCxcbi8vICAgICApLFxuLy8gICAgIFwiaDJcIjogKFxuLy8gICAgICAgXCJmb250LXNpemVcIjogMjAsXG4vLyAgICAgKSxcbi8vICAgICBcImgzXCI6IChcbi8vICAgICAgIFwiZm9udC1zaXplXCI6IDE5LFxuLy8gICAgICksXG4vLyAgICAgXCJoNFwiOiAoXG4vLyAgICAgICBcImZvbnQtc2l6ZVwiOiAxOCxcbi8vICAgICApLFxuLy8gICAgIFwiaDVcIjogKFxuLy8gICAgICAgXCJmb250LXNpemVcIjogMTcsXG4vLyAgICAgKSxcbi8vICAgICBcImg2XCI6IChcbi8vICAgICAgIFwiZm9udC1zaXplXCI6IDE2LFxuLy8gICAgICksXG4vLyAgICksXG4vLyAgIG1lZGl1bTogKFxuLy8gICAgIFwiaDFcIjogKFxuLy8gICAgICAgXCJmb250LXNpemVcIjogNDgsXG4vLyAgICAgKSxcbi8vICAgICBcImgyXCI6IChcbi8vICAgICAgIFwiZm9udC1zaXplXCI6IDQwLFxuLy8gICAgICksXG4vLyAgICAgXCJoM1wiOiAoXG4vLyAgICAgICBcImZvbnQtc2l6ZVwiOiAzMSxcbi8vICAgICApLFxuLy8gICAgIFwiaDRcIjogKFxuLy8gICAgICAgXCJmb250LXNpemVcIjogMjUsXG4vLyAgICAgKSxcbi8vICAgICBcImg1XCI6IChcbi8vICAgICAgIFwiZm9udC1zaXplXCI6IDIwLFxuLy8gICAgICksXG4vLyAgICAgXCJoNlwiOiAoXG4vLyAgICAgICBcImZvbnQtc2l6ZVwiOiAxNixcbi8vICAgICApLFxuLy8gICApLFxuLy8gKSAhZGVmYXVsdDtcbiIsIi8vIC8vQm9ycm93ZWQgRnJvbSBGb3VuZGF0aW9uXG5cbi8vIEBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbi8vICAgICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbi8vIH1cblxuLy8gQGZ1bmN0aW9uIHRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4vLyAgICAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4vLyAgICAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4vLyAgICAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4vLyAgICAgICBAcmV0dXJuICR2YWx1ZTtcbi8vICAgICB9XG5cbi8vICAgICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4vLyAgICAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbi8vICAgICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbi8vICAgICB9XG5cbi8vICAgICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuLy8gICAgIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuLy8gICAgICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4vLyAgICAgfVxuXG4vLyAgICAgLy8gVHVybiAwcmVtIGludG8gMFxuLy8gICAgIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4vLyAgICAgICAkdmFsdWU6IDA7XG4vLyAgICAgfVxuXG4vLyAgICAgQHJldHVybiAkdmFsdWU7XG4vLyB9XG5cbi8vIEBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuLy8gICAgICRyZW0tdmFsdWVzOiAoKTtcbi8vICAgICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuLy8gICAgIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbi8vICAgICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4vLyAgICAgICAkYmFzZTogJGJhc2UtZm9udC1zaXplO1xuLy8gICAgIH1cblxuLy8gICAgIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuLy8gICAgIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbi8vICAgICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbi8vICAgICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4vLyAgICAgfVxuXG4vLyAgICAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuLy8gICAgIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4vLyAgICAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuLy8gICAgIH1cblxuLy8gICAgIEBpZiAkY291bnQgPT0gMSB7XG4vLyAgICAgICBAcmV0dXJuIHRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4vLyAgICAgfVxuXG4vLyAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuLy8gICAgICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4vLyAgICAgfVxuXG4vLyAgICAgQHJldHVybiAkcmVtLXZhbHVlcztcbi8vIH1cbiIsIi8vICRicmVha3BvaW50czogKFxuLy8gICBzbWFsbDogMCxcbi8vICAgbWVkaXVtOiA2NDBweCxcbi8vICAgbGFyZ2U6IDEwMjRweCxcbi8vICkgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbiBicmVha3BvaW50KCRxdWVyeSkge1xuXG4vLyAgICAgQGlmKHR5cGUtb2YoJHF1ZXJ5KSAhPSAnc3RyaW5nJyBhbmQgdHlwZS1vZigkcXVlcnkpICE9ICdsaXN0Jykge1xuLy8gICAgICAgICBAd2FybiBcImJyZWFrcG9pbnQgbWl4aW4gb25seSBhY2NlcHRzIGEgc3RyaW5nIG9yIGEgbGlzdCwgYCN7JHF1ZXJ5fWAgZ2l2ZW4uXCI7XG4vLyAgICAgfVxuXG4vLyAgICAgJGJwOiBudGgoJHF1ZXJ5LCAxKTtcbi8vICAgICAkZGlyOiBpZihsZW5ndGgoJHF1ZXJ5KSA+IDEsIG50aCgkcXVlcnksIDIpLCB1cCk7XG5cbi8vICAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4vLyAgICAgICAgIEB3YXJuIFwiYnJlYWtwb2ludCBgI3skYnB9YCBpcyBub3Qgc3VwcG9ydGVkIGBzbWFsbGAgaXMgdXNlZCBpbnN0ZWFkLiBBdmFpbGFibGUgYnJlYWtwb2ludHM6ICN7bWFwLWtleXMoJGJyZWFrcG9pbnRzKX0uXCI7XG4vLyAgICAgICAgICRicDogc21hbGw7XG4vLyAgICAgfVxuLy8gICAgIEBpZiBub3QgKCRkaXIgPT0gJ3VwJyBvciAkZGlyID09ICdkb3duJyBvciAkZGlyID09ICdvbmx5Jykge1xuLy8gICAgICAgICBAd2FybiBcImJyZWFrcG9pbnQgZGlyZWN0aW9uIGAjeyRkaXJ9YCBpcyBub3Qgc3VwcG9ydGVkIGB1cGAgaXMgdXNlZCBpbnN0ZWFkLiBBdmFpbGFibGUgYnJlYWtwb2ludHMgZGlyZWN0aW9uczogdXAsIGRvd24sIG9ubHkuXCI7XG4vLyAgICAgICAgICRkaXI6IHVwO1xuLy8gICAgIH1cblxuLy8gICAgICRtcXM6ICdzY3JlZW4nO1xuLy8gICAgICRicHNsOiBsZW5ndGgoJGJyZWFrcG9pbnRzKTtcbi8vICAgICAkYnBpOiBpbmRleChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAkYnApO1xuLy8gICAgICRuYnA6IGlmKCRicGkgKyAxIDw9ICRicHNsLCAkYnBpICsgMSwgbnVsbCk7XG4vLyAgICAgJHBicDogaWYoJGJwaSA+IDEsICRicGkgLSAxLCBudWxsKTtcblxuLy8gICAgICRicHY6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuXG4vLyAgICAgQGlmICgkZGlyID09ICd1cCcpIHtcbi8vICAgICAgICAgQGlmIChzdHJpcC11bml0KCRicHYpID4gMCkge1xuLy8gICAgICAgICAgICAgJG1xczogJ3NjcmVlbiBhbmQgKG1pbi13aWR0aDogI3tzdHJpcC11bml0KHJlbS1jYWxjKCRicHYpKSoxZW19KSc7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgQGlmICgkZGlyID09ICdkb3duJykge1xuLy8gICAgICAgICBAaWYgKCRuYnApIHtcbi8vICAgICAgICAgICAgICRuYnB2OiBtYXAtZ2V0KCAkYnJlYWtwb2ludHMsIG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAkbmJwKSk7XG4vLyAgICAgICAgICAgICAkbXFzOiAnc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAje3N0cmlwLXVuaXQocmVtLWNhbGMoJG5icHYgLSAxKSkqMWVtfSknO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgIEBpZiAoJGRpciA9PSAnb25seScpIHtcbi8vICAgICAgICAgQGlmIChzdHJpcC11bml0KCRicHYpID4gMCkge1xuLy8gICAgICAgICAgICAgJG1xczogJG1xcyArICcgYW5kIChtaW4td2lkdGg6ICN7c3RyaXAtdW5pdChyZW0tY2FsYygkYnB2KSkqMWVtfSknO1xuLy8gICAgICAgICB9XG4vLyAgICAgICAgIEBpZiAoJG5icCkge1xuLy8gICAgICAgICAgICAgJG5icHY6IG1hcC1nZXQoICRicmVha3BvaW50cywgbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksICRuYnApKTtcbi8vICAgICAgICAgICAgICRtcXM6ICRtcXMgKyAnIGFuZCAobWF4LXdpZHRoOiAje3N0cmlwLXVuaXQocmVtLWNhbGMoJG5icHYgLSAxKSkqMWVtfSknO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuXG4vLyAgICAgQG1lZGlhICN7JG1xc30geyBAY29udGVudDsgfVxuXG4vLyB9XG4iLCJAaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUnOyIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIqLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cbiIsIi8vIGh0bWwge1xuLy8gICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuLy8gICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbi8vIH1cblxuLy8gYm9keSB7XG4vLyAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4vLyAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbi8vICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbi8vICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4vLyAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuLy8gICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuLy8gICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuLy8gfVxuXG4vLyBpbWcge1xuLy8gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4vLyAgIG1heC13aWR0aDogMTAwJTtcbi8vICAgaGVpZ2h0OiBhdXRvO1xuLy8gICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuLy8gfVxuXG4vLyA6Zm9jdXMge1xuLy8gICBvdXRsaW5lOiAycHggc29saWQgJHByaW1hcnktY29sb3VyO1xuLy8gfVxuLy8gOjpzZWxlY3Rpb24ge1xuLy8gICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgIGNvbG9yOiAjZmZmZmZmO1xuLy8gfVxuLy8gOjotbW96LXNlbGVjdGlvbiB7XG4vLyAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG91cjtcbi8vICAgY29sb3I6ICNmZmZmZmY7XG4vLyB9XG4iLCIvLyBkaXYsXG4vLyBkbCxcbi8vIGR0LFxuLy8gZGQsXG4vLyB1bCxcbi8vIG9sLFxuLy8gbGksXG4vLyBoMSxcbi8vIGgyLFxuLy8gaDMsXG4vLyBoNCxcbi8vIGg1LFxuLy8gaDYsXG4vLyBwcmUsXG4vLyBmb3JtLFxuLy8gcCxcbi8vIGJsb2NrcXVvdGUsXG4vLyB0aCxcbi8vIHRkIHtcbi8vICAgbWFyZ2luOiAwO1xuLy8gICBwYWRkaW5nOiAwO1xuLy8gfVxuLy8gcCB7XG4vLyAgIC8vIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vICAgZm9udC1zaXplOiBpbmhlcml0O1xuLy8gICBmb250LXN0eWxlOiBpdGFsaWM7XG4vLyAgIC8vIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4vLyAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4vLyAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbi8vICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbi8vICAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuLy8gICAtbW96LWh5cGhlbnM6IGF1dG87XG4vLyAgIC1tcy1oeXBoZW5zOiBhdXRvO1xuLy8gICBoeXBoZW5zOiBhdXRvO1xuLy8gfVxuXG4vLyBhIHtcbi8vICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4vLyAgIGN1cnNvcjogcG9pbnRlcjtcbi8vICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbi8vICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuLy8gICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xuLy8gICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4vLyAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4vLyAgICY6dmlzaXRlZCB7XG4vLyAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuLy8gICB9XG4vLyAgICY6aG92ZXIge1xuLy8gICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAgIH1cbi8vICAgJjphY3RpdmUge1xuLy8gICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgIH1cbi8vICAgJjpmb2N1cyB7XG4vLyAgICAgYm9yZGVyOiBub25lO1xuLy8gICB9XG4vLyB9XG5cbi8vIGhyIHtcbi8vICAgY2xlYXI6IGJvdGg7XG4vLyAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbi8vICAgaGVpZ2h0OiAwO1xuLy8gICBtYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuLy8gICBib3JkZXItdG9wOiAwO1xuLy8gICBib3JkZXItcmlnaHQ6IDA7XG4vLyAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbi8vICAgYm9yZGVyLWxlZnQ6IDA7XG4vLyB9XG5cbi8vIHN0cm9uZyxcbi8vIGIge1xuLy8gICBmb250LXdlaWdodDogYm9sZDtcbi8vIH1cbi8vIGVtLFxuLy8gaSB7XG4vLyAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbi8vIH1cbi8vIHNtYWxsIHtcbi8vICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuLy8gICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbi8vIH1cbmh0bWwge1xuICAvLyBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xufVxuXG5wLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICAvLyBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgLy8gY29sb3I6ICRoZWFkZXItY29sb3I7XG4gIC8vIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmVoZWlnaHQ7XG4gIC8vIG1hcmdpbi1ib3R0b206ICRoZWFkZXItbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogaW5pdGlhbDtcbiAgLy8gc21hbGwge1xuICAvLyAgIGxpbmUtaGVpZ2h0OiAwO1xuICAvLyAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gIC8vIH1cbn1cbmgyIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG59XG5oMyB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICBmb250LXdlaWdodDogaW5pdGlhbDtcbn1cblxuI3BjYXJzMy1wcmltYXJ5LWNvbC0yIHNwYW46bGFuZyhlcyksXG4jcGNhcnMzLXByaW1hcnktY29sLTIgc3BhbjpsYW5nKHBsKSxcbiNwY2FyczMtcHJpbWFyeS1jb2wtMiBzcGFuOmxhbmcocnUpLFxuI3BjYXJzMy1wcmltYXJ5LWNvbC0yIHNwYW46bGFuZyhicikge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbn1cblxuLnBjLWJ1dHRvbjpsYW5nKGVzKSxcbi5wYy1idXR0b246bGFuZyhwbCksXG4ucGMtYnV0dG9uOmxhbmcocnUpLFxuLnBjLWJ1dHRvbjpsYW5nKGJyKSB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xufVxuLy8gQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbi8vICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuLy8gICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4vLyAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4vLyAgICAgICAjeyRoZWFkZXJ9IHtcbi8vICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4vLyAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4vLyAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4vLyAgICAgICAgIH1cbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cbi8vIGJsb2NrcXVvdGUge1xuLy8gICBmb250LXN0eWxlOiBpdGFsaWM7XG4vLyAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vICAgcGFkZGluZzogcmVtLWNhbGMoMjAgNDAgMjAgNDApO1xuLy8gICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlcmlmO1xuLy8gICAmLFxuLy8gICBwIHtcbi8vICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuLy8gICB9XG4vLyB9XG4vLyBjaXRlIHtcbi8vICAgJjpiZWZvcmUge1xuLy8gICAgIGNvbnRlbnQ6IFwi4oCUXCI7XG4vLyAgIH1cbi8vIH1cbi8vIC8vIExpc3RzXG4vLyB1bCxcbi8vIG9sLFxuLy8gZGwge1xuLy8gICAvLyBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4vLyAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4vLyAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4vLyB9XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmxpIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgcGFkZGluZzogMDtcbn1cblxuLy8gdWwge1xuLy8gICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4vLyB9XG5cbi8vIG9sIHtcbi8vICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4vLyB9XG5cbi8vIHVsLFxuLy8gb2wge1xuLy8gICAmICYge1xuLy8gICAgIG1hcmdpbjogMXJlbSAwIDFyZW0gMS41cmVtO1xuLy8gICAgIGZvbnQtc2l6ZTogOTAlO1xuLy8gICB9XG4vLyB9XG5cbi8vIGRsIHtcbi8vICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbi8vICAgZHQge1xuLy8gICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbi8vICAgICBmb250LXdlaWdodDogNjAwO1xuLy8gICB9XG4vLyAgIGRkIHtcbi8vICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4vLyAgIH1cbi8vIH1cblxuLy8gYWJicixcbi8vIGFiYnJbdGl0bGVdIHtcbi8vICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkbWVkaXVtLWdyZXk7XG4vLyAgIGN1cnNvcjogaGVscDtcbi8vICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuLy8gfVxuXG4vLyBmaWd1cmUge1xuLy8gICBtYXJnaW46IDA7XG4vLyB9XG5cbi8vIHByZSB7XG4vLyAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuLy8gICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4vLyAgIGZvbnQtc2l6ZTogMXJlbTtcbi8vICAgd2hpdGUtc3BhY2U6IHByZS13cmFwOyAvKiBTaW5jZSBDU1MgMi4xICovXG4vLyAgIHdoaXRlLXNwYWNlOiAtbW96LXByZS13cmFwOyAvKiBNb3ppbGxhLCBzaW5jZSAxOTk5ICovXG4vLyAgIHdoaXRlLXNwYWNlOiAtcHJlLXdyYXA7IC8qIE9wZXJhIDQtNiAqL1xuLy8gICB3aGl0ZS1zcGFjZTogLW8tcHJlLXdyYXA7IC8qIE9wZXJhIDcgKi9cbi8vICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy8gICA+IGNvZGUge1xuLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuLy8gICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4vLyAgIH1cbi8vIH1cbi8vIGNvZGUge1xuLy8gICBwYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4vLyAgIGJvcmRlcjogbm9uZTtcbi8vICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyZXk7XG4vLyAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuLy8gICBib3JkZXItcmFkaXVzOiA0cHg7XG4vLyAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuLy8gICBmb250LXNpemU6IDFyZW07XG4vLyAgIG92ZXJmbG93OiBhdXRvO1xuLy8gfVxuXG4vLyB0YWJsZSB7XG4vLyAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4vLyAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vIH1cbi8vIHRyIHtcbi8vICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuLy8gfVxuLy8gdGgsXG4vLyB0ZCB7XG4vLyAgIHRleHQtYWxpZ246IGxlZnQ7XG4vLyAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwcHgpO1xuLy8gfVxuLy8gaDIge1xuLy8gICBmb250LXNpemU6IGluaGVyaXQ7XG4vLyB9XG4iLCIvLyBidXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4vLyAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4vLyAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4vLyAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbi8vIH1cbi8vIHNlbGVjdCB7XG4vLyAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vICAgICB3aWR0aDogMTAwJTtcbi8vICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggOHB4KTtcbi8vICAgICBoZWlnaHQ6IDQwcHg7XG4vLyAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4vLyAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMzVzO1xuLy8gfVxuLy8gYnV0dG9uLCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuLy8gICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgYXBwZWFyYW5jZTogbm9uZTtcbi8vICAgICBib3JkZXI6IDA7XG4vLyAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4vLyAgICAgbGluZS1oZWlnaHQ6IDE7XG4vLyAgICAgY3Vyc29yOiBwb2ludGVyO1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG91cjtcbi8vICAgICBjb2xvcjogI2ZmZjtcbi8vICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxNSk7XG4vLyAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICAgICAmOmZvY3VzLCAmOmhvdmVyIHtcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3VyLWRpbTtcbi8vICAgICB9XG4vLyB9XG4vLyBmaWVsZHNldCB7XG4vLyAgICAgYm9yZGVyOiAycHggc29saWQgJGdyZXk7XG4vLyAgICAgbGVnZW5kIHtcbi8vICAgICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMHB4KTtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4vLyAgICAgfVxuLy8gfVxuLy8gbGFiZWwge1xuLy8gICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDVweCk7XG4vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLyB9XG4vLyBpbnB1dFt0eXBlPWVtYWlsXSwgaW5wdXRbdHlwZT1udW1iZXJdLCBpbnB1dFt0eXBlPXBhc3N3b3JkXSwgaW5wdXRbdHlwZT1zZWFyY2hdLCBpbnB1dFt0eXBlPXRlbF0sIGlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9dXJsXSwgdGV4dGFyZWEge1xuLy8gICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgIHBhZGRpbmc6IHJlbS1jYWxjKDVweCA4cHgpO1xuLy8gICAgIGhlaWdodDogNDBweDtcbi8vICAgICBib3JkZXI6IDFweCBzb2xpZCAgJGdyZXk7XG4vLyAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMzVzO1xuLy8gfVxuLy8gdGV4dGFyZWEge1xuLy8gICAgIGhlaWdodDogYXV0bztcbi8vICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuLy8gfVxuIiwiLy8gQG1lZGlhIHByaW50IHtcbi8vICAgICAqIHtcbi8vICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbi8vICAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbi8vICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuLy8gICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuLy8gICAgIH1cbi8vICAgICBwLCBoMiwgaDMge1xuLy8gICAgICAgICBvcnBoYW5zOiAzO1xuLy8gICAgICAgICB3aWRvd3M6IDM7XG4vLyAgICAgfVxuLy8gICAgIGgyLCBoMyB7XG4vLyAgICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuLy8gICAgIH1cbi8vICAgICBhW2hyZWZdOmFmdGVyIHtcbi8vICAgICAgICAgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJztcbi8vICAgICB9XG4vLyAgICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlciwgYVtocmVmXj0nIyddOmFmdGVyIHtcbi8vICAgICAgICAgY29udGVudDogJyc7XG4vLyAgICAgfVxuLy8gICAgIHByZSxcbi8vICAgICBibG9ja3F1b3RlIHtcbi8vICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbi8vICAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuLy8gICAgIH1cbi8vICAgICB0aGVhZCB7XG4vLyAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbi8vICAgICB9XG4vLyAgICAgdHIsIGltZyB7XG4vLyAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbi8vICAgICB9XG4vLyAgICAgaW1nIHtcbi8vICAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gICAgIEBwYWdlIHtcbi8vICAgICAgICAgbWFyZ2luOiAwLjVjbTtcbi8vICAgICB9XG4vLyB9XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvLyAvKiA9V29yZFByZXNzIENvcmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vLyAuYWxpZ25ub25lIHtcbi8vICAgICBtYXJnaW46IHJlbS1jYWxjKDVweCAyMHB4IDIwcHggMCk7XG4vLyB9XG5cbi8vIC5hbGlnbmNlbnRlcixcbi8vIGRpdi5hbGlnbmNlbnRlciB7XG4vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgbWFyZ2luOiByZW0tY2FsYyg1cHgpIGF1dG8gcmVtLWNhbGMoNXB4KSBhdXRvO1xuLy8gfVxuXG4vLyAuYWxpZ25yaWdodCB7XG4vLyAgICAgZmxvYXQ6cmlnaHQ7XG4vLyAgICAgbWFyZ2luOiByZW0tY2FsYyg1cHggMCAyMHB4IDIwcHgpO1xuLy8gfVxuXG4vLyAuYWxpZ25sZWZ0IHtcbi8vICAgICBmbG9hdDogbGVmdDtcbi8vICAgICBtYXJnaW46IHJlbS1jYWxjKDVweCAyMHB4IDIwcHggMCk7XG4vLyB9XG5cbi8vIGEgaW1nLmFsaWducmlnaHQge1xuLy8gICAgIGZsb2F0OiByaWdodDtcbi8vICAgICBtYXJnaW46IHJlbS1jYWxjKDVweCAwIDIwcHggMjBweCk7XG4vLyB9XG5cbi8vIGEgaW1nLmFsaWdubm9uZSB7XG4vLyAgICAgbWFyZ2luOiByZW0tY2FsYyg1cHggMjBweCAyMHB4IDApO1xuLy8gfVxuXG4vLyBhIGltZy5hbGlnbmxlZnQge1xuLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8gICAgIG1hcmdpbjogcmVtLWNhbGMoNXB4IDIwcHggMjBweCAwKTtcbi8vIH1cblxuLy8gYSBpbWcuYWxpZ25jZW50ZXIge1xuLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8gICAgIG1hcmdpbi1yaWdodDogYXV0bztcbi8vIH1cblxuLy8gLndwLWNhcHRpb24ge1xuLy8gICAgIGJhY2tncm91bmQ6ICNmZmY7XG4vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMDtcbi8vICAgICBtYXgtd2lkdGg6IDk2JTsgLyogSW1hZ2UgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYSAqL1xuLy8gICAgIHBhZGRpbmc6IDVweCAzcHggMTBweDtcbi8vICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyB9XG5cbi8vIC53cC1jYXB0aW9uLmFsaWdubm9uZSB7XG4vLyAgICAgbWFyZ2luOiByZW0tY2FsYyg1cHggMjBweCAyMHB4IDApO1xuLy8gfVxuXG4vLyAud3AtY2FwdGlvbi5hbGlnbmxlZnQge1xuLy8gICAgIG1hcmdpbjogcmVtLWNhbGMoNXB4IDIwcHggMjBweCAwKTtcbi8vIH1cblxuLy8gLndwLWNhcHRpb24uYWxpZ25yaWdodCB7XG4vLyAgICAgbWFyZ2luOiByZW0tY2FsYyg1cHggMCAyMHB4IDIwcHgpO1xuLy8gfVxuXG4vLyAud3AtY2FwdGlvbiBpbWcge1xuLy8gICAgIGJvcmRlcjogMCBub25lO1xuLy8gICAgIGhlaWdodDogYXV0bztcbi8vICAgICBtYXJnaW46IDA7XG4vLyAgICAgbWF4LXdpZHRoOiA5OC41JTtcbi8vICAgICBwYWRkaW5nOiAwO1xuLy8gICAgIHdpZHRoOiBhdXRvO1xuLy8gfVxuXG4vLyAud3AtY2FwdGlvbiBwLndwLWNhcHRpb24tdGV4dCB7XG4vLyAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMXB4KTtcbi8vICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTdweCk7XG4vLyAgICAgbWFyZ2luOiAwO1xuLy8gICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNHB4IDVweCk7XG4vLyB9XG5cbi8vIC8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4vLyAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbi8vIFx0Ym9yZGVyOiAwO1xuLy8gXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4vLyBcdGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbi8vIFx0aGVpZ2h0OiAxcHg7XG4vLyBcdG1hcmdpbjogLTFweDtcbi8vIFx0b3ZlcmZsb3c6IGhpZGRlbjtcbi8vIFx0cGFkZGluZzogMDtcbi8vIFx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4vLyBcdHdpZHRoOiAxcHg7XG4vLyBcdHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xuLy8gfVxuXG4vLyAuc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbi8vIFx0Y2xpcDogYXV0byAhaW1wb3J0YW50O1xuLy8gXHRjbGlwLXBhdGg6IG5vbmU7XG4vLyBcdGNvbG9yOiAjNDQ0O1xuLy8gXHRkaXNwbGF5OiBibG9jaztcbi8vIFx0Zm9udC1zaXplOiAxZW07XG4vLyBcdGhlaWdodDogYXV0bztcbi8vIFx0bGVmdDogNXB4O1xuLy8gXHRsaW5lLWhlaWdodDogbm9ybWFsO1xuLy8gXHRwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbi8vIFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuLy8gXHR0b3A6IDVweDtcbi8vIFx0d2lkdGg6IGF1dG87XG4vLyBcdHotaW5kZXg6IDEwMDAwMDtcbi8vIFx0LyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbi8vIH1cblxuLy8gLmdhbGxlcnkge1xuLy8gXHRkaXNwbGF5OiBmbGV4O1xuLy8gXHRmbGV4LXdyYXA6IHdyYXA7XG4vLyBcdG1hcmdpbjogMCAtMC42MjVyZW0gcmVtLWNhbGMoMjApO1xuLy8gXHQuZ2FsbGVyeS1pdGVtIHtcbi8vIFx0XHRmbGV4OiAxO1xuLy8gXHRcdG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbi8vIFx0XHRtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuLy8gXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbi8vIFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG4vLyBcdFx0ZmxleDogMCAwIGF1dG87XG4vLyBcdH1cbi8vIFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbi8vIFx0XHQmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4vLyBcdFx0XHQuZ2FsbGVyeS1pdGVtIHtcbi8vIFx0XHRcdFx0d2lkdGg6IGNhbGMoI3soMS8kaSkqMTAwICsgJyUnfSAtIDEuMjVyZW0pO1xuLy8gXHRcdFx0fVxuLy8gXHRcdH1cbi8vIFx0fVxuLy8gXHQuZ2FsbGVyeS1jYXB0aW9uIHtcbi8vIFx0XHRjb2xvcjogIzg4ODtcbi8vIFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xuLy8gXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbi8vIFx0fVxuLy8gfVxuIiwiLy8gJGNvbHVtbnM6IDEyO1xuLy8gJGd1dHRlcjogMjA7XG5cbi8vIC5vLWNvbnRhaW5lciB7XG4vLyAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygkZ2xvYmFsLXdpZHRoKTtcbi8vICAgICBtYXJnaW4tbGVmdDogYXV0bztcbi8vICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4vLyAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygkZ3V0dGVyLzIpO1xuLy8gICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRndXR0ZXIvMik7XG4vLyB9XG4vLyAuby1yb3cge1xuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gICBtYXJnaW4tcmlnaHQ6IC1yZW0tY2FsYygkZ3V0dGVyLzIpO1xuLy8gICBtYXJnaW4tbGVmdDogLXJlbS1jYWxjKCRndXR0ZXIvMik7XG4vLyAgIGZsZXgtd3JhcDogd3JhcDtcbi8vICAgJl9fY29sdW1uIHtcbi8vICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkZ3V0dGVyKX0pO1xuLy8gICAgIGZsZXg6IDAgMCBhdXRvO1xuLy8gICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygkZ3V0dGVyLzIpO1xuLy8gICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoJGd1dHRlci8yKTtcbi8vICAgfVxuLy8gICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbi8vICAgICAmX19jb2x1bW4tLXNwYW4tI3skaX0ge1xuLy8gICAgICAgd2lkdGg6IGNhbGMoI3skaS8kY29sdW1ucyAqIDEwMCArIFwiJVwifSAtICN7cmVtLWNhbGMoJGd1dHRlcil9KTtcbi8vICAgICB9XG4vLyAgIH1cbi8vICAgQGVhY2ggJHNpemUsICR3aWR0aCBpbiAkYnJlYWtwb2ludHMge1xuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbi8vICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuLy8gICAgICAgICAmX19jb2x1bW4tLXNwYW4tI3skaX1cXEAjeyRzaXplfSB7XG4vLyAgICAgICAgICAgd2lkdGg6IGNhbGMoI3skaS8kY29sdW1ucyAqIDEwMCArIFwiJVwifSAtICN7cmVtLWNhbGMoJGd1dHRlcil9KTtcbi8vICAgICAgICAgfVxuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuXG4uZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG59XG4iLCIvLyAuYy1wb3N0IHtcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuLy8gICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuLy8gICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbi8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICAgICYuc3RpY2t5IHtcbi8vICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgICAgfVxuLy8gICAgICYuZm9ybWF0LXF1b3RlIHtcbi8vICAgICAgICAgYmxvY2txdW90ZSB7XG4vLyAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbi8vICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbi8vICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuLy8gICAgICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgJi5mb3JtYXQtbGluayB7XG4vLyAgICAgICAgIC5jLXBvc3RfX2V4Y2VycHQgcCB7XG4vLyAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbi8vICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbi8vICAgICAgICAgICAgIGEge1xuLy8gICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgIHA6YWZ0ZXIge1xuLy8gICAgICAgICBjb250ZW50OiBcIlwiO1xuLy8gICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbi8vICAgICAgICAgY2xlYXI6IGJvdGg7XG4vLyAgICAgfVxuLy8gICAgICZfX2hlYWRlciB7XG4vLyAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbi8vICAgICB9XG4vLyAgICAgJl9fZm9vdGVyIHtcbi8vICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5O1xuLy8gICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDMwcHggLTIwcHggLTIwcHggLTIwcHgpO1xuLy8gICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMHB4KTtcbi8vICAgICB9XG4vLyAgICAgJl9fdGFncyB7XG4vLyAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbi8vICAgICAgICAgdWwge1xuLy8gICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbi8vICAgICAgICAgICAgIG1hcmdpbjogMDtcbi8vICAgICAgICAgICAgIGxpIHtcbi8vICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xuLy8gICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4vLyAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMTApO1xuLy8gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4vLyAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmV5O1xuLy8gICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vICAgICAmX19hdWRpbyB7XG4vLyAgICAgICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyMCAwKTtcbi8vICAgICB9XG4vLyAgICAgJl9fdGh1bWJuYWlsLCAmX19nYWxsZXJ5LCAmX192aWRlbyB7XG4vLyAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoLTIwIC0yMCAyMCAtMjApO1xuLy8gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcbi8vICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuLy8gICAgIH1cbi8vICAgICAmX19leGNlcnB0IHtcbi8vICAgICAgICAgY29sb3I6ICRkYXJrLWdyZXk7XG4vLyAgICAgfVxuLy8gICAgICZfX21ldGEge1xuLy8gICAgICAgICBjb2xvcjogJGRhcmstZ3JleTtcbi8vICAgICB9XG4vLyAgICAgJl9fdGl0bGUge1xuLy8gICAgICAgICBmb250LXdlaWdodDogNjAwO1xuLy8gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbi8vICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbi8vICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgJl9fc2luZ2xlLXRpdGxlIHtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbi8vICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbi8vIC5vLXNpbmdsZS1wb3N0LWZ1bGwge1xuLy8gICAgIC5jLXBvc3Qge1xuLy8gICAgICAgICAmX19pbm5lciB7XG4vLyAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuLy8gICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgLmFsaWdud2lkZSB7XG4vLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAwcHg7XG4vLyAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMHB4O1xuLy8gICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTByZW0gKyAyMDBweCk7XG4vLyAgICAgfVxuLy8gICAgIC5hbGlnbmZ1bGwge1xuLy8gICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMTIuNXJlbSArIDAuNjI1cmVtKTtcbi8vICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xMi41cmVtICsgMC42MjVyZW0pO1xuLy8gICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNzVyZW0gLSAxLjI1cmVtKTtcbi8vICAgICAgICAgd2lkdGg6IGF1dG87XG4vLyAgICAgICAgIGltZyB7XG4vLyAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vICAgICAud3AtYmxvY2stY292ZXItaW1hZ2Uge1xuLy8gICAgICAgICAmLmFsaWdud2lkZSwgJi5hbGlnbmZ1bGwge1xuLy8gICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG4vLyAud3AtYmxvY2stZW1iZWQuaXMtdHlwZS12aWRlbyB7XG4vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4vLyAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4vLyAgICAgaGVpZ2h0OiAwO1xuLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICAgaWZyYW1lIHtcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICB0b3A6MDtcbi8vICAgICAgICAgbGVmdDogMDtcbi8vICAgICAgICAgd2lkdGg6IDEwMCU7XG4vLyAgICAgICAgIGhlaWdodDogMTAwJTtcbi8vICAgICB9XG4vLyB9XG5cbi8vIC5jLXBvc3QtYXV0aG9yIHtcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuLy8gICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuLy8gICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbi8vICAgICBkaXNwbGF5OiBmbGV4O1xuLy8gICAgICZfX2F2YXRhciB7XG4vLyAgICAgICAgIHdpZHRoOiAxMjBweDtcbi8vICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyNSk7XG4vLyAgICAgfVxuLy8gICAgICZfX2NvbnRlbnQge1xuLy8gICAgICAgICBmbGV4OiAxO1xuLy8gICAgIH1cbi8vICAgICAmX19pbmZvIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuLy8gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICAgICB9XG4vLyAgICAgJl9fdGl0bGUge1xuLy8gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgJl9fZGVzYyB7XG4vLyAgICAgICAgIGNvbG9yOiAkZGFyay1ncmV5O1xuLy8gICAgIH1cbi8vIH1cbiIsIi8vIC5jLXBhZ2Uge1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4vLyAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4vLyAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4vLyAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICAgJl9faGVhZGVyIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuLy8gICAgIH1cbi8vICAgICAmX190aXRsZSB7XG4vLyAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4vLyAgICAgfVxuLy8gfVxuIiwiLy8gLmMtc2lkZWJhci13aWRnZXQge1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4vLyAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4vLyAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4vLyAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gICAgIGg1IHtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICAgICB9XG4vLyAgICAgPiB1bCB7XG4vLyAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4vLyAgICAgICAgIG1hcmdpbjogMDtcbi8vICAgICB9XG4vLyB9XG5cbi8vIC5jLWZvb3Rlci13aWRnZXQge1xuLy8gICAgID4gdWwge1xuLy8gICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuLy8gICAgICAgICBtYXJnaW46IDA7XG4vLyAgICAgfVxuLy8gICAgICYtLWxpZ2h0IHtcbi8vICAgICAgICAgYSwgcCB7XG4vLyAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4vLyAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbi8vICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4vLyAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgIC50YWdjbG91ZCB7XG4vLyAgICAgICAgIGEge1xuLy8gICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWltcG9ydGFudDtcbi8vICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG91cjtcbi8vICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuLy8gICAgICAgICAgICAgb3BhY2l0eTogMTtcbi8vICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMTApO1xuLy8gICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG4iLCIvLyAuYy1mb290ZXIge1xuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuLy8gICBwYWRkaW5nOiByZW0tY2FsYyg0MCkgMDtcbi8vICAgY29sb3I6ICNmZmZmZmY7XG4vLyAgICYtLWxpZ2h0IHtcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuLy8gICAgIGNvbG9yOiAjMjIyMjIyO1xuLy8gICB9XG4vLyB9XG4vLyAuYy1zaXRlLWluZm8ge1xuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIyYjJiO1xuLy8gICBwYWRkaW5nOiByZW0tY2FsYyg2MCkgMzBweDtcbi8vICAgdGV4dC1hbGlnbjogY2VudGVyO1xuLy8gICBjb2xvcjogI2ZmZmZmZjtcbi8vICAgZm9udC1zaXplOiByZW0tY2FsYygxNXB4KTtcbi8vICAgZm9udC13ZWlnaHQ6IDMwMDtcbi8vICAgJi0tbGlnaHQge1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4vLyAgICAgY29sb3I6ICMyYjJiMmI7XG4vLyAgIH1cbi8vIH1cbiNmb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2stY29sb3VyO1xuICBwYWRkaW5nOiByZW0tY2FsYyg2MCkgcmVtLWNhbGMoMzApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvdXI7XG59XG5cbiNmb290ZXItdGV4dCB7XG4gIG1heC13aWR0aDogJGlubmVyLXdpZHRoLXNtYWxsO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI2Zvb3Rlci1jb21wYW55LWxvZ29zIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIHJvdy1nYXA6IDMwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi8vIENvb2tpZSBjb25zZW50IGZvcm1cblxuLmNjLXdpbmRvdy5jYy1mbG9hdGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOTI5MjljYyAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jYy1idG4ge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8gQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4ycmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLmZ1bGwtcGFnZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpdiB7XG4gICAgcGFkZGluZzogMCByZW0tY2FsYygzMCk7XG4gIH1cbn1cbiIsIi8vIC5oZWFkZXItbmF2IC5tZW51IHtcbi8vICAgbWFyZ2luOiAwO1xuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gICBsaXN0LXN0eWxlOiBub25lO1xuLy8gICAubWVudS1idXR0b24ge1xuLy8gICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4vLyAgICAgY29sb3I6IGluaGVyaXQ7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwcHgpO1xuLy8gICB9XG4vLyAgIC5wYWdlX2l0ZW0ge1xuLy8gICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICAgfVxuLy8gICA+IC5tZW51LWl0ZW0ge1xuLy8gICAgIG1hcmdpbjogMDtcbi8vICAgICA+IGEge1xuLy8gICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTVweCAyMHB4KTtcbi8vICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgIGNvbG9yOiAjZmZmO1xuLy8gICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMjIyO1xuLy8gICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbi8vICAgICB9XG4vLyAgICAgJjpob3ZlciBhLFxuLy8gICAgICYub3BlbiA+IGEge1xuLy8gICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbi8vICAgICAgIGNvbG9yOiAjMDAwO1xuLy8gICAgIH1cbi8vICAgICA+IC5zdWItbWVudSB7XG4vLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICAgICBtYXJnaW46IDA7XG4vLyAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuLy8gICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbi8vICAgICAgIGRpc3BsYXk6IG5vbmU7XG4vLyAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuLy8gICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbi8vICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XG4vLyAgICAgICB6LWluZGV4OiAxMDtcbi8vICAgICB9XG4vLyAgIH1cbi8vICAgPiAubWVudS1pdGVtOm5vdCgubWVnYSkge1xuLy8gICAgIC5zdWItbWVudSB7XG4vLyAgICAgICAuc3ViLW1lbnUge1xuLy8gICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICAgICAgIG1hcmdpbjogMDtcbi8vICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbi8vICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbi8vICAgICAgICAgZGlzcGxheTogbm9uZTtcbi8vICAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbi8vICAgICAgICAgbGVmdDogMTAwJTtcbi8vICAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuLy8gICAgICAgICB0b3A6IDBweDtcbi8vICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2VmZWZlZjtcbi8vICAgICAgIH1cbi8vICAgICAgIC5tZW51LWl0ZW0ge1xuLy8gICAgICAgICBtYXJnaW46IDA7XG4vLyAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgICAgICAgYSB7XG4vLyAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTBweCAyMHB4KTtcbi8vICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZWZlZjtcbi8vICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuLy8gICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmV5O1xuLy8gICAgICAgICB9XG4vLyAgICAgICAgICY6aG92ZXIgPiBhIHtcbi8vICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvdXI7XG4vLyAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4vLyAgICAgICAgIH1cbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vICAgLm1lbnUtaXRlbTpub3QoLm1lZ2EpLm9wZW4gPiAuc3ViLW1lbnUge1xuLy8gICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4vLyAgIH1cbi8vICAgLm1lbnUtaXRlbS5tZWdhLm9wZW4gPiAuc3ViLW1lbnUge1xuLy8gICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbi8vICAgfVxuLy8gICA+IC5tZW51LWl0ZW0ubWVnYSB7XG4vLyAgICAgbWFyZ2luOiAwO1xuLy8gICAgID4gLnN1Yi1tZW51IHtcbi8vICAgICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgICAgbGVmdDogMDtcbi8vICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbi8vICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4vLyAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xuLy8gICAgICAgPiAubWVudS1pdGVtID4gYSB7XG4vLyAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4vLyAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG4vLyAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuLy8gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuLy8gICAgICAgICBidXR0b24ge1xuLy8gICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4vLyAgICAgICAgIH1cbi8vICAgICAgICAgJjpob3ZlciB7XG4vLyAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG91cjtcbi8vICAgICAgICAgfVxuLy8gICAgICAgfVxuLy8gICAgICAgPiAubWVudS1pdGVtID4gLnN1Yi1tZW51IHtcbi8vICAgICAgICAgbWFyZ2luOiAwO1xuLy8gICAgICAgICBhIHtcbi8vICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4vLyAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyZXk7XG4vLyAgICAgICAgICAgJjpob3ZlciB7XG4vLyAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xuLy8gICAgICAgICAgIH1cbi8vICAgICAgICAgfVxuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuLy8gICAgICAgJi5jb2xzLSN7JGl9IHtcbi8vICAgICAgICAgPiAuc3ViLW1lbnUgPiAubWVudS1pdGVtIHtcbi8vICAgICAgICAgICB3aWR0aDogI3sxIC8gJGkgKiAxMDAgKyBcIiVcIn07XG4vLyAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjBweCk7XG4vLyAgICAgICAgIH1cbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cbi8vIC5jLW5hdmlnYXRpb24ge1xuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIyYjJiO1xuLy8gICBjb2xvcjogI2ZmZmZmZjtcbi8vICAgbmF2IHtcbi8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgIH1cbi8vIH1cbi8vIC5jLWhlYWRlciB7XG4vLyAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xuLy8gICAvLyAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwKSAwO1xuLy8gICAvLyBwYWRkaW5nOiByZW0tY2FsYygzMCkgcmVtLWNhbGMoNjApO1xuLy8gICBjb2xvcjogI2ZmZmZmZjtcbi8vICAgJl9fbG9nbyB7XG4vLyAgICAgLy8gZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4vLyAgICAgaW1nIHtcbi8vICAgICAgIG1heC13aWR0aDogNzBweDtcbi8vICAgICAgIC8vICAgaGVpZ2h0OiA1dmg7XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG4jbmF2LW1haW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHotaW5kZXg6IDEwMDA7XG4gIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvdXI7XG59XG5cbi5uYXYtbG9nby1jb250IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJsb2dvIG5hdiBuYXZcIjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JleTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyMDAwO1xufVxuXG4uaGVhZGVyLWxvZ28ge1xuICBoZWlnaHQ6IDgwcHg7XG4gIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vICNuYXYtZGVza3RvcCB7XG4vLyAgIGRpc3BsYXk6IG5vbmU7XG4vLyB9XG5cbi5ub3Njcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNuYXYtbW9iaWxlLWhhbWJ1cmdlciB7XG4gIHdpZHRoOiAzMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpdiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3VyO1xuICAgIG1hcmdpbjogOHB4IDA7XG4gIH1cbn1cblxuI25hdi1tYWluLW1vYmlsZS1kcmF3ZXIge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMzBweCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjMwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycztcbiAgei1pbmRleDogNTAwO1xufVxuXG4ubW9iaWxlLW5hdi1vcGVuIHtcbiAgdG9wOiAwO1xufVxuXG4ubW9iaWxlLW5hdi1jbG9zZSB7XG4gIHRvcDogLTE0MHZoO1xufVxuXG4jc3ViLW1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gIGgyIHtcbiAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDMwKTtcbiAgfVxufVxuXG4jc3ViLW1lbnUge1xuICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xufVxuXG4uc3ViLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbmF2LW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vLyAubmF2LXdyYXBwZXIge1xuLy8gICBoZWlnaHQ6IDg4cHg7XG4vLyB9XG5cbi5zY3JvbGxVcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQwcHgpO1xufVxuXG4vLyAuY29udGVudCB7XG4vLyAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIzMCk7XG4vLyB9XG4iLCIvLyAuYy1jb21tZW50cyB7XG4vLyAgICAgJl9fdGl0bGUge1xuLy8gICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDYwIDAgMjAgMCk7XG4vLyAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbi8vICAgICB9XG4vLyAgICAgJl9fbGlzdCB7XG4vLyAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4vLyAgICAgICAgIG1hcmdpbjogMDtcbi8vICAgICAgICAgLmNoaWxkcmVuIHtcbi8vICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwJTtcbi8vICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbi8vIC5jLWNvbW1lbnQge1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4vLyAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4vLyAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4vLyAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgICAkcDogJjtcbi8vICAgICAmLS1jaGlsZCB7XG4vLyAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4vLyAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyZXk7XG4vLyAgICAgICAgICN7JHB9X19hdmF0YXIge1xuLy8gICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4vLyAgICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4vLyAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1cHgpO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgICZfX3JlcGx5LWxpbmsge1xuLy8gICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbi8vICAgICB9XG4vLyAgICAgJl9fZWRpdC1saW5rIHtcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICB0b3A6IDEwcHg7XG4vLyAgICAgICAgIHJpZ2h0OiAxMHB4O1xuLy8gICAgIH1cbi8vICAgICAmX190aW1lIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuLy8gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgIH1cbi8vICAgICAmX19ib2R5IHtcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcbi8vICAgICB9XG4vLyAgICAgJl9fYXZhdGFyIHtcbi8vICAgICAgICAgd2lkdGg6IDEwMHB4O1xuLy8gICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuLy8gICAgIH1cbi8vICAgICAmX19jb250ZW50IHtcbi8vICAgICAgICAgZmxleDogMTtcbi8vICAgICAgICAgcCB7XG4vLyAgICAgICAgICAgICBjb2xvcjogJGRhcmstZ3JleTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vICAgICAmX19hdXRob3Ige1xuLy8gICAgICAgICBjb2xvcjogIzAwMDAwMDtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbi8vICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4vLyAgICAgICAgIGEge1xuLy8gICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4vLyAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuIiwiLy8gLmMtc2VhcmNoLWZvcm0ge1xuLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xuLy8gICAgICZfX2xhYmVsIHtcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbi8vICAgICB9XG4vLyAgICAgJl9fYnV0dG9uIHtcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICByaWdodDogMDtcbi8vICAgICAgICAgdG9wOiAwO1xuLy8gICAgICAgICBoZWlnaHQ6IDQwcHg7XG4vLyAgICAgfVxuLy8gfVxuIiwiLy8gLm5hdmlnYXRpb24ucGFnaW5hdGlvbiAubmF2LWxpbmtzIHtcbi8vICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG4vLyAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4vLyAgICAgc3Bhbjpub3QoLmRvdHMpOm5vdCguY3VycmVudCksIGEge1xuLy8gICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg3IDE1KTtcbi8vICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbi8vICAgICAgICAgY29sb3I6ICRkYXJrLWdyZXk7XG4vLyAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbi8vICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2UyZTJlMjtcbi8vICAgICB9XG4vLyAgICAgYTpob3ZlciB7XG4vLyAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG91cjtcbi8vICAgICAgICAgY29sb3I6ICNmZmY7XG4vLyAgICAgfVxuLy8gICAgIC5kb3RzLCAuY3VycmVudCB7XG4vLyAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDcgNyk7XG4vLyAgICAgfVxuLy8gfVxuXG4vLyAuYy1wb3N0LW5hdmlnYXRpb24ge1xuLy8gICAgICRwOiAmO1xuLy8gICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuLy8gICAgICZfX2xpbmtzIHtcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcbi8vICAgICB9XG4vLyAgICAgJl9fcG9zdCB7XG4vLyAgICAgICAgIGZsZXg6IDE7XG4vLyAgICAgICAgIG1heC13aWR0aDogNTAlO1xuLy8gICAgICAgICAmLS1uZXh0IHtcbi8vICAgICAgICAgICAgICN7JHB9X190aHVtYm5haWwge1xuLy8gICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuLy8gICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICAjeyRwfV9fbGluayB7XG4vLyAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbi8vICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZSAhaW1wb3J0YW50O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgI3skcH1fX2NvbnRlbnQge1xuLy8gICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgICAgICYtLXByZXYge1xuLy8gICAgICAgICAgICAgI3skcH1fX3RodW1ibmFpbCB7XG4vLyAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICAjeyRwfV9fbGluayB7XG4vLyAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgICZfX3N1YnRpdGxlIHtcbi8vICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgICAgIGNvbG9yOiAkZGFyay1ncmV5O1xuLy8gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICAgICB9XG4vLyAgICAgJl9fdGl0bGUge1xuLy8gICAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4vLyAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4vLyAgICAgfVxuLy8gICAgICZfX2NvbnRlbnQge1xuLy8gICAgICAgICBmbGV4OiAxO1xuLy8gICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwIDApO1xuLy8gICAgIH1cbi8vICAgICAmX19saW5rIHtcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcbi8vICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuLy8gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuLy8gICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleSAhaW1wb3J0YW50O1xuLy8gICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICAgfVxuLy8gICAgICZfX3RodW1ibmFpbCB7XG4vLyAgICAgICAgIHdpZHRoOiAxMDBweDtcbi8vICAgICAgICAgaW1nIHtcbi8vICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4vLyAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbkBtaXhpbiBibHVlLWdyYWRpZW50LXNsYW50ZWQtYmcge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMDA5OWZmKzAsMDBmZjgxKzEwMCAqL1xuICBiYWNrZ3JvdW5kOiAjMDA5OWZmOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoXG4gICAgbGVmdCxcbiAgICAjMDA5OWZmIDAlLFxuICAgICMwMGZmODEgMTAwJVxuICApOyAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChcbiAgICBsZWZ0LFxuICAgICMwMDk5ZmYgMCUsXG4gICAgIzAwZmY4MSAxMDAlXG4gICk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICB0byByaWdodCxcbiAgICAjMDA5OWZmIDAlLFxuICAgICMwMGZmODEgMTAwJVxuICApOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDk5ZmYnLCBlbmRDb2xvcnN0cj0nIzAwZmY4MScsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgdHJhbnNmb3JtOiBza2V3WCgtMTJkZWcpO1xuICB6LWluZGV4OiAtMTtcbn1cblxuI21lbnUtd3BtbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC42cmVtIDA7XG4gIH1cbiAgbGkgYSB7XG4gICAgLy8gcGFkZGluZzogMjBweDtcbiAgICBmb250LXNpemU6IGNhbGMoMC43dncgKyAwLjRyZW0pO1xuICAgIHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm90dG9tOiAzcHg7XG4gICAgfVxuICB9XG4gIC8vIGxpOjpiZWZvcmUge1xuICAvLyAgIEBpbmNsdWRlIGJsdWUtZ3JhZGllbnQtc2xhbnRlZC1iZztcbiAgLy8gfVxufVxuXG4jbmF2LWRlc2t0b3AgdWwuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3Itd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwdnc7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjcsIDI3LCAyNywgMC42NTgpO1xuICB6LWluZGV4OiAyMDAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbn1cblxuLmRpc3BsYXkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3Itd3JhcHBlciAuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMzAwMDtcbiAgLm1lbnUtaXRlbSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDF2dyArIDFyZW0pO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgfVxufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3Itb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMCAwIDAgcmVtLWNhbGMoMzApO1xufVxuXG4ubWVudS1pdGVtIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG59XG5cbi8vIEBtaXhpbiB3aGl0ZS1zbGFudGVkLWJnIHtcbi8vICAgY29udGVudDogXCJcIjtcbi8vICAgZGlzcGxheTogYmxvY2s7XG4vLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vICAgdG9wOiAwO1xuLy8gICBsZWZ0OiAwO1xuLy8gICB3aWR0aDogMTAwJTtcbi8vICAgaGVpZ2h0OiAxMDAlO1xuLy8gICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbi8vICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDk5ZmYnLCBlbmRDb2xvcnN0cj0nIzAwZmY4MScsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbi8vICAgdHJhbnNmb3JtOiBza2V3WCgtMTJkZWcpO1xuLy8gICB6LWluZGV4OiAtMTtcbi8vIH1cblxuLy8gLnN1Yi1tZW51OjpiZWZvcmUge1xuLy8gICAvLyBAaW5jbHVkZSB3aGl0ZS1zbGFudGVkLWJnO1xuLy8gICBAaW5jbHVkZSBibHVlLWdyYWRpZW50LXNsYW50ZWQtYmc7XG4vLyB9XG5cbi53cG1sLWxzLWl0ZW0gYSB7XG4gIGNvbG9yOiBibGFjaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xufVxuXG4ud3BtbC1scy1pdGVtOmhvdmVyIHtcbiAgLy8gLndwbWwtbHMtaXRlbTo6YWZ0ZXIge1xuICAvLyAgIEBpbmNsdWRlIGJsdWUtZ3JhZGllbnQtc2xhbnRlZC1iZztcbiAgLy8gfVxuICBhIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cbn1cblxuLndwbWwtbHMtbWVudS1pdGVtIC53cG1sLWxzLWZsYWcge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAyM3B4O1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3ItY29udGFpbmVyIC5zdWItbWVudSAud3BtbC1scy1mbGFnIHtcbiAgd2lkdGg6IDEwdnc7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG4iLCJib2R5IHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuXG4vLyAuY29udGVudCB7XG4vLyAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTIpO1xuLy8gfVxuXG4ucGMtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBoZWlnaHQ6IGZpdC1jb250ZW50O1xufVxuXG4vLyBPdXRsaW5lZFxuLnBjLWJ1dHRvbiB7XG4gICY6YWZ0ZXIge1xuICAgIC8vIHotaW5kZXg6IC0xO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTJkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBza2V3WCgtMTJkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKC0xMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTJkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAxcztcbiAgfVxufVxuXG4ucGMtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmhlcm8ge1xuICBoZWlnaHQ6IDU1dmg7XG4gIC8vIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJHBpbmstY29sb3VyO1xuICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xufVxuXG4udGl0bGVzIHtcbiAgcGFkZGluZzogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZlYXR1cmVzIHtcbiAgaGVpZ2h0OiA3NXZoO1xuICBwYWRkaW5nOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4gIGgzIHtcbiAgICBtYXgtd2lkdGg6ICRpbm5lci13aWR0aDtcbiAgfVxufVxuXG4udHdvLWNvbC1jb250IHtcbiAgLy8gaGVpZ2h0OiA4MHZoO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA4MHZ3IDFmcjtcbn1cblxuI3BjYXJzMy1zZWN0aW9uIHtcbiAgLy8gbWFyZ2luLXRvcDogNjJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3Byb2plY3QtY2Fycy0zLWh1Yi1jb2wtMkAyeC5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAyJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4jcGNhcnMyLXNlY3Rpb24ge1xuICAvLyBtYXJnaW46IDEycHggMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3Byb2plY3QtY2Fycy0yLWh1Yi1jb2wtMkAyeC5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLm5vLXdlYnAge1xuICAucGNhcnMzLWV1IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyQDJ4LmpwZ1wiKTtcbiAgfVxufVxuXG4ud2VicCB7XG4gIC5wY2FyczMtZXUge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wcm9qZWN0LWNhcnMtMy1odWItY29sLTEtdjJAMngud2VicFwiKTtcbiAgfVxufVxuXG4vLyAucGNhcnMzLXVzIHtcbi8vICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3Byb2plY3QtY2Fycy0zLWh1Yi1jb2wtMS12Mi11c0AyeC5qcGdcIik7XG4vLyB9XG5cbi8vIC5wY2FyczMtYXMge1xuLy8gICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyLWFzaWFAMnguanBnXCIpO1xuLy8gfVxuXG4ucHJpbWFyeS1jb2wtMSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi8vICNwY2FyczMtcHJpbWFyeS1jb2wtMTo6YmVmb3JlIHtcbi8vICAgY29udGVudDogXCJcIjtcbi8vICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICB3aWR0aDogNjAlO1xuLy8gICBtaW4taGVpZ2h0OiA3MnZoO1xuLy8gICB0b3A6IDBweDtcbi8vICAgbGVmdDogMHB4O1xuLy8gICB6LWluZGV4OiAtMTtcbi8vICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3Byb2plY3QtY2Fycy0zLWh1Yi1jb2wtMS12MkAyeC5qcGdcIik7XG4vLyAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4vLyAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xMHZoO1xuLy8gICB0cmFuc2l0aW9uOiBhbGwgMS41cztcbi8vIH1cblxuLmhlcm8tbG9nbyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jcGNhcnMzLXByaW1hcnktY29sLTIge1xuICBwYWRkaW5nOiByZW0tY2FsYygzMCkgcmVtLWNhbGMoMzApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC5wYy1idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAucGMtYnV0dG9uOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jZjc5NjFlKzAsZmRlOTAwKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6ICNmNzk2MWU7IC8qIE9sZCBicm93c2VycyAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KFxuICAgICAgbGVmdCxcbiAgICAgICNmNzk2MWUgMCUsXG4gICAgICAjZmRlOTAwIDEwMCVcbiAgICApOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgICAgbGVmdCxcbiAgICAgICNmNzk2MWUgMCUsXG4gICAgICAjZmRlOTAwIDEwMCVcbiAgICApOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIHRvIHJpZ2h0LFxuICAgICAgI2Y3OTYxZSAwJSxcbiAgICAgICNmZGU5MDAgMTAwJVxuICAgICk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZjc5NjFlJywgZW5kQ29sb3JzdHI9JyNmZGU5MDAnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMmRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNrZXdYKC0xMmRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2tld1goLTEyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMmRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDFzO1xuICB9XG4gIC5wYy1idXR0b246YWZ0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjogJGJsYWNrLWNvbG91cjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMTJkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBza2V3WCgxMmRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2tld1goMTJkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMTJkZWcpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICB9XG4gIC55ZWxsb3ctdGV4dCB7XG4gICAgY29sb3I6ICNmZGU5MDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBwIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiBjYWxjKDF2dyArIDFyZW0pO1xuICB9XG59XG5cbiNwY2FyczItcHJpbWFyeS1jb2wtMSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wcm9qZWN0LWNhcnMtMi1odWItY29sLTEtdjJAMnguanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIC8vIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCUsIDg1JSAxMDAlLCAwJSAxMDAlKTtcbiAgLy8gLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG59XG5cbiNwY2FyczItcHJpbWFyeS1jb2wtMiB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDYwKSByZW0tY2FsYygzMCk7XG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkcGNhcnMyLWZvbnQ7XG4gICAgZm9udC1zdHlsZTogaW5pdGlhbDtcbiAgICBjb2xvcjogJHBjYXJzMi1saWdodC1ibHVlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IGNhbGMoMXZ3ICsgMXJlbSk7XG4gIH1cbn1cblxuLy8gI3NlY29uZGFyeS1zZWN0aW9uIHtcbi8vICAgYmFja2dyb3VuZC1jb2xvcjogJHBpbmstY29sb3VyO1xuLy8gICBoZWlnaHQ6IDM1dmg7XG4vLyAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wY2FyczIta2V5LWFydC1iZ0AyeC5qcGdcIik7XG4vLyAgIGJhY2tncm91bmQtc2l6ZTogMTAxJTtcbi8vICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbi8vICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuLy8gfVxuXG4uY29sLTItaW5uZXItY29udCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHJvdy1nYXA6IHJlbS1jYWxjKDMwKTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGgyIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3VyO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cblxuI3NvY2lhbC1jb250IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgY29sdW1uLWdhcDogcmVtLWNhbGMoMzApO1xufVxuXG4jcGNhcnMxLXByaW1hcnktY29sLTEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTFAMnguanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIC8vIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCUsIDg1JSAxMDAlLCAwJSAxMDAlKTtcbiAgLy8gLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG59XG4iLCIvLyAudS1zY3JlZW4tcmVhZGVyLXRleHQge1xuLy8gICAgIHBvc2l0aW9uOmFic29sdXRlO1xuLy8gICAgIGxlZnQ6LTEwMDAwcHg7XG4vLyAgICAgdG9wOmF1dG87XG4vLyAgICAgd2lkdGg6MXB4O1xuLy8gICAgIGhlaWdodDoxcHg7XG4vLyAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuLy8gfVxuXG4vLyAudS1za2lwLWxpbmsge1xuLy8gICAgIHBvc2l0aW9uOmFic29sdXRlO1xuLy8gICAgIGxlZnQ6LTEwMDAwcHg7XG4vLyAgICAgdG9wOmF1dG87XG4vLyAgICAgd2lkdGg6MXB4O1xuLy8gICAgIGhlaWdodDoxcHg7XG4vLyAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuLy8gICAgICY6Zm9jdXMge1xuLy8gICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbi8vICAgICAgICAgbGVmdDogMjBweDtcbi8vICAgICAgICAgdG9wOiAyMHB4O1xuLy8gICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuLy8gICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4vLyAgICAgICAgIHdpZHRoOmF1dG87XG4vLyAgICAgICAgIGhlaWdodDphdXRvO1xuLy8gICAgIH1cbi8vIH1cblxuLnUtcmVzcG9uc2l2ZS12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4iLCIuZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNvbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1qdXN0aWZ5LWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5mbGV4LWp1c3RpZnktY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8vIC51LWZsZXgge1xuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gfVxuXG4vLyBAZWFjaCAkZGlyIGluIHJvdyByb3ctcmV2ZXJzZSBjb2x1bW4gY29sdW1uLXJldmVyc2Uge1xuLy8gICAudS1mbGV4LWRpcmVjdGlvbi0jeyRkaXJ9IHtcbi8vICAgICBmbGV4LWRpcmVjdGlvbjogI3skZGlyfTtcbi8vICAgfVxuLy8gfVxuXG4vLyBAZWFjaCAkd3JhcCBpbiBub3dyYXAgd3JhcCB3cmFwLXJldmVyc2Uge1xuLy8gICAudS1mbGV4LSN7JHdyYXB9IHtcbi8vICAgICBmbGV4LXdyYXA6ICN7JHdyYXB9O1xuLy8gICB9XG4vLyB9XG5cbi8vICRqdXN0aWZ5OiAoXG4vLyAgIFwibGVmdFwiOiBmbGV4LXN0YXJ0LFxuLy8gICBcInJpZ2h0XCI6IGZsZXgtZW5kLFxuLy8gICBcImNlbnRlclwiOiBjZW50ZXIsXG4vLyAgIFwianVzdGlmeVwiOiBzcGFjZS1iZXR3ZWVuLFxuLy8gICBcInNwYWNlZFwiOiBzcGFjZS1hcm91bmQsXG4vLyAgIFwiZXZlbmx5XCI6IHNwYWNlLWV2ZW5seSxcbi8vICk7XG5cbi8vIEBlYWNoICRjbGFzcywgJHZhbHVlIGluICRqdXN0aWZ5IHtcbi8vICAgLnUtYWxpZ24tI3skY2xhc3N9IHtcbi8vICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICN7JHZhbHVlfTtcbi8vICAgfVxuLy8gfVxuXG4vLyAkYWxpZ246IChcbi8vICAgXCJ0b3BcIjogZmxleC1zdGFydCxcbi8vICAgXCJib3R0b21cIjogZmxleC1lbmQsXG4vLyAgIFwibWlkZGxlXCI6IGNlbnRlcixcbi8vICAgXCJiYXNlbGluZVwiOiBiYXNlbGluZSxcbi8vICAgXCJzdHJldGNoXCI6IHN0cmV0Y2gsXG4vLyApO1xuXG4vLyBAZWFjaCAkY2xhc3MsICR2YWx1ZSBpbiAkYWxpZ24ge1xuLy8gICAudS1hbGlnbi0jeyRjbGFzc30ge1xuLy8gICAgIGFsaWduLWl0ZW1zOiAjeyR2YWx1ZX07XG4vLyAgIH1cbi8vIH1cblxuLy8gQGVhY2ggJGNsYXNzLCAkdmFsdWUgaW4gJGFsaWduIHtcbi8vICAgLnUtYWxpZ24tc2VsZi0jeyRjbGFzc30ge1xuLy8gICAgIGFsaWduLXNlbGY6ICN7JHZhbHVlfTtcbi8vICAgfVxuLy8gfVxuXG4vLyBAZm9yICRpIGZyb20gMCB0aHJvdWdoIDEyIHtcbi8vICAgLnUtb3JkZXItI3skaX0ge1xuLy8gICAgIG9yZGVyOiAkaTtcbi8vICAgfVxuLy8gfVxuLy8gQGVhY2ggJHNpemUsICR3aWR0aCBpbiAkYnJlYWtwb2ludHMge1xuLy8gICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4vLyAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMiB7XG4vLyAgICAgICAudS1vcmRlci0jeyRpfVxcQCN7JHNpemV9IHtcbi8vICAgICAgICAgb3JkZXI6ICRpO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuIiwiLy8gJGk6IDA7XG4vLyAkbWF4OiA0MDtcbi8vIEB3aGlsZSAkaSA8PSAkbWF4IHtcbi8vICAgICAudS1tYXJnaW4tdG9wLSN7JGl9IHtcbi8vICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gICAgIC51LW1hcmdpbi1ib3R0b20tI3skaX0ge1xuLy8gICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbi8vICAgICB9XG4vLyAgICAgLnUtbWFyZ2luLWxlZnQtI3skaX0ge1xuLy8gICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gICAgIC51LW1hcmdpbi1yaWdodC0jeyRpfSB7XG4vLyAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoJGkpICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gICAgICRpOiAkaSArIDU7XG4vLyB9XG5cbi8vIEBlYWNoICRzaXplLCAkd2lkdGggaW4gJGJyZWFrcG9pbnRzIHtcbi8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4vLyAgICAgICAgICRpOiAwO1xuLy8gICAgICAgICBAd2hpbGUgJGkgPD0gJG1heCB7XG4vLyAgICAgICAgICAgICAudS1tYXJnaW4tdG9wLSN7JGl9XFxAI3skc2l6ZX0ge1xuLy8gICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKCRpKSAhaW1wb3J0YW50O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgLnUtbWFyZ2luLWJvdHRvbS0jeyRpfVxcQCN7JHNpemV9IHtcbi8vICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIC51LW1hcmdpbi1sZWZ0LSN7JGl9XFxAI3skc2l6ZX0ge1xuLy8gICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygkaSkgIWltcG9ydGFudDtcbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIC51LW1hcmdpbi1yaWdodC0jeyRpfVxcQCN7JHNpemV9IHtcbi8vICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKCRpKSAhaW1wb3J0YW50O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgJGk6ICRpICsgNTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vIH1cbiIsIi8qIFNtYXJ0cGhvbmVzIChwb3J0cmFpdCBhbmQgbGFuZHNjYXBlKSAtLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogNDgwcHgpIHtcbiAgLyogU3R5bGVzICovXG59XG5cbi8qIFNtYXJ0cGhvbmVzIChsYW5kc2NhcGUpIC0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLyogU3R5bGVzICovXG4gIC5oZXJvLWxvZ28ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnR3by1jb2wtY29udCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA1MHZ3IDFmcjtcbiAgfVxuICAubGFuZ3VhZ2Utc2VsZWN0b3Itd3JhcHBlciAuc3ViLW1lbnUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgfVxuICAubGFuZ3VhZ2Utc2VsZWN0b3ItY29udGFpbmVyIC5zdWItbWVudSAud3BtbC1scy1mbGFnIHtcbiAgICB3aWR0aDogNnZ3O1xuICB9XG59XG5cbi8qIFNtYXJ0cGhvbmVzIChwb3J0cmFpdCkgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgLyogU3R5bGVzICovXG59XG5cbi8qIGlQYWRzIChwb3J0cmFpdCBhbmQgbGFuZHNjYXBlKSAtLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogNzY4cHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogMTAyNHB4KSB7XG4gIC8qIFN0eWxlcyAqL1xuXG4gIC8vIC50d28tY29sLWNvbnQge1xuICAvLyAgIG1pbi1oZWlnaHQ6IDYydmg7XG4gIC8vICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjVmciAxZnI7XG4gIC8vICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gIC8vIH1cbiAgI3BjYXJzMy1wcmltYXJ5LWNvbC0yIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCkgcmVtLWNhbGMoMzApO1xuICB9XG59XG5cbi8qIGlQYWRzIChsYW5kc2NhcGUpIC0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMDI0cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAvKiBTdHlsZXMgKi9cbiAgLnByaW1hcnktY29sLTEsXG4gICNwY2FyczItcHJpbWFyeS1jb2wtMSxcbiAgI3BjYXJzMS1wcmltYXJ5LWNvbC0xIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG4gIH1cbiAgLnR3by1jb2wtY29udCB7XG4gICAgbWluLWhlaWdodDogNjJ2aDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuNWZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgfVxuICAjcGNhcnMzLXByaW1hcnktY29sLTIge1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDAuOXZ3ICsgMC41cmVtKTtcbiAgICB9XG4gIH1cbiAgI3BjYXJzMi1wcmltYXJ5LWNvbC0yIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygwLjl2dyArIDAuM3JlbSk7XG4gICAgfVxuICB9XG4gIC5sYW5ndWFnZS1zZWxlY3Rvci13cmFwcGVyIC5zdWItbWVudSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyIDFmciAxZnI7XG4gIH1cbiAgLmxhbmd1YWdlLXNlbGVjdG9yLWNvbnRhaW5lciAuc3ViLW1lbnUgLndwbWwtbHMtZmxhZyB7XG4gICAgd2lkdGg6IDV2dztcbiAgfVxufVxuXG4vKiBpUGFkcyAocG9ydHJhaXQpIC0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMDI0cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC8qIFN0eWxlcyAqL1xuICAuaGVyby1sb2dvIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC50d28tY29sLWNvbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogNjB2dyAxZnI7XG4gIH1cbiAgLmxhbmd1YWdlLXNlbGVjdG9yLXdyYXBwZXIgLnN1Yi1tZW51IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgfVxuICAubGFuZ3VhZ2Utc2VsZWN0b3ItY29udGFpbmVyIC5zdWItbWVudSAud3BtbC1scy1mbGFnIHtcbiAgICB3aWR0aDogNnZ3O1xuICB9XG59XG5cbi8qIERlc2t0b3BzIGFuZCBsYXB0b3BzIC0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMjRweCkge1xuICAjbWVudS13cG1sIHtcbiAgICBsaSBhIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5sYW5ndWFnZS1zZWxlY3Rvci13cmFwcGVyIC5zdWItbWVudSB7XG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDJyZW07XG4gICAgfVxuICB9XG4gIC5sYW5ndWFnZS1zZWxlY3Rvci13cmFwcGVyIC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogaW5pdGlhbDtcbiAgfVxuICAubGFuZ3VhZ2Utc2VsZWN0b3ItY29udGFpbmVyIC5zdWItbWVudSAud3BtbC1scy1mbGFnIHtcbiAgICB3aWR0aDogM3Z3O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgfVxuXG4gIC5sYW5ndWFnZS1zZWxlY3Rvci1jb250YWluZXIgLnN1Yi1tZW51IC53cG1sLWxzLWZsYWc6aG92ZXIge1xuICAgIHdpZHRoOiA1dnc7XG4gIH1cbiAgLyogU3R5bGVzICovXG4gIC5jb2wtMi1pbm5lci1jb250IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmhlcm8tbG9nbyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAjcGNhcnMzLXByaW1hcnktY29sLTIgcCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuNXZ3ICsgMC41cmVtKTtcbiAgfVxuICAjcGNhcnMyLXByaW1hcnktY29sLTIgcCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuNXZ3ICsgMC4zcmVtKTtcbiAgfVxuICAjbmF2LW1vYmlsZS1oYW1idXJnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI25hdi1tYWluIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gICNzdWItbWVudSB7XG4gICAgaDIge1xuICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMjApO1xuICAgIH1cbiAgfVxuICAjbmF2LWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtYXJlYTogbmF2O1xuICAgIHVsIHtcbiAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudHdvLWNvbC1jb250IHtcbiAgICBtaW4taGVpZ2h0OiA2MnZoO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS41ZnIgMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICB9XG4gICNwcmltYXJ5LWNvbC0xIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbiAgLmZlYXR1cmVzIHtcbiAgICBoZWlnaHQ6IDU1dmg7XG4gIH1cbiAgLnByaW1hcnktY29sLTEsXG4gICNwY2FyczItcHJpbWFyeS1jb2wtMSxcbiAgI3BjYXJzMS1wcmltYXJ5LWNvbC0xIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAlLCA4NSUgMTAwJSwgMCUgMTAwJSk7XG4gIH1cbiAgLmNvbC0yLWlubmVyLWNvbnQge1xuICAgIG1heC13aWR0aDogNjV2aDtcbiAgfVxuICAvLyBCYWNrZ3JvdW5kIHpvb20gb24gaG92ZXJcbiAgLnByaW1hcnktY29sLTEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDFzO1xuICB9XG4gIC5uby13ZWJwIHtcbiAgICAucGNhcnMzLWV1OjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3Byb2plY3QtY2Fycy0zLWh1Yi1jb2wtMS12MkAyeC5qcGdcIik7XG4gICAgfVxuICAgIC5wY2FyczMtdXM6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyLXVzQDJ4LmpwZ1wiKTtcbiAgICB9XG4gICAgLnBjYXJzMy1hczo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wcm9qZWN0LWNhcnMtMy1odWItY29sLTEtdjItYXNpYUAyeC5qcGdcIik7XG4gICAgfVxuICB9XG5cbiAgLndlYnAge1xuICAgIC5wY2FyczMtZXU6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyQDJ4LndlYnBcIik7XG4gICAgfVxuICAgIC5wY2FyczMtdXM6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyLXVzQDJ4LndlYnBcIik7XG4gICAgfVxuICAgIC5wY2FyczMtYXM6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvamVjdC1jYXJzLTMtaHViLWNvbC0xLXYyLWFzaWFAMngud2VicFwiKTtcbiAgICB9XG4gIH1cblxuICAucHJpbWFyeS1jb2wtMTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNjAlO1xuICAgIG1pbi1oZWlnaHQ6IDcydmg7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMS41cztcbiAgfVxuICAjcGNhcnMzLXNlY3Rpb246aG92ZXIge1xuICAgIC5wYy1idXR0b246OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxLjEpIHNrZXdYKC0xMWRlZyk7XG4gICAgfVxuICAgIC5wcmltYXJ5LWNvbC0xIHtcbiAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDk4JSAwJSwgODMlIDEwMCUsIDAlIDEwMCUpO1xuICAgICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA5OCUgMCUsIDgzJSAxMDAlLCAwJSAxMDAlKTtcbiAgICB9XG4gICAgLnByaW1hcnktY29sLTE6OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIH1cbiAgfVxuICAvLyBwQ0FSUzJcbiAgI3BjYXJzMi1wcmltYXJ5LWNvbC0xIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7XG4gIH1cbiAgI3BjYXJzMi1wcmltYXJ5LWNvbC0xOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDcydmg7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wcm9qZWN0LWNhcnMtMi1odWItY29sLTEtdjJAMnguanBnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAxLjVzO1xuICB9XG4gICNwY2FyczItc2VjdGlvbjpob3ZlciB7XG4gICAgLnBjLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLy8gcGFkZGluZzogMS4yNXJlbSA1cmVtO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMS4xKSBza2V3WCgtMTFkZWcpO1xuICAgIH1cbiAgICAjcGNhcnMyLXByaW1hcnktY29sLTEge1xuICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgOTglIDAlLCA4MyUgMTAwJSwgMCUgMTAwJSk7XG4gICAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwIDAsIDk4JSAwJSwgODMlIDEwMCUsIDAlIDEwMCUpO1xuICAgIH1cbiAgICAjcGNhcnMyLXByaW1hcnktY29sLTE6OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIH1cbiAgfVxuICAvLyBwQ0FSUzFcbiAgI3BjYXJzMS1wcmltYXJ5LWNvbC0xIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7XG4gIH1cbiAgI3BjYXJzMS1wcmltYXJ5LWNvbC0xOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDcydmg7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9wcm9qZWN0LWNhcnMtMUAyeC5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gICAgdHJhbnNpdGlvbjogYWxsIDEuNXM7XG4gIH1cbiAgI3BjYXJzMS1zZWN0aW9uOmhvdmVyIHtcbiAgICAucGMtYnV0dG9uOjphZnRlciB7XG4gICAgICAvLyBwYWRkaW5nOiAxLjI1cmVtIDVyZW07XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxLjEpIHNrZXdYKC0xMWRlZyk7XG4gICAgfVxuICAgICNwY2FyczEtcHJpbWFyeS1jb2wtMSB7XG4gICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA5OCUgMCUsIDgzJSAxMDAlLCAwJSAxMDAlKTtcbiAgICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgOTglIDAlLCA4MyUgMTAwJSwgMCUgMTAwJSk7XG4gICAgfVxuICAgICNwY2FyczEtcHJpbWFyeS1jb2wtMTo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgfVxuICB9XG59XG5cbi8qIFRhbGwgMTA4MHAgbW9uaXRvciAgLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDE5MjBweCkge1xuICAuaGVyby1sb2dvIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi8qIExhcmdlIHNjcmVlbnMgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTgyNHB4KSB7XG4gIC8qIFN0eWxlcyAqL1xuICAuaGVyby1sb2dvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiBVbHRyYXdpZGUgMTA4MHAgLyAxNDQwcCAtLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjUwMHB4KSB7XG4gIC5jb2wtMi1pbm5lci1jb250IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmhlcm8tbG9nbyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAjcGNhcnMzLXByaW1hcnktY29sLTIgcCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuNXZ3ICsgMC41cmVtKTtcbiAgfVxuICAjcGNhcnMyLXByaW1hcnktY29sLTIgcCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDAuNXZ3ICsgMC4zcmVtKTtcbiAgfVxuICAucHJpbWFyeS1jb2wtMTo6YmVmb3JlIHtcbiAgICBtaW4taGVpZ2h0OiA2MnZoO1xuICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0zNXZoO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgfVxuICAjcGNhcnMyLXByaW1hcnktY29sLTE6OmJlZm9yZSB7XG4gICAgbWluLWhlaWdodDogNjJ2aDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuLyogVWx0cmF3aWRlIDRrIC0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzODAwcHgpIGFuZCAobWluLWhlaWdodDogMTYwMHB4KSB7XG4gIC5wcmltYXJ5LWNvbC0xOjpiZWZvcmUge1xuICAgIG1pbi1oZWlnaHQ6IDYzdmg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTE4dmg7XG4gIH1cbiAgI3BjYXJzMi1wcmltYXJ5LWNvbC0xOjpiZWZvcmUge1xuICAgIG1pbi1oZWlnaHQ6IDgydmg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTE4dmg7XG4gIH1cbn1cblxuLy8gLyogaVBob25lIDQgLS0tLS0tLS0tLS0gKi9cbi8vIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbi8vICAgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpIHtcbi8vICAgLyogU3R5bGVzICovXG4vLyB9XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDRUEsT0FBTyxDQUFDLDJIQUFJO0FBRVosT0FBTyxDQUFDLG9DQUFJO0FBRVosVUFBVTtFQUNSLFdBQVcsRUFBRSxnQkFBZ0I7RUFDN0IsR0FBRyxF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 */
