/******************************************************************
Main OLC Stylesheet
******************************************************************/
/*********************
GENERAL STYLES
*********************/
html {
  box-sizing: border-box;
  font-size: 100%;
}

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

::-moz-selection {
  background: #386572;
  color: #acd8bd;
}

::selection {
  background: #386572;
  color: #acd8bd;
}

::-moz-selection {
  background: #386572;
  color: #acd8bd;
}

body {
  font-family: "tacoria_regular", serif;
  line-height: 1.5;
  color: #acd8bd;
  background-color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  text-transform: uppercase;
}

.noScroll {
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
}

:focus {
  outline: 3px dotted black;
}

.srOnly {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

/******************************************************************
Typography Styles
******************************************************************/
@font-face {
  font-family: "spicy_mexican_street_cornn_Rg";
  src: url("/wp-content/themes/tacoria/public/fonts/spicymexicanstreetcornn-regular-webfont.woff2") format("woff2"), url("/wp-content/themes/tacoria/public/fonts/spicymexicanstreetcornn-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "tacoria_regular";
  src: url("/wp-content/themes/tacoria/public/fonts/tacoria-regular-webfont.woff2") format("woff2"), url("/wp-content/themes/tacoria/public/fonts/tacoria-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
blockquote {
  font-size: 1rem;
  line-height: 1.25;
  /* 25px / 20px */
  border-left: 4px solid gray;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  blockquote {
    font-size: 1.5rem;
    line-height: 1.45833333;
  }
}

figure,
figcaption {
  display: block;
  font-style: italic;
  font-size: 0.9em;
  color: gray;
  text-align: center;
}

/******************************************************************
H1, H2, H3, H4, H5 STYLES
******************************************************************/
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
  text-rendering: optimizelegibility;
  font-weight: 500;
}
h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a {
  text-decoration: none;
}

h1,
.h1 {
  font-size: 2rem;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  h1,
  .h1 {
    font-size: 2.5rem;
    line-height: 1.125;
  }
}
@media screen and (min-width: 1040px) {
  h1,
  .h1 {
    font-size: 3rem;
    line-height: 1.05;
  }
}

h2,
.h2 {
  font-size: 1.625rem;
  line-height: 1.15384615;
  margin-bottom: 0.375em;
  font-family: "spicy_mexican_street_cornn_Rg", sans-serif;
}
@media screen and (min-width: 768px) {
  h2,
  .h2 {
    font-size: 2rem;
    line-height: 1.25;
  }
}
@media screen and (min-width: 1040px) {
  h2,
  .h2 {
    font-size: 2.25rem;
    line-height: 1.25;
  }
}

h3,
.h3 {
  font-size: 1.375rem;
  line-height: 1.13636364;
}
@media screen and (min-width: 768px) {
  h3,
  .h3 {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media screen and (min-width: 1040px) {
  h3,
  .h3 {
    font-size: 1.75rem;
    line-height: 1.25;
  }
}

h4,
.h4 {
  color: #acd8bd;
  font-size: 1.125rem;
  line-height: 1.11111111;
}
@media screen and (min-width: 768px) {
  h4,
  .h4 {
    line-height: 1.222222222;
  }
}

h5,
.h5 {
  font-size: 0.84375rem;
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #acd8bd;
}

h6,
.h6 {
  color: #acd8bd;
}

.alert {
  display: inline-block;
  font-size: 0.9em;
  background-color: black;
  color: #acd8bd;
}

/*********************
LINK STYLES
*********************/
a,
a:visited {
  color: #acd8bd;
  /* on hover */
  /* mobile tap color */
}
a:hover,
a:visited:hover {
  color: #78c094;
}
a:link,
a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}
a:focus-visible,
a:visited:focus-visible {
  outline: 2px solid white;
  outline-offset: 2px;
}
a.dark:focus-visible,
a:visited.dark:focus-visible {
  outline-color: black;
}

/******************************************************************
Table Styles
******************************************************************/
table {
  width: 100%;
  margin-bottom: 1.5em;
}
table caption {
  margin: 0 0 7px;
  font-size: 0.75em;
  color: gray;
  text-transform: uppercase;
  letter-spacing: 1px;
}

th,
td {
  padding: 10px 20px;
  text-align: left;
}

tr:nth-child(even) {
  background: #eee;
}

tr:nth-child(even) {
  background-color: lightgray;
}

td {
  color: #666;
}

th {
  background-color: lightgray;
}

/*********************
UTILITY CLASSES
*********************/
/* For each color create utility classes */
.u-bg--green {
  background-color: #acd8bd;
}

.u-text--green {
  color: #acd8bd;
}

a.u-text--green:hover {
  color: #89c8a1;
}

.u-bg--green--dark {
  background-color: #386572;
}

.u-text--green--dark {
  color: #386572;
}

a.u-text--green--dark:hover {
  color: #274750;
}

.u-bg--black {
  background-color: black;
}

.u-text--black {
  color: black;
}

a.u-text--black:hover {
  color: black;
}

/******************************************************************
Button Styles
******************************************************************/
.button {
  display: inline-block;
  position: relative;
  font-family: "tacoria_regular", serif;
  text-decoration: none;
  color: white !important;
  font-size: 1.5rem;
  line-height: 34px;
  font-weight: normal;
  padding: 0.5em 1em;
  border: 0;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.14s ease-in-out;
  background: #386572;
  box-shadow: -0.625rem 0.875rem 0.875rem rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 768px) {
  .button {
    font-size: 2.0625rem;
  }
}
.button:hover {
  color: white;
  text-decoration: none;
  background: #1f383f;
  box-shadow: -0.125rem 0.125rem 0.875rem rgba(0, 0, 0, 0.25);
}

button:focus-visible {
  outline: 2px solid white;
  outline-offset: 2px;
}

button.dark:focus-visible {
  outline: 2px solid black;
  outline-offset: 2px;
}

/******************************************************************
Form Styles
******************************************************************/
input:not([type=checkbox]):not([type=radio]),
select,
textarea,
.field {
  display: block;
  line-height: 1em;
  font-size: 1em;
  color: black;
  border-color: black;
  font-family: sans-serif !important;
  border-width: 4px;
  border-style: dotted;
  border-spacing: inherit;
  border-radius: 0;
  box-shadow: none;
  width: 100%;
  background-color: white;
  transition: background-color 0.24s ease-in-out;
  padding: 0.5em;
  box-sizing: border-box;
}
input:not([type=checkbox]):not([type=radio]):focus, input:not([type=checkbox]):not([type=radio]):active,
select:focus,
select:active,
textarea:focus,
textarea:active,
.field:focus,
.field:active {
  outline: 2px solid #386572;
  outline-offset: 3px;
  border-color: #386572;
  border-style: solid;
  border-width: 2px;
}
input:not([type=checkbox]):not([type=radio]).error, input:not([type=checkbox]):not([type=radio]).is-invalid,
select.error,
select.is-invalid,
textarea.error,
textarea.is-invalid,
.field.error,
.field.is-invalid {
  color: red;
  border-color: red;
  background-color: white;
  outline-color: red;
}
input:not([type=checkbox]):not([type=radio])::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder, .field::-moz-placeholder {
  color: #686868;
  opacity: 1;
}
input:not([type=checkbox]):not([type=radio]):-moz-placeholder-shown, select:-moz-placeholder-shown, textarea:-moz-placeholder-shown, .field:-moz-placeholder-shown {
  color: #686868;
  opacity: 1;
}
input:not([type=checkbox]):not([type=radio])::placeholder, input:not([type=checkbox]):not([type=radio]):placeholder-shown,
select::placeholder,
select:placeholder-shown,
textarea::placeholder,
textarea:placeholder-shown,
.field::placeholder,
.field:placeholder-shown {
  color: #686868;
  opacity: 1;
}

*::-moz-placeholder {
  color: #686868;
  opacity: 1;
}

*:-moz-placeholder-shown {
  color: #686868;
  opacity: 1;
}

*::placeholder,
*:placeholder-shown {
  color: #686868;
  opacity: 1;
}

textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
  text-transform: uppercase;
  font-family: "spicy_mexican_street_cornn_Rg", sans-serif;
}
textarea:focus, textarea:active {
  outline: 2px solid #386572;
  outline-offset: 3px;
  border-color: #386572;
  border-style: solid;
  border-width: 2px;
}

input[type=submit] {
  display: inline-block;
  position: relative;
  font-family: "tacoria_regular", serif;
  text-decoration: none;
  color: white !important;
  font-size: 1.5rem;
  line-height: 34px;
  font-weight: normal;
  padding: 0.5em 1em;
  border: 0;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.14s ease-in-out;
  background: #386572;
  box-shadow: -0.625rem 0.875rem 0.875rem rgba(0, 0, 0, 0.25);
  background-color: white !important;
  color: black !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: none;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  input[type=submit] {
    font-size: 2.0625rem;
  }
}
input[type=submit]:hover {
  color: white;
  text-decoration: none;
  background: #1f383f;
  box-shadow: -0.125rem 0.125rem 0.875rem rgba(0, 0, 0, 0.25);
}
input[type=submit]:focus, input[type=submit]:hover {
  color: white !important;
  background-color: black !important;
}
input[type=submit]:focus {
  outline: 3px dotted gray;
}

.form--modal {
  visibility: hidden;
  opacity: 0;
  transition: 0.4s all ease-in-out;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.85);
  overflow-y: auto;
}
@media screen and (min-width: 768px) {
  .form--modal {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
.form--modal .location {
  margin-bottom: 0.9375rem;
}
.form--modal .form__container {
  position: relative;
}
.form--modal form {
  background: #acd8bd;
  padding: 1.875rem;
  width: 90%;
  max-width: 37.5rem;
  margin-left: auto;
  margin-top: 2.5rem;
  margin-right: auto;
  position: relative;
  color: black;
  text-transform: uppercase;
  font-family: "tacoria_regular", serif;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .form--modal form {
    min-width: 25rem;
  }
}
.form--modal label {
  margin-top: 1.25rem;
}
.form--modal p {
  margin: 0;
}
.form--modal input {
  border: none;
  border-bottom: 4px dotted black;
}
.form--modal input[type=submit] {
  border-bottom: none;
  box-shadow: none;
  font-size: 1.5rem;
  background-color: black;
  background-image: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form--modal select,
.form--modal input {
  color: black;
  text-transform: uppercase !important;
  font-family: "tacoria_regular", serif;
}
.form--modal select option,
.form--modal input option {
  color: black;
}
.form--modal.visible {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.formClose {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(30%, -30%);
  background: none;
  border: none;
  outline: 0;
  z-index: 3;
}
.formClose:hover {
  cursor: pointer;
}

.gform_validation_errors {
  display: none;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
  color: black;
}

.wpcf7-form-control-wrap {
  display: block;
  padding: 0;
  margin-bottom: 0.9375rem;
}

.resume input {
  font-family: arial, sans-serif;
}

.wpcf7-response-output {
  margin-top: 1.25rem;
}
.wpcf7-response-output.wpcf7-validation-errors {
  color: darkred;
}

.wpcf7-not-valid-tip {
  color: darkred;
}

.gform_wrapper.gravity-theme .gform_body .gfield_required {
  color: #962208;
}

/* Text meant only for screen readers. */
.screen-reader-response {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.gform_wrapper .top_label input[type=file].medium,
.gform_wrapper .gfield--label_above input[type=file].medium {
  width: 100%;
}

.gform_wrapper .gform_footer {
  text-align: center;
}

.gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
.gform_wrapper .gfield--sublabel_below .ginput_complex.ginput_container label,
.gform_wrapper .field_sublabel_below div[class*=gfield_time_].ginput_container label,
.gform_wrapper .gfield--sublabel_below label {
  margin-bottom: 0;
}

.hidden {
  display: none;
}

.gform_confirmation_message {
  background-color: #acd8bd;
  color: black;
  padding: 2.5rem;
}

.ginput_container_multiselect select {
  color: black;
}

.gform_next_button,
.gform_previous_button {
  color: black !important;
  font-weight: bold;
}
.gform_next_button:hover, .gform_next_button:focus,
.gform_previous_button:hover,
.gform_previous_button:focus {
  color: #acd8bd !important;
  background-color: black !important;
}

.gform_confirmation_message a,
.ginput_container_radio a {
  color: black;
}

.ginput_container_multiselect select option:checked {
  background-color: black;
  color: white;
}

/* Responsive Videos */
.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

img,
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

svg.full {
  width: 100%;
  height: auto;
}

/**** 768 AND UP ****/
@media screen and (min-width: 481px) {
  /* at this larger size, we can start to align images */
  .alignleft,
  img.alignleft {
    margin-right: 1.5em;
    display: inline;
  }
  .alignright,
  img.alignright {
    margin-left: 1.5em;
    display: inline;
  }
  .aligncenter,
  img.aligncenter {
    margin-right: auto;
    margin-left: auto;
    display: block;
    clear: both;
  }
}
.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
.glide * {
  box-sizing: inherit;
}
.glide__track {
  overflow: hidden;
}
.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  touch-action: pan-Y;
  overflow: hidden;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
}
.glide__slides--dragging {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide__slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  white-space: normal;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}
.glide__slide a {
  -webkit-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.glide__arrows {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide__bullets {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.glide--rtl {
  direction: rtl;
}

.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: white;
  text-transform: uppercase;
  padding: 9px 12px;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  transform: translateY(-50%);
  line-height: 1;
}
.glide__arrow:focus {
  outline: none;
}
.glide__arrow:hover {
  border-color: white;
}
.glide__arrow--left {
  left: 2em;
}
.glide__arrow--right {
  right: 2em;
}
.glide__arrow--disabled {
  opacity: 0.33;
}
.glide__bullets {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  left: 50%;
  display: inline-flex;
  list-style: none;
  transform: translateX(-50%);
}
.glide__bullet {
  background-color: rgba(255, 255, 255, 0.5);
  width: 9px;
  height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid transparent;
  transition: all 300ms ease-in-out;
  cursor: pointer;
  line-height: 0;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  margin: 0 0.25em;
}
.glide__bullet:focus {
  outline: none;
}
.glide__bullet:hover, .glide__bullet:focus {
  border: 2px solid white;
  background-color: rgba(255, 255, 255, 0.5);
}
.glide__bullet--active {
  background-color: white;
}
.glide--swipeable {
  cursor: grab;
  cursor: -webkit-grab;
}
.glide--dragging {
  cursor: grabbing;
  cursor: -webkit-grabbing;
}

button.glide__arrow {
  background: black;
}
button.glide__arrow:focus {
  outline: 3px dotted white;
}
button.glide__arrow:focus svg path {
  fill: white !important;
}

.glide__arrows .glide__arrow--left {
  left: 0.25em;
}
@media screen and (min-width: 768px) {
  .glide__arrows .glide__arrow--left {
    left: 1.5em;
  }
}
.glide__arrows .glide__arrow--right {
  right: 0.25em;
}
@media screen and (min-width: 768px) {
  .glide__arrows .glide__arrow--right {
    right: 1.5em;
  }
}
.glide__arrows .glide__arrow {
  height: 3rem;
  width: 3rem;
}
@media screen and (min-width: 768px) {
  .glide__arrows .glide__arrow {
    height: 4.875rem;
    width: 4.875rem;
  }
}
.glide__arrows .glide__arrow svg {
  width: 100%;
  height: auto;
}

.skipLink {
  position: absolute;
  left: 6px;
  top: -99px;
}

.skipLink:focus {
  z-index: 999;
  font-size: 14px;
  font-weight: 700;
  top: 6px;
  padding: 15px 23px 14px;
  background-color: #386572;
  color: white !important;
}

/*********************
HEADER STYLES
*********************/
.header {
  background-color: #acd8bd;
  color: black;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
  will-change: transform;
  transition: transform 200ms linear;
  width: 100%;
}
.header.headroom--pinned {
  transform: translateY(0%);
}
.header.headroom--pinned.headroom--not-top {
  position: fixed;
  top: 0;
  left: 0;
}
.header.headroom--unpinned {
  transform: translateY(-100%);
}
.header h1 {
  margin: 0;
}
.header * {
  color: black;
}
@media screen and (max-width: 768px) {
  .header__logo {
    order: 1;
    max-width: 7.5rem;
  }
}
.header__logo svg {
  transition: 0.2s all ease-in-out;
  height: 2.9375rem;
  width: 8.125rem;
}
@media screen and (max-width: 768px) {
  .header__logo svg svg {
    width: 100%;
    height: auto;
  }
}
.headerWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
@media screen and (max-width: 768px) {
  .header__socialNav {
    display: none;
  }
}

.socialNav .nav li:first-of-type a {
  padding-left: 0;
}
.socialNav a {
  padding-left: 0.625rem;
}
.socialNav a:hover svg path, .socialNav a:focus svg path {
  fill: white;
}

.header__socialNav a:hover svg path, .header__socialNav a:focus svg path {
  fill: black;
}

/*********************
NAVIGATION STYLES
*********************/
.navWrapper__open {
  border: none;
  padding: 0.625rem;
  border-radius: 0;
  cursor: pointer;
  background-color: transparent;
}
.navWrapper__open:hover, .navWrapper__open:focus {
  background-color: black;
}
.navWrapper__open:hover svg path, .navWrapper__open:focus svg path {
  fill: #acd8bd;
}
@media screen and (max-width: 768px) {
  .navWrapper__open {
    order: 2;
  }
}

.navWrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  min-height: 100vh;
  overflow: scroll;
  background: black;
  transition: 0.2s all ease-in-out;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  overflow-x: hidden;
  background-image: url(/wp-content/themes/tacoria/public/images/menu-bg.jpg);
}
.navWrapper.visible {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
.navWrapper__close {
  cursor: pointer;
  color: #acd8bd;
  font-size: 1.2rem;
  font-weight: 700;
  border: none;
  background-color: transparent;
}
.navWrapper__socialNav {
  padding-top: 1.25rem;
  padding-bottom: 10%;
}
@media screen and (min-width: 768px) {
  .navWrapper__socialNav {
    padding-bottom: 0;
  }
}
.navWrapper__socialNav svg path {
  fill: #acd8bd;
}
.navWrapper__socialNav a:hover svg path {
  fill: white;
}

.nav {
  margin: 0;
  padding: 0;
  list-style: none;
  /* end .menu li */
}
.nav li {
  list-style: none;
  display: inline-block;
}
.nav li a {
  display: inline-block;
}

/* end .nav */
.siteNav li {
  display: block;
}
.siteNav li a {
  font-family: "spicy_mexican_street_cornn_Rg", sans-serif;
  display: block;
  color: #acd8bd;
  font-size: 1.25rem;
  text-decoration: none;
}
.siteNav li a:hover {
  color: white;
}
@media screen and (min-width: 768px) {
  .siteNav li a {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .siteNav .nav-order {
    display: none;
  }
}
.siteNav .hit-us-up a {
  font-family: "tacoria_regular", serif;
}
.siteNav .my-account a {
  font-size: 1.5rem;
}

.navContainer {
  height: 100%;
  width: 100%;
  padding: 10% 5%;
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .navContainer {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.order-here {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0.625rem, -50%);
  transition: 0.2s all ease-in-out;
}
.order-here path {
  transition: 0.2s all ease-in-out;
}
.order-here:hover {
  transform: translate(0, -50%);
}
.order-here:hover #banner path {
  fill: white;
}
@media screen and (max-width: 768px) {
  .order-here {
    display: none;
  }
}

.navLocations {
  background-color: #386572;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin: 0;
}
.navLocations a {
  color: white;
  text-decoration: none;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  transition: 0.2s all ease-in-out;
  white-space: nowrap;
}
.navLocations a:hover, .navLocations a:focus {
  color: white;
}
@media screen and (min-width: 768px) {
  .navLocations a {
    font-size: 1.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.navLocations ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style-type: none;
}

.footer {
  background-color: black;
  color: white;
  text-align: center;
  border-top: 6px solid #386572;
  padding-bottom: 5em;
}
@media screen and (min-width: 768px) {
  .footer {
    text-align: left;
  }
}
.footer input:not([type=checkbox]):not([type=radio]),
.footer select,
.footer textarea,
.footer .field {
  border-color: white;
}
.footer .fixedButton {
  white-space: nowrap;
  padding-inline: 3em;
  border-radius: 2em;
  z-index: 100;
  box-shadow: 0 2px 16px 10px rgba(0, 0, 0, 0.2);
  position: fixed;
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1em;
  width: 90%;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer .fixedButton {
    font-size: 1.5em;
    width: auto;
  }
}
.footer a {
  color: #acd8bd;
  font-size: 1.375rem;
}
.footer a:hover, .footer a:focus {
  color: white;
}
@media screen and (min-width: 1040px) {
  .footer__form {
    display: flex;
  }
}
.footer .gform_wrapper form input[type=text].large {
  padding: 1em 0.5em;
  line-height: 2.25rem;
  margin-bottom: 0;
  color: white;
  background-color: black;
  border-color: white;
}
@media screen and (min-width: 1040px) {
  .footer .gform_wrapper form input[type=text].large {
    min-width: 18.75rem;
  }
}
.footer .gform_wrapper form .gfield--type-email {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer .gform_wrapper form .gfield--type-email {
    text-align: left;
  }
}
.footer .gform_wrapper form input[type=email] {
  padding: 1em 0.5em;
  border: none;
  background: white;
  color: black;
}
.footer .gform_wrapper form input[type=email]:focus-visible {
  outline: 2px solid white;
  outline-offset: 2px;
}
.footer .gform_wrapper form input[type=submit] {
  font-size: 1rem;
  box-shadow: none;
  background-color: #386572;
  margin-inline: auto;
}
.footer .gform_wrapper form input[type=submit]:focus-visible {
  outline: 3px solid white;
}
.footer .gform_wrapper form .gform_footer {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .footer .gform_wrapper form .gform_footer {
    text-align: right;
  }
}
.footer .gform_wrapper ul.gform_fields li.gfield {
  padding-right: 0;
}
@media screen and (min-width: 768px) {
  .footer .gform_validation_error form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
}
.footer .gform_wrapper li.gfield.gfield_error,
.footer .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
  background-color: white;
}
.footer .gform_wrapper div.validation_error {
  min-width: 100%;
  flex: 0 1 100%;
}
.footer body .gform_wrapper .top_label div.ginput_container.ginput_container_email,
.footer body .gform_wrapper .gfield--label_above div.ginput_container.ginput_container_email {
  margin-top: 0 !important;
}
.footer input {
  border: 2px solid white;
  font-family: "tacoria_regular", serif;
  letter-spacing: 0.375rem;
  text-transform: uppercase;
  color: #386572;
  margin-bottom: 0.625rem;
  text-align: center;
  max-width: 25rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1040px) {
  .footer input[type=text] {
    min-width: 18.75rem;
  }
}
.footer input[type=submit] {
  border: 2px solid #acd8bd;
  text-transform: uppercase;
  margin-top: 8px;
}

.footer__menu.two-cols {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 3em;
       column-gap: 3em;
}
.footer__menu li {
  display: block;
}
.footer__menu li a {
  text-decoration: none;
}
.footer__menu .dialog__open {
  background-color: transparent;
  color: #acd8bd;
  border: none;
  padding: 0;
  font-size: 1.375rem;
  font-family: "tacoria_regular", serif;
  text-transform: uppercase;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .footerRow {
    display: flex;
    width: 100%;
    padding-bottom: 1.25rem;
  }
}
@media screen and (min-width: 768px) {
  .footerRow > * {
    padding-right: 1.875rem;
  }
}
.footerRow--one {
  justify-content: space-between;
}
.footerRow--two {
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .footerRow .subscribe {
    flex: 0 1 31.25rem;
  }
}
.footerRow .subscribe input[type=text] {
  border: 1px solid white !important;
}

/********************
LAYOUT & GRID STYLES
*********************/
[class*=wrap] {
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
@media screen and (min-width: 768px) {
  [class*=wrap] {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

#container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-start;
  min-height: 100vh;
}

#container > footer {
  margin-top: auto;
}

.mainContent {
  padding-top: 4.6875rem;
}

.wrapper {
  margin-left: 5vw;
  margin-right: 5vw;
  width: 90vw;
}

@keyframes taco {
  25% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide1.jpg");
  }
  30% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide2.jpg");
  }
  35% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide3.jpg");
  }
  40% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide4.jpg");
  }
  45% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide5.jpg");
  }
  50% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide6.jpg");
  }
  55% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide7.jpg");
  }
  60% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide8.jpg");
  }
  90% {
    background-image: url("/wp-content/themes/tacoria/public/images/taco-slide8.jpg");
  }
}
/*************************
HOMEPAGE SPECIFIC STYLES
*************************/
.home .main-content {
  display: block;
}
.home .mainContent {
  padding-top: 0;
}
.home .navWrapper__open {
  background-color: black;
}
.home .navWrapper__open svg path {
  fill: #acd8bd;
}
.home .navWrapper__open:hover, .home .navWrapper__open:focus {
  background-color: #acd8bd;
}
.home .navWrapper__open:hover svg path, .home .navWrapper__open:focus svg path {
  fill: black;
}
.home .header {
  background-color: transparent;
}
.home .header__logo {
  visibility: hidden;
  opacity: 0;
  transition: 0.4s all ease-in-out;
}
.home .header__socialNav {
  visibility: hidden;
  opacity: 0;
  transition: 0.2s all ease-in-out;
}
.home .header__socialNav svg path {
  fill: #acd8bd;
}
.home .header.reveal {
  background-color: #acd8bd;
}
.home .header.reveal .header__logo {
  opacity: 1;
  visibility: visible;
}
.home .header.reveal .navWrapper__open {
  background-color: #acd8bd;
  transition: 0.2s all ease-in-out;
}
.home .header.reveal .navWrapper__open svg path {
  fill: black;
}
.home .header.reveal .navWrapper__open:hover, .home .header.reveal .navWrapper__open:focus {
  background-color: black;
}
.home .header.reveal .navWrapper__open:hover svg path, .home .header.reveal .navWrapper__open:focus svg path {
  fill: #acd8bd;
}
.home .header.reveal .header__socialNav {
  visibility: visible;
  opacity: 1;
}
.home .header.reveal .header__socialNav svg path {
  fill: black;
}

.hero {
  position: relative;
}
.hero__image {
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100vw;
  display: block;
  animation-name: taco;
  animation-duration: 7s;
  animation-delay: 3s;
  animation-direction: normal;
  animation-timing-function: linear;
  animation-iteration-count: 1;
  background-position: center;
  background-image: url("/wp-content/themes/tacoria/public/images/taco-slide1.jpg");
  transition: 0.2s all ease-in-out;
  will-change: transform;
  transform: translateZ(0);
}
.hero__content {
  position: absolute;
  bottom: 4vw;
  left: 50%;
  transform: translateX(-50%);
  mix-blend-mode: difference;
}
@media screen and (min-width: 768px) {
  .hero__content {
    bottom: 0;
  }
}
.hero__content svg {
  width: 75vw;
  height: auto;
}

.home-callouts {
  background-color: #386572;
  text-align: center;
  padding-bottom: 1.25rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .home-callouts {
    padding-bottom: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .home-callouts--desktop {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .home-callouts--mobile {
    display: none;
  }
}
.home-callouts--desktop > svg, .home-callouts--mobile > svg {
  width: 95vw;
  height: auto;
  position: relative;
  z-index: 2;
  margin-top: -5vw;
}
.home-callouts--desktop > svg a:hover path,
.home-callouts--desktop > svg a:hover text, .home-callouts--desktop > svg a:focus path,
.home-callouts--desktop > svg a:focus text, .home-callouts--mobile > svg a:hover path,
.home-callouts--mobile > svg a:hover text, .home-callouts--mobile > svg a:focus path,
.home-callouts--mobile > svg a:focus text {
  fill: white;
}
.home-callouts--desktop > svg a:hover rect, .home-callouts--desktop > svg a:focus rect, .home-callouts--mobile > svg a:hover rect, .home-callouts--mobile > svg a:focus rect {
  stroke: white;
}

.homeCarousel {
  position: absolute;
  width: 90vw;
  height: auto;
  overflow: hidden;
  top: 39vw;
  left: 5vw;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .homeCarousel {
    top: 13vw;
  }
}
.homeCarousel.glide .glide__slides {
  border: none;
}

.rewards {
  background-image: url(/wp-content/themes/tacoria/public/images/menu-bg.jpg);
  background-color: black;
  color: white;
  padding-block: 5rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .rewards__heading {
    font-size: 3rem;
  }
}
.rewards__content {
  max-width: 700px;
  margin: 0 auto;
}
.rewards__buttons {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
}
@media screen and (min-width: 481px) {
  .rewards__buttons {
    flex-direction: row;
  }
}
.rewards__buttons a img {
  width: 200px;
  height: auto;
  border: 2px solid #386572;
  border-radius: 6px;
  transition: 0.2s all ease-in-out;
}
.rewards__buttons a:hover img, .rewards__buttons a:focus img {
  opacity: 0.8;
}

/*************************
PAGE SPECIFIC STYLES
*************************/
.single-header__title,
.page-header__title,
.post-header__title {
  margin: 0;
}

.eat-main svg {
  width: 100%;
  height: auto;
}
.eat-main svg a:hover path {
  fill: white;
}

.glide img {
  width: 100%;
  height: auto;
  display: block;
}
.glide .glide__arrow {
  border: none;
  box-shadow: none;
}
.glide .glide__slides {
  border-top: 6px solid #acd8bd;
  border-bottom: 6px solid #acd8bd;
  margin: 0;
}

.page-template-page-order .mainContent {
  min-height: 90vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex: 1;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 800px) {
  .page-template-page-order .mainContent {
    background-image: url("../images/order-bg--sm.jpg");
  }
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .page-template-page-order .mainContent {
    background-image: url("../images/order-bg--md.jpg");
  }
}
@media screen and (min-width: 1200px) {
  .page-template-page-order .mainContent {
    background-image: url("../images/order-bg.jpg");
  }
}
@media screen and (max-width: 768px) {
  .page-template-page-order .pageContent {
    padding-left: 5%;
    padding-right: 5%;
  }
}

.orderTrigger {
  visibility: hidden;
  opacity: 0;
  transition: 0.4s all ease-in-out;
}
.orderTrigger.visible {
  opacity: 1;
  visibility: visible;
}

.orderMenu {
  z-index: 6;
  background-color: rgba(0, 0, 0, 0.5);
}
.orderMenu.visible {
  z-index: 6;
}
.orderMenu .formClose {
  left: 50%;
  top: 1em;
  transform: translate(-50%, 0);
}
@media screen and (min-width: 768px) {
  .orderMenu .formClose {
    transform: none;
    top: 1em;
    right: 1em;
    left: inherit;
  }
}
.orderMenu a:hover text {
  fill: white;
}
.orderMenu svg {
  width: 90%;
  height: auto;
}
.orderMenu__menu {
  background-size: 100% 100%;
  position: relative;
  padding: 100px 50px 25px;
}
@media screen and (min-width: 768px) {
  .orderMenu__menu {
    padding: 100px 125px;
    background-image: url(../images/order-menu.svg);
  }
}
.orderMenu__menu li {
  list-style: none;
  font-size: 1.5em;
}
@media screen and (min-width: 768px) {
  .orderMenu__menu li {
    font-size: 2.5em;
  }
}
.orderMenu__list {
  padding-left: 0;
}
.orderMenu__list a {
  text-decoration: none;
  padding: 0.25em 0;
  display: block;
}
@media screen and (min-width: 768px) {
  .orderMenu__list a {
    padding: 0;
  }
}

.page-template-page-careers .pageContent {
  background-size: cover;
  background-position: center;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex: 1;
}
@media screen and (max-width: 800px) {
  .page-template-page-careers .pageContent {
    background-image: url("../images/careers-bg--sm.jpg");
  }
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .page-template-page-careers .pageContent {
    background-image: url("../images/careers-bg--md.jpg");
  }
}
@media screen and (min-width: 1200px) {
  .page-template-page-careers .pageContent {
    background-image: url("../images/careers-bg--lg.jpg");
  }
}
@media screen and (max-width: 768px) {
  .page-template-page-careers .pageContent {
    padding-left: 5%;
    padding-right: 5%;
  }
}
.page-template-page-careers .form--modal form {
  margin-top: 0;
}

.careerForm {
  background-color: #acd8bd;
  color: black;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}
@media screen and (min-width: 768px) {
  .careerForm {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
}
.careerForm__heading {
  text-align: center;
}
.careerForm__container {
  max-width: 50rem;
  margin: 0 auto;
}
.careerForm .gf_progressbar_title {
  color: black !important;
}

.careerTrigger {
  visibility: hidden;
  opacity: 0;
  transition: 0.4s all ease-in-out;
}
.careerTrigger:hover, .careerTrigger:focus {
  background-color: black;
}
.careerTrigger.visible {
  opacity: 1;
  visibility: visible;
}

.contactForm {
  width: 100vw;
  height: 100vh;
  overflow-y: auto;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: 0.2s all ease-in-out;
  z-index: -1;
  padding-bottom: 2.5rem;
  background: rgba(0, 0, 0, 0.8);
  overflow: auto;
}
.contactForm.visible {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  z-index: 100001;
}
.contactForm.visible form {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.2s;
}
.contactForm .form__container {
  position: relative;
  z-index: 2;
}
.contactForm textarea {
  height: 120px;
  color: black;
}
.contactForm form {
  opacity: 0;
  transform: translateY(6.25rem);
  background: #acd8bd;
  padding: 1.875rem;
  width: 90%;
  max-width: 31.25rem !important;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  color: black;
  text-transform: uppercase;
  font-family: "tacoria_regular", serif;
  text-align: left;
  transition: 0.2s all ease-in-out;
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .contactForm form {
    min-width: 25rem;
  }
}
.contactForm label {
  margin-top: 1.25rem;
}
.contactForm p {
  margin: 0;
}
.contactForm input {
  border: none;
  border-bottom: 4px dotted black;
}
.contactForm input[type=submit] {
  border-bottom: none;
  box-shadow: none;
  font-size: 1.5rem;
  background-color: black;
}
.contactForm select,
.contactForm input {
  color: black;
  text-transform: uppercase !important;
  font-family: "tacoria_regular", serif;
}
.contactForm.visible {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.contactClose {
  position: fixed;
  top: 2rem;
  right: 3rem;
  background: none;
  border: none;
  outline: 0;
}
.contactClose:hover {
  cursor: pointer;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
  color: black;
}

.wpcf7-form-control-wrap {
  display: block;
  padding: 0;
  margin-bottom: 0.9375rem;
}

.resume input {
  font-family: arial, sans-serif;
}

.page-template-page-locations {
  background-color: #acd8bd;
  color: #386572;
}

.location {
  color: black;
  margin-bottom: 5vw;
}
.locationFeaturedImage img {
  width: 100%;
  height: auto;
}
.location h2,
.location h2 a {
  background-color: black;
  color: #acd8bd;
  font-family: "tacoria_regular", serif;
  font-size: 2.5rem;
  padding: 0.625rem;
  display: inline-block;
}
.location h2:hover, .location h2:focus,
.location h2 a:hover,
.location h2 a:focus {
  color: white;
}
@media screen and (min-width: 1040px) {
  .location h2,
  .location h2 a {
    font-size: 3.75rem;
  }
}

.locationCarousel {
  border-top: 20px solid rgba(56, 101, 114, 0.64);
  border-bottom: 20px solid rgba(56, 101, 114, 0.64);
  border-left: 20px solid rgba(56, 101, 114, 0.64);
  border-right: 20px solid rgba(56, 101, 114, 0.64);
}
.locationCarousel .glide__slides {
  border: none;
}

.locationInfo {
  margin-left: 5vw;
  margin-right: 5vw;
  width: 90vw;
}
@media screen and (min-width: 1040px) {
  .locationInfo {
    display: flex;
  }
}
.locationInfo a {
  color: #386572;
  text-decoration: none;
}
.locationInfo p {
  margin: 0;
}
@media screen and (min-width: 1040px) {
  .locationInfo__left, .locationInfo__right {
    flex: 1;
    min-width: 50vw;
    width: 50vw;
  }
}
.locationInfo__left {
  margin-top: -9.375rem;
}
@media screen and (min-width: 1040px) {
  .locationInfo__left {
    margin-top: -15.625rem;
  }
}
.locationInfo__right {
  padding-left: 1.25rem;
  padding-top: 1.25rem;
}

.locationAddress {
  font-family: "spicy_mexican_street_cornn_Rg", sans-serif;
  font-size: 1.375rem;
}
@media screen and (min-width: 1040px) {
  .locationAddress {
    font-size: 2.25rem;
  }
}
.locationAddress span {
  display: block;
}

.locationPhone {
  font-size: 2.5rem;
}
@media screen and (min-width: 1040px) {
  .locationPhone {
    font-size: 3.125rem;
  }
}

.locationHours {
  font-size: 1.5rem;
}
@media screen and (min-width: 1040px) {
  .locationHours {
    font-size: 2.125rem;
  }
}

.locationLinks__left, .locationLinks__right {
  display: flex;
  margin-top: 0.625rem;
  margin-bottom: 0.625rem;
  align-items: center;
}
.locationLinks__left a, .locationLinks__right a {
  margin-right: 1.25rem;
  transition: 0.2s all ease-in-out;
  color: black;
}
.locationLinks__left a:hover, .locationLinks__left a:focus, .locationLinks__right a:hover, .locationLinks__right a:focus {
  text-decoration: underline;
  color: black;
}
@media screen and (min-width: 1040px) {
  .locationLinks__left a, .locationLinks__right a {
    font-size: 1.375rem;
  }
}
.locationLinks__left a:last-child, .locationLinks__right a:last-child {
  margin-right: 0;
}
.locationLinks__left svg, .locationLinks__right svg {
  max-height: 40px;
  max-width: 150px;
}

.locationReviews {
  padding-block: 3rem;
}

.single-location {
  background-color: #acd8bd;
  color: #386572;
}

.page-template-page-catering .pageContent {
  padding-top: 1.875rem;
  padding-bottom: 3.125rem;
}
.page-template-page-catering .pageContent svg {
  width: 100%;
  height: auto;
}
.page-template-page-catering .pageContent svg a:hover path {
  fill: white;
}
.page-template-page-catering .pageContent svg a:hover circle {
  stroke: white;
}
.page-template-page-catering .glide .glide__slides {
  border-top: 0;
}
.page-template-page-catering .form--modal {
  z-index: 999999;
  justify-content: flex-start;
}
.page-template-page-catering .form--modal .gform_confirmation_wrapper {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .page-template-page-catering .form--modal .gform_confirmation_wrapper {
    margin: 3.75rem auto;
    max-width: 37.5rem;
  }
}
.page-template-page-catering .form--modal form {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
  .page-template-page-catering .form--modal form {
    margin: 3.75rem auto;
    max-width: 37.5rem;
  }
}
.page-template-page-catering textarea {
  color: black;
}

.cateringMenu {
  background-color: black;
  text-align: center;
  padding-left: 1.875rem;
  padding-right: 1.875rem;
}
.cateringMenu a {
  background-color: #acd8bd;
  display: block;
  color: black;
  padding-top: 0.75rem;
  padding-bottom: 0.4375rem;
  text-decoration: none;
  font-size: 1.5rem;
  margin: 0 auto 3.125rem;
  border-radius: 0.625rem;
  width: 100%;
  max-width: 1000px;
}
@media screen and (min-width: 768px) {
  .cateringMenu a {
    border-radius: 1.25rem;
    font-size: 1.875rem;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    margin: 3.125rem auto 6.25rem;
  }
}
@media screen and (min-width: 1040px) {
  .cateringMenu a {
    font-size: 2.5rem;
  }
}
.cateringMenu a:hover, .cateringMenu a:focus {
  color: white;
  background-color: #386572;
}

.cateringForm .gform_wrapper input {
  width: 100% !important;
}

.cateringClose {
  position: fixed;
  top: 1em;
  right: 1em;
  transform: none;
}

.cateringModal__content {
  background: #acd8bd;
  padding: 2em;
  max-width: 700px;
  color: black;
  position: relative;
}

.cateringModal .cateringModalClose {
  transform: none;
}
@media screen and (min-width: 768px) {
  .cateringModal .cateringModalClose {
    transform: translate(30%, -30%);
  }
}

.page-template-page-inspiration .mainContent {
  position: relative;
  background-repeat: repeat-y;
  background-size: 100% auto;
  background-attachment: fixed;
  overflow: hidden;
}
@media screen and (max-width: 800px) {
  .page-template-page-inspiration .mainContent {
    background-image: url("../images/inspiration-bg--sm.jpg");
  }
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .page-template-page-inspiration .mainContent {
    background-image: url("../images/inspiration-bg--md.jpg");
  }
}
@media screen and (min-width: 1200px) {
  .page-template-page-inspiration .mainContent {
    background-image: url("../images/inspiration-bg--lg.jpg");
  }
}

.inspirationSection {
  width: 100%;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  margin-top: 10vw;
  margin-bottom: 10vw;
  position: relative;
  z-index: 2;
}
.inspirationSection .inspirationImage {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .inspirationSection .inspirationImage {
    display: none;
  }
}
.inspirationSection .inspirationImage-avacado {
  left: 70vw;
  top: -12.5rem;
}
.inspirationSection .inspirationImage-salsa {
  right: 85vw;
  top: 12.5rem;
}
@media screen and (min-width: 1120px) {
  .inspirationSection .inspirationImage-salsa {
    right: calc(800px + (100% - 750px) / 2);
  }
}
.inspirationSection .inspirationImage-limes {
  left: 85vw;
  top: 6.25rem;
}
@media screen and (min-width: 1240px) {
  .inspirationSection .inspirationImage-limes {
    left: 80vw;
  }
}
.inspirationSection .contentContainer {
  width: 80vw;
  margin-left: auto;
  margin-right: auto;
  max-width: 50rem;
}
@media screen and (min-width: 768px) {
  .inspirationSection .contentContainer {
    width: 70vw;
  }
}
.inspirationSection1 {
  background-color: rgba(0, 0, 0, 0.7);
}
.inspirationSection1 h2 {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .inspirationSection1 h2 {
    font-size: 2.5rem;
  }
}
.inspirationSection1 p {
  color: white;
  font-size: 1.25rem;
}
.inspirationSection2 {
  background-color: #acd8bd;
  color: black;
}
.inspirationSection2 p {
  font-size: 1.5rem;
}

.inspiration-bg-photos {
  position: absolute;
  top: -6.25rem;
  z-index: 1;
}

.error404 .mainContent {
  min-height: 90vh;
  display: flex;
  text-align: center;
  align-items: center;
  position: relative;
}
.error404 .mainContent:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/wp-content/themes/tacoria/public/images/menu-bg.svg);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  opacity: 0.15;
  z-index: 1;
}
.error404 .wrapMd {
  position: relative;
  z-index: 2;
}

.woocommerce input[type],
.woocommerce select,
.woocommerce textarea,
.woocommerce .field {
  background-color: white;
  border: none;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background-color: #acd8bd !important;
  color: black !important;
  border: none;
}

.woocommerce th,
.woocommerce td {
  background-color: black !important;
  color: white !important;
}
.woocommerce th a,
.woocommerce td a {
  color: #acd8bd !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  color: black;
}

.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item {
  color: black;
}
.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected {
  background-color: #acd8bd;
}

.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,
#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background-color: black;
}

table.variations, table.variations td, table.variations th {
  background-color: black !important;
}

.single-product .woocommerce div.product {
  padding: 0;
}

.woocommerce .pageContent__main,
.woocommerce-account .pageContent__main,
.woocommerce-cart .pageContent__main,
.woocommerce-checkout .pageContent__main {
  padding: 1% 3%;
}

.woocommerce-info a {
  color: #386572;
}

body.woocommerce .pageContent__main {
  display: flex;
  width: 100%;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  body.woocommerce .pageContent__main {
    flex-direction: row;
  }
}
body.woocommerce .pageContent__main .woocommerce {
  flex: 1;
  order: 1;
}
@media screen and (min-width: 768px) {
  body.woocommerce .pageContent__main .woocommerce {
    order: 2;
  }
}
body.woocommerce .pageContent__main .Categories {
  order: 2;
  padding-right: 2rem;
}
@media screen and (min-width: 768px) {
  body.woocommerce .pageContent__main .Categories {
    order: 1;
  }
}
body.woocommerce .products .add_to_cart_button {
  margin-bottom: 1rem;
}

@media print {
  /******************************************************************
  Print Stylesheet
  ******************************************************************/
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
  }
  a, a:visited {
    color: #444 !important;
    text-decoration: underline;
  }
  a:after, a:visited:after {
    content: " (" attr(href) ")";
  }
  a abbr[title]:after, a:visited abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL3N0eWxlLmNzcyIsIm1hcHBpbmdzIjoiQUFBQTs7a0VBQUE7QUNBQTs7cUJBQUE7QUFLQTtFQUNDO0VBQ0E7QURFRDs7QUNBQTs7O0VBR0M7QURHRDs7QUNBQTtFQUNDO0VBQ0E7QURHRDs7QUNMQTtFQUNDO0VBQ0E7QURHRDs7QUNEQTtFQUNDO0VBQ0E7QURJRDs7QUNEQTtFQUNDLHFDQ1VZO0VEVFo7RUFDQSxjQ0RZO0VERVo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRElEOztBQ0RBO0VBQ0M7RUFDQTtBRElEOztBQ0RBO0VBQ0M7QURJRDs7QUNBQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURHRDs7QUczREE7O2tFQUFBO0FBSUE7RUFDQztFQUNBO0VBSUE7RUFDQTtFQUNBO0FIMEREO0FHdkRBO0VBQ0M7RUFDQTtFQUlBO0VBQ0E7RUFDQTtBSHNERDtBR25EQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhxREQ7QUlyQ0U7RURyQkY7SUFRRTtJQUNBO0VIc0RBO0FBQ0Y7O0FHbkRBOztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhzREQ7O0FHbkRBOztrRUFBQTtBQUlBOzs7Ozs7Ozs7O0VBVUM7RUFDQTtBSHFERDtBR25EQzs7Ozs7Ozs7OztFQUNDO0FIOERGOztBRzFEQTs7RUFFQztFQUNBO0FINkREO0FJdkZFO0VEdUJGOztJQU1FO0lBQ0E7RUgrREE7QUFDRjtBSTlGRTtFRHVCRjs7SUFXRTtJQUNBO0VIaUVBO0FBQ0Y7O0FHOURBOztFQUVDO0VBQ0E7RUFDQTtFQUNBLHdERHpETztBRjBIUjtBSTdHRTtFRHVDRjs7SUFRRTtJQUNBO0VIbUVBO0FBQ0Y7QUlwSEU7RUR1Q0Y7O0lBYUU7SUFDQTtFSHFFQTtBQUNGOztBR2xFQTs7RUFFQztFQUNBO0FIcUVEO0FJaklFO0VEeURGOztJQU1FO0lBQ0E7RUh1RUE7QUFDRjtBSXhJRTtFRHlERjs7SUFXRTtJQUNBO0VIeUVBO0FBQ0Y7O0FHdEVBOztFQUVDLGNEOUZZO0VDK0ZaO0VBQ0E7QUh5RUQ7QUl0SkU7RUR5RUY7O0lBT0U7RUgyRUE7QUFDRjs7QUd4RUE7O0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjRDdHWTtBRndMYjs7QUd4RUE7O0VBRUMsY0RsSFk7QUY2TGI7O0FHeEVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QUgyRUQ7O0FLaE9BOztxQkFBQTtBQUlBOztFQUVDLGNIc0JZO0VHcEJaO0VBS0E7QUw2TkQ7QUtqT0M7O0VBQ0MsY0hvQlc7QUZnTmI7QUtoT0M7O0VBQ0M7QUxtT0Y7QUtoT0M7O0VBQ0M7RUFDQTtBTG1PRjtBS2hPQzs7RUFDQztBTG1PRjs7QU0zUEE7O2tFQUFBO0FBSUE7RUFDQztFQUNBO0FONlBEO0FNM1BDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjZQRjs7QU16UEE7O0VBRUk7RUFDQTtBTjRQSjs7QU16UEE7RUFDSTtBTjRQSjs7QU12UEM7RUFDQztBTjBQRjs7QU10UEE7RUFDQztBTnlQRDs7QU10UEE7RUFDQztBTnlQRDs7QU9oU0E7O3FCQUFBO0FBSUE7QUFFQztFQUNDLHlCTE9PO0FGMFJUOztBTy9SQztFQUNDLGNMSU87QUY4UlQ7O0FPaFNDO0VBQ0M7QVBtU0Y7O0FPMVNDO0VBQ0MseUJMT087QUZzU1Q7O0FPM1NDO0VBQ0MsY0xJTztBRjBTVDs7QU81U0M7RUFDQztBUCtTRjs7QU90VEM7RUFDQyx1QkxPTztBRmtUVDs7QU92VEM7RUFDQyxZTElPO0FGc1RUOztBT3hUQztFQUNDO0FQMlRGOztBUXhVQTs7a0VBQUE7QUF3Q0E7RUE5QkM7RUFDQTtFQUNBLHFDTnVCWTtFTXRCWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CQWR5QjtFQWV6QjtBUnFVRDtBSTlTRTtFSVBGO0lBYkU7RVJzVUE7QUFDRjtBUW5VQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FScVVGOztBUTNUQTtFQUNDO0VBQ0E7QVI4VEQ7O0FRM1RBO0VBQ0M7RUFDQTtBUjhURDs7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O0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQ2YvSlc7RWVnS1g7RUFDQTtBakJnb0NGOztBSXJ4Q0U7RWF5SkY7SUFFRTtJQUNBO0lBQ0E7RWpCK25DQTtBQUNGO0FJN3hDRTtFYWdLRDtJQUVFO0VqQituQ0Q7QUFDRjtBaUI1bkNDO0VBQ0M7QWpCOG5DRjtBaUIzbkNDO0VBQ0M7RUFDQTtBakI2bkNGO0FJenlDRTtFYStLRDtJQUVFO0VqQjRuQ0Q7QUFDRjtBaUIxbkNFO0VBQ0M7QWpCNG5DSDs7QWtCaDJDQTs7cUJBQUE7QUFJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0FsQmsyQ0Q7QUkzekNFO0VjM0NGO0lBT0U7SUFDQTtFbEJtMkNBO0FBQ0Y7O0FrQi8xQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtBbEJrMkNEOztBa0IvMUNBO0VBQ0M7QWxCazJDRDs7QWtCLzFDQTtFQUNDO0FsQmsyQ0Q7O0FrQi8xQ0E7RUFDQztFQUNBO0VBQ0E7QWxCazJDRDs7QW1CcjRDQTtFQUNDO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtFbUJ0NENEO0lBQ0M7RW5CdzRDQTtBQUNGO0FvQm42Q0E7O3lCQUFBO0FBS0M7RUFDQztBcEJtNkNGO0FvQmg2Q0M7RUFDQztBcEJrNkNGO0FvQi81Q0M7RUFDQztBcEJpNkNGO0FvQmg2Q0U7RUFDQztBcEJrNkNIO0FvQi81Q0U7RUFFQztBcEJnNkNIO0FvQi81Q0c7RUFDQztBcEJpNkNKO0FvQjU1Q0M7RUFDQztBcEI4NUNGO0FvQjU1Q0U7RUFDQztFQUNBO0VBQ0E7QXBCODVDSDtBb0IzNUNFO0VBQ0M7RUFDQTtFQUNBO0FwQjY1Q0g7QW9CMzVDRztFQUNDO0FwQjY1Q0o7QW9CejVDRTtFQUNDO0FwQjI1Q0g7QW9CejVDRztFQUNDO0VBQ0E7QXBCMjVDSjtBb0J4NUNHO0VBQ0M7RUFDQTtBcEIwNUNKO0FvQng1Q0k7RUFDQztBcEIwNUNMO0FvQnY1Q0k7RUFFQztBcEJ3NUNMO0FvQnY1Q0s7RUFDQztBcEJ5NUNOO0FvQnA1Q0c7RUFDQztFQUNBO0FwQnM1Q0o7QW9CcDVDSTtFQUNDO0FwQnM1Q0w7O0FvQi80Q0E7RUFDQztBcEJrNUNEO0FvQmg1Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJrNUNGO0FvQi80Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmk1Q0Y7QUlqOUNFO0VnQjJERDtJQVFFO0VwQms1Q0Q7QUFDRjtBb0JoNUNFO0VBQ0M7RUFDQTtBcEJrNUNIOztBb0I3NENBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXBCZzVDRDtBSWorQ0U7RWdCNkVGO0lBT0U7RXBCaTVDQTtBQUNGO0FJeDlDRTtFZ0J5RUQ7SUFFRTtFcEJpNUNEO0FBQ0Y7QUkzK0NFO0VnQjZGRDtJQUVFO0VwQmc1Q0Q7QUFDRjtBb0IzNENFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEI2NENIO0FvQng0Q0s7Ozs7O0VBRUM7QXBCNjRDTjtBb0IzNENLO0VBQ0M7QXBCNjRDTjs7QW9CcjRDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQnc0Q0Q7QUkzZ0RFO0VnQjRIRjtJQVVFO0VwQnk0Q0E7QUFDRjtBb0J2NENDO0VBQ0M7QXBCeTRDRjs7QW9CcDRDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCdTRDRDtBSTNoREU7RWdCc0pEO0lBRUU7RXBCdTRDRDtBQUNGO0FvQnA0Q0M7RUFDQztFQUNBO0FwQnM0Q0Y7QW9CbjRDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FwQnE0Q0Y7QUkxaURFO0VnQmlLRDtJQU9FO0VwQnM0Q0Q7QUFDRjtBb0JuNENHO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJxNENKO0FvQmg0Q0k7RUFDQztBcEJrNENMOztBcUJ4bURBOzt5QkFBQTtBQUlBOzs7RUFHQztBckIwbUREOztBc0JobkRDO0VBQ0M7RUFDQTtBdEJtbkRGO0FzQi9tREk7RUFDQztBdEJpbkRMOztBc0J6bURDO0VBQ0M7RUFDQTtFQUNBO0F0QjRtREY7QXNCem1EQztFQUNDO0VBQ0E7QXRCMm1ERjtBc0J4bURDO0VBQ0M7RUFDQTtFQUNBO0F0QjBtREY7O0F1QnZvREM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QjBvREY7QUlqa0RDO0VtQmpGQTtJbkJrRkM7RUpva0RBO0FBQ0Y7QUlua0RDO0VtQnBGQTtJbkJxRkM7RUpza0RBO0FBQ0Y7QUlya0RDO0VtQnZGQTtJbkJ3RkM7RUp3a0RBO0FBQ0Y7QUlybURFO0VtQjdDRDtJQUVFO0lBQ0E7RXZCb3BERDtBQUNGOztBdUJocERBO0VBQ0M7RUFDQTtFQUNBO0F2Qm1wREQ7QXVCanBEQztFQUNDO0VBQ0E7QXZCbXBERjs7QXVCL29EQTtFQUNDO0VBQ0E7QXZCa3BERDtBdUJocERDO0VBQ0M7QXZCa3BERjtBdUIvb0RDO0VBQ0M7RUFDQTtFQUNBO0F2QmlwREY7QUlocERFO0VtQkpEO0lBTUU7SUFDQTtJQUNBO0lBQ0E7RXZCa3BERDtBQUNGO0F1QjdvREc7RUFDQztBdkIrb0RKO0F1QjFvREM7RUFDQztFQUNBO0F2QjRvREY7QXVCem9EQztFQUNDO0VBQ0E7RUFDQTtBdkIyb0RGO0FJcHFERTtFbUJzQkQ7SUFNRTtJQUNBO0V2QjRvREQ7QUFDRjtBdUIxb0RFO0VBQ0M7RUFDQTtBdkI0b0RIO0FJOXFERTtFbUJnQ0E7SUFLRTtFdkI2b0RGO0FBQ0Y7QXVCem9EQztFQUNDO0F2QjJvREY7QXVCem9ERTtFQUNDO0VBQ0E7RUFDQTtBdkIyb0RIO0FJM3JERTtFbUI2Q0E7SUFNRTtFdkI0b0RGO0FBQ0Y7O0F3Qjl1REM7RUFDQztFQUNBO0VBTUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QjR1REY7QUl4cURDO0VvQmpGQTtJcEJrRkM7RUoycURBO0FBQ0Y7QUkxcURDO0VvQnBGQTtJcEJxRkM7RUo2cURBO0FBQ0Y7QUk1cURDO0VvQnZGQTtJcEJ3RkM7RUorcURBO0FBQ0Y7QUk1c0RFO0VvQjVERDtJQWdCRTtJQUNBO0V4QjR2REQ7QUFDRjtBd0J4dkRFO0VBQ0M7QXhCMHZESDs7QXdCcnZEQTtFQUNDO0VBQ0E7RXBCd0NBO0VBQ0E7QUppdEREO0FJMXVERTtFb0JsQkY7SXBCOENFO0lBQ0E7RUprdERBO0FBQ0Y7QXdCN3ZEQztFQUNDO0F4Qit2REY7QXdCNXZEQztFQUNDO0VBQ0E7QXhCOHZERjtBd0IzdkRDO0VBQ0M7QXhCNnZERjs7QXdCenZEQTtFQUNDO0VBQ0E7RUFDQTtBeEI0dkREO0F3QjF2REM7RUFFQztBeEIydkRGO0F3Qnh2REM7RUFDQztFQUNBO0F4QjB2REY7O0F5QnR6REE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Qnl6REQ7QXlCdnpEQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0F6Qnl6REY7QXlCdnpERTtFQUNDO0VBQ0E7RUFDQTtBekJ5ekRIO0F5QnJ6REM7RUFDQztFQUNBO0F6QnV6REY7QXlCcHpEQztFQUNDO0VBQ0E7QXpCc3pERjtBeUJuekRDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHFDdkJoQlc7RXVCaUJYO0VBQ0E7RUFDQTtBekJxekRGO0FJNXpERTtFcUJSRDtJQWtCRTtFekJzekREO0FBQ0Y7QXlCbnpEQztFQUNDO0F6QnF6REY7QXlCbHpEQztFQUNDO0F6Qm96REY7QXlCanpEQztFQUNDO0VBQ0E7QXpCbXpERjtBeUJoekRDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXpCa3pERjtBeUIveURDOztFQUVDO0VBQ0E7RUFDQSxxQ3ZCbERXO0FGbTJEYjtBeUI5eURDO0VBQ0M7RUFDQTtFQUNBO0F6Qmd6REY7O0F5QjV5REE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCK3lERDtBeUI3eURDO0VBQ0M7QXpCK3lERjs7QXlCM3lEQTs7RUFFQztBekI4eUREOztBeUIzeURBO0VBQ0M7RUFDQTtFQUNBO0F6Qjh5REQ7O0F5QjN5REE7RUFDQztBekI4eUREOztBMEJ0NkRBO0VBQ0M7RUFDQTtBMUJ5NkREOztBMEJ0NkRBO0VBQ0M7RUFDQTtBMUJ5NkREO0EwQnQ2REU7RUFDQztFQUNBO0ExQnc2REg7QTBCcDZEQzs7RUFFQztFQUNBO0VBQ0EscUN4QmVXO0V3QmRYO0VBQ0E7RUFDQTtBMUJzNkRGO0EwQnA2REU7OztFQUVDO0ExQnU2REg7QUluNURFO0VzQi9CRDs7SUFlRTtFMUJ3NkREO0FBQ0Y7O0EwQnA2REE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBMUJ1NkREO0EwQnI2REM7RUFDQztBMUJ1NkRGOztBMEJuNkRBO0VBQ0M7RUFDQTtFQUNBO0ExQnM2REQ7QUl6NkRFO0VzQkFGO0lBTUU7RTFCdTZEQTtBQUNGO0EwQnI2REM7RUFDQztFQUNBO0ExQnU2REY7QTBCcDZEQztFQUNDO0ExQnM2REY7QUlyN0RFO0VzQmtCRDtJQUdFO0lBQ0E7SUFDQTtFMUJvNkREO0FBQ0Y7QTBCajZEQztFQUNDO0ExQm02REY7QUkvN0RFO0VzQjJCRDtJQUlFO0UxQm82REQ7QUFDRjtBMEJqNkRDO0VBQ0M7RUFDQTtBMUJtNkRGOztBMEIvNURBO0VBQ0Msd0R4QnZETztFd0J3RFA7QTFCazZERDtBSTc4REU7RXNCeUNGO0lBS0U7RTFCbTZEQTtBQUNGO0EwQmo2REM7RUFDQztBMUJtNkRGOztBMEIvNURBO0VBQ0M7QTFCazZERDtBSXo5REU7RXNCc0RGO0lBSUU7RTFCbTZEQTtBQUNGOztBMEJoNkRBO0VBQ0M7QTFCbTZERDtBSWwrREU7RXNCOERGO0lBSUU7RTFCbzZEQTtBQUNGOztBMEJoNkRDO0VBRUM7RUFDQTtFQUNBO0VBQ0E7QTFCazZERjtBMEJoNkRFO0VBQ0M7RUFDQTtFQUNBO0ExQms2REg7QTBCaDZERztFQUVDO0VBQ0E7QTFCaTZESjtBSXYvREU7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O0ErQmp5RUk7Ozs7RUFDSTtBL0J1eUVSOztBK0JueUVBO0VBQ0k7QS9Cc3lFSjs7QStCbHlFSTtFQUNJO0VBQ0E7RUFDQTtBL0JxeUVSO0FJbjBFRTtFMkIyQkU7SUFNUTtFL0JzeUVWO0FBQ0Y7QStCcHlFUTtFQUNJO0VBQ0E7QS9Cc3lFWjtBSTUwRUU7RTJCb0NNO0lBS1E7RS9CdXlFZDtBQUNGO0ErQnB5RVE7RUFDSTtFQUNBO0EvQnN5RVo7QUlyMUVFO0UyQjZDTTtJQUtRO0UvQnV5RWQ7QUFDRjtBK0JseUVRO0VBQ0k7QS9Cb3lFWjs7QUF2MkVBO0VnQ3JDQTs7b0VBQUE7RUFJRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDKzRFRjtFZ0M1NEVBO0lBQ0U7SUFDQTtFaEM4NEVGO0VnQzM0RUU7SUFDRTtFaEM2NEVKO0VnQ3o0RUU7SUFDRTtFaEMyNEVKO0VnQ3Y0RUE7OztJQUdFO0VoQ3k0RUY7RWdDdDRFQTtJQUNFO0lBQ0E7RWhDdzRFRjtFZ0NyNEVBO0lBQ0U7RWhDdTRFRjtFZ0NwNEVBO0lBQ0U7RWhDczRFRjtFZ0NuNEVBO0lBQ0U7RWhDcTRFRjtFZ0NsNEVFO0lBQ0U7RWhDbzRFSjtFZ0NqNEVFO0lBQ0U7SUFDQTtFaENtNEVKO0VnQ2g0RUU7O0lBRUU7RWhDazRFSjtFZ0M5M0VFOzs7OztJQUtFO0VoQ2c0RUo7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvc3R5bGUuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9nZW5lcmljL19iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvYmFzZS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvZ2VuZXJpYy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL2Jhc2UvX21peGlucy5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL2dlbmVyaWMvX2xpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvZ2VuZXJpYy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvZ2VuZXJpYy9fdXRpbGl0eS5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL21vZHVsZXMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9tb2R1bGVzL19mb3Jtcy5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL21vZHVsZXMvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL25vZGVfbW9kdWxlcy9AZ2xpZGVqcy9nbGlkZS9zcmMvYXNzZXRzL3Nhc3MvZ2xpZGUuY29yZS5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9ub2RlX21vZHVsZXMvQGdsaWRlanMvZ2xpZGUvc3JjL2Fzc2V0cy9zYXNzL2dsaWRlLnRoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fc2tpcC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fYW5pbWF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvcGFnZXMvX2hvbWUuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9fcGFnZS5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL3BhZ2VzL19lYXQuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9fb3JkZXIuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9fY2FyZWVycy5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL3BhZ2VzL19jb250YWN0LnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvcGFnZXMvX2xvY2F0aW9ucy5zY3NzIiwid2VicGFjazovL3RhY29yaWEvLi9zcmMvc3R5bGVzL3BhZ2VzL19zaW5nbGUtbG9jYXRpb24uc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9fY2F0ZXJpbmcuc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9faW5zcGlyYXRpb24uc2NzcyIsIndlYnBhY2s6Ly90YWNvcmlhLy4vc3JjL3N0eWxlcy9wYWdlcy9fNDA0LnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvcGFnZXMvX3dvb2NvbW1lcmNlLnNjc3MiLCJ3ZWJwYWNrOi8vdGFjb3JpYS8uL3NyYy9zdHlsZXMvbW9kdWxlcy9fcHJpbnQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5NYWluIE9MQyBTdHlsZXNoZWV0XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBpbXBvcnQgXCJiYXNlL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJhc2UvbWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJnZW5lcmljL2Jhc2VcIjtcbkBpbXBvcnQgXCJnZW5lcmljL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJnZW5lcmljL2xpbmtzXCI7XG5AaW1wb3J0IFwiZ2VuZXJpYy90YWJsZXNcIjtcbkBpbXBvcnQgXCJnZW5lcmljL3V0aWxpdHlcIjtcblxuQGltcG9ydCBcIm1vZHVsZXMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL21lZGlhXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9zbGlkZXJcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL3NraXAtbGlua1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvaGVhZGVyXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9uYXZcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xuQGltcG9ydCBcIm1vZHVsZXMvbGF5b3V0XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9hbmltYXRpb25cIjtcblxuQGltcG9ydCBcInBhZ2VzL2hvbWVcIjtcbkBpbXBvcnQgXCJwYWdlcy9wYWdlXCI7XG5AaW1wb3J0IFwicGFnZXMvZWF0XCI7XG5AaW1wb3J0IFwicGFnZXMvb3JkZXJcIjtcbkBpbXBvcnQgXCJwYWdlcy9jYXJlZXJzXCI7XG5AaW1wb3J0IFwicGFnZXMvY29udGFjdFwiO1xuQGltcG9ydCBcInBhZ2VzL2xvY2F0aW9uc1wiO1xuQGltcG9ydCBcInBhZ2VzL3NpbmdsZS1sb2NhdGlvblwiO1xuQGltcG9ydCBcInBhZ2VzL2NhdGVyaW5nXCI7XG5AaW1wb3J0IFwicGFnZXMvaW5zcGlyYXRpb25cIjtcbkBpbXBvcnQgXCJwYWdlcy80MDRcIjtcbkBpbXBvcnQgXCJwYWdlcy93b29jb21tZXJjZVwiO1xuXG5AbWVkaWEgcHJpbnQge1xuXHRAaW1wb3J0IFwibW9kdWxlcy9wcmludFwiO1xufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKlxuR0VORVJBTCBTVFlMRVNcbioqKioqKioqKioqKioqKioqKioqKi9cblxuLy8gVW5pdmVyc2FsIEJveCBTaXppbmcgd2l0aCBJbmhlcml0YW5jZVxuaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGZvbnQtc2l6ZTogMTAwJTsgLy8gMTZweFxufVxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbjo6c2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogY29sb3IoZ3JlZW4tLWRhcmspO1xuXHRjb2xvcjogY29sb3IoZ3JlZW4pO1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQ6IGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0Y29sb3I6IGNvbG9yKGdyZWVuKTtcbn1cblxuYm9keSB7XG5cdGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdG1hcmdpbjogMDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm5vU2Nyb2xsIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG46Zm9jdXMge1xuXHRvdXRsaW5lOiAzcHggZG90dGVkIGNvbG9yKGJsYWNrKTtcbn1cblxuLy8gU2NyZWVuIFJlYWRlciBUZXh0XG4uc3JPbmx5IHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cbiIsIi8vIC0tLSBTaXplcyAtLS1cbi8vIEJyb3dzZXIgQ29udGV4dCAodGhpcyBpcyBuZWVkZWQgZm9yIHRoZSBweCB0byBlbSdzIG1peGluKVxuJGJyb3dzZXItY29udGV4dDogMTY7IC8vIERlZmF1bHRcblxuLy8gLS0tIFJlc3BvbnNpdmUgQnJlYWtwb2ludHMgLS0tXG4kYnJlYWtwb2ludHM6IChcblx0c206IDQ4MXB4LFxuXHRtZDogNzY4cHgsXG5cdGxnOiAxMDQwcHgsXG5cdHhsOiAxMjQwcHgsXG5cdHdyYXA6IDE0NDBweFxuKTtcblxuLy8gLS0tIENvbG9ycyAtLS1cbiRjb2xvcnM6IChcblx0Z3JlZW46ICNhY2Q4YmQsXG5cdGdyZWVuLS1kYXJrOiAjMzg2NTcyLFxuXHRibGFjazogYmxhY2tcbik7XG5cbiR6OiAoXG5cdHNlY3Rpb25CZzogMSxcblx0c2VjdGlvbkNvbnRlbnQ6IDJcbik7XG5cbi8vLyBUZXh0IENvbG9yXG4kdGV4dC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBncmVlbik7XG4vLy8gTGluayBDb2xvclxuJGxpbmstY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZ3JlZW4pO1xuLy8vIExpbmsgSG92ZXJcbiRsaW5rLWhvdmVyOiBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSk7XG5cbi8vIC0tLSBUeXBvZ3JhcGh5IC0tLVxuLy8vIEZvbnRzXG4kc2VyaWY6IFwic3BpY3lfbWV4aWNhbl9zdHJlZXRfY29ybm5fUmdcIiwgc2Fucy1zZXJpZjtcbiRzYW5zLXNlcmlmOiBcInRhY29yaWFfcmVndWxhclwiLCBzZXJpZjtcblxuLy8gLS0tIEltYWdlcyAtLS1cbi8vIERlZmF1bHQgSGVhZGVyIEhlcm8gSW1hZ2VcbiRoZXJvLXNtOiBcImhlcm8tYmFja2dyb3VuZC1zbS5qcGdcIjsgLy8gd2lkdGggc2hvdWxkIGJlIDgwMHB4XG4kaGVyby1tZDogXCJoZXJvLWJhY2tncm91bmQtbWQuanBnXCI7IC8vIHdpZHRoIHNob3VsZCBiZSAxMjAwcHhcbiRoZXJvLWxnOiBcImhlcm8tYmFja2dyb3VuZC1sZy5qcGdcIjsgLy8gd2lkdGggc2hvdWxkIGJlID4gMTIwMHB4XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5UeXBvZ3JhcGh5IFN0eWxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwic3BpY3lfbWV4aWNhbl9zdHJlZXRfY29ybm5fUmdcIjtcblx0c3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvZm9udHMvc3BpY3ltZXhpY2Fuc3RyZWV0Y29ybm4tcmVndWxhci13ZWJmb250LndvZmYyXCIpXG5cdFx0XHRmb3JtYXQoXCJ3b2ZmMlwiKSxcblx0XHR1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvZm9udHMvc3BpY3ltZXhpY2Fuc3RyZWV0Y29ybm4tcmVndWxhci13ZWJmb250LndvZmZcIilcblx0XHRcdGZvcm1hdChcIndvZmZcIik7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwidGFjb3JpYV9yZWd1bGFyXCI7XG5cdHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ZvbnRzL3RhY29yaWEtcmVndWxhci13ZWJmb250LndvZmYyXCIpXG5cdFx0XHRmb3JtYXQoXCJ3b2ZmMlwiKSxcblx0XHR1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvZm9udHMvdGFjb3JpYS1yZWd1bGFyLXdlYmZvbnQud29mZlwiKVxuXHRcdFx0Zm9ybWF0KFwid29mZlwiKTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRmb250LXNpemU6IHJlbSgxNik7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHQvKiAyNXB4IC8gMjBweCAqL1xuXHRib3JkZXItbGVmdDogNHB4IHNvbGlkIGdyYXk7XG5cdHBhZGRpbmctbGVmdDogMWVtO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0XHRsaW5lLWhlaWdodDogMS40NTgzMzMzMztcblx0fVxufVxuXG5maWd1cmUsXG5maWdjYXB0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Zm9udC1zaXplOiAwLjllbTtcblx0Y29sb3I6IGdyYXk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuSDEsIEgyLCBIMywgSDQsIEg1IFNUWUxFU1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5oMSxcbi5oMSxcbmgyLFxuLmgyLFxuaDMsXG4uaDMsXG5oNCxcbi5oNCxcbmg1LFxuLmg1IHtcblx0dGV4dC1yZW5kZXJpbmc6IG9wdGltaXplbGVnaWJpbGl0eTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblxuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cbn1cblxuaDEsXG4uaDEge1xuXHRmb250LXNpemU6IHJlbSgzMik7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDQwKTtcblx0XHRsaW5lLWhlaWdodDogMS4xMjU7XG5cdH1cblxuXHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRmb250LXNpemU6IHJlbSg0OCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMDU7XG5cdH1cbn1cblxuaDIsXG4uaDIge1xuXHRmb250LXNpemU6IHJlbSgyNik7XG5cdGxpbmUtaGVpZ2h0OiAxLjE1Mzg0NjE1O1xuXHRtYXJnaW4tYm90dG9tOiAwLjM3NWVtO1xuXHRmb250LWZhbWlseTogJHNlcmlmO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDMyKTtcblx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0fVxuXG5cdEBpbmNsdWRlIG1pbihsZykge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDM2KTtcblx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0fVxufVxuXG5oMyxcbi5oMyB7XG5cdGZvbnQtc2l6ZTogcmVtKDIyKTtcblx0bGluZS1oZWlnaHQ6IDEuMTM2MzYzNjQ7XG5cblx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHR9XG5cblx0QGluY2x1ZGUgbWluKGxnKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMjgpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHR9XG59XG5cbmg0LFxuLmg0IHtcblx0Y29sb3I6ICRsaW5rLWNvbG9yO1xuXHRmb250LXNpemU6IHJlbSgxOCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjExMTExMTExO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjIyMjIyMjIyMjtcblx0fVxufVxuXG5oNSxcbi5oNSB7XG5cdGZvbnQtc2l6ZTogcmVtKDEzLjUpO1xuXHRsaW5lLWhlaWdodDogMS4yNTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblx0Y29sb3I6ICRsaW5rLWNvbG9yO1xufVxuXG5oNixcbi5oNiB7XG5cdGNvbG9yOiAkbGluay1jb2xvcjtcbn1cblxuLmFsZXJ0IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XG5cdGNvbG9yOiBjb2xvcihncmVlbik7XG59XG4iLCIvLy8gSElERSBBTiBFTEVNRU5UXG4vLy8gRXh0ZW5kIHRoaXMgdG8gaGlkZSBhbiBlbGVtZW50XG4vLy8gQGV4YW1wbGVcbi8vLyAgICAgQGV4dGVuZCAldmlzdWFsbHloaWRkZW47XG4ldmlzdWFsbHloaWRkZW4ge1xuXHRtYXJnaW46IC0xcHg7XG5cdHBhZGRpbmc6IDA7XG5cdHdpZHRoOiAxcHg7XG5cdGhlaWdodDogMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8vLyBQaXhlbHMgdG8gUmVtcyBGdW5jdGlvblxuLy8vIFJldHVybiBhIHJlbSB2YWx1ZSBvZiB0aGUgZXhhY3QgYW1vdW50IG9mIHBpeGVscyB0aGF0IHlvdSBuZWVkXG4vLy8gQGV4YW1wbGVcbi8vLyAgICAgcGFkZGluZzogcmVtKDIwKTtcbkBmdW5jdGlvbiByZW0oJHBpeGVscywgJGNvbnRleHQ6ICRicm93c2VyLWNvbnRleHQpIHtcblx0QHJldHVybiAjeyRwaXhlbHMvJGNvbnRleHR9cmVtO1xufVxuXG5AZnVuY3Rpb24gY29sb3IoJGNvbG9yKSB7XG5cdEBpZiBtYXAtaGFzLWtleSgkY29sb3JzLCAkY29sb3IpIHtcblx0XHRAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGNvbG9yKTtcblx0fSBAZWxzZSB7XG5cdFx0QHdhcm4gJ0NvbG9yIGRvZXMgbm90IGV4aXN0ISBJZiBhIGJyb3dzZXIgZGVmYXVsdCBleGlzdHMgaXQgd2lsbCB1c2UgdGhhdC4nO1xuXHRcdEByZXR1cm4gJGNvbG9yO1xuXHR9XG59XG5cbkBmdW5jdGlvbiB6KCRrZXkpIHtcblx0QGlmIG1hcC1oYXMta2V5KCR6LCAka2V5KSB7XG5cdFx0QHJldHVybiBtYXAtZ2V0KCR6LCAka2V5KTtcblx0fSBAZWxzZSB7XG5cdFx0QHdhcm4gJ0tleSBkb2VzIG5vdCBleGlzdCEgUGxlYXNlIGFkZCBpdCBpbiBfdmFyaWFibGVzJztcblx0XHRAcmV0dXJuICRrZXk7XG5cdH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBNaXhpbiBNb2JpbGUgRmlyc3Rcbi8vIEBpbmNsdWRlIG1pbihtZCk7XG5AbWl4aW4gbWluKCRicmVha3BvaW50KSB7XG5cdEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XG5cdFx0JHZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHZhbHVlKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cblxuXHQvLyBAd2FybiBcIlVua25vd24gYCN7JGJyZWFrcG9pbnR9YCBpbiAkYnJlYWtwb2ludHNcIjtcbn1cblxuLy8gUmVzcG9uc2l2ZSBNaXhpblxuLy8gQGluY2x1ZGUgbWF4KChtZCk7XG5AbWl4aW4gbWF4KCRicmVha3BvaW50KSB7XG5cdEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XG5cdFx0JHZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHZhbHVlKSB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cblxuXHQvLyBAd2FybiBcIlVua25vd24gYCN7JGJyZWFrcG9pbnR9YCBpbiAkYnJlYWtwb2ludHNcIjtcbn1cblxuLy8gU3RhbmRhcmQgc2VjdGlvbiBzcGFjaW5nXG5AbWl4aW4gc2VjdGlvbnNwYWNlKCRwaXhlbHMtc206IDMwLCAkcGl4ZWxzLWxnOiA1MCkge1xuXHRwYWRkaW5nLXRvcDogcmVtKCRwaXhlbHMtc20pO1xuXHRwYWRkaW5nLWJvdHRvbTogcmVtKCRwaXhlbHMtc20pO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0oJHBpeGVscy1sZyk7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSgkcGl4ZWxzLWxnKTtcblx0fVxufVxuXG4vLyBSZXNwb25zaXZlIGJhY2tncm91bmQgaW1hZ2VzXG5AbWl4aW4gcmVzcG9uc2l2ZWJhY2tncm91bmQoJHNtOiAkaGVyby1zbSwgJG1kOiAkaGVyby1tZCwgJGxnOiAkaGVyby1sZykge1xuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9cIiskc20pO1xuXHR9XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMXB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL1wiKyRtZCk7XG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL1wiKyRsZyk7XG5cdH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKipcbkxJTksgU1RZTEVTXG4qKioqKioqKioqKioqKioqKioqKiovXG5cbmEsXG5hOnZpc2l0ZWQge1xuXHRjb2xvcjogJGxpbmstY29sb3I7XG5cblx0Lyogb24gaG92ZXIgKi9cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICRsaW5rLWhvdmVyO1xuXHR9XG5cblx0LyogbW9iaWxlIHRhcCBjb2xvciAqL1xuXHQmOmxpbmsge1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuXHR9XG5cblx0Jjpmb2N1cy12aXNpYmxlIHtcblx0XHRvdXRsaW5lOiAycHggc29saWQgd2hpdGU7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcblx0fVxuXG5cdCYuZGFyazpmb2N1cy12aXNpYmxlIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBibGFjaztcblx0fVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuVGFibGUgU3R5bGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbnRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG5cdGNhcHRpb24ge1xuXHRcdG1hcmdpbjogMCAwIDdweDtcblx0XHRmb250LXNpemU6IDAuNzVlbTtcblx0XHRjb2xvcjogZ3JheTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XG5cdH1cbn1cblxudGgsXG50ZCB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbn1cblxudHIge1xuXG5cdCY6bnRoLWNoaWxkKGV2ZW4pIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG5cdH1cbn1cblxudGQge1xuXHRjb2xvcjogIzY2Njtcbn1cblxudGgge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqXG5VVElMSVRZIENMQVNTRVNcbioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogRm9yIGVhY2ggY29sb3IgY3JlYXRlIHV0aWxpdHkgY2xhc3NlcyAqL1xuQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkY29sb3JzIHtcblx0LnUtYmctLSN7JG5hbWV9IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWU7XG5cdH1cblx0LnUtdGV4dC0tI3skbmFtZX0ge1xuXHRcdGNvbG9yOiAkdmFsdWU7XG5cdH1cblx0YS51LXRleHQtLSN7JG5hbWV9OmhvdmVyIHtcblx0XHRjb2xvcjogZGFya2VuKCR2YWx1ZSwgMTAlKTtcblx0fVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQnV0dG9uIFN0eWxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vLy8gQkFTRSBCVVRUT05cbi8vLyBAZXhhbXBsZVxuLy8vICAgICBAaW5jbHVkZSBidXRvbigkY29sb3IpO1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRidG4tY29sb3IgWyRsaW5rLWNvbG9yXSAtIEJhY2tncm91bmQgQnV0dG9uIENvbG9yXG5cbkBtaXhpbiBidXR0b24oJGJ0bi1jb2xvcjogY29sb3IoZ3JlZW4tLWRhcmspLCAkYnRuLWZvbnQ6IGNvbG9yKHdoaXRlKSkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Zm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGNvbG9yOiAkYnRuLWZvbnQgIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRsaW5lLWhlaWdodDogMzRweDtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0cGFkZGluZzogMC41ZW0gMWVtO1xuXHRib3JkZXI6IDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE0cyBlYXNlLWluLW91dDtcblx0YmFja2dyb3VuZDogJGJ0bi1jb2xvcjtcblx0Ym94LXNoYWRvdzogcmVtKC0xMCkgcmVtKDE0KSByZW0oMTQpIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cblx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMzMpO1xuXHR9XG5cblx0Ly8gaG92ZXJpbmcgb24gdGhlIGJ0blxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkYnRuLWNvbG9yLCAxNSUpO1xuXHRcdGJveC1zaGFkb3c6IHJlbSgtMikgcmVtKDIpIHJlbSgxNCkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcblx0fSAvLyBlbmQgaG92ZXJcbn0gLy8gZW5kIC5idXR0b25cblxuLy8gUmVndWxhciBCdXR0b25cbi5idXR0b24ge1xuXHRAaW5jbHVkZSBidXR0b24oKTtcbn1cblxuLy8gQWRkIGZvY3VzIHRvIGJ1dHRvbiBlbGVtZW50XG5idXR0b246Zm9jdXMtdmlzaWJsZSB7XG5cdG91dGxpbmU6IDJweCBzb2xpZCB3aGl0ZTtcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuYnV0dG9uLmRhcms6Zm9jdXMtdmlzaWJsZSB7XG5cdG91dGxpbmU6IDJweCBzb2xpZCBibGFjaztcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkZvcm0gU3R5bGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8vIHNldHRpbmcgdXAgZGVmYXVsdHNcbmlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksXG5zZWxlY3QsXG50ZXh0YXJlYSxcbi5maWVsZCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRsaW5lLWhlaWdodDogMWVtO1xuXHRmb250LXNpemU6IDFlbTtcblx0Y29sb3I6IGJsYWNrO1xuXHRib3JkZXItY29sb3I6IGNvbG9yKGJsYWNrKTtcblx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0Ym9yZGVyLXdpZHRoOiA0cHg7XG5cdGJvcmRlci1zdHlsZTogZG90dGVkO1xuXHRib3JkZXItc3BhY2luZzogaW5oZXJpdDtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjRzIGVhc2UtaW4tb3V0O1xuXHRwYWRkaW5nOiAwLjVlbTtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHQvLyBhIGZvY3VzZWQgaW5wdXQgKG9yIGhvdmVyZWQgb24pXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRvdXRsaW5lOiAycHggc29saWQgY29sb3IoZ3JlZW4tLWRhcmspO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAzcHg7XG5cdFx0Ym9yZGVyLWNvbG9yOiBjb2xvcihncmVlbi0tZGFyayk7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6IDJweDtcblx0fSAvLyBlbmQgaG92ZXIgb3IgZm9jdXNcblxuXHQvLyBlcnJvciBub3RpZmljYXRpb25cblx0Ji5lcnJvcixcblx0Ji5pcy1pbnZhbGlkIHtcblx0XHRjb2xvcjogcmVkO1xuXHRcdGJvcmRlci1jb2xvcjogcmVkO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRcdG91dGxpbmUtY29sb3I6IHJlZDtcblx0fSAvLyBlbmQgaW52YWxpZCBpbnB1dFxuXG5cdCY6OnBsYWNlaG9sZGVyLFxuXHQmOnBsYWNlaG9sZGVyLXNob3duIHtcblx0XHRjb2xvcjogIzY4Njg2ODtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59IC8vIGVuZCBpbnB1dCBkZWZhdWx0c1xuXG4qOjpwbGFjZWhvbGRlcixcbio6cGxhY2Vob2xkZXItc2hvd24ge1xuXHRjb2xvcjogIzY4Njg2ODtcblx0b3BhY2l0eTogMTtcbn1cblxuLy8gdGV4dGFyZWFzXG50ZXh0YXJlYSB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogMTIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjVlbTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Zm9udC1mYW1pbHk6ICRzZXJpZjtcblxuXHQvLyBhIGZvY3VzZWQgaW5wdXQgKG9yIGhvdmVyZWQgb24pXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRvdXRsaW5lOiAycHggc29saWQgY29sb3IoZ3JlZW4tLWRhcmspO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAzcHg7XG5cdFx0Ym9yZGVyLWNvbG9yOiBjb2xvcihncmVlbi0tZGFyayk7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6IDJweDtcblx0fSAvLyBlbmQgaG92ZXIgb3IgZm9jdXNcbn1cblxuLy8gc3VibWl0IGJ1dHRvblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdC8vIGNsYXNzIGFkZGVkIHRvIG92ZXJyaWRlIHN0eWxpbmcgYWJvdmVcblx0QGluY2x1ZGUgYnV0dG9uKCk7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKSAhaW1wb3J0YW50O1xuXHRjb2xvcjogY29sb3IoYmxhY2spICFpbXBvcnRhbnQ7XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdCY6Zm9jdXMsXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBjb2xvcih3aGl0ZSkgIWltcG9ydGFudDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjaykgIWltcG9ydGFudDtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IDNweCBkb3R0ZWQgZ3JheTtcblx0fVxufVxuXG4vLyBNb2RhbCBGb3JtXG4uZm9ybS0tbW9kYWwge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwdmgpO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiAwLjRzIGFsbCBlYXNlLWluLW91dDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDk5OTk5OTtcblx0d2lkdGg6IDEwMHZ3O1xuXHRoZWlnaHQ6IDEwMHZoO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cblx0LmxvY2F0aW9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xuXHR9XG5cblx0LmZvcm1fX2NvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0Zm9ybSB7XG5cdFx0YmFja2dyb3VuZDogY29sb3IoZ3JlZW4pO1xuXHRcdHBhZGRpbmc6IHJlbSgzMCk7XG5cdFx0d2lkdGg6IDkwJTtcblx0XHRtYXgtd2lkdGg6IHJlbSg2MDApO1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi10b3A6IHJlbSg0MCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRjb2xvcjogYmxhY2s7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0bWluLXdpZHRoOiByZW0oNDAwKTtcblx0XHR9XG5cdH1cblxuXHRsYWJlbCB7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDIwKTtcblx0fVxuXG5cdHAge1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXG5cdGlucHV0IHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogNHB4IGRvdHRlZCBibGFjaztcblx0fVxuXG5cdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0XHRhcHBlYXJhbmNlOiBub25lO1xuXHR9XG5cblx0c2VsZWN0LFxuXHRpbnB1dCB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcblx0XHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cblx0XHRvcHRpb24ge1xuXHRcdFx0Y29sb3I6IGJsYWNrO1xuXHRcdH1cblx0fVxuXG5cdCYudmlzaWJsZSB7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0fVxufVxuXG4uZm9ybUNsb3NlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMCUsIC0zMCUpO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IDA7XG5cdHotaW5kZXg6IDM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG59XG5cbi5nZm9ybV92YWxpZGF0aW9uX2Vycm9ycyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbmRpdi53cGNmNy12YWxpZGF0aW9uLWVycm9ycyxcbmRpdi53cGNmNy1hY2NlcHRhbmNlLW1pc3Npbmcge1xuXHRjb2xvcjogYmxhY2s7XG59XG5cbi53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xufVxuXG4ucmVzdW1lIGlucHV0IHtcblx0Zm9udC1mYW1pbHk6IGFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4ud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcblx0bWFyZ2luLXRvcDogcmVtKDIwKTtcblxuXHQmLndwY2Y3LXZhbGlkYXRpb24tZXJyb3JzIHtcblx0XHRjb2xvcjogZGFya3JlZDtcblx0fVxufVxuXG4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG5cdGNvbG9yOiBkYXJrcmVkO1xufVxuXG4uZ2Zvcm1fd3JhcHBlci5ncmF2aXR5LXRoZW1lIC5nZm9ybV9ib2R5IC5nZmllbGRfcmVxdWlyZWQge1xuXHRjb2xvcjogIzk2MjIwODtcbn1cblxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXJlc3BvbnNlIHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbjogLTFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHg7XG5cdHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi5nZm9ybV93cmFwcGVyIHtcblx0LnRvcF9sYWJlbCxcblx0LmdmaWVsZC0tbGFiZWxfYWJvdmUge1xuXHRcdGlucHV0W3R5cGU9XCJmaWxlXCJdLm1lZGl1bSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmZpZWxkX3N1YmxhYmVsX2JlbG93IC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyIGxhYmVsLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZC0tc3VibGFiZWxfYmVsb3cgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIgbGFiZWwsXG4uZ2Zvcm1fd3JhcHBlclxuXHQuZmllbGRfc3VibGFiZWxfYmVsb3dcbiBkaXZbY2xhc3MqPVwiZ2ZpZWxkX3RpbWVfXCJdLmdpbnB1dF9jb250YWluZXJcbiBsYWJlbCxcbi5nZm9ybV93cmFwcGVyXG5cdC5nZmllbGQtLXN1YmxhYmVsX2JlbG93XG5cdGxhYmVsIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcblx0Y29sb3I6IGJsYWNrO1xuXHRwYWRkaW5nOiByZW0oNDApO1xufVxuXG4uZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCB7XG5cdHNlbGVjdCB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXHR9XG59XG5cbi5nZm9ybV9uZXh0X2J1dHRvbixcbi5nZm9ybV9wcmV2aW91c19idXR0b24ge1xuXHRjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMge1xuXHRcdGNvbG9yOiBjb2xvcihncmVlbikgIWltcG9ydGFudDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSxcbi5naW5wdXRfY29udGFpbmVyX3JhZGlvIHtcblx0YSB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXHR9XG59XG5cbi5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdCBvcHRpb246Y2hlY2tlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcblx0Y29sb3I6IGNvbG9yKHdoaXRlKTtcbn1cbiIsIi8qIFJlc3BvbnNpdmUgVmlkZW9zICovXG5cbi52aWRlb1dyYXBwZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cblx0aGVpZ2h0OiAwO1xuXG5cdGlmcmFtZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxufVxuXG5pbWcsXG4uc2l6ZS1hdXRvLFxuLnNpemUtZnVsbCxcbi5zaXplLWxhcmdlLFxuLnNpemUtbWVkaXVtLFxuLnNpemUtdGh1bWJuYWlsIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbnN2Zy5mdWxsIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLyoqKiogNzY4IEFORCBVUCAqKioqL1xuXG5AaW5jbHVkZSBtaW4oc20pIHtcblx0LyogYXQgdGhpcyBsYXJnZXIgc2l6ZSwgd2UgY2FuIHN0YXJ0IHRvIGFsaWduIGltYWdlcyAqL1xuXHQuYWxpZ25sZWZ0LFxuXHRpbWcuYWxpZ25sZWZ0IHtcblx0XHRtYXJnaW4tcmlnaHQ6IDEuNWVtO1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0fVxuXHQuYWxpZ25yaWdodCxcblx0aW1nLmFsaWducmlnaHQge1xuXHRcdG1hcmdpbi1sZWZ0OiAxLjVlbTtcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdH1cblx0LmFsaWduY2VudGVyLFxuXHRpbWcuYWxpZ25jZW50ZXIge1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjbGVhcjogYm90aDtcblx0fVxufVxuIiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xyXG5cclxuLiN7JGdsaWRlLWNsYXNzfSB7XHJcbiAgJHRoaXM6ICY7XHJcblxyXG4gICRzZTogJGdsaWRlLWVsZW1lbnQtc2VwYXJhdG9yO1xyXG4gICRzbTogJGdsaWRlLW1vZGlmaWVyLXNlcGFyYXRvcjtcclxuXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICoge1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcclxuICB9XHJcblxyXG4gICYjeyRzZX10cmFjayB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgJiN7JHNlfXNsaWRlcyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4tWTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcblxyXG4gICAgJiN7JGdsaWRlLW1vZGlmaWVyLXNlcGFyYXRvcn1kcmFnZ2luZyB7XHJcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiN7JHNlfXNsaWRlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgIGEge1xyXG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgLXdlYmtpdC11c2VyLWRyYWc6IG5vbmU7XHJcbiAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYjeyRzZX1hcnJvd3Mge1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmI3skc2V9YnVsbGV0cyB7XHJcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICB9XHJcblxyXG4gICYjeyRzbX1ydGwge1xyXG4gICAgZGlyZWN0aW9uOiBydGw7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XHJcblxyXG4uI3skZ2xpZGUtY2xhc3N9IHtcclxuICAkdGhpczogJjtcclxuXHJcbiAgJHNlOiAkZ2xpZGUtZWxlbWVudC1zZXBhcmF0b3I7XHJcbiAgJHNtOiAkZ2xpZGUtbW9kaWZpZXItc2VwYXJhdG9yO1xyXG5cclxuICAmI3skc2V9YXJyb3cge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzogOXB4IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMC4yNWVtIDAuNWVtIDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMC4yNWVtIDAuNWVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGVhc2UsIGJvcmRlciAzMDBtcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAgICY6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XHJcbiAgICAmOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiB3aGl0ZTsgfVxyXG5cclxuICAgICYjeyRzbX1sZWZ0IHtcclxuICAgICAgbGVmdDogMmVtO1xyXG4gICAgfVxyXG5cclxuICAgICYjeyRzbX1yaWdodCB7XHJcbiAgICAgIHJpZ2h0OiAyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJiN7JHNtfWRpc2FibGVkIHtcclxuICAgICAgb3BhY2l0eTogMC4zMztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYjeyRzZX1idWxsZXRzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBib3R0b206IDJlbTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICB9XHJcblxyXG4gICYjeyRzZX1idWxsZXQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgd2lkdGg6IDlweDtcclxuICAgIGhlaWdodDogOXB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDAuMjVlbSAwLjVlbSAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIG1hcmdpbjogMCAwLjI1ZW07XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgfVxyXG5cclxuICAgICYjeyRzbX1hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYjeyRzbX1zd2lwZWFibGUge1xyXG4gICAgY3Vyc29yOiBncmFiO1xyXG4gICAgY3Vyc29yOiAtbW96LWdyYWI7XHJcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcclxuICB9XHJcblxyXG4gICYjeyRzbX1kcmFnZ2luZyB7XHJcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xyXG4gICAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xyXG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwibm9kZV9tb2R1bGVzL0BnbGlkZWpzL2dsaWRlL3NyYy9hc3NldHMvc2Fzcy9nbGlkZS5jb3JlXCI7XG5cbi8vIE9wdGlvbmFsIFRoZW1lIFN0eWxlc2hlZXRcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvQGdsaWRlanMvZ2xpZGUvc3JjL2Fzc2V0cy9zYXNzL2dsaWRlLnRoZW1lXCI7XG5idXR0b24uZ2xpZGVfX2Fycm93IHtcblx0YmFja2dyb3VuZDogYmxhY2s7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogM3B4IGRvdHRlZCB3aGl0ZTtcblxuXHRcdHN2ZyBwYXRoIHtcblx0XHRcdGZpbGw6IHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5cbi5nbGlkZV9fYXJyb3dzIHtcblx0LmdsaWRlX19hcnJvdy0tbGVmdCB7XG5cdFx0bGVmdDogMC4yNWVtO1xuXG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRsZWZ0OiAxLjVlbTtcblx0XHR9XG5cdH1cblxuXHQuZ2xpZGVfX2Fycm93LS1yaWdodCB7XG5cdFx0cmlnaHQ6IDAuMjVlbTtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0cmlnaHQ6IDEuNWVtO1xuXHRcdH1cblx0fVxuXG5cdC5nbGlkZV9fYXJyb3cge1xuXHRcdGhlaWdodDogcmVtKDQ4KTtcblx0XHR3aWR0aDogcmVtKDQ4KTtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0aGVpZ2h0OiByZW0oNzgpO1xuXHRcdFx0d2lkdGg6IHJlbSg3OCk7XG5cdFx0fVxuXG5cdFx0c3ZnIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblx0fVxufVxuIiwiLnNraXBMaW5rIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiA2cHg7XG5cdHRvcDogLTk5cHg7XG59XG5cbi5za2lwTGluazpmb2N1cyB7XG5cdHotaW5kZXg6IDk5OTtcblx0Zm9udC1zaXplOiAxNHB4O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHR0b3A6IDZweDtcblx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0Y29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqXG5IRUFERVIgU1RZTEVTXG4qKioqKioqKioqKioqKioqKioqKiovXG5cbi5oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbik7XG5cdGNvbG9yOiBibGFjaztcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDEwMTtcblx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGxpbmVhcjtcblx0d2lkdGg6IDEwMCU7XG5cblx0Ji5oZWFkcm9vbS0tcGlubmVkIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuXG5cdFx0Ji5oZWFkcm9vbS0tbm90LXRvcCB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0fVxuXHQmLmhlYWRyb29tLS11bnBpbm5lZCB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0fVxuXG5cdGgxIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQqIHtcblx0XHRjb2xvcjogYmxhY2s7XG5cdH1cblxuXHQmX19sb2dvIHtcblx0XHRAaW5jbHVkZSBtYXgobWQpIHtcblx0XHRcdG9yZGVyOiAxO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oMTIwKTtcblx0XHR9XG5cdFx0c3ZnIHtcblx0XHRcdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXHRcdFx0aGVpZ2h0OiByZW0oNDcpO1xuXHRcdFx0d2lkdGg6IHJlbSgxMzApO1xuXG5cdFx0XHRAaW5jbHVkZSBtYXgobWQpIHtcblx0XHRcdFx0c3ZnIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmV3JhcCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRwYWRkaW5nLXRvcDogcmVtKDEwKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDEwKTtcblx0fVxuXG5cdCZfX3NvY2lhbE5hdiB7XG5cdFx0QGluY2x1ZGUgbWF4KG1kKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4uc29jaWFsTmF2IHtcblx0Lm5hdiB7XG5cdFx0bGk6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRhIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRhIHtcblx0XHRwYWRkaW5nLWxlZnQ6IHJlbSgxMCk7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0c3ZnIHBhdGgge1xuXHRcdFx0XHRmaWxsOiBjb2xvcih3aGl0ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5oZWFkZXJfX3NvY2lhbE5hdiB7XG5cdGEge1xuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRzdmcgcGF0aCB7XG5cdFx0XHRcdGZpbGw6IGNvbG9yKGJsYWNrKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKipcbk5BVklHQVRJT04gU1RZTEVTXG4qKioqKioqKioqKioqKioqKioqKiovXG5cbi5uYXZXcmFwcGVyX19vcGVuIHtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiByZW0oMTApO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcblx0XHRzdmcgcGF0aCB7XG5cdFx0XHRmaWxsOiBjb2xvcihncmVlbik7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgbWF4KG1kKSB7XG5cdFx0b3JkZXI6IDI7XG5cdH1cbn1cblxuLm5hdldyYXBwZXJfX29wZW46aG92ZXIsXG4ubmF2V3JhcHBlcl9fb3Blbjpob3Zlcjpmb2N1cyB7XG59XG5cbi5uYXZXcmFwcGVyIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdG92ZXJmbG93OiBzY3JvbGw7XG5cdGJhY2tncm91bmQ6IGJsYWNrO1xuXHR0cmFuc2l0aW9uOiAwLjJzIGFsbCBlYXNlLWluLW91dDtcblx0b3BhY2l0eTogMDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC93cC1jb250ZW50L3RoZW1lcy90YWNvcmlhL3B1YmxpYy9pbWFnZXMvbWVudS1iZy5qcGcpO1xuXG5cdCYudmlzaWJsZSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxuXG5cdCZfX2Nsb3NlIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Y29sb3I6IGNvbG9yKGdyZWVuKTtcblx0XHRmb250LXNpemU6IDEuMnJlbTtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdC8vIHBhZGRpbmc6IDFyZW07XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR9XG5cblx0Jl9fc29jaWFsTmF2IHtcblx0XHRwYWRkaW5nLXRvcDogcmVtKDIwKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTAlO1xuXG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHRzdmcgcGF0aCB7XG5cdFx0XHRmaWxsOiBjb2xvcihncmVlbik7XG5cdFx0fVxuXG5cdFx0YTpob3ZlciB7XG5cdFx0XHRzdmcgcGF0aCB7XG5cdFx0XHRcdGZpbGw6IHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubmF2IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXG5cdGxpIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdGEge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0fSAvKiBlbmQgLm1lbnUgbGkgKi9cbn0gLyogZW5kIC5uYXYgKi9cblxuLnNpdGVOYXYge1xuXHRsaSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRhIHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkc2VyaWY7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiBjb2xvcihncmVlbik7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMCk7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSg0MCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5hdi1vcmRlciB7XG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5oaXQtdXMtdXAge1xuXHRcdGEge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuXHRcdH1cblx0fVxuXG5cdC5teS1hY2NvdW50IHtcblx0XHRhIHtcblx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdH1cblx0fVxufVxuXG4ubmF2Q29udGFpbmVyIHtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogMTAlIDUlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDU7XG5cdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL2xpbmUtaG9yaXpvbnRhbC5zdmcpLFxuXHQvLyBcdHVybCgvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL2xpbmUtdmVydGljYWwuc3ZnKSxcblx0Ly8gXHR1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy9saW5lLWhvcml6b250YWwuc3ZnKSxcblx0Ly8gXHR1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy9saW5lLXZlcnRpY2FsLnN2Zyk7XG5cdC8vIGJhY2tncm91bmQtcG9zaXRpb246IHJlbSgyMCkgcmVtKDIwKSwgY2FsYygxMDAlIC0gMjBweCkgcmVtKDIwKSxcblx0Ly8gXHRjYWxjKDEwMCUgLSAyMHB4KSBjYWxjKDEwMCUgLSAyMHB4KSwgcmVtKDIwKSBjYWxjKDEwMCUgLSAyMHB4KTtcblx0Ly8gYmFja2dyb3VuZC1zaXplOiBjYWxjKDEwMCUgLSA0MHB4KSBhdXRvLCBhdXRvIGNhbGMoMTAwJSAtIDQwcHgpLFxuXHQvLyBcdGNhbGMoMTAwJSAtIDQwcHgpIGF1dG8sIGF1dG8gY2FsYygxMDAlIC0gNDBweCk7XG5cdC8vIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cblx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG59XG5cbi5vcmRlci1oZXJlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0dG9wOiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKHJlbSgxMCksIC01MCUpO1xuXHR0cmFuc2l0aW9uOiAwLjJzIGFsbCBlYXNlLWluLW91dDtcblxuXHRwYXRoIHtcblx0XHR0cmFuc2l0aW9uOiAwLjJzIGFsbCBlYXNlLWluLW91dDtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuXG5cdFx0I2Jhbm5lciBwYXRoIHtcblx0XHRcdGZpbGw6IHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1heChtZCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLm5hdkxvY2F0aW9ucyB7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0cGFkZGluZy10b3A6IHJlbSg4KTtcblx0cGFkZGluZy1ib3R0b206IHJlbSg4KTtcblx0bWFyZ2luOiAwO1xuXG5cdGEge1xuXHRcdGNvbG9yOiBjb2xvcih3aGl0ZSk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHBhZGRpbmctbGVmdDogcmVtKDEwKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMTApO1xuXHRcdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0Y29sb3I6IGNvbG9yKHdoaXRlKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4obWQpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDIwKTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbSgyMCk7XG5cdFx0fVxuXHR9XG5cblx0dWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0fVxufVxuIiwiLmZvb3RlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXHRjb2xvcjogY29sb3Iod2hpdGUpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGJvcmRlci10b3A6IDZweCBzb2xpZCBjb2xvcihncmVlbi0tZGFyayk7XG5cdHBhZGRpbmctYm90dG9tOiA1ZW07XG5cblx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0fVxuXG5cdGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksXG5cdHNlbGVjdCxcblx0dGV4dGFyZWEsXG5cdC5maWVsZCB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB3aGl0ZTtcblx0fVxuXG5cdC5maXhlZEJ1dHRvbiB7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRwYWRkaW5nLWlubGluZTogM2VtO1xuXHRcdGJvcmRlci1yYWRpdXM6IDJlbTtcblx0XHR6LWluZGV4OiAxMDA7XG5cdFx0Ym94LXNoYWRvdzogMCAycHggMTZweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0Ym90dG9tOiAxZW07XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRmb250LXNpemU6IDFlbTtcblx0XHR3aWR0aDogOTAlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiBjb2xvcihncmVlbik7XG5cdFx0Zm9udC1zaXplOiByZW0oMjIpO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmX19mb3JtIHtcblx0XHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXHR9XG5cblx0Lmdmb3JtX3dyYXBwZXIge1xuXHRcdGZvcm0ge1xuXHRcdFx0Ly8gQGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHQvLyBcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHQvLyBcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHQvLyB9XG5cblx0XHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdLmxhcmdlIHtcblx0XHRcdFx0cGFkZGluZzogMWVtIDAuNWVtO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMi4yNXJlbTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB3aGl0ZTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRcdFx0XHRtaW4td2lkdGg6IHJlbSgzMDApO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5nZmllbGQtLXR5cGUtZW1haWwge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuXHRcdFx0XHRwYWRkaW5nOiAxZW0gMC41ZW07XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdFx0XHRcdGNvbG9yOiBibGFjaztcblxuXHRcdFx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0XHRcdG91dGxpbmU6IDJweCBzb2xpZCB3aGl0ZTtcblx0XHRcdFx0XHRvdXRsaW5lLW9mZnNldDogMnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0XHRcdFx0bWFyZ2luLWlubGluZTogYXV0bztcblxuXHRcdFx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0XHRcdG91dGxpbmU6IDNweCBzb2xpZCB3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuZ2Zvcm1fZm9vdGVyIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblx0fVxuXG5cdC5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIHtcblx0XHRmb3JtIHtcblx0XHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lmdmb3JtX3dyYXBwZXIgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvcixcblx0Lmdmb3JtX3dyYXBwZXJcblx0XHRsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmdmaWVsZF9jb250YWluc19yZXF1aXJlZC5nZmllbGRfY3JlZGl0Y2FyZF93YXJuaW5nIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0fVxuXG5cdC5nZm9ybV93cmFwcGVyIGRpdi52YWxpZGF0aW9uX2Vycm9yIHtcblx0XHRtaW4td2lkdGg6IDEwMCU7XG5cdFx0ZmxleDogMCAxIDEwMCU7XG5cdH1cblxuXHRib2R5IC5nZm9ybV93cmFwcGVyIC50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb250YWluZXIuZ2lucHV0X2NvbnRhaW5lcl9lbWFpbCxcblx0Ym9keVxuXHRcdC5nZm9ybV93cmFwcGVyXG5cdFx0LmdmaWVsZC0tbGFiZWxfYWJvdmVcblx0XHRkaXYuZ2lucHV0X2NvbnRhaW5lci5naW5wdXRfY29udGFpbmVyX2VtYWlsIHtcblx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdH1cblxuXHRpbnB1dCB7XG5cdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgY29sb3Iod2hpdGUpO1xuXHRcdGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcblx0XHRsZXR0ZXItc3BhY2luZzogcmVtKDYpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Y29sb3I6IGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRtYXgtd2lkdGg6IHJlbSg0MDApO1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblxuXHRcdEBpbmNsdWRlIG1pbihsZykge1xuXHRcdFx0Jlt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRcdG1pbi13aWR0aDogcmVtKDMwMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGdyZWVuKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdG1hcmdpbi10b3A6IDhweDtcblx0fVxufVxuXG4uZm9vdGVyX19tZW51IHtcblx0Ji50d28tY29scyB7XG5cdFx0Y29sdW1uczogMjtcblx0XHRjb2x1bW4tZ2FwOiAzZW07XG5cdH1cblxuXHRsaSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQuZGlhbG9nX19vcGVuIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRjb2xvcjogY29sb3IoZ3JlZW4pO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGZvbnQtc2l6ZTogMS4zNzVyZW07XG5cdFx0Zm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0fVxufVxuXG4uZm9vdGVyUm93IHtcblx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcblx0fVxuXG5cdD4gKiB7XG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMzApO1xuXHRcdH1cblx0fVxuXG5cdCYtLW9uZSB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHR9XG5cblx0Ji0tdHdvIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdC5zdWJzY3JpYmUge1xuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0ZmxleDogMCAxIHJlbSg1MDApO1xuXHRcdH1cblxuXHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKipcbkxBWU9VVCAmIEdSSUQgU1RZTEVTXG4qKioqKioqKioqKioqKioqKioqKiovXG5cbltjbGFzcyo9XCJ3cmFwXCJdIHtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0cGFkZGluZy1sZWZ0OiByZW0oMTUpO1xuXHRwYWRkaW5nLXJpZ2h0OiByZW0oMTUpO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdHBhZGRpbmctbGVmdDogcmVtKDIwKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjApO1xuXHR9XG59XG5cbi8vIGFuY2hvciBmb290ZXIgdG8gYm90dG9tIG9uIHNob3J0IHBhZ2VzXG4jY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4jY29udGFpbmVyID4gZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogYXV0bztcbn1cblxuLm1haW5Db250ZW50IHtcblx0cGFkZGluZy10b3A6IHJlbSg3NSk7XG59XG5cbi53cmFwcGVyIHtcblx0bWFyZ2luLWxlZnQ6IDV2dztcblx0bWFyZ2luLXJpZ2h0OiA1dnc7XG5cdHdpZHRoOiA5MHZ3O1xufVxuIiwiQGtleWZyYW1lcyB0YWNvIHtcblx0MjUlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL3RhY28tc2xpZGUxLmpwZ1wiKTtcblx0fVxuXHQzMCUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy90YWNvcmlhL3B1YmxpYy9pbWFnZXMvdGFjby1zbGlkZTIuanBnXCIpO1xuXHR9XG5cdDM1JSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy90YWNvLXNsaWRlMy5qcGdcIik7XG5cdH1cblx0NDAlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL3RhY28tc2xpZGU0LmpwZ1wiKTtcblx0fVxuXHQ0NSUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy90YWNvcmlhL3B1YmxpYy9pbWFnZXMvdGFjby1zbGlkZTUuanBnXCIpO1xuXHR9XG5cdDUwJSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy90YWNvLXNsaWRlNi5qcGdcIik7XG5cdH1cblx0NTUlIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL3RhY28tc2xpZGU3LmpwZ1wiKTtcblx0fVxuXHQ2MCUge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy90YWNvcmlhL3B1YmxpYy9pbWFnZXMvdGFjby1zbGlkZTguanBnXCIpO1xuXHR9XG5cdDkwJSB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy90YWNvLXNsaWRlOC5qcGdcIik7XG5cdH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqXG5IT01FUEFHRSBTUEVDSUZJQyBTVFlMRVNcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5ob21lIHtcblx0Lm1haW4tY29udGVudCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQubWFpbkNvbnRlbnQge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHR9XG5cblx0Lm5hdldyYXBwZXJfX29wZW4ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcblx0XHRzdmcgcGF0aCB7XG5cdFx0XHRmaWxsOiBjb2xvcihncmVlbik7XG5cdFx0fVxuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcblx0XHRcdHN2ZyBwYXRoIHtcblx0XHRcdFx0ZmlsbDogY29sb3IoYmxhY2spO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5oZWFkZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdFx0Jl9fbG9nbyB7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogMC40cyBhbGwgZWFzZS1pbi1vdXQ7XG5cdFx0fVxuXG5cdFx0Jl9fc29jaWFsTmF2IHtcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjJzIGFsbCBlYXNlLWluLW91dDtcblxuXHRcdFx0c3ZnIHBhdGgge1xuXHRcdFx0XHRmaWxsOiBjb2xvcihncmVlbik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5yZXZlYWwge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JlZW4pO1xuXG5cdFx0XHQuaGVhZGVyX19sb2dvIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdH1cblxuXHRcdFx0Lm5hdldyYXBwZXJfX29wZW4ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbik7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdHN2ZyBwYXRoIHtcblx0XHRcdFx0XHRmaWxsOiBjb2xvcihibGFjayk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XG5cdFx0XHRcdFx0c3ZnIHBhdGgge1xuXHRcdFx0XHRcdFx0ZmlsbDogY29sb3IoZ3JlZW4pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuaGVhZGVyX19zb2NpYWxOYXYge1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0XHRcdHN2ZyBwYXRoIHtcblx0XHRcdFx0XHRmaWxsOiBjb2xvcihibGFjayk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmhlcm8ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jl9faW1hZ2Uge1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwdnc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0YW5pbWF0aW9uLW5hbWU6IHRhY287XG5cdFx0YW5pbWF0aW9uLWR1cmF0aW9uOiA3cztcblx0XHRhbmltYXRpb24tZGVsYXk6IDNzO1xuXHRcdGFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbDtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdFx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy90YWNvLXNsaWRlMS5qcGdcIik7XG5cdFx0dHJhbnNpdGlvbjogMC4ycyBhbGwgZWFzZS1pbi1vdXQ7XG5cdFx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cdH1cblxuXHQmX19jb250ZW50IHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiA0dnc7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogNzV2dztcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHR9XG5cdH1cbn1cblxuLmhvbWUtY2FsbG91dHMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbi0tZGFyayk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSBtaW4obWQpIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcblx0fVxuXG5cdCYtLWRlc2t0b3Age1xuXHRcdEBpbmNsdWRlIG1heChtZCkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLS1tb2JpbGUge1xuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLS1kZXNrdG9wLFxuXHQmLS1tb2JpbGUge1xuXHRcdD4gc3ZnIHtcblx0XHRcdHdpZHRoOiA5NXZ3O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdG1hcmdpbi10b3A6IC01dnc7XG5cblx0XHRcdGEge1xuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRwYXRoLFxuXHRcdFx0XHRcdHRleHQge1xuXHRcdFx0XHRcdFx0ZmlsbDogd2hpdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJlY3Qge1xuXHRcdFx0XHRcdFx0c3Ryb2tlOiB3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmhvbWVDYXJvdXNlbCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDkwdnc7XG5cdGhlaWdodDogYXV0bztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dG9wOiAzOXZ3O1xuXHRsZWZ0OiA1dnc7XG5cdHotaW5kZXg6IDEwO1xuXG5cdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdHRvcDogMTN2dztcblx0fVxuXG5cdCYuZ2xpZGUgLmdsaWRlX19zbGlkZXMge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0fVxufVxuXG4vLyBSZXdhcmRzXG4ucmV3YXJkcyB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvd3AtY29udGVudC90aGVtZXMvdGFjb3JpYS9wdWJsaWMvaW1hZ2VzL21lbnUtYmcuanBnKTtcblx0YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cdGNvbG9yOiB3aGl0ZTtcblx0cGFkZGluZy1ibG9jazogNXJlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdCZfX2hlYWRpbmcge1xuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0Zm9udC1zaXplOiAzcmVtO1xuXHRcdH1cblx0fVxuXG5cdCZfX2NvbnRlbnQge1xuXHRcdG1heC13aWR0aDogNzAwcHg7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblxuXHQmX19idXR0b25zIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0Z2FwOiAxcmVtO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdFx0QGluY2x1ZGUgbWluKHNtKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0d2lkdGg6IDIwMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGdyZWVuLS1kYXJrKTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjJzIGFsbCBlYXNlLWluLW91dDtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKipcblBBR0UgU1BFQ0lGSUMgU1RZTEVTXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uc2luZ2xlLWhlYWRlcl9fdGl0bGUsXG4ucGFnZS1oZWFkZXJfX3RpdGxlLFxuLnBvc3QtaGVhZGVyX190aXRsZSB7XG5cdG1hcmdpbjogMDtcbn1cbiIsIi5lYXQtbWFpbiB7XG5cdHN2ZyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0YSB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0cGF0aCB7XG5cdFx0XHRcdFx0ZmlsbDogd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmdsaWRlIHtcblx0aW1nIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQuZ2xpZGVfX2Fycm93IHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0fVxuXG5cdC5nbGlkZV9fc2xpZGVzIHtcblx0XHRib3JkZXItdG9wOiA2cHggc29saWQgY29sb3IoZ3JlZW4pO1xuXHRcdGJvcmRlci1ib3R0b206IDZweCBzb2xpZCBjb2xvcihncmVlbik7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG4iLCIucGFnZS10ZW1wbGF0ZS1wYWdlLW9yZGVyIHtcblx0Lm1haW5Db250ZW50IHtcblx0XHRtaW4taGVpZ2h0OiA5MHZoO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ZmxleDogMTtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRAaW5jbHVkZSByZXNwb25zaXZlYmFja2dyb3VuZChcblx0XHRcdFwib3JkZXItYmctLXNtLmpwZ1wiLFxuXHRcdFx0XCJvcmRlci1iZy0tbWQuanBnXCIsXG5cdFx0XHRcIm9yZGVyLWJnLmpwZ1wiXG5cdFx0KTtcblx0fVxuXHQucGFnZUNvbnRlbnQge1xuXHRcdEBpbmNsdWRlIG1heChtZCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA1JTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDUlO1xuXHRcdH1cblx0fVxufVxuXG4ub3JkZXJUcmlnZ2VyIHtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiAwLjRzIGFsbCBlYXNlLWluLW91dDtcblxuXHQmLnZpc2libGUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxufVxuXG4ub3JkZXJNZW51IHtcblx0ei1pbmRleDogNjtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuXG5cdCYudmlzaWJsZSB7XG5cdFx0ei1pbmRleDogNjtcblx0fVxuXG5cdC5mb3JtQ2xvc2Uge1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDFlbTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0dG9wOiAxZW07XG5cdFx0XHRyaWdodDogMWVtO1xuXHRcdFx0bGVmdDogaW5oZXJpdDtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQge1xuXHRcdFx0XHRmaWxsOiB3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRzdmcge1xuXHRcdHdpZHRoOiA5MCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cblx0Jl9fbWVudSB7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmc6IDEwMHB4IDUwcHggMjVweDtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0cGFkZGluZzogMTAwcHggMTI1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL29yZGVyLW1lbnUuc3ZnKTtcblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblxuXHRcdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMi41ZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fbGlzdCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXG5cdFx0YSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwLjI1ZW0gMDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHRAaW5jbHVkZSBtaW4obWQpIHtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5wYWdlLXRlbXBsYXRlLXBhZ2UtY2FyZWVycyB7XG5cdC5wYWdlQ29udGVudCB7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0QGluY2x1ZGUgcmVzcG9uc2l2ZWJhY2tncm91bmQoXG5cdFx0XHRcImNhcmVlcnMtYmctLXNtLmpwZ1wiLFxuXHRcdFx0XCJjYXJlZXJzLWJnLS1tZC5qcGdcIixcblx0XHRcdFwiY2FyZWVycy1iZy0tbGcuanBnXCJcblx0XHQpO1xuXHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ZmxleDogMTtcblxuXHRcdEBpbmNsdWRlIG1heChtZCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA1JTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDUlO1xuXHRcdH1cblx0fVxuXG5cdC5mb3JtLS1tb2RhbCB7XG5cdFx0Zm9ybSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxufVxuXG4uY2FyZWVyRm9ybSB7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcblx0Y29sb3I6IGJsYWNrO1xuXHRAaW5jbHVkZSBzZWN0aW9uc3BhY2UoKTtcblxuXHQmX19oZWFkaW5nIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQmX19jb250YWluZXIge1xuXHRcdG1heC13aWR0aDogcmVtKDgwMCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblxuXHQuZ2ZfcHJvZ3Jlc3NiYXJfdGl0bGUge1xuXHRcdGNvbG9yOiBjb2xvcihibGFjaykgIWltcG9ydGFudDtcblx0fVxufVxuXG4uY2FyZWVyVHJpZ2dlciB7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogMC40cyBhbGwgZWFzZS1pbi1vdXQ7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2spO1xuXHR9XG5cblx0Ji52aXNpYmxlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cbn1cbiIsIi5jb250YWN0Rm9ybSB7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdG9wYWNpdHk6IDA7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXHR6LWluZGV4OiAtMTtcblx0cGFkZGluZy1ib3R0b206IHJlbSg0MCk7XG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cblx0Ji52aXNpYmxlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0ei1pbmRleDogMTAwMDAxO1xuXG5cdFx0Zm9ybSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4ycztcblx0XHR9XG5cdH1cblxuXHQuZm9ybV9fY29udGFpbmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMjtcblx0fVxuXG5cdHRleHRhcmVhIHtcblx0XHRoZWlnaHQ6IDEyMHB4O1xuXHRcdGNvbG9yOiBibGFjaztcblx0fVxuXG5cdGZvcm0ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKHJlbSgxMDApKTtcblx0XHRiYWNrZ3JvdW5kOiBjb2xvcihncmVlbik7XG5cdFx0cGFkZGluZzogcmVtKDMwKTtcblx0XHR3aWR0aDogOTAlO1xuXHRcdG1heC13aWR0aDogcmVtKDUwMCkgIWltcG9ydGFudDtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGNvbG9yOiBibGFjaztcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXHRcdG1hcmdpbi10b3A6IHJlbSg0MCk7XG5cblx0XHRAaW5jbHVkZSBtaW4obWQpIHtcblx0XHRcdG1pbi13aWR0aDogcmVtKDQwMCk7XG5cdFx0fVxuXHR9XG5cblx0bGFiZWwge1xuXHRcdG1hcmdpbi10b3A6IHJlbSgyMCk7XG5cdH1cblxuXHRwIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHRpbnB1dCB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJvcmRlci1ib3R0b206IDRweCBkb3R0ZWQgYmxhY2s7XG5cdH1cblxuXHRpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXHR9XG5cblx0c2VsZWN0LFxuXHRpbnB1dCB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcblx0XHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdH1cblxuXHQmLnZpc2libGUge1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdH1cbn1cblxuLmNvbnRhY3RDbG9zZSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAycmVtO1xuXHRyaWdodDogM3JlbTtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiAwO1xuXG5cdCY6aG92ZXIge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxufVxuXG5kaXYud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMsXG5kaXYud3BjZjctYWNjZXB0YW5jZS1taXNzaW5nIHtcblx0Y29sb3I6IGJsYWNrO1xufVxuXG4ud3BjZjctZm9ybS1jb250cm9sLXdyYXAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMDtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcbn1cblxuLnJlc3VtZSBpbnB1dCB7XG5cdGZvbnQtZmFtaWx5OiBhcmlhbCwgc2Fucy1zZXJpZjtcbn1cbiIsIi5wYWdlLXRlbXBsYXRlLXBhZ2UtbG9jYXRpb25zIHtcblx0YmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JlZW4pO1xuXHRjb2xvcjogY29sb3IoZ3JlZW4tLWRhcmspO1xufVxuXG4ubG9jYXRpb24ge1xuXHRjb2xvcjogYmxhY2s7XG5cdG1hcmdpbi1ib3R0b206IDV2dztcblxuXHQmRmVhdHVyZWRJbWFnZSB7XG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdGgyLFxuXHRoMiBhIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XG5cdFx0Y29sb3I6IGNvbG9yKGdyZWVuKTtcblx0XHRmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiByZW0oNDApO1xuXHRcdHBhZGRpbmc6IHJlbSgxMCk7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDYwKTtcblx0XHR9XG5cdH1cbn1cblxuLmxvY2F0aW9uQ2Fyb3VzZWwge1xuXHRib3JkZXItdG9wOiAyMHB4IHNvbGlkIHJnYmEoNTYsIDEwMSwgMTE0LCAwLjY0KTtcblx0Ym9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCByZ2JhKDU2LCAxMDEsIDExNCwgMC42NCk7XG5cdGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIHJnYmEoNTYsIDEwMSwgMTE0LCAwLjY0KTtcblx0Ym9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIHJnYmEoNTYsIDEwMSwgMTE0LCAwLjY0KTtcblxuXHQuZ2xpZGVfX3NsaWRlcyB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHR9XG59XG5cbi5sb2NhdGlvbkluZm8ge1xuXHRtYXJnaW4tbGVmdDogNXZ3O1xuXHRtYXJnaW4tcmlnaHQ6IDV2dztcblx0d2lkdGg6IDkwdnc7XG5cblx0QGluY2x1ZGUgbWluKGxnKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiBjb2xvcihncmVlbi0tZGFyayk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0Jl9fbGVmdCxcblx0Jl9fcmlnaHQge1xuXHRcdEBpbmNsdWRlIG1pbihsZykge1xuXHRcdFx0ZmxleDogMTtcblx0XHRcdG1pbi13aWR0aDogNTB2dztcblx0XHRcdHdpZHRoOiA1MHZ3O1xuXHRcdH1cblx0fVxuXG5cdCZfX2xlZnQge1xuXHRcdG1hcmdpbi10b3A6IHJlbSgtMTUwKTtcblxuXHRcdEBpbmNsdWRlIG1pbihsZykge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtKC0yNTApO1xuXHRcdH1cblx0fVxuXG5cdCZfX3JpZ2h0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IHJlbSgyMCk7XG5cdFx0cGFkZGluZy10b3A6IHJlbSgyMCk7XG5cdH1cbn1cblxuLmxvY2F0aW9uQWRkcmVzcyB7XG5cdGZvbnQtZmFtaWx5OiAkc2VyaWY7XG5cdGZvbnQtc2l6ZTogcmVtKDIyKTtcblxuXHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRmb250LXNpemU6IHJlbSgzNik7XG5cdH1cblxuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4ubG9jYXRpb25QaG9uZSB7XG5cdGZvbnQtc2l6ZTogcmVtKDQwKTtcblxuXHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRmb250LXNpemU6IHJlbSg1MCk7XG5cdH1cbn1cblxuLmxvY2F0aW9uSG91cnMge1xuXHRmb250LXNpemU6IHJlbSgyNCk7XG5cblx0QGluY2x1ZGUgbWluKGxnKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMzQpO1xuXHR9XG59XG5cbi5sb2NhdGlvbkxpbmtzIHtcblx0Jl9fbGVmdCxcblx0Jl9fcmlnaHQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDEwKTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHRhIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtKDIwKTtcblx0XHRcdHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2UtaW4tb3V0O1xuXHRcdFx0Y29sb3I6IGJsYWNrO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRjb2xvcjogYmxhY2s7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1pbihsZykge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgyMik7XG5cdFx0XHR9XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0bWF4LWhlaWdodDogNDBweDtcblx0XHRcdG1heC13aWR0aDogMTUwcHg7XG5cdFx0fVxuXHR9XG59XG5cbi5sb2NhdGlvblJldmlld3Mge1xuXHRwYWRkaW5nLWJsb2NrOiByZW0oNDgpO1xufVxuIiwiLnNpbmdsZS1sb2NhdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcblx0Y29sb3I6IGNvbG9yKGdyZWVuLS1kYXJrKTtcbn1cbiIsIi5wYWdlLXRlbXBsYXRlLXBhZ2UtY2F0ZXJpbmcge1xuXHQucGFnZUNvbnRlbnQge1xuXHRcdHBhZGRpbmctdG9wOiByZW0oMzApO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0oNTApO1xuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogYXV0bztcblxuXHRcdFx0YSB7XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdFx0ZmlsbDogd2hpdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGNpcmNsZSB7XG5cdFx0XHRcdFx0XHRzdHJva2U6IHdoaXRlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5nbGlkZSAuZ2xpZGVfX3NsaWRlcyB7XG5cdFx0Ym9yZGVyLXRvcDogMDtcblx0fVxuXG5cdC5mb3JtLS1tb2RhbCB7XG5cdFx0ei1pbmRleDogOTk5OTk5O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuXHRcdC5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlciB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0oNjApO1xuXG5cdFx0XHRAaW5jbHVkZSBtaW4obWQpIHtcblx0XHRcdFx0bWFyZ2luOiByZW0oNjApIGF1dG87XG5cdFx0XHRcdG1heC13aWR0aDogcmVtKDYwMCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Zm9ybSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyLjVyZW07XG5cblx0XHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0XHRtYXJnaW46IHJlbSg2MCkgYXV0bztcblx0XHRcdFx0bWF4LXdpZHRoOiByZW0oNjAwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHR0ZXh0YXJlYSB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXHR9XG59XG5cbi5jYXRlcmluZ01lbnUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZy1sZWZ0OiByZW0oMzApO1xuXHRwYWRkaW5nLXJpZ2h0OiByZW0oMzApO1xuXG5cdGEge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb2xvcjogYmxhY2s7XG5cdFx0cGFkZGluZy10b3A6IHJlbSgxMik7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSg3KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdG1hcmdpbjogMCBhdXRvIHJlbSg1MCk7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDEwKTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMDBweDtcblxuXHRcdEBpbmNsdWRlIG1pbihtZCkge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDIwKTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDMwKTtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0oMzApO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSgzMCk7XG5cdFx0XHRtYXJnaW46IHJlbSg1MCkgYXV0byByZW0oMTAwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtaW4obGcpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDQwKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JlZW4tLWRhcmspO1xuXHRcdH1cblx0fVxufVxuXG4uY2F0ZXJpbmdGb3JtIHtcblx0Lmdmb3JtX3dyYXBwZXIge1xuXHRcdGlucHV0IHtcblx0XHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5cbi5jYXRlcmluZ0Nsb3NlIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDFlbTtcblx0cmlnaHQ6IDFlbTtcblx0dHJhbnNmb3JtOiBub25lO1xufVxuXG4vLyBDYXRlcmluZyBNb2RhbFxuXG4uY2F0ZXJpbmdNb2RhbF9fY29udGVudCB7XG5cdGJhY2tncm91bmQ6IGNvbG9yKGdyZWVuKTtcblx0cGFkZGluZzogMmVtO1xuXHRtYXgtd2lkdGg6IDcwMHB4O1xuXHRjb2xvcjogY29sb3IoYmxhY2spO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXRlcmluZ01vZGFsIHtcblx0LmNhdGVyaW5nTW9kYWxDbG9zZSB7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMCUsIC0zMCUpO1xuXHRcdH1cblx0fVxufVxuIiwiLnBhZ2UtdGVtcGxhdGUtcGFnZS1pbnNwaXJhdGlvbiB7XG5cdC5tYWluQ29udGVudCB7XG5cdFx0QGluY2x1ZGUgcmVzcG9uc2l2ZWJhY2tncm91bmQoXG5cdFx0XHRcImluc3BpcmF0aW9uLWJnLS1zbS5qcGdcIixcblx0XHRcdFwiaW5zcGlyYXRpb24tYmctLW1kLmpwZ1wiLFxuXHRcdFx0XCJpbnNwaXJhdGlvbi1iZy0tbGcuanBnXCJcblx0XHQpO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG5cdFx0YmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG59XG5cbi5pbnNwaXJhdGlvblNlY3Rpb24ge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy10b3A6IHJlbSg0MCk7XG5cdHBhZGRpbmctYm90dG9tOiByZW0oNDApO1xuXHRtYXJnaW4tdG9wOiAxMHZ3O1xuXHRtYXJnaW4tYm90dG9tOiAxMHZ3O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cblx0Lmluc3BpcmF0aW9uSW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuXHRcdEBpbmNsdWRlIG1heChtZCkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQmLWF2YWNhZG8ge1xuXHRcdFx0bGVmdDogNzB2dztcblx0XHRcdHRvcDogcmVtKC0yMDApO1xuXHRcdH1cblxuXHRcdCYtc2Fsc2Ege1xuXHRcdFx0cmlnaHQ6IDg1dnc7XG5cdFx0XHR0b3A6IHJlbSgyMDApO1xuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTIwcHgpIHtcblx0XHRcdFx0cmlnaHQ6IGNhbGMoODAwcHggKyAoKDEwMCUgLSA3NTBweCkgLyAyKSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji1saW1lcyB7XG5cdFx0XHRsZWZ0OiA4NXZ3O1xuXHRcdFx0dG9wOiByZW0oMTAwKTtcblxuXHRcdFx0QGluY2x1ZGUgbWluKHhsKSB7XG5cdFx0XHRcdGxlZnQ6IDgwdnc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmNvbnRlbnRDb250YWluZXIge1xuXHRcdHdpZHRoOiA4MHZ3O1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRtYXgtd2lkdGg6IHJlbSg4MDApO1xuXG5cdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHR3aWR0aDogNzB2dztcblx0XHR9XG5cdH1cblxuXHQmMSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuXG5cdFx0aDIge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblxuXHRcdFx0QGluY2x1ZGUgbWluKG1kKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDQwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDIwKTtcblx0XHR9XG5cdH1cblxuXHQmMiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JlZW4pO1xuXHRcdGNvbG9yOiBibGFjaztcblxuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdH1cblx0fVxufVxuXG4uaW5zcGlyYXRpb24tYmctcGhvdG9zIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IHJlbSgtMTAwKTtcblx0ei1pbmRleDogMTtcbn1cbiIsIi5lcnJvcjQwNCB7XG5cdC5tYWluQ29udGVudCB7XG5cdFx0bWluLWhlaWdodDogOTB2aDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3RhY29yaWEvcHVibGljL2ltYWdlcy9tZW51LWJnLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdG9wYWNpdHk6IDAuMTU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblx0fVxuXG5cdC53cmFwTWQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAyO1xuXHR9XG59XG4iLCIud29vY29tbWVyY2Uge1xuICAgIGlucHV0W3R5cGVdLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSxcbiAgICAuZmllbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQsIFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdCwgXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQsIFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LCBcbi53b29jb21tZXJjZSBhLmJ1dHRvbiwgXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbiwgXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi53b29jb21tZXJjZSB0aCwgXG4ud29vY29tbWVyY2UgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKGdyZWVuKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlIHtcbiAgICBjb2xvcjogYmxhY2s7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzIC52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICAgIGNvbG9yOiBibGFjaztcblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbik7XG4gICAgfVxufVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcyAudmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLnNlbGVjdGVkLCBcbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQsIFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQsIFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cblxudGFibGUudmFyaWF0aW9ucywgdGFibGUudmFyaWF0aW9ucyB0ZCwgdGFibGUudmFyaWF0aW9ucyB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbn1cblxuLnNpbmdsZS1wcm9kdWN0IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLndvb2NvbW1lcmNlLFxuLndvb2NvbW1lcmNlLWFjY291bnQsXG4ud29vY29tbWVyY2UtY2FydCxcbi53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgLnBhZ2VDb250ZW50X19tYWluIHtcbiAgICAgICAgcGFkZGluZzogMSUgMyU7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UtaW5mbyBhIHtcbiAgICBjb2xvcjogY29sb3IoZ3JlZW4tLWRhcmspO1xufVxuXG5ib2R5Lndvb2NvbW1lcmNlIHtcbiAgICAucGFnZUNvbnRlbnRfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBtaW4obWQpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cblxuICAgICAgICAud29vY29tbWVyY2Uge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtaW4obWQpIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5DYXRlZ29yaWVzIHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWluKG1kKSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdHMge1xuICAgICAgICAuYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblByaW50IFN0eWxlc2hlZXRcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOm5vbmUgIWltcG9ydGFudDtcbiAgICAtbXMtZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhLCBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjNDQ0ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAvLyBzaG93IGxpbmtzIG9uIHByaW50ZWQgcGFnZXNcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIHNob3cgdGl0bGUgdG9vXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cbiAgfVxuXG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgcHJlLCBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cblxuICB0ciwgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgICBAcGFnZSB7XG4gICAgICBtYXJnaW46IDAuNWNtO1xuICAgIH1cblxuICAgIHAsIGgyLCBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGhpZGUgY29udGVudCBwZW9wbGUgd2hvIHByaW50IGRvbid0IG5lZWQgdG8gc2VlXG4gICAgLnNpZGViYXIsXG4gICAgLnBhZ2UtbmF2aWdhdGlvbixcbiAgICAud3AtcHJldi1uZXh0LFxuICAgIC5yZXNwb25kLWZvcm0sXG4gICAgbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/