@charset "UTF-8";
/* ---------- mixins ---------- */
/* ---------- typography ---------- */
*::-moz-selection {
  color: var(--white);
  background: var(--green); }

*::-webkit-selection, *::selection {
  color: var(--white);
  background: var(--green); }

* {
  scrollbar-color: var(--white-light) var(--white);
  scrollbar-width: thin; }
  *::-webkit-scrollbar {
    width: 0.6rem; }
  *::-webkit-scrollbar-track {
    background: var(--white); }
  * ::-webkit-scrollbar-thumb {
    background-color: var(--white-light);
    outline: 0px solid var(--white-light);
    -webkit-border-radius: 0;
    border-radius: 0; }

:root {
  --font-family: "Inter", sans-serif;
  --bg-input-white: rgba(255, 255, 255, 0.02);
  --white: #ffffff;
  --black: #000000;
  --white-light: rgb(224, 224, 224);
  --accent-color: #f3f6f5;
  --green: rgb(35, 93, 57);
  --text-color: #353c43;
  --yellow: rgb(255, 206, 0);
  --yellow-hover: rgb(204, 165, 0);
  --placeholder-color: rgba(53, 60, 67, 0.6);
  --title-color: rgb(31, 44, 62);
  --grey: rgb(106, 113, 121);
  --blue: #005bac;
  --list-grey: rgb(134, 134, 134);
  --dark-shade-color: #212736;
  --linear-gradient-bg: linear-gradient(0deg, #ffffff 0%, #f3f6f5 100%); }

html {
  font-family: var(--font-family); }

body {
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1.5;
  font-family: var(--font-family);
  overflow: hidden;
  color: var(--text-color); }

.base-bottom-margin, p {
  margin-bottom: 1rem; }

.text__white {
  color: var(--white); }
  .text__white h1,
  .text__white h2,
  .text__white h3,
  .text__white h4,
  .text__white h5,
  .text__white h6 {
    color: var(--white); }
  .text__white a {
    color: var(--white); }
  .text__white .subtitle {
    color: var(--white); }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family);
  color: var(--title-color); }
  h1 span,
  h2 span,
  h3 span,
  h4 span,
  h5 span,
  h6 span {
    color: var(--green); }

em {
  font-style: italic; }

h1 {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.3; }

h2 {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase; }

h3 {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.3; }

h4 {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.45; }

h5 {
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.48; }

h6 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.4; }

.subtitle {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.2em;
  text-transform: uppercase; }

p {
  font-family: var(--font-family); }

ul {
  list-style: none;
  margin-left: 0; }

a {
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

.list__style ul {
  list-style: disc;
  padding-left: 2.2rem;
  margin-bottom: 2.4rem; }

a,
button {
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  color: var(--gray); }

blockquote {
  position: relative; }
  blockquote::before {
    content: "“";
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex; }
  blockquote::after {
    content: "”";
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex; }

form {
  width: 100%;
  position: relative; }
  form input,
  form select {
    min-height: 5rem;
    height: 5rem; }
  form input,
  form select,
  form textarea {
    padding: 1.2rem 2.6rem;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.33;
    margin-top: 0;
    background: var(--accent-color);
    border: 0.1rem solid var(--accent-color); }
    form input::-moz-placeholder,
    form select::-moz-placeholder,
    form textarea::-moz-placeholder {
      color: var(--placeholder-color); }
    form input::-ms-input-placeholder,
    form select::-ms-input-placeholder,
    form textarea::-ms-input-placeholder {
      color: var(--placeholder-color); }
    form input::-webkit-input-placeholder,
    form select::-webkit-input-placeholder,
    form textarea::-webkit-input-placeholder {
      color: var(--placeholder-color); }
    form input:focus,
    form select:focus,
    form textarea:focus {
      border-color: var(--blue); }
  form select {
    color: var(--placeholder-color); }
    form select option {
      font-size: 1.5rem;
      font-weight: 400;
      line-height: 1.33;
      background: var(--accent-color);
      color: var(--placeholder-color); }
  form textarea {
    min-height: 15rem;
    height: 15rem; }
  form label {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.33;
    margin-bottom: 0.4rem;
    color: var(--placeholder-color); }
  form input[type="submit"] {
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s; }

.form-item {
  margin-bottom: 2.4rem; }

/* ---------- custom select ------ */
.form-select {
  position: relative;
  background: var(--accent-color); }
  .form-select select {
    background: transparent;
    position: relative;
    z-index: 1; }

.form-select::after {
  content: "";
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDE0IDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yMTExXzQ2KSI+CjxwYXRoIGQ9Ik03LjcgNy43TDEzLjcgMS43QzE0LjEgMS4zIDE0LjEgMC43MDAwMDEgMTMuNyAwLjMwMDAwMUMxMy4zIC0wLjA5OTk5OSAxMi43IC0wLjA5OTk5OSAxMi4zIDAuMzAwMDAxTDcgNS42TDEuNyAwLjNDMS4zIC0wLjEgMC43IC0wLjEgMC4zIDAuM0MwLjEgMC41IDAgMC43IDAgMUMwIDEuMyAwLjEgMS41IDAuMyAxLjdMNi4zIDcuN0M2LjUgNy45IDYuOCA4IDcgOEM3LjMgOCA3LjUgNy45IDcuNyA3LjdaIiBmaWxsPSIjMzUzQzQzIiBmaWxsLW9wYWNpdHk9IjAuNTQxMTc2Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjExMV80NiI+CjxyZWN0IHdpZHRoPSIxNCIgaGVpZ2h0PSI4IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=");
  background-position: center;
  -webkit-background-size: 1.4rem 1.4rem;
          background-size: 1.4rem;
  background-repeat: no-repeat;
  width: 1.4rem;
  height: 0.8rem;
  position: absolute;
  right: 1.5rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 0; }

/* ----------- checkbox ------------ */
/* ----------- radio ------------ */
/* -------- btn ---------- */
.contact__btn__fixed {
  position: fixed;
  right: 0;
  top: 50%;
  width: 4rem; }

.contact__btn__fixed {
  position: fixed;
  right: 0;
  top: 50%;
  width: 4rem; }
  .contact__btn__fixed a {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-90deg);
        -ms-transform: translate(-50%, -50%) rotate(-90deg);
            transform: translate(-50%, -50%) rotate(-90deg);
    white-space: nowrap; }

.btn__fixed {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-height: 4rem;
  -webkit-border-radius: 1rem 1rem 0 0;
          border-radius: 1rem 1rem 0 0;
  padding: 0 2rem;
  background: var(--green);
  color: var(--white);
  border: 0.1rem solid var(--white);
  text-decoration: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  cursor: pointer;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  text-transform: uppercase; }
  .btn__fixed::before, .btn__fixed::after {
    content: "";
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s; }
  .btn__fixed:hover, .btn__fixed:focus, .btn__fixed:active, .btn__fixed:visited {
    text-decoration: none; }
  .btn__fixed:hover {
    border-color: var(--green);
    color: var(--green);
    background: var(--white); }

.btn__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -1rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .btn__box a,
  .btn__box button,
  .btn__box input[type="submit"] {
    margin: 1rem !important; }

.link__arrow {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--green);
  text-decoration: underline; }

.btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.3rem 2.4rem;
  min-height: 5rem;
  color: var(--white);
  background: var(--green);
  text-transform: uppercase;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.33;
  border: 0.2rem solid var(--green);
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  -o-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in, -webkit-box-shadow 0.2s ease-in; }
  .btn:hover, .btn:focus, .btn:active, .btn:visited {
    text-decoration: none !important; }
  .btn:hover {
    background: var(--white);
    border-color: var(--green);
    color: var(--green); }

.btn__yellow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.3rem 2.4rem;
  min-height: 5rem;
  color: var(--white);
  background: var(--green);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.33;
  border: 0.2rem solid var(--green);
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  -o-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in, -webkit-box-shadow 0.2s ease-in; }
  .btn__yellow:hover, .btn__yellow:focus, .btn__yellow:active, .btn__yellow:visited {
    text-decoration: none !important; }
  .btn__yellow:hover {
    background: var(--white);
    border-color: var(--green);
    color: var(--green); }

.btn__tr__white {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.3rem 2.4rem;
  min-height: 5rem;
  color: var(--white);
  background: transparent;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.33;
  border: 0.2rem solid var(--white);
  text-align: center;
  text-decoration: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, -webkit-box-shadow 0.2s ease-in;
  -o-transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in;
  transition: color 0.2s ease-in, background-color 0.2s ease-in, border-color 0.2s ease-in, box-shadow 0.2s ease-in, -webkit-box-shadow 0.2s ease-in; }
  .btn__tr__white:hover, .btn__tr__white:focus, .btn__tr__white:active, .btn__tr__white:visited {
    text-decoration: none !important; }
  .btn__tr__white:hover {
    background: var(--white);
    border-color: var(--white);
    color: var(--text-color); }

.custom__list ul li {
  padding-left: 3rem;
  position: relative;
  color: var(--list-grey);
  margin-bottom: 1.6rem; }
  .custom__list ul li::before {
    content: "";
    background-repeat: no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
    background-position: center;
    background-image: url("../img/check-icon.svg");
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    top: 0.2rem;
    left: 0; }

.container {
  max-width: 120rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%; }

.rows {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .rows .column {
    width: 50%; }

.img__box {
  position: relative;
  padding-top: 100%;
  width: 100%;
  overflow: hidden; }
  .img__box img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s; }
  .img__box iframe,
  .img__box video {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -o-object-fit: cover;
       object-fit: cover; }

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: -1; }
  .overlay img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.element__bg {
  position: absolute;
  z-index: 0; }
  .element__bg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.slick-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  font-size: 0;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  -webkit-border-radius: 1rem;
          border-radius: 1rem;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
          background-size: contain;
  background-position: center;
  background: var(--orange-2);
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; }
  .slick-arrow svg {
    width: 100%; }
  .slick-arrow::before {
    position: absolute;
    line-height: 1;
    font-size: 1.8rem;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    font-family: "FontAwesome";
    color: var(--white); }
  .slick-arrow:hover {
    background: var(--orange); }
  .slick-arrow.slick-prev {
    left: -3rem; }
    .slick-arrow.slick-prev::before {
      content: ""; }
    .slick-arrow.slick-prev svg {
      -webkit-transform: rotateY(180deg);
              transform: rotateY(180deg); }
  .slick-arrow.slick-next {
    right: -3rem; }
    .slick-arrow.slick-next::before {
      content: ""; }

.slick-list {
  overflow: hidden; }

.slick-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: -2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .slick-dots li {
    margin: 0 1.25rem !important;
    margin-top: 0px;
    padding: 0 !important;
    position: relative;
    width: 1rem;
    height: 1rem;
    cursor: pointer;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    border: 0.1rem solid var(--green); }
    .slick-dots li.slick-active {
      background: var(--green); }
    .slick-dots li button {
      font-size: 0; }

.slick-track {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important; }
  .slick-track .slick-slide {
    height: auto; }

.slick-slider {
  display: block !important; }

main {
  padding-top: 17.8rem; }

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  font-size: 1.2rem !important;
  margin: 1.2rem 0 0 !important;
  border-color: red !important; }

.wpcf7 form .wpcf7-response-output {
  font-size: 1.2rem !important;
  margin: 1.2rem 0 0 !important;
  border-color: var(--abacus-blue) !important; }

.wpcf7-spinner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0; }

.wpcf7-not-valid-tip {
  font-size: 1.4rem;
  margin: 0.5rem 0 -0.5rem; }

/* ------------ modal__window ------------ */
.modal__window {
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
  padding: 0 2rem; }
  .modal__window::after, .modal__window::before {
    content: "";
    width: 100%;
    height: 0;
    display: block; }
  .modal__window.modal-show {
    opacity: 1;
    visibility: visible; }
  .modal__window h2 {
    text-align: center; }
  .modal__window .modal__window__overlay {
    position: fixed;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  .modal__window .modal__window__wrapper {
    background: var(--white);
    -webkit-border-radius: 2.4rem;
            border-radius: 2.4rem;
    padding: 6rem 3rem;
    z-index: 2;
    position: relative;
    max-width: 70rem;
    width: 100%;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease; }
  .modal__window .modal__window_close {
    width: 4rem;
    height: 4rem;
    position: absolute;
    right: 1.6rem;
    top: 1.6rem;
    cursor: pointer; }
    .modal__window .modal__window_close::after, .modal__window .modal__window_close::before {
      content: "";
      -webkit-border-radius: 2.6rem;
              border-radius: 2.6rem;
      width: 0.2rem;
      height: 2rem;
      background: var(--blue);
      left: 50%;
      top: 50%;
      display: block;
      position: absolute; }
    .modal__window .modal__window_close::after {
      -webkit-transform: translate(-50%, -50%) rotate(45deg);
          -ms-transform: translate(-50%, -50%) rotate(45deg);
              transform: translate(-50%, -50%) rotate(45deg); }
    .modal__window .modal__window_close::before {
      -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          -ms-transform: translate(-50%, -50%) rotate(-45deg);
              transform: translate(-50%, -50%) rotate(-45deg); }

/* ------------- header --------- */
.header {
  height: 17.8rem;
  position: fixed;
  top: 0;
  width: 100%;
  left: 0;
  right: 0;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  z-index: 100; }
  .header.sticky, .header.show {
    background: #353c43 53.44% 71.18% !important; }
  .header .header__box__inner {
    display: block;
    height: 100%;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s; }
  .header .nav-overlay {
    position: fixed;
    width: 100vw;
    height: calc(100dvh - 9.7rem);
    left: 0;
    top: 9.7rem;
    bottom: 0;
    right: 0;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    background: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out; }
    .header .nav-overlay.show {
      opacity: 1;
      visibility: visible; }
  .header .container {
    height: 100%; }
  .header .header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    padding: 2.4rem 0; }
  .header .main__nav__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 100%; }
  .header .header__logo {
    max-width: 12rem;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: center;
        -ms-flex-direction: center;
            flex-direction: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    position: relative;
    min-width: 12rem; }
    .header .header__logo img {
      width: 100%; }
  .header .header__left {
    width: auto;
    padding-right: 2.5rem; }
  .header .header__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    z-index: 3;
    height: 100%; }
  .header .main__nav {
    width: 100%; }
  .header .sub__menu {
    opacity: 0;
    visibility: hidden;
    position: absolute; }
  .header .main__nav__btn__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .header .header__btn {
    width: 5rem;
    height: 5rem;
    min-width: 5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .header .header__btn svg {
      width: 2rem;
      min-width: 2rem; }
  .header .header__btn__wrapper {
    margin-left: 1.4rem; }
  .header .cart__btn__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .header .main__menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 100%; }
    .header .main__menu a {
      font-size: 1.6rem;
      font-weight: 400;
      line-height: 1;
      text-transform: uppercase;
      text-align: center;
      color: var(--accent-color);
      position: relative; }
      .header .main__menu a::after {
        content: "";
        position: absolute;
        bottom: -0.5rem;
        height: 0.2rem;
        width: 0;
        left: 0;
        background-color: var(--accent-color);
        -webkit-transition-property: width;
        -o-transition-property: width;
        transition-property: width;
        -webkit-transition-duration: 0.3s;
             -o-transition-duration: 0.3s;
                transition-duration: 0.3s;
        -webkit-transition-timing-function: ease-in-out;
             -o-transition-timing-function: ease-in-out;
                transition-timing-function: ease-in-out; }
      .header .main__menu a:hover {
        text-decoration: none; }
        .header .main__menu a:hover::after {
          width: 100%; }
  .header .menu-item {
    margin: 1.2rem 0.9rem; }
    .header .menu-item a {
      height: 100%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  .header .nav__btn__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: 0;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1; }

.language__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .language__body li {
    padding: 0 0.5rem;
    position: relative; }
    .language__body li::before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 0.1rem;
      height: 1.7rem;
      background: var(--accent-color); }
    .language__body li:first-child::before {
      display: none; }
    .language__body li.active a, .language__body li.active span {
      font-weight: 700; }
  .language__body a, .language__body span {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
    color: var(--accent-color);
    position: relative; }
  .language__body a::after {
    content: "";
    position: absolute;
    bottom: -0.5rem;
    height: 0.2rem;
    width: 0;
    left: 0;
    background-color: var(--accent-color);
    -webkit-transition-property: width;
    -o-transition-property: width;
    transition-property: width;
    -webkit-transition-duration: 0.3s;
         -o-transition-duration: 0.3s;
            transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-in-out;
         -o-transition-timing-function: ease-in-out;
            transition-timing-function: ease-in-out; }
  .language__body a:hover {
    text-decoration: none; }
    .language__body a:hover::after {
      width: 100%; }

.social__list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  grid-gap: 1.9rem; }

.social__list a {
  width: 3.2rem;
  min-width: 3.2rem;
  height: 3.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .social__list a:hover {
    opacity: 0.9; }

.social__list svg {
  width: 100%; }
  .social__list svg path {
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s; }

.menu__close {
  position: absolute;
  right: 3rem;
  top: 1.6rem;
  font-size: 2.8rem;
  cursor: pointer;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  z-index: 5; }
  .menu__close:hover {
    color: var(--orange); }

.hamburger {
  display: block;
  position: relative;
  width: 2.8rem;
  height: 2rem;
  cursor: pointer; }
  .hamburger::after {
    content: "";
    position: absolute;
    width: 4rem;
    height: 4rem;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.header__top__box {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--white); }
  .header__top__box a {
    color: var(--white); }

.telephone__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: 2rem; }
  .telephone__box .telephone__title {
    margin-right: 1rem; }
  .telephone__box ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .telephone__box ul a {
      font-weight: 700;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .telephone__box ul a span {
        width: 2.4rem;
        height: 2.4rem;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-right: 1rem; }
        .telephone__box ul a span svg, .telephone__box ul a span img {
          width: 100%;
          height: 100%; }
  .telephone__box a {
    color: var(--white); }

.hamburger span {
  position: absolute;
  display: block;
  height: 0.3rem;
  left: 0;
  right: 0;
  background: var(--white);
  -webkit-border-radius: 0.1rem;
          border-radius: 0.1rem;
  -webkit-transition: all 0.3s ease !important;
  -o-transition: all 0.3s ease !important;
  transition: all 0.3s ease !important; }

.hamburger span:first-child {
  top: 0;
  -webkit-transition: top 0.3s ease 0.3s, -webkit-transform 0.3s ease 0s;
  transition: top 0.3s ease 0.3s, -webkit-transform 0.3s ease 0s;
  -o-transition: top 0.3s ease 0.3s, transform 0.3s ease 0s;
  transition: top 0.3s ease 0.3s, transform 0.3s ease 0s;
  transition: top 0.3s ease 0.3s, transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s; }

.hamburger span:nth-child(2) {
  top: 55%;
  margin-top: -0.3rem;
  -webkit-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s; }

.hamburger span:last-child {
  top: auto;
  bottom: 0;
  -webkit-transition: bottom 0.3s ease 0.3s, -webkit-transform 0.3s ease 0s;
  transition: bottom 0.3s ease 0.3s, -webkit-transform 0.3s ease 0s;
  -o-transition: bottom 0.3s ease 0.3s, transform 0.3s ease 0s;
  transition: bottom 0.3s ease 0.3s, transform 0.3s ease 0s;
  transition: bottom 0.3s ease 0.3s, transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s; }

.hamburger.show span:first-child {
  top: 39%;
  -webkit-transition: top 0.3s ease 0s, -webkit-transform 0.3s ease 0.3s;
  transition: top 0.3s ease 0s, -webkit-transform 0.3s ease 0.3s;
  -o-transition: top 0.3s ease 0s, transform 0.3s ease 0.3s;
  transition: top 0.3s ease 0s, transform 0.3s ease 0.3s;
  transition: top 0.3s ease 0s, transform 0.3s ease 0.3s, -webkit-transform 0.3s ease 0.3s;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.hamburger.show span:nth-child(2) {
  opacity: 0; }

.hamburger.show span:last-child {
  bottom: 49%;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  transition: bottom 0.3s ease 0s, -webkit-transform 0.3s ease 0.3s;
  -webkit-transition: bottom 0.3s ease 0s, -webkit-transform 0.3s ease 0.3s;
  -o-transition: bottom 0.3s ease 0s, transform 0.3s ease 0.3s;
  transition: bottom 0.3s ease 0s, transform 0.3s ease 0.3s;
  transition: bottom 0.3s ease 0s, transform 0.3s ease 0.3s, -webkit-transform 0.3s ease 0.3s; }

.btn__more__books,
.btn__close {
  cursor: pointer; }
  .btn__more__books.show i::before,
  .btn__close.show i::before {
    content: "\f00d";
    font-family: "fontawesome"; }

.btn__header {
  font-size: 2.8rem;
  cursor: pointer;
  margin-left: 1.6rem;
  color: var(--white); }

.btn__header__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

@media only screen and (min-width: 887px) {
  .mob {
    display: none !important; }
  .hamburger {
    display: none; } }

@media only screen and (max-width: 886px) {
  .desk {
    display: none !important; } }

/* -------------- hero --------- */
.about__section {
  padding: 6rem 0 4rem; }
  .about__section h1 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.45;
    margin-top: 2rem; }
    .about__section h1 span {
      color: var(--green); }
  .about__section h6 {
    margin-top: 3rem;
    color: var(--grey);
    font-weight: 500;
    line-height: 1.5;
    font-size: 1.9rem;
    margin-bottom: 2.5rem; }
  .about__section p {
    margin-top: 2rem;
    margin-bottom: 2rem;
    color: var(--list-grey); }
  .about__section .column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .about__section .left {
    width: 37.6%; }
  .about__section .right {
    width: 62.4%;
    padding-left: 6rem; }
  .about__section .contact__wrapper {
    margin-top: 1.5rem;
    padding: 3.1rem 0 1.5rem;
    position: relative; }
    .about__section .contact__wrapper::before {
      content: "";
      position: absolute;
      top: 0;
      width: 100%;
      height: 0.1rem;
      background: var(--white-light);
      opacity: 0.45; }
  .about__section .content__box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .about__section .content__box a {
      color: var(--title-color);
      font-weight: 700; }
  .about__section .content__box__text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .about__section .content__text {
    margin-top: 5.1rem; }
    .about__section .content__text p {
      font-size: 1.5rem;
      font-weight: 500;
      line-height: 1.8;
      color: var(--blue);
      margin-bottom: 0; }
  .about__section .contact__icon {
    width: 5rem;
    min-width: 5rem;
    height: 5rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    background: var(--yellow);
    margin-right: 1.5rem; }
    .about__section .contact__icon svg {
      width: 2.6rem;
      min-width: 2.6rem;
      color: var(--green); }
      .about__section .contact__icon svg path {
        fill: var(--green); }

/* --------- delivery__section ---------- */
.delivery__section {
  background: var(--linear-gradient-bg);
  padding: 4rem 0; }
  .delivery__section .section__header {
    text-align: center; }
    .delivery__section .section__header p {
      margin-top: 2.5rem;
      font-size: 1.9rem;
      font-weight: 500;
      line-height: 1.5; }
  .delivery__section .section__body {
    margin-top: 5rem; }
    .delivery__section .section__body p {
      margin-bottom: 2.5rem; }
      .delivery__section .section__body p strong {
        color: var(--green); }
    .delivery__section .section__body ul {
      list-style: disc;
      list-style-position: inside;
      margin-bottom: 2.5rem; }
  .delivery__section .tabs__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative; }
    .delivery__section .tabs__items::after {
      content: "";
      position: absolute;
      height: 0.1rem;
      right: 0;
      bottom: 0;
      left: 0;
      color: inherit;
      background-color: var(--text-color);
      opacity: 0.125; }
  .delivery__section .tabs__item {
    padding: 1.5rem 2rem;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.44;
    color: var(--green);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    opacity: 0.6;
    cursor: pointer;
    position: relative;
    -webkit-transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -o-transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out; }
    .delivery__section .tabs__item span {
      width: 2.5rem;
      min-width: 2.5rem;
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -ms-inline-flexbox;
      display: inline-flex;
      margin-right: 1.5rem; }
      .delivery__section .tabs__item span svg {
        color: var(--text-color);
        width: 100%; }
    .delivery__section .tabs__item::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 0.2rem;
      bottom: 0;
      left: 0;
      background-color: var(--text-color);
      opacity: 0;
      visibility: hidden; }
    .delivery__section .tabs__item.active {
      opacity: 1; }
      .delivery__section .tabs__item.active::after {
        opacity: 1;
        visibility: visible; }
    .delivery__section .tabs__item:hover {
      opacity: 1; }
  .delivery__section .tabs__body__items {
    margin-top: 3rem;
    background: var(--white);
    border: 0.2rem solid var(--accent-color); }
  .delivery__section .img__box {
    padding-top: 104.46%; }
  .delivery__section .right {
    padding: 4rem 3rem; }
  .delivery__section .btn__box {
    margin-top: -1rem;
    padding-top: 4.6rem;
    position: relative; }
    .delivery__section .btn__box::before {
      content: "";
      height: 0.1rem;
      width: calc(100% - 2rem);
      position: absolute;
      top: 0;
      left: 1rem;
      right: 1rem;
      background: var(--black);
      opacity: 0.13; }

/* ----------- contact__us__banner ----------- */
.contact__us__banner {
  background: var(--green);
  padding: 4rem 0 4rem;
  text-align: center; }
  .contact__us__banner .subtitle {
    margin-bottom: 2rem; }
  .contact__us__banner h2 {
    margin-bottom: 2.5rem; }
  .contact__us__banner p {
    font-size: 1.9rem;
    max-width: 89rem;
    font-weight: 500;
    margin: 0 auto;
    text-align: center; }
  .contact__us__banner .btn__box {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 4.5rem; }

/* ------------- logistics__section ------------ */
.logistics__section {
  background: var(--title-color);
  padding: 4rem 0; }
  .logistics__section .subtitle {
    margin-bottom: 2rem; }
  .logistics__section h2 {
    margin-bottom: 2.5rem; }
  .logistics__section p {
    font-size: 1.9rem;
    max-width: 75rem;
    margin: 0 auto;
    text-align: center; }
  .logistics__section .section__header {
    text-align: center; }
    .logistics__section .section__header p {
      font-weight: 500; }
  .logistics__section .section__body {
    margin-top: 5rem;
    padding: 0 1.5rem; }
  .logistics__section .logistics__contacts {
    margin-top: 5.5rem; }
    .logistics__section .logistics__contacts p {
      font-weight: 700; }
    .logistics__section .logistics__contacts a {
      color: var(--white);
      text-decoration: underline; }
      .logistics__section .logistics__contacts a:hover {
        text-decoration: none; }

.logistics__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: -1.5rem 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .logistics__items .logistics__item {
    width: calc(100% / 4); }

.logistics__item {
  padding: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center; }
  .logistics__item .img__box {
    padding-top: 0;
    height: 34.5rem;
    min-height: 34.5rem; }
  .logistics__item .logistics__item__content {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%; }
    .logistics__item .logistics__item__content p {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }
  .logistics__item .btn__box {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 1.7rem; }
  .logistics__item .link {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--accent-color); }
  .logistics__item .logistics__item__inner {
    position: relative;
    padding: 4rem 3rem;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .logistics__item .logistics__item__overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0; }
    .logistics__item .logistics__item__overlay img {
      position: absolute;
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
    .logistics__item .logistics__item__overlay::after {
      content: "";
      background: -webkit-gradient(linear, left bottom, left top, from(rgba(31, 44, 62, 0.9)), to(rgba(53, 60, 67, 0.11)));
      background: -webkit-linear-gradient(bottom, rgba(31, 44, 62, 0.9) 0%, rgba(53, 60, 67, 0.11) 100%);
      background: -o-linear-gradient(bottom, rgba(31, 44, 62, 0.9) 0%, rgba(53, 60, 67, 0.11) 100%);
      background: linear-gradient(0deg, rgba(31, 44, 62, 0.9) 0%, rgba(53, 60, 67, 0.11) 100%);
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0; }
  .logistics__item h5 {
    margin-bottom: 2rem; }
  .logistics__item p {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.45;
    color: var(--white-light); }

/* ------------- services ---------- */
.services {
  padding: 4rem 0; }
  .services .section__header p {
    color: var(--grey);
    font-size: 1.9rem;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 0; }
  .services .column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .services .left {
    padding-right: 1.5rem; }
  .services .subtitle {
    margin-bottom: 2rem;
    color: var(--list-grey); }
  .services .right {
    padding-left: 1.5rem; }
  .services .section__body {
    margin-top: 5rem; }
  .services .services__footer {
    margin-top: 5.5rem;
    text-align: center; }
    .services .services__footer p {
      color: var(--grey);
      font-size: 1.5rem;
      font-weight: 500;
      line-height: 1.42; }
  .services .btn__box {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .services .link__arrow {
    margin-top: 2rem; }

.services__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2rem 0; }
  .services__items .services__item {
    width: calc(100% / 3); }

.services__slider {
  display: block !important; }

.services__item {
  padding: 2rem; }
  .services__item .img__box {
    padding-top: 68.86%;
    margin-bottom: 2rem; }
  .services__item h5 {
    margin-bottom: 2rem; }
  .services__item p {
    margin-bottom: 0;
    color: var(--list-grey); }

/* ----------- services2 ---------- */
.services2 {
  padding: 4rem 0;
  background: var(--accent-color); }
  .services2 .section__header {
    text-align: center; }
    .services2 .section__header h2 {
      margin-bottom: 2rem; }
    .services2 .section__header p {
      color: var(--grey);
      font-size: 1.9rem;
      font-weight: 500;
      line-height: 1.5; }
  .services2 .subtitle {
    margin-bottom: 2rem; }
  .services2 .section__body {
    margin-top: 5rem; }

.services2__items {
  width: calc(100% + 3rem);
  margin: -1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .services2__items .services2__item {
    width: calc(100% / 3 - 3rem);
    margin: 1.5rem; }

.services2__item .services2__item__inner {
  padding: 1rem 0.5rem; }

.services2__item .services2__item__icon {
  width: 7rem;
  min-width: 7rem;
  margin-bottom: 2rem; }
  .services2__item .services2__item__icon svg,
  .services2__item .services2__item__icon img {
    width: 100%; }
    .services2__item .services2__item__icon svg path,
    .services2__item .services2__item__icon img path {
      fill: var(--green); }

.services2__item h5 {
  margin-bottom: 2rem; }

.services2__item p {
  margin-bottom: 0;
  color: var(--list-grey); }

/* ---------- services__info ------------ */
.services__info {
  position: relative;
  padding: 13.5rem 0 9.5rem; }
  .services__info .paralax__wrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: 0;
    -webkit-border-radius: inherit;
            border-radius: inherit;
    -webkit-transition: opacity 0.3s ease-out;
    -o-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out; }
  .services__info .paralax {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    background-position: 50% 50%, 0% 0%;
    background-repeat: no-repeat, repeat;
    background-attachment: fixed, scroll;
    -webkit-background-size: 0px 0px;
            background-size: 0px;
    -webkit-background-origin: padding-box, padding-box;
            background-origin: padding-box, padding-box;
    -webkit-background-clip: border-box, border-box;
            background-clip: border-box, border-box;
    -webkit-clip-path: inset(0px);
            clip-path: inset(0px);
    z-index: -1;
    overflow: hidden;
    --fixed-background-size: cover;
    --fixed-background-color: #353c43;
    --fixed-transform: none;
    --fixed-filter: undefined; }
    .services__info .paralax:before {
      content: "";
      position: fixed;
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0;
      -webkit-transform: var(--fixed-transform, none);
          -ms-transform: var(--fixed-transform, none);
              transform: var(--fixed-transform, none);
      z-index: -1;
      background-image: inherit;
      background-color: var(--fixed-background-color, transparent);
      background-repeat: inherit;
      -webkit-background-size: var(--fixed-background-size, cover);
              background-size: var(--fixed-background-size, cover);
      background-position: inherit;
      background-attachment: scroll;
      -webkit-filter: var(--fixed-filter, none);
              filter: var(--fixed-filter, none); }
  .services__info .paralax__overlay {
    background: rgba(31, 44, 62, 0.9);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .services__info .container {
    position: relative;
    z-index: 2; }
  .services__info .rows {
    margin-top: 5rem; }
    .services__info .rows:first-child {
      margin-top: 0; }
  .services__info .left {
    padding-right: 1.5rem; }
    .services__info .left .content__side {
      max-width: 47rem; }
    .services__info .left p {
      max-width: 38rem; }
  .services__info .subtitle {
    margin-bottom: 2rem; }
  .services__info .right {
    padding-left: 1.5rem; }
  .services__info p {
    margin-bottom: 0; }

.services__info__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% + 3rem);
  margin: -1.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .services__info__items .services__info__item {
    width: calc(100% / 3 - 3rem);
    margin: 1.5rem; }

.services__info__item .services__info__item__icon {
  width: 5rem;
  min-width: 5rem;
  margin-bottom: 2rem; }
  .services__info__item .services__info__item__icon svg,
  .services__info__item .services__info__item__icon img {
    width: 100%; }

.services__info__item .services__info__item__number {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  padding-bottom: 1.8rem;
  margin-bottom: 1.5rem; }
  .services__info__item .services__info__item__number::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 5.1rem;
    height: 0.3rem;
    background: var(--white); }

/* --------------- faq__section --------------- */
.faq__section {
  background: var(--green);
  padding: 5rem 0 4rem; }
  .faq__section .column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .faq__section .left {
    width: 41.45%;
    padding-right: 1.5rem; }
    .faq__section .left h5 {
      margin-bottom: 2rem; }
    .faq__section .left p {
      margin-bottom: 2rem;
      color: var(--grey); }
  .faq__section .form__wrapper {
    background: var(--white);
    padding: 4rem; }
  .faq__section .form__content {
    margin-bottom: 3.2rem; }
  .faq__section .form-btn {
    margin-top: 8rem;
    position: relative; }
  .faq__section .btn__yellow {
    width: 100%; }
  .faq__section .right {
    width: 58.55%;
    padding-left: 1.5rem; }
  .faq__section .content__box h2 {
    margin-bottom: 2.4rem; }
  .faq__section .content__box p {
    margin-bottom: 2rem;
    font-size: 1.9rem;
    font-weight: 500; }
  .faq__section .subtitle {
    margin-bottom: 2rem; }
  .faq__section .faq__section__footer {
    margin-top: 5rem;
    text-align: center; }
    .faq__section .faq__section__footer h3 {
      font-size: 4.2rem;
      margin-bottom: 2rem; }

.accordion__item {
  padding: 2rem 0;
  position: relative; }
  .accordion__item::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 0.1rem;
    width: 100%;
    background: var(--white);
    opacity: 0.2;
    left: 0;
    right: 0; }
  .accordion__item .question {
    position: relative;
    padding-right: 3rem;
    font-weight: 700;
    cursor: pointer; }
    .accordion__item .question i {
      width: 1.5rem;
      height: 1.5rem;
      position: absolute;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      right: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .accordion__item .question i::after, .accordion__item .question i::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        -webkit-border-radius: 0.3rem;
                border-radius: 0.3rem;
        background: var(--white); }
      .accordion__item .question i::before {
        width: 0.2rem;
        height: 100%;
        -webkit-transition: height 0.3s ease;
        -o-transition: height 0.3s ease;
        transition: height 0.3s ease; }
      .accordion__item .question i::after {
        height: 0.2rem;
        width: 100%; }
    .accordion__item .question.opened i::before {
      height: 0; }
  .accordion__item .answer {
    padding-top: 2rem; }

/* --------- footer ---------- */
.footer {
  background: var(--title-color); }
  .footer .footer__top {
    padding: 8rem 0 6rem;
    position: relative; }
    .footer .footer__top .column {
      width: calc(100% / 4 - 3rem); }
    .footer .footer__top::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 0.1rem;
      bottom: 0.1rem;
      left: 0;
      right: 0;
      background: var(--white);
      opacity: 0.2; }
    .footer .footer__top P {
      font-size: 1.5rem;
      font-weight: 500;
      line-height: 1.43;
      color: var(--accent-color); }
  .footer .rows {
    width: calc(100% + 3rem);
    margin: -1.5rem; }
  .footer .column {
    margin: 1.5rem; }
  .footer .header__logo {
    max-width: 9.6rem;
    display: block;
    margin-bottom: 2.6rem; }
    .footer .header__logo img {
      width: 100%; }
  .footer .social__list {
    max-width: 100%;
    margin-top: 3rem; }
    .footer .social__list a {
      min-width: 2.5rem;
      width: 2.5rem;
      height: 2.5rem; }
  .footer .footer__form {
    margin-top: 2.7rem; }
    .footer .footer__form input:not([type="submit"]) {
      background: var(--bg-input-white);
      border-color: var(--bg-input-white);
      font-size: 1.5rem;
      color: var(--white);
      border: 0; }
      .footer .footer__form input:not([type="submit"])::-moz-placeholder {
        color: var(--list-grey); }
      .footer .footer__form input:not([type="submit"])::-ms-input-placeholder {
        color: var(--list-grey); }
      .footer .footer__form input:not([type="submit"])::-webkit-input-placeholder {
        color: var(--list-grey); }
  .footer .btn__tr__white {
    width: 100%; }
  .footer .footer__contact {
    margin-top: 5.8rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .footer .footer__contact p {
      font-size: 1.7rem;
      font-weight: 400;
      line-height: 1.5; }
    .footer .footer__contact a {
      color: var(--accent-color); }
  .footer .footer__bottom {
    padding: 1.5rem 0; }
    .footer .footer__bottom p {
      margin-bottom: 0; }
    .footer .footer__bottom .column {
      width: calc(100% / 3 - 3rem); }
    .footer .footer__bottom .center {
      text-align: center; }
    .footer .footer__bottom .right {
      text-align: end; }
    .footer .footer__bottom .left P,
    .footer .footer__bottom .right P {
      font-size: 1.5rem;
      font-weight: 500;
      line-height: 1.43;
      color: var(--accent-color); }
  .footer h6 {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.43;
    position: relative;
    padding-bottom: 1.8rem;
    margin-bottom: 1.5rem; }
    .footer h6::after {
      content: "";
      height: 0.3rem;
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 6.75rem;
      background: var(--white-light);
      opacity: 0.25; }
  .footer .widget a {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.43;
    color: var(--white-light); }
  .footer .widget li {
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.43; }

/* ----------- news__section ------------ */
.news__section {
  padding: 10rem 0; }
  .news__section .section__header {
    text-align: center; }
  .news__section .section__body {
    margin-top: 5rem; }
  .news__section h1 {
    font-size: 4.8rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--text-color); }

.news__items {
  width: calc(100% + 3.8rem);
  margin: -1.6rem -1.9rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .news__items .news__item {
    width: calc(100% / 3 - 3.8rem);
    margin: 1.6rem 1.9rem; }

.news__item .img__box {
  padding-top: 60%; }
  .news__item .img__box a {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0; }

.news__item .news__item__content {
  margin-top: 2rem; }

.news__item h5 {
  margin-top: 2rem;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.43;
  margin-bottom: 0; }

.article__date {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.43;
  color: var(--blue); }

/* ------------- article__section ------------- */
.article__section {
  padding: 3.2rem 0 6.4rem; }
  .article__section h1 {
    text-transform: uppercase; }
  .article__section p {
    margin-top: 2rem;
    color: var(--text-color); }
  .article__section h1,
  .article__section h2,
  .article__section h3,
  .article__section h4,
  .article__section h5,
  .article__section h6 {
    margin: 2rem 0 2.4rem;
    color: var(--text-color); }
  .article__section .img__wrapper {
    max-width: 100rem;
    margin: 0 auto 3.2rem; }
    .article__section .img__wrapper img {
      width: 100%; }
  .article__section .content__wrapper {
    max-width: 70rem;
    margin: 0 auto; }
  .article__section ul {
    list-style: disc;
    list-style-position: inside; }

/* ------------- privacy__policy__section ----------- */
.privacy__policy__section {
  padding: 10rem 0; }
  .privacy__policy__section p {
    margin: 0;
    color: var(--text-color);
    line-height: 1.7; }
  .privacy__policy__section h1 {
    margin-bottom: 2.4rem;
    color: var(--text-color);
    text-align: center;
    text-transform: uppercase; }
  .privacy__policy__section h2,
  .privacy__policy__section h3,
  .privacy__policy__section h4,
  .privacy__policy__section h5,
  .privacy__policy__section h6 {
    margin: 2rem 0 2rem;
    color: var(--text-color);
    text-align: center; }
  .privacy__policy__section a {
    color: var(--blue); }
    .privacy__policy__section a:hover {
      text-decoration: underline; }
  .privacy__policy__section ul {
    list-style: disc;
    list-style-position: inside; }

/* ----------- section__404 ---------- */
.section__404 {
  padding: 9rem 0; }
  .section__404 h1 {
    font-size: 14rem; }
  .section__404 .btn__box {
    margin-top: 2rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .section__404 .section__inner {
    max-width: 60rem;
    margin: 0 auto;
    text-align: center; }

/* --------- services__price --------- */
.services__price {
  padding: 4rem 0;
  background: var(--linear-gradient-bg); }
  .services__price .section__header {
    text-align: center; }
  .services__price .section__body {
    margin-top: 4rem; }
  .services__price .services__price__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: -1rem;
    width: calc(100% + 2rem); }
    .services__price .services__price__items .services__price__item {
      margin: 1rem;
      width: calc(100% / 3 - 2rem); }
  .services__price .services__price__item {
    background: var(--white);
    border: 0.2rem solid var(--accent-color);
    padding: 3.2rem 1.6rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .services__price .services__price__item__icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 3.6rem; }
    .services__price .services__price__item__icon svg, .services__price .services__price__item__icon img {
      height: 100%;
      width: 100%; }
  .services__price .services__price__item__title {
    margin-bottom: 3.6rem; }
  .services__price .services__price__item__info {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .services__price .services__price__item__info .icon {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 2.5rem;
      height: 2.5rem;
      margin-right: 1rem; }
      .services__price .services__price__item__info .icon svg, .services__price .services__price__item__info .icon img {
        width: 100%;
        height: 100%; }
  .services__price .rows__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: calc(100% + 1rem);
    margin: -0.5rem; }
  .services__price .column__info {
    width: calc(100% / 2 - 1rem);
    margin: 0.5rem; }
  .services__price .subtitle__info {
    color: var(--list-grey);
    margin-bottom: 1rem;
    font-size: 1.4rem;
    display: block; }
  .services__price .btn__box {
    margin-top: 2.6rem; }
    .services__price .btn__box a {
      width: 100%; }
  .services__price .subtitle__info__box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQ2pCLGtDQUFrQztBQWNsQyxzQ0FBc0M7QUFFdEM7RUFFUSxvQkFBbUI7RUFDbkIseUJBQXdCLEVBQzNCOztBQUdMO0VBR1Esb0JBQW1CO0VBQ25CLHlCQUF3QixFQUMzQjs7QUFHTDtFQUVJLGlEQUFnRDtFQUNoRCxzQkFBcUIsRUFpQnhCO0VBcEJEO0lBT1EsY0FBYSxFQUNoQjtFQVJMO0lBV1EseUJBQXdCLEVBQzNCO0VBWkw7SUFlUSxxQ0FBb0M7SUFDcEMsc0NBQXFDO0lBQ3JDLHlCQUF3QjtJQUN4QixpQkFBZ0IsRUFDbkI7O0FBR0w7RUFDSSxtQ0FBYztFQUdkLDRDQUFpQjtFQUNqQixpQkFBUTtFQUNSLGlCQUFRO0VBQ1Isa0NBQWM7RUFDZCx3QkFBZTtFQUNmLHlCQUFRO0VBQ1Isc0JBQWE7RUFDYiwyQkFBUztFQUNULGlDQUFlO0VBQ2YsMkNBQW9CO0VBQ3BCLCtCQUFjO0VBQ2QsMkJBQU87RUFDUCxnQkFBTztFQUNQLGdDQUFZO0VBQ1osNEJBQW1CO0VBQ25CLHNFQUFxQixFQUN4Qjs7QUFFRDtFQUVJLGdDQUErQixFQUNsQzs7QUFFRDtFQXZFSSxrQkFEbUI7RUFFbkIsaUJBRjZCO0VBRzdCLGlCQUh1QztFQTBFdkMsZ0NBQStCO0VBQy9CLGlCQUFnQjtFQUNoQix5QkFBd0IsRUFDM0I7O0FBRUQ7RUFDSSxvQkFBbUIsRUFDdEI7O0FBRUQ7RUFrQkksb0JBQW1CLEVBQ3RCO0VBbkJEOzs7Ozs7SUFPUSxvQkFBbUIsRUFDdEI7RUFSTDtJQVVRLG9CQUFtQixFQUl0QjtFQWRMO0lBZ0JRLG9CQUFtQixFQUN0Qjs7QUFJTDs7Ozs7O0VBTUksZ0NBQStCO0VBRS9CLDBCQUF5QixFQUk1QjtFQVpEOzs7Ozs7SUFVUSxvQkFBbUIsRUFDdEI7O0FBRUw7RUFDSSxtQkFBa0IsRUFDckI7O0FBRUQ7RUF4SEksa0JBMEhvQjtFQXpIcEIsaUJB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LGFBQVk7TUFDWixZQUFXLEVBQ2Q7RUF6Q1Q7SUE2Q1Esc0JBQXFCLEVBQ3hCO0VBOUNMO0lBZ0RRLG9CQUFPO0lBQVAsZ0JBQU87UUFBUCxZQUFPO1lBQVAsUUFBTyxFQWNWO0lBOURMO01BbURZLHFCQUFhO01BQWIsc0JBQWE7TUFBYixxQkFBYTtNQUFiLGNBQWE7TUFDYixjQUFhO01BQ2IsZUFBYztNQUNkLG1CQUFrQixFQUtyQjtNQTNEVDtRQXdEZ0IsWUFBVztRQUNYLGFBQVksRUFDZjtFQTFEYjtJQWdFUSxxQkFBYTtJQUFiLHNCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhO0lBQ2IsMEJBQThCO0lBQTlCLHVDQUE4QjtRQUE5Qix1QkFBOEI7WUFBOUIsK0JBQThCO0lBQzlCLHlCQUF3QjtJQUN4QixnQkFBZSxFQUNsQjtFQXBFTDtJQXNFUSw2QkFBNEI7SUFDNUIsZUFBYyxFQUNqQjtFQXhFTDtJQTRFUSx3QkFBdUI7SUFDdkIsb0JBQW1CO0lBRW5CLGtCQUFpQjtJQUNqQixlQUFjLEVBQ2pCO0VBakZMO0lBdUZRLG1CQUFrQixFQUlyQjtJQTNGTDtNQXlGWSxZQUFXLEVBQ2Q7RUExRlQ7SUE2RlEscUJBQWE7SUFBYixzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYSxFQUNoQiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiAtLS0tLS0tLS0tIG1peGlucyAtLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tIHR5cG9ncmFwaHkgLS0tLS0tLS0tLSAqL1xuKjo6LW1vei1zZWxlY3Rpb24ge1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7IH1cblxuKjo6LXdlYmtpdC1zZWxlY3Rpb24sICo6OnNlbGVjdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTsgfVxuXG4qIHtcbiAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS13aGl0ZS1saWdodCkgdmFyKC0td2hpdGUpO1xuICBzY3JvbGxiYXItd2lkdGg6IHRoaW47IH1cbiAgKjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAwLjZyZW07IH1cbiAgKjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTsgfVxuICAqIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlLWxpZ2h0KTtcbiAgICBvdXRsaW5lOiAwcHggc29saWQgdmFyKC0td2hpdGUtbGlnaHQpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbjpyb290IHtcbiAgLS1mb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuICAtLWJnLWlucHV0LXdoaXRlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpO1xuICAtLXdoaXRlOiAjZmZmZmZmO1xuICAtLWJsYWNrOiAjMDAwMDAwO1xuICAtLXdoaXRlLWxpZ2h0OiByZ2IoMjI0LCAyMjQsIDIyNCk7XG4gIC0tYWNjZW50LWNvbG9yOiAjZjNmNmY1O1xuICAtLWdyZWVuOiByZ2IoMzUsIDkzLCA1Nyk7XG4gIC0tdGV4dC1jb2xvcjogIzM1M2M0MztcbiAgLS15ZWxsb3c6IHJnYigyNTUsIDIwNiwgMCk7XG4gIC0teWVsbG93LWhvdmVyOiByZ2IoMjA0LCAxNjUsIDApO1xuICAtLXBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKDUzLCA2MCwgNjcsIDAuNik7XG4gIC0tdGl0bGUtY29sb3I6IHJnYigzMSwgNDQsIDYyKTtcbiAgLS1ncmV5OiByZ2IoMTA2LCAxMTMsIDEyMSk7XG4gIC0tYmx1ZTogIzAwNWJhYztcbiAgLS1saXN0LWdyZXk6IHJnYigxMzQsIDEzNCwgMTM0KTtcbiAgLS1kYXJrLXNoYWRlLWNvbG9yOiAjMjEyNzM2O1xuICAtLWxpbmVhci1ncmFkaWVudC1iZzogbGluZWFyLWdyYWRpZW50KDBkZWcsICNmZmZmZmYgMCUsICNmM2Y2ZjUgMTAwJSk7IH1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7IH1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7IH1cblxuLmJhc2UtYm90dG9tLW1hcmdpbiwgcCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLnRleHRfX3doaXRlIHtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTsgfVxuICAudGV4dF9fd2hpdGUgaDEsXG4gIC50ZXh0X193aGl0ZSBoMixcbiAgLnRleHRfX3doaXRlIGgzLFxuICAudGV4dF9fd2hpdGUgaDQsXG4gIC50ZXh0X193aGl0ZSBoNSxcbiAgLnRleHRfX3doaXRlIGg2IHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpOyB9XG4gIC50ZXh0X193aGl0ZSBhIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpOyB9XG4gIC50ZXh0X193aGl0ZSAuc3VidGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTsgfVxuICBoMSBzcGFuLFxuICBoMiBzcGFuLFxuICBoMyBzcGFuLFxuICBoNCBzcGFuLFxuICBoNSBzcGFuLFxuICBoNiBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pOyB9XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiA0LjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuaDIge1xuICBmb250LXNpemU6IDQuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMy42cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAyLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1OyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ4OyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi5zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxucCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5saXN0X19zdHlsZSB1bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG4gIHBhZGRpbmctbGVmdDogMi4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjRyZW07IH1cblxuYSxcbmJ1dHRvbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICBjb2xvcjogdmFyKC0tZ3JheSk7IH1cblxuYmxvY2txdW90ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBibG9ja3F1b3RlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCcXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cbiAgYmxvY2txdW90ZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oCdXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cblxuZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgZm9ybSBpbnB1dCxcbiAgZm9ybSBzZWxlY3Qge1xuICAgIG1pbi1oZWlnaHQ6IDVyZW07XG4gICAgaGVpZ2h0OiA1cmVtOyB9XG4gIGZvcm0gaW5wdXQsXG4gIGZvcm0gc2VsZWN0LFxuICBmb3JtIHRleHRhcmVhIHtcbiAgICBwYWRkaW5nOiAxLjJyZW0gMi42cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHZhcigtLWFjY2VudC1jb2xvcik7IH1cbiAgICBmb3JtIGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuICAgIGZvcm0gc2VsZWN0OjotbW96LXBsYWNlaG9sZGVyLFxuICAgIGZvcm0gdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuICAgIGZvcm0gaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICBmb3JtIHNlbGVjdDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIGZvcm0gdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gICAgZm9ybSBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICBmb3JtIHNlbGVjdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICBmb3JtIHRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7IH1cbiAgICBmb3JtIGlucHV0OmZvY3VzLFxuICAgIGZvcm0gc2VsZWN0OmZvY3VzLFxuICAgIGZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ibHVlKTsgfVxuICBmb3JtIHNlbGVjdCB7XG4gICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuICAgIGZvcm0gc2VsZWN0IG9wdGlvbiB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4zMztcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7XG4gICAgICBjb2xvcjogdmFyKC0tcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gIGZvcm0gdGV4dGFyZWEge1xuICAgIG1pbi1oZWlnaHQ6IDE1cmVtO1xuICAgIGhlaWdodDogMTVyZW07IH1cbiAgZm9ybSBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zMztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjRyZW07XG4gICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuICBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwczsgfVxuXG4uZm9ybS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMi40cmVtOyB9XG5cbi8qIC0tLS0tLS0tLS0gY3VzdG9tIHNlbGVjdCAtLS0tLS0gKi9cbi5mb3JtLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50LWNvbG9yKTsgfVxuICAuZm9ybS1zZWxlY3Qgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTsgfVxuXG4uZm9ybS1zZWxlY3Q6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU9DSWdkbWxsZDBKdmVEMGlNQ0F3SURFMElEZ2lJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4bklHTnNhWEF0Y0dGMGFEMGlkWEpzS0NOamJHbHdNRjh5TVRFeFh6UTJLU0krQ2p4d1lYUm9JR1E5SWswM0xqY2dOeTQzVERFekxqY2dNUzQzUXpFMExqRWdNUzR6SURFMExqRWdNQzQzTURBd01ERWdNVE11TnlBd0xqTXdNREF3TVVNeE15NHpJQzB3TGpBNU9UazVPU0F4TWk0M0lDMHdMakE1T1RrNU9TQXhNaTR6SURBdU16QXdNREF4VERjZ05TNDJUREV1TnlBd0xqTkRNUzR6SUMwd0xqRWdNQzQzSUMwd0xqRWdNQzR6SURBdU0wTXdMakVnTUM0MUlEQWdNQzQzSURBZ01VTXdJREV1TXlBd0xqRWdNUzQxSURBdU15QXhMamRNTmk0eklEY3VOME0yTGpVZ055NDVJRFl1T0NBNElEY2dPRU0zTGpNZ09DQTNMalVnTnk0NUlEY3VOeUEzTGpkYUlpQm1hV3hzUFNJak16VXpRelF6SWlCbWFXeHNMVzl3WVdOcGRIazlJakF1TlRReE1UYzJJaTgrQ2p3dlp6NEtQR1JsWm5NK0NqeGpiR2x3VUdGMGFDQnBaRDBpWTJ4cGNEQmZNakV4TVY4ME5pSStDanh5WldOMElIZHBaSFJvUFNJeE5DSWdhR1ZwWjJoMFBTSTRJaUJtYVd4c1BTSjNhR2wwWlNJdlBnbzhMMk5zYVhCUVlYUm9QZ284TDJSbFpuTStDand2YzNablBnbz1cIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxLjRyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMC44cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxLjVyZW07XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDA7IH1cblxuLyogLS0tLS0tLS0tLS0gY2hlY2tib3ggLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLSByYWRpbyAtLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tIGJ0biAtLS0tLS0tLS0tICovXG4uY29udGFjdF9fYnRuX19maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNHJlbTsgfVxuXG4uY29udGFjdF9fYnRuX19maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogNHJlbTsgfVxuICAuY29udGFjdF9fYnRuX19maXhlZCBhIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uYnRuX19maXhlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiA0cmVtO1xuICBib3JkZXItcmFkaXVzOiAxcmVtIDFyZW0gMCAwO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgdmFyKC0td2hpdGUpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmJ0bl9fZml4ZWQ6OmJlZm9yZSwgLmJ0bl9fZml4ZWQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwczsgfVxuICAuYnRuX19maXhlZDpob3ZlciwgLmJ0bl9fZml4ZWQ6Zm9jdXMsIC5idG5fX2ZpeGVkOmFjdGl2ZSwgLmJ0bl9fZml4ZWQ6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5idG5fX2ZpeGVkOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTsgfVxuXG4uYnRuX19ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IC0xcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLmJ0bl9fYm94IGEsXG4gIC5idG5fX2JveCBidXR0b24sXG4gIC5idG5fX2JveCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubGlua19fYXJyb3cge1xuICBmb250LXNpemU6IDEuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDEuM3JlbSAyLjRyZW07XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBib3JkZXI6IDAuMnJlbSBzb2xpZCB2YXIoLS1ncmVlbik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbiwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4sIGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4sIGJveC1zaGFkb3cgMC4ycyBlYXNlLWluOyB9XG4gIC5idG46aG92ZXIsIC5idG46Zm9jdXMsIC5idG46YWN0aXZlLCAuYnRuOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pOyB9XG5cbi5idG5fX3llbGxvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDEuM3JlbSAyLjRyZW07XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBib3JkZXI6IDAuMnJlbSBzb2xpZCB2YXIoLS1ncmVlbik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbiwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4sIGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4sIGJveC1zaGFkb3cgMC4ycyBlYXNlLWluOyB9XG4gIC5idG5fX3llbGxvdzpob3ZlciwgLmJ0bl9feWVsbG93OmZvY3VzLCAuYnRuX195ZWxsb3c6YWN0aXZlLCAuYnRuX195ZWxsb3c6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmJ0bl9feWVsbG93OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTsgfVxuXG4uYnRuX190cl9fd2hpdGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxLjNyZW0gMi40cmVtO1xuICBtaW4taGVpZ2h0OiA1cmVtO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBib3JkZXI6IDAuMnJlbSBzb2xpZCB2YXIoLS13aGl0ZSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbiwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4sIGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4sIGJveC1zaGFkb3cgMC4ycyBlYXNlLWluOyB9XG4gIC5idG5fX3RyX193aGl0ZTpob3ZlciwgLmJ0bl9fdHJfX3doaXRlOmZvY3VzLCAuYnRuX190cl9fd2hpdGU6YWN0aXZlLCAuYnRuX190cl9fd2hpdGU6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmJ0bl9fdHJfX3doaXRlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpOyB9XG5cbi5jdXN0b21fX2xpc3QgdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7XG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTsgfVxuICAuY3VzdG9tX19saXN0IHVsIGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY2hlY2staWNvbi5zdmdcIik7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgbWluLXdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICB0b3A6IDAuMnJlbTtcbiAgICBsZWZ0OiAwOyB9XG5cbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5yb3dzIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAucm93cyAuY29sdW1uIHtcbiAgICB3aWR0aDogNTAlOyB9XG5cbi5pbWdfX2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pbWdfX2JveCBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwczsgfVxuICAuaW1nX19ib3ggaWZyYW1lLFxuICAuaW1nX19ib3ggdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xOyB9XG4gIC5vdmVybGF5IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5lbGVtZW50X19iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDsgfVxuICAuZWxlbWVudF9fYmcgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLnNsaWNrLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBmb250LXNpemU6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1vcmFuZ2UtMik7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzOyB9XG4gIC5zbGljay1hcnJvdyBzdmcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1hcnJvdzo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTsgfVxuICAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW9yYW5nZSk7IH1cbiAgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0zcmVtOyB9XG4gICAgLnNsaWNrLWFycm93LnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgLnNsaWNrLWFycm93LnNsaWNrLXByZXYgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpOyB9XG4gIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTNyZW07IH1cbiAgICAuc2xpY2stYXJyb3cuc2xpY2stbmV4dDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5zbGljay1kb3RzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0ycmVtO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgbWFyZ2luOiAwIDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCB2YXIoLS1ncmVlbik7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMDsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5zbGljay1zbGlkZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbm1haW4ge1xuICBwYWRkaW5nLXRvcDogMTcuOHJlbTsgfVxuXG4ud3BjZjcgZm9ybS5pbnZhbGlkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgZm9ybS51bmFjY2VwdGVkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgZm9ybS5wYXltZW50LXJlcXVpcmVkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDEuMnJlbSAwIDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiByZWQgIWltcG9ydGFudDsgfVxuXG4ud3BjZjcgZm9ybSAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAxLjJyZW0gMCAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYWJhY3VzLWJsdWUpICFpbXBvcnRhbnQ7IH1cblxuLndwY2Y3LXNwaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtYXJnaW46IDA7IH1cblxuLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAtMC41cmVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLSBtb2RhbF9fd2luZG93IC0tLS0tLS0tLS0tLSAqL1xuLm1vZGFsX193aW5kb3cge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTAwMDtcbiAgcGFkZGluZzogMCAycmVtOyB9XG4gIC5tb2RhbF9fd2luZG93OjphZnRlciwgLm1vZGFsX193aW5kb3c6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1vZGFsX193aW5kb3cubW9kYWwtc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5tb2RhbF9fd2luZG93IGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1vZGFsX193aW5kb3cgLm1vZGFsX193aW5kb3dfX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLm1vZGFsX193aW5kb3cgLm1vZGFsX193aW5kb3dfX3dyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjRyZW07XG4gICAgcGFkZGluZzogNnJlbSAzcmVtO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogNzByZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAubW9kYWxfX3dpbmRvdyAubW9kYWxfX3dpbmRvd19jbG9zZSB7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMS42cmVtO1xuICAgIHRvcDogMS42cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5tb2RhbF9fd2luZG93IC5tb2RhbF9fd2luZG93X2Nsb3NlOjphZnRlciwgLm1vZGFsX193aW5kb3cgLm1vZGFsX193aW5kb3dfY2xvc2U6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXJhZGl1czogMi42cmVtO1xuICAgICAgd2lkdGg6IDAuMnJlbTtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5tb2RhbF9fd2luZG93IC5tb2RhbF9fd2luZG93X2Nsb3NlOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpOyB9XG4gICAgLm1vZGFsX193aW5kb3cgLm1vZGFsX193aW5kb3dfY2xvc2U6OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tIGhlYWRlciAtLS0tLS0tLS0gKi9cbi5oZWFkZXIge1xuICBoZWlnaHQ6IDE3LjhyZW07XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgLmhlYWRlci5zdGlja3ksIC5oZWFkZXIuc2hvdyB7XG4gICAgYmFja2dyb3VuZDogIzM1M2M0MyA1My40NCUgNzEuMTglICFpbXBvcnRhbnQ7IH1cbiAgLmhlYWRlciAuaGVhZGVyX19ib3hfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzOyB9XG4gIC5oZWFkZXIgLm5hdi1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogY2FsYygxMDBkdmggLSA5LjdyZW0pO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA5LjdyZW07XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDsgfVxuICAgIC5oZWFkZXIgLm5hdi1vdmVybGF5LnNob3cge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmhlYWRlciAuY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmhlYWRlciAuaGVhZGVyX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMi40cmVtIDA7IH1cbiAgLmhlYWRlciAubWFpbl9fbmF2X19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuaGVhZGVyIC5oZWFkZXJfX2xvZ28ge1xuICAgIG1heC13aWR0aDogMTJyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi13aWR0aDogMTJyZW07IH1cbiAgICAuaGVhZGVyIC5oZWFkZXJfX2xvZ28gaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5oZWFkZXIgLmhlYWRlcl9fbGVmdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9XG4gIC5oZWFkZXIgLmhlYWRlcl9fcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuaGVhZGVyIC5tYWluX19uYXYge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5oZWFkZXIgLnN1Yl9fbWVudSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5oZWFkZXIgLm1haW5fX25hdl9fYnRuX19yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5oZWFkZXIgLmhlYWRlcl9fYnRuIHtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgbWluLXdpZHRoOiA1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5oZWFkZXIgLmhlYWRlcl9fYnRuIHN2ZyB7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIG1pbi13aWR0aDogMnJlbTsgfVxuICAuaGVhZGVyIC5oZWFkZXJfX2J0bl9fd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNHJlbTsgfVxuICAuaGVhZGVyIC5jYXJ0X19idG5fX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmhlYWRlciAubWFpbl9fbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmhlYWRlciAubWFpbl9fbWVudSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuaGVhZGVyIC5tYWluX19tZW51IGE6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0wLjVyZW07XG4gICAgICAgIGhlaWdodDogMC4ycmVtO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGg7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsgfVxuICAgICAgLmhlYWRlciAubWFpbl9fbWVudSBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIC5oZWFkZXIgLm1haW5fX21lbnUgYTpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5oZWFkZXIgLm1lbnUtaXRlbSB7XG4gICAgbWFyZ2luOiAxLjJyZW0gMC45cmVtOyB9XG4gICAgLmhlYWRlciAubWVudS1pdGVtIGEge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmhlYWRlciAubmF2X19idG5fX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG9yZGVyOiAtMTsgfVxuXG4ubGFuZ3VhZ2VfX2JvZHkge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYW5ndWFnZV9fYm9keSBsaSB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxhbmd1YWdlX19ib2R5IGxpOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAwLjFyZW07XG4gICAgICBoZWlnaHQ6IDEuN3JlbTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7IH1cbiAgICAubGFuZ3VhZ2VfX2JvZHkgbGk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmxhbmd1YWdlX19ib2R5IGxpLmFjdGl2ZSBhLCAubGFuZ3VhZ2VfX2JvZHkgbGkuYWN0aXZlIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAubGFuZ3VhZ2VfX2JvZHkgYSwgLmxhbmd1YWdlX19ib2R5IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWFjY2VudC1jb2xvcik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5sYW5ndWFnZV9fYm9keSBhOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMC41cmVtO1xuICAgIGhlaWdodDogMC4ycmVtO1xuICAgIHdpZHRoOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsgfVxuICAubGFuZ3VhZ2VfX2JvZHkgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmxhbmd1YWdlX19ib2R5IGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5zb2NpYWxfX2xpc3QgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdyaWQtZ2FwOiAxLjlyZW07IH1cblxuLnNvY2lhbF9fbGlzdCBhIHtcbiAgd2lkdGg6IDMuMnJlbTtcbiAgbWluLXdpZHRoOiAzLjJyZW07XG4gIGhlaWdodDogMy4ycmVtO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5zb2NpYWxfX2xpc3QgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC45OyB9XG5cbi5zb2NpYWxfX2xpc3Qgc3ZnIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNvY2lhbF9fbGlzdCBzdmcgcGF0aCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzOyB9XG5cbi5tZW51X19jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNyZW07XG4gIHRvcDogMS42cmVtO1xuICBmb250LXNpemU6IDIuOHJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcbiAgei1pbmRleDogNTsgfVxuICAubWVudV9fY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1vcmFuZ2UpOyB9XG5cbi5oYW1idXJnZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMi44cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuaGFtYnVyZ2VyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uaGVhZGVyX190b3BfX2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTsgfVxuICAuaGVhZGVyX190b3BfX2JveCBhIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpOyB9XG5cbi50ZWxlcGhvbmVfX2JveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG4gIC50ZWxlcGhvbmVfX2JveCAudGVsZXBob25lX190aXRsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC50ZWxlcGhvbmVfX2JveCB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC50ZWxlcGhvbmVfX2JveCB1bCBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnRlbGVwaG9uZV9fYm94IHVsIGEgc3BhbiB7XG4gICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAgICAgLnRlbGVwaG9uZV9fYm94IHVsIGEgc3BhbiBzdmcsIC50ZWxlcGhvbmVfX2JveCB1bCBhIHNwYW4gaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnRlbGVwaG9uZV9fYm94IGEge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7IH1cblxuLmhhbWJ1cmdlciBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwLjNyZW07XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5oYW1idXJnZXIgc3BhbjpmaXJzdC1jaGlsZCB7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDAuM3MsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMC4zcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDAuM3MsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMHMsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwczsgfVxuXG4uaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgdG9wOiA1NSU7XG4gIG1hcmdpbi10b3A6IC0wLjNyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwczsgfVxuXG4uaGFtYnVyZ2VyIHNwYW46bGFzdC1jaGlsZCB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2UgMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlIDAuM3MsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlIDAuM3MsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2UgMC4zcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDBzOyB9XG5cbi5oYW1idXJnZXIuc2hvdyBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgdG9wOiAzOSU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3M7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMHMsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzO1xuICAtby10cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3M7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcbiAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4uaGFtYnVyZ2VyLnNob3cgc3BhbjpudGgtY2hpbGQoMikge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oYW1idXJnZXIuc2hvdyBzcGFuOmxhc3QtY2hpbGQge1xuICBib3R0b206IDQ5JTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3M7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zczsgfVxuXG4uYnRuX19tb3JlX19ib29rcyxcbi5idG5fX2Nsb3NlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5idG5fX21vcmVfX2Jvb2tzLnNob3cgaTo6YmVmb3JlLFxuICAuYnRuX19jbG9zZS5zaG93IGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiOyB9XG5cbi5idG5fX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAxLjZyZW07XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7IH1cblxuLmJ0bl9faGVhZGVyX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg4N3B4KSB7XG4gIC5tb2Ige1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaGFtYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4ODZweCkge1xuICAuZGVzayB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLyogLS0tLS0tLS0tLS0tLS0gaGVybyAtLS0tLS0tLS0gKi9cbi5hYm91dF9fc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDZyZW0gMCA0cmVtOyB9XG4gIC5hYm91dF9fc2VjdGlvbiBoMSB7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gICAgLmFib3V0X19zZWN0aW9uIGgxIHNwYW4ge1xuICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTsgfVxuICAuYWJvdXRfX3NlY3Rpb24gaDYge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgY29sb3I6IHZhcigtLWdyZXkpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgLmFib3V0X19zZWN0aW9uIHAge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTsgfVxuICAuYWJvdXRfX3NlY3Rpb24gLmNvbHVtbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5hYm91dF9fc2VjdGlvbiAubGVmdCB7XG4gICAgd2lkdGg6IDM3LjYlOyB9XG4gIC5hYm91dF9fc2VjdGlvbiAucmlnaHQge1xuICAgIHdpZHRoOiA2Mi40JTtcbiAgICBwYWRkaW5nLWxlZnQ6IDZyZW07IH1cbiAgLmFib3V0X19zZWN0aW9uIC5jb250YWN0X193cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgcGFkZGluZzogMy4xcmVtIDAgMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5hYm91dF9fc2VjdGlvbiAuY29udGFjdF9fd3JhcHBlcjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMC4xcmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUtbGlnaHQpO1xuICAgICAgb3BhY2l0eTogMC40NTsgfVxuICAuYWJvdXRfX3NlY3Rpb24gLmNvbnRlbnRfX2JveCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5hYm91dF9fc2VjdGlvbiAuY29udGVudF9fYm94IGEge1xuICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLmFib3V0X19zZWN0aW9uIC5jb250ZW50X19ib3hfX3RleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuYWJvdXRfX3NlY3Rpb24gLmNvbnRlbnRfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDUuMXJlbTsgfVxuICAgIC5hYm91dF9fc2VjdGlvbiAuY29udGVudF9fdGV4dCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hYm91dF9fc2VjdGlvbiAuY29udGFjdF9faWNvbiB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgbWluLXdpZHRoOiA1cmVtO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXllbGxvdyk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07IH1cbiAgICAuYWJvdXRfX3NlY3Rpb24gLmNvbnRhY3RfX2ljb24gc3ZnIHtcbiAgICAgIHdpZHRoOiAyLjZyZW07XG4gICAgICBtaW4td2lkdGg6IDIuNnJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7IH1cbiAgICAgIC5hYm91dF9fc2VjdGlvbiAuY29udGFjdF9faWNvbiBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLWdyZWVuKTsgfVxuXG4vKiAtLS0tLS0tLS0gZGVsaXZlcnlfX3NlY3Rpb24gLS0tLS0tLS0tLSAqL1xuLmRlbGl2ZXJ5X19zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGluZWFyLWdyYWRpZW50LWJnKTtcbiAgcGFkZGluZzogNHJlbSAwOyB9XG4gIC5kZWxpdmVyeV9fc2VjdGlvbiAuc2VjdGlvbl9faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuZGVsaXZlcnlfX3NlY3Rpb24gLnNlY3Rpb25fX2hlYWRlciBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmRlbGl2ZXJ5X19zZWN0aW9uIC5zZWN0aW9uX19ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtOyB9XG4gICAgLmRlbGl2ZXJ5X19zZWN0aW9uIC5zZWN0aW9uX19ib2R5IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgICAuZGVsaXZlcnlfX3NlY3Rpb24gLnNlY3Rpb25fX2JvZHkgcCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pOyB9XG4gICAgLmRlbGl2ZXJ5X19zZWN0aW9uIC5zZWN0aW9uX19ib2R5IHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgLmRlbGl2ZXJ5X19zZWN0aW9uIC50YWJzX19pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZGVsaXZlcnlfX3NlY3Rpb24gLnRhYnNfX2l0ZW1zOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAwLjFyZW07XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgb3BhY2l0eTogMC4xMjU7IH1cbiAgLmRlbGl2ZXJ5X19zZWN0aW9uIC50YWJzX19pdGVtIHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ0O1xuICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmRlbGl2ZXJ5X19zZWN0aW9uIC50YWJzX19pdGVtIHNwYW4ge1xuICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgIG1pbi13aWR0aDogMi41cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTsgfVxuICAgICAgLmRlbGl2ZXJ5X19zZWN0aW9uIC50YWJzX19pdGVtIHNwYW4gc3ZnIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5kZWxpdmVyeV9fc2VjdGlvbiAudGFic19faXRlbTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwLjJyZW07XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgLmRlbGl2ZXJ5X19zZWN0aW9uIC50YWJzX19pdGVtLmFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuZGVsaXZlcnlfX3NlY3Rpb24gLnRhYnNfX2l0ZW0uYWN0aXZlOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAuZGVsaXZlcnlfX3NlY3Rpb24gLnRhYnNfX2l0ZW06aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuZGVsaXZlcnlfX3NlY3Rpb24gLnRhYnNfX2JvZHlfX2l0ZW1zIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXI6IDAuMnJlbSBzb2xpZCB2YXIoLS1hY2NlbnQtY29sb3IpOyB9XG4gIC5kZWxpdmVyeV9fc2VjdGlvbiAuaW1nX19ib3gge1xuICAgIHBhZGRpbmctdG9wOiAxMDQuNDYlOyB9XG4gIC5kZWxpdmVyeV9fc2VjdGlvbiAucmlnaHQge1xuICAgIHBhZGRpbmc6IDRyZW0gM3JlbTsgfVxuICAuZGVsaXZlcnlfX3NlY3Rpb24gLmJ0bl9fYm94IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICBwYWRkaW5nLXRvcDogNC42cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5kZWxpdmVyeV9fc2VjdGlvbiAuYnRuX19ib3g6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAwLjFyZW07XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAxcmVtO1xuICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG4gICAgICBvcGFjaXR5OiAwLjEzOyB9XG5cbi8qIC0tLS0tLS0tLS0tIGNvbnRhY3RfX3VzX19iYW5uZXIgLS0tLS0tLS0tLS0gKi9cbi5jb250YWN0X191c19fYmFubmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICBwYWRkaW5nOiA0cmVtIDAgNHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jb250YWN0X191c19fYmFubmVyIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuY29udGFjdF9fdXNfX2Jhbm5lciBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gIC5jb250YWN0X191c19fYmFubmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgIG1heC13aWR0aDogODlyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNvbnRhY3RfX3VzX19iYW5uZXIgLmJ0bl9fYm94IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA0LjVyZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLSBsb2dpc3RpY3NfX3NlY3Rpb24gLS0tLS0tLS0tLS0tICovXG4ubG9naXN0aWNzX19zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGl0bGUtY29sb3IpO1xuICBwYWRkaW5nOiA0cmVtIDA7IH1cbiAgLmxvZ2lzdGljc19fc2VjdGlvbiAuc3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmxvZ2lzdGljc19fc2VjdGlvbiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gIC5sb2dpc3RpY3NfX3NlY3Rpb24gcCB7XG4gICAgZm9udC1zaXplOiAxLjlyZW07XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxvZ2lzdGljc19fc2VjdGlvbiAuc2VjdGlvbl9faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubG9naXN0aWNzX19zZWN0aW9uIC5zZWN0aW9uX19oZWFkZXIgcCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5sb2dpc3RpY3NfX3NlY3Rpb24gLnNlY3Rpb25fX2JvZHkge1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgcGFkZGluZzogMCAxLjVyZW07IH1cbiAgLmxvZ2lzdGljc19fc2VjdGlvbiAubG9naXN0aWNzX19jb250YWN0cyB7XG4gICAgbWFyZ2luLXRvcDogNS41cmVtOyB9XG4gICAgLmxvZ2lzdGljc19fc2VjdGlvbiAubG9naXN0aWNzX19jb250YWN0cyBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAubG9naXN0aWNzX19zZWN0aW9uIC5sb2dpc3RpY3NfX2NvbnRhY3RzIGEge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAubG9naXN0aWNzX19zZWN0aW9uIC5sb2dpc3RpY3NfX2NvbnRhY3RzIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmxvZ2lzdGljc19faXRlbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogLTEuNXJlbSAwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLmxvZ2lzdGljc19faXRlbXMgLmxvZ2lzdGljc19faXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpOyB9XG5cbi5sb2dpc3RpY3NfX2l0ZW0ge1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubG9naXN0aWNzX19pdGVtIC5pbWdfX2JveCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgaGVpZ2h0OiAzNC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDM0LjVyZW07IH1cbiAgLmxvZ2lzdGljc19faXRlbSAubG9naXN0aWNzX19pdGVtX19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxvZ2lzdGljc19faXRlbSAubG9naXN0aWNzX19pdGVtX19jb250ZW50IHAge1xuICAgICAgZmxleDogMTsgfVxuICAubG9naXN0aWNzX19pdGVtIC5idG5fX2JveCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMS43cmVtOyB9XG4gIC5sb2dpc3RpY3NfX2l0ZW0gLmxpbmsge1xuICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpOyB9XG4gIC5sb2dpc3RpY3NfX2l0ZW0gLmxvZ2lzdGljc19faXRlbV9faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA0cmVtIDNyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubG9naXN0aWNzX19pdGVtIC5sb2dpc3RpY3NfX2l0ZW1fX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgLmxvZ2lzdGljc19faXRlbSAubG9naXN0aWNzX19pdGVtX19vdmVybGF5IGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5sb2dpc3RpY3NfX2l0ZW0gLmxvZ2lzdGljc19faXRlbV9fb3ZlcmxheTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDMxLCA0NCwgNjIsIDAuOSkgMCUsIHJnYmEoNTMsIDYwLCA2NywgMC4xMSkgMTAwJSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDsgfVxuICAubG9naXN0aWNzX19pdGVtIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5sb2dpc3RpY3NfX2l0ZW0gcCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUtbGlnaHQpOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0gc2VydmljZXMgLS0tLS0tLS0tLSAqL1xuLnNlcnZpY2VzIHtcbiAgcGFkZGluZzogNHJlbSAwOyB9XG4gIC5zZXJ2aWNlcyAuc2VjdGlvbl9faGVhZGVyIHAge1xuICAgIGNvbG9yOiB2YXIoLS1ncmV5KTtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2VydmljZXMgLmNvbHVtbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zZXJ2aWNlcyAubGVmdCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5zZXJ2aWNlcyAuc3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7IH1cbiAgLnNlcnZpY2VzIC5yaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07IH1cbiAgLnNlcnZpY2VzIC5zZWN0aW9uX19ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtOyB9XG4gIC5zZXJ2aWNlcyAuc2VydmljZXNfX2Zvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogNS41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zZXJ2aWNlcyAuc2VydmljZXNfX2Zvb3RlciBwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmV5KTtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyOyB9XG4gIC5zZXJ2aWNlcyAuYnRuX19ib3gge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zZXJ2aWNlcyAubGlua19fYXJyb3cge1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLnNlcnZpY2VzX19pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAtMnJlbSAwOyB9XG4gIC5zZXJ2aWNlc19faXRlbXMgLnNlcnZpY2VzX19pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7IH1cblxuLnNlcnZpY2VzX19zbGlkZXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5zZXJ2aWNlc19faXRlbSB7XG4gIHBhZGRpbmc6IDJyZW07IH1cbiAgLnNlcnZpY2VzX19pdGVtIC5pbWdfX2JveCB7XG4gICAgcGFkZGluZy10b3A6IDY4Ljg2JTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5zZXJ2aWNlc19faXRlbSBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuc2VydmljZXNfX2l0ZW0gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTsgfVxuXG4vKiAtLS0tLS0tLS0tLSBzZXJ2aWNlczIgLS0tLS0tLS0tLSAqL1xuLnNlcnZpY2VzMiB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50LWNvbG9yKTsgfVxuICAuc2VydmljZXMyIC5zZWN0aW9uX19oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zZXJ2aWNlczIgLnNlY3Rpb25fX2hlYWRlciBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgLnNlcnZpY2VzMiAuc2VjdGlvbl9faGVhZGVyIHAge1xuICAgICAgY29sb3I6IHZhcigtLWdyZXkpO1xuICAgICAgZm9udC1zaXplOiAxLjlyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAuc2VydmljZXMyIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuc2VydmljZXMyIC5zZWN0aW9uX19ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtOyB9XG5cbi5zZXJ2aWNlczJfX2l0ZW1zIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDNyZW0pO1xuICBtYXJnaW46IC0xLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc2VydmljZXMyX19pdGVtcyAuc2VydmljZXMyX19pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDNyZW0pO1xuICAgIG1hcmdpbjogMS41cmVtOyB9XG5cbi5zZXJ2aWNlczJfX2l0ZW0gLnNlcnZpY2VzMl9faXRlbV9faW5uZXIge1xuICBwYWRkaW5nOiAxcmVtIDAuNXJlbTsgfVxuXG4uc2VydmljZXMyX19pdGVtIC5zZXJ2aWNlczJfX2l0ZW1fX2ljb24ge1xuICB3aWR0aDogN3JlbTtcbiAgbWluLXdpZHRoOiA3cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5zZXJ2aWNlczJfX2l0ZW0gLnNlcnZpY2VzMl9faXRlbV9faWNvbiBzdmcsXG4gIC5zZXJ2aWNlczJfX2l0ZW0gLnNlcnZpY2VzMl9faXRlbV9faWNvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnNlcnZpY2VzMl9faXRlbSAuc2VydmljZXMyX19pdGVtX19pY29uIHN2ZyBwYXRoLFxuICAgIC5zZXJ2aWNlczJfX2l0ZW0gLnNlcnZpY2VzMl9faXRlbV9faWNvbiBpbWcgcGF0aCB7XG4gICAgICBmaWxsOiB2YXIoLS1ncmVlbik7IH1cblxuLnNlcnZpY2VzMl9faXRlbSBoNSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLnNlcnZpY2VzMl9faXRlbSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7IH1cblxuLyogLS0tLS0tLS0tLSBzZXJ2aWNlc19faW5mbyAtLS0tLS0tLS0tLS0gKi9cbi5zZXJ2aWNlc19faW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTMuNXJlbSAwIDkuNXJlbTsgfVxuICAuc2VydmljZXNfX2luZm8gLnBhcmFsYXhfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2Utb3V0OyB9XG4gIC5zZXJ2aWNlc19faW5mbyAucGFyYWxheCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlLCAwJSAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCByZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZCwgc2Nyb2xsO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMHB4O1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveCwgcGFkZGluZy1ib3g7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94LCBib3JkZXItYm94O1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMHB4KTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC0tZml4ZWQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAtLWZpeGVkLWJhY2tncm91bmQtY29sb3I6ICMzNTNjNDM7XG4gICAgLS1maXhlZC10cmFuc2Zvcm06IG5vbmU7XG4gICAgLS1maXhlZC1maWx0ZXI6IHVuZGVmaW5lZDsgfVxuICAgIC5zZXJ2aWNlc19faW5mbyAucGFyYWxheDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLWZpeGVkLXRyYW5zZm9ybSwgbm9uZSk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1maXhlZC1iYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc3BhcmVudCk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tZml4ZWQtYmFja2dyb3VuZC1zaXplLCBjb3Zlcik7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gICAgICBmaWx0ZXI6IHZhcigtLWZpeGVkLWZpbHRlciwgbm9uZSk7IH1cbiAgLnNlcnZpY2VzX19pbmZvIC5wYXJhbGF4X19vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDMxLCA0NCwgNjIsIDAuOSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDsgfVxuICAuc2VydmljZXNfX2luZm8gLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLnNlcnZpY2VzX19pbmZvIC5yb3dzIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtOyB9XG4gICAgLnNlcnZpY2VzX19pbmZvIC5yb3dzOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnNlcnZpY2VzX19pbmZvIC5sZWZ0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgICAuc2VydmljZXNfX2luZm8gLmxlZnQgLmNvbnRlbnRfX3NpZGUge1xuICAgICAgbWF4LXdpZHRoOiA0N3JlbTsgfVxuICAgIC5zZXJ2aWNlc19faW5mbyAubGVmdCBwIHtcbiAgICAgIG1heC13aWR0aDogMzhyZW07IH1cbiAgLnNlcnZpY2VzX19pbmZvIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuc2VydmljZXNfX2luZm8gLnJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuICAuc2VydmljZXNfX2luZm8gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2VydmljZXNfX2luZm9fX2l0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDNyZW0pO1xuICBtYXJnaW46IC0xLjVyZW07XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc2VydmljZXNfX2luZm9fX2l0ZW1zIC5zZXJ2aWNlc19faW5mb19faXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAzcmVtKTtcbiAgICBtYXJnaW46IDEuNXJlbTsgfVxuXG4uc2VydmljZXNfX2luZm9fX2l0ZW0gLnNlcnZpY2VzX19pbmZvX19pdGVtX19pY29uIHtcbiAgd2lkdGg6IDVyZW07XG4gIG1pbi13aWR0aDogNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAuc2VydmljZXNfX2luZm9fX2l0ZW0gLnNlcnZpY2VzX19pbmZvX19pdGVtX19pY29uIHN2ZyxcbiAgLnNlcnZpY2VzX19pbmZvX19pdGVtIC5zZXJ2aWNlc19faW5mb19faXRlbV9faWNvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5zZXJ2aWNlc19faW5mb19faXRlbSAuc2VydmljZXNfX2luZm9fX2l0ZW1fX251bWJlciB7XG4gIGZvbnQtc2l6ZTogMy42cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAuc2VydmljZXNfX2luZm9fX2l0ZW0gLnNlcnZpY2VzX19pbmZvX19pdGVtX19udW1iZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNS4xcmVtO1xuICAgIGhlaWdodDogMC4zcmVtO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0gZmFxX19zZWN0aW9uIC0tLS0tLS0tLS0tLS0tLSAqL1xuLmZhcV9fc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgcGFkZGluZzogNXJlbSAwIDRyZW07IH1cbiAgLmZhcV9fc2VjdGlvbiAuY29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmZhcV9fc2VjdGlvbiAubGVmdCB7XG4gICAgd2lkdGg6IDQxLjQ1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgICAuZmFxX19zZWN0aW9uIC5sZWZ0IGg1IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAuZmFxX19zZWN0aW9uIC5sZWZ0IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmV5KTsgfVxuICAuZmFxX19zZWN0aW9uIC5mb3JtX193cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgcGFkZGluZzogNHJlbTsgfVxuICAuZmFxX19zZWN0aW9uIC5mb3JtX19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjJyZW07IH1cbiAgLmZhcV9fc2VjdGlvbiAuZm9ybS1idG4ge1xuICAgIG1hcmdpbi10b3A6IDhyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mYXFfX3NlY3Rpb24gLmJ0bl9feWVsbG93IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZmFxX19zZWN0aW9uIC5yaWdodCB7XG4gICAgd2lkdGg6IDU4LjU1JTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuICAuZmFxX19zZWN0aW9uIC5jb250ZW50X19ib3ggaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTsgfVxuICAuZmFxX19zZWN0aW9uIC5jb250ZW50X19ib3ggcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5mYXFfX3NlY3Rpb24gLnN1YnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5mYXFfX3NlY3Rpb24gLmZhcV9fc2VjdGlvbl9fZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5mYXFfX3NlY3Rpb24gLmZhcV9fc2VjdGlvbl9fZm9vdGVyIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogNC4ycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4uYWNjb3JkaW9uX19pdGVtIHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFjY29yZGlvbl9faXRlbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDAuMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgb3BhY2l0eTogMC4yO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLmFjY29yZGlvbl9faXRlbSAucXVlc3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmFjY29yZGlvbl9faXRlbSAucXVlc3Rpb24gaSB7XG4gICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgICAgLmFjY29yZGlvbl9faXRlbSAucXVlc3Rpb24gaTo6YWZ0ZXIsIC5hY2NvcmRpb25fX2l0ZW0gLnF1ZXN0aW9uIGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpOyB9XG4gICAgICAuYWNjb3JkaW9uX19pdGVtIC5xdWVzdGlvbiBpOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogMC4ycmVtO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2U7IH1cbiAgICAgIC5hY2NvcmRpb25fX2l0ZW0gLnF1ZXN0aW9uIGk6OmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAwLjJyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmFjY29yZGlvbl9faXRlbSAucXVlc3Rpb24ub3BlbmVkIGk6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDA7IH1cbiAgLmFjY29yZGlvbl9faXRlbSAuYW5zd2VyIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuXG4vKiAtLS0tLS0tLS0gZm9vdGVyIC0tLS0tLS0tLS0gKi9cbi5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aXRsZS1jb2xvcik7IH1cbiAgLmZvb3RlciAuZm9vdGVyX190b3Age1xuICAgIHBhZGRpbmc6IDhyZW0gMCA2cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fdG9wIC5jb2x1bW4ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQgLSAzcmVtKTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fdG9wOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDAuMXJlbTtcbiAgICAgIGJvdHRvbTogMC4xcmVtO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICAgICAgb3BhY2l0eTogMC4yOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX190b3AgUCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40MztcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpOyB9XG4gIC5mb290ZXIgLnJvd3Mge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzcmVtKTtcbiAgICBtYXJnaW46IC0xLjVyZW07IH1cbiAgLmZvb3RlciAuY29sdW1uIHtcbiAgICBtYXJnaW46IDEuNXJlbTsgfVxuICAuZm9vdGVyIC5oZWFkZXJfX2xvZ28ge1xuICAgIG1heC13aWR0aDogOS42cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNnJlbTsgfVxuICAgIC5mb290ZXIgLmhlYWRlcl9fbG9nbyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvb3RlciAuc29jaWFsX19saXN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogM3JlbTsgfVxuICAgIC5mb290ZXIgLnNvY2lhbF9fbGlzdCBhIHtcbiAgICAgIG1pbi13aWR0aDogMi41cmVtO1xuICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgIGhlaWdodDogMi41cmVtOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMi43cmVtOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19mb3JtIGlucHV0Om5vdChbdHlwZT1cInN1Ym1pdFwiXSkge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctaW5wdXQtd2hpdGUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1pbnB1dC13aGl0ZSk7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAgIC5mb290ZXIgLmZvb3Rlcl9fZm9ybSBpbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7IH1cbiAgICAgIC5mb290ZXIgLmZvb3Rlcl9fZm9ybSBpbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTsgfVxuICAgICAgLmZvb3RlciAuZm9vdGVyX19mb3JtIGlucHV0Om5vdChbdHlwZT1cInN1Ym1pdFwiXSk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTsgfVxuICAuZm9vdGVyIC5idG5fX3RyX193aGl0ZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvb3RlciAuZm9vdGVyX19jb250YWN0IHtcbiAgICBtYXJnaW4tdG9wOiA1LjhyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19jb250YWN0IHAge1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fY29udGFjdCBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpOyB9XG4gIC5mb290ZXIgLmZvb3Rlcl9fYm90dG9tIHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYm90dG9tIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5jb2x1bW4ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAzcmVtKTsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmZvb3RlciAuZm9vdGVyX19ib3R0b20gLnJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IGVuZDsgfVxuICAgIC5mb290ZXIgLmZvb3Rlcl9fYm90dG9tIC5sZWZ0IFAsXG4gICAgLmZvb3RlciAuZm9vdGVyX19ib3R0b20gLnJpZ2h0IFAge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDM7XG4gICAgICBjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTsgfVxuICAuZm9vdGVyIGg2IHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIC5mb290ZXIgaDY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDAuM3JlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiA2Ljc1cmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUtbGlnaHQpO1xuICAgICAgb3BhY2l0eTogMC4yNTsgfVxuICAuZm9vdGVyIC53aWRnZXQgYSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS40MztcbiAgICBjb2xvcjogdmFyKC0td2hpdGUtbGlnaHQpOyB9XG4gIC5mb290ZXIgLndpZGdldCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDM7IH1cblxuLyogLS0tLS0tLS0tLS0gbmV3c19fc2VjdGlvbiAtLS0tLS0tLS0tLS0gKi9cbi5uZXdzX19zZWN0aW9uIHtcbiAgcGFkZGluZzogMTByZW0gMDsgfVxuICAubmV3c19fc2VjdGlvbiAuc2VjdGlvbl9faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm5ld3NfX3NlY3Rpb24gLnNlY3Rpb25fX2JvZHkge1xuICAgIG1hcmdpbi10b3A6IDVyZW07IH1cbiAgLm5ld3NfX3NlY3Rpb24gaDEge1xuICAgIGZvbnQtc2l6ZTogNC44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7IH1cblxuLm5ld3NfX2l0ZW1zIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDMuOHJlbSk7XG4gIG1hcmdpbjogLTEuNnJlbSAtMS45cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLm5ld3NfX2l0ZW1zIC5uZXdzX19pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDMuOHJlbSk7XG4gICAgbWFyZ2luOiAxLjZyZW0gMS45cmVtOyB9XG5cbi5uZXdzX19pdGVtIC5pbWdfX2JveCB7XG4gIHBhZGRpbmctdG9wOiA2MCU7IH1cbiAgLm5ld3NfX2l0ZW0gLmltZ19fYm94IGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwOyB9XG5cbi5uZXdzX19pdGVtIC5uZXdzX19pdGVtX19jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4ubmV3c19faXRlbSBoNSB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS40MztcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYXJ0aWNsZV9fZGF0ZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS40MztcbiAgY29sb3I6IHZhcigtLWJsdWUpOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0gYXJ0aWNsZV9fc2VjdGlvbiAtLS0tLS0tLS0tLS0tICovXG4uYXJ0aWNsZV9fc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDMuMnJlbSAwIDYuNHJlbTsgfVxuICAuYXJ0aWNsZV9fc2VjdGlvbiBoMSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYXJ0aWNsZV9fc2VjdGlvbiBwIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTsgfVxuICAuYXJ0aWNsZV9fc2VjdGlvbiBoMSxcbiAgLmFydGljbGVfX3NlY3Rpb24gaDIsXG4gIC5hcnRpY2xlX19zZWN0aW9uIGgzLFxuICAuYXJ0aWNsZV9fc2VjdGlvbiBoNCxcbiAgLmFydGljbGVfX3NlY3Rpb24gaDUsXG4gIC5hcnRpY2xlX19zZWN0aW9uIGg2IHtcbiAgICBtYXJnaW46IDJyZW0gMCAyLjRyZW07XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpOyB9XG4gIC5hcnRpY2xlX19zZWN0aW9uIC5pbWdfX3dyYXBwZXIge1xuICAgIG1heC13aWR0aDogMTAwcmVtO1xuICAgIG1hcmdpbjogMCBhdXRvIDMuMnJlbTsgfVxuICAgIC5hcnRpY2xlX19zZWN0aW9uIC5pbWdfX3dyYXBwZXIgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5hcnRpY2xlX19zZWN0aW9uIC5jb250ZW50X193cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDcwcmVtO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5hcnRpY2xlX19zZWN0aW9uIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tIHByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiAtLS0tLS0tLS0tLSAqL1xuLnByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDEwcmVtIDA7IH1cbiAgLnByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7IH1cbiAgLnByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGgyLFxuICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGgzLFxuICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGg0LFxuICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGg1LFxuICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGg2IHtcbiAgICBtYXJnaW46IDJyZW0gMCAycmVtO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiBhIHtcbiAgICBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbiAgICAucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnByaXZhY3lfX3BvbGljeV9fc2VjdGlvbiB1bCB7XG4gICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7IH1cblxuLyogLS0tLS0tLS0tLS0gc2VjdGlvbl9fNDA0IC0tLS0tLS0tLS0gKi9cbi5zZWN0aW9uX180MDQge1xuICBwYWRkaW5nOiA5cmVtIDA7IH1cbiAgLnNlY3Rpb25fXzQwNCBoMSB7XG4gICAgZm9udC1zaXplOiAxNHJlbTsgfVxuICAuc2VjdGlvbl9fNDA0IC5idG5fX2JveCB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuc2VjdGlvbl9fNDA0IC5zZWN0aW9uX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogLS0tLS0tLS0tIHNlcnZpY2VzX19wcmljZSAtLS0tLS0tLS0gKi9cbi5zZXJ2aWNlc19fcHJpY2Uge1xuICBwYWRkaW5nOiA0cmVtIDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpbmVhci1ncmFkaWVudC1iZyk7IH1cbiAgLnNlcnZpY2VzX19wcmljZSAuc2VjdGlvbl9faGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlcnZpY2VzX19wcmljZSAuc2VjdGlvbl9fYm9keSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTsgfVxuICAuc2VydmljZXNfX3ByaWNlIC5zZXJ2aWNlc19fcHJpY2VfX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IC0xcmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAycmVtKTsgfVxuICAgIC5zZXJ2aWNlc19fcHJpY2UgLnNlcnZpY2VzX19wcmljZV9faXRlbXMgLnNlcnZpY2VzX19wcmljZV9faXRlbSB7XG4gICAgICBtYXJnaW46IDFyZW07XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDJyZW0pOyB9XG4gIC5zZXJ2aWNlc19fcHJpY2UgLnNlcnZpY2VzX19wcmljZV9faXRlbSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlcjogMC4ycmVtIHNvbGlkIHZhcigtLWFjY2VudC1jb2xvcik7XG4gICAgcGFkZGluZzogMy4ycmVtIDEuNnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnNlcnZpY2VzX19wcmljZSAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pY29uIHtcbiAgICB3aWR0aDogOHJlbTtcbiAgICBoZWlnaHQ6IDhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy42cmVtOyB9XG4gICAgLnNlcnZpY2VzX19wcmljZSAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pY29uIHN2ZywgLnNlcnZpY2VzX19wcmljZSAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pY29uIGltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuc2VydmljZXNfX3ByaWNlIC5zZXJ2aWNlc19fcHJpY2VfX2l0ZW1fX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjZyZW07IH1cbiAgLnNlcnZpY2VzX19wcmljZSAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pbmZvIHtcbiAgICBmbGV4OiAxOyB9XG4gICAgLnNlcnZpY2VzX19wcmljZSAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pbmZvIC5pY29uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAgIC5zZXJ2aWNlc19fcHJpY2UgLnNlcnZpY2VzX19wcmljZV9faXRlbV9faW5mbyAuaWNvbiBzdmcsIC5zZXJ2aWNlc19fcHJpY2UgLnNlcnZpY2VzX19wcmljZV9faXRlbV9faW5mbyAuaWNvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5zZXJ2aWNlc19fcHJpY2UgLnJvd3NfX2luZm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxcmVtKTtcbiAgICBtYXJnaW46IC0wLjVyZW07IH1cbiAgLnNlcnZpY2VzX19wcmljZSAuY29sdW1uX19pbmZvIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDFyZW0pO1xuICAgIG1hcmdpbjogMC41cmVtOyB9XG4gIC5zZXJ2aWNlc19fcHJpY2UgLnN1YnRpdGxlX19pbmZvIHtcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zZXJ2aWNlc19fcHJpY2UgLmJ0bl9fYm94IHtcbiAgICBtYXJnaW4tdG9wOiAyLjZyZW07IH1cbiAgICAuc2VydmljZXNfX3ByaWNlIC5idG5fX2JveCBhIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zZXJ2aWNlc19fcHJpY2UgLnN1YnRpdGxlX19pbmZvX19ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiIsIkBpbXBvcnQgXCJ2YXJpYWJsZXMuc2Nzc1wiO1xyXG4vKiAtLS0tLS0tLS0tIG1peGlucyAtLS0tLS0tLS0tICovXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkdGltZTogMC4zcywgJGVhc2luZzogZWFzZSwgJGRlbGF5OiAwcykge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgJHRpbWUgJGVhc2luZyAkZGVsYXk7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAkdGltZSAkZWFzaW5nICRkZWxheTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAkdGltZSAkZWFzaW5nICRkZWxheTtcclxufVxyXG5cclxuQG1peGluIGZvbnQoJGZ6OiAxLjdyZW0sICRmdzogNDAwLCAkbGg6IDEuNSkge1xyXG4gICAgZm9udC1zaXplOiAkZno7XHJcbiAgICBmb250LXdlaWdodDogJGZ3O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLSB0eXBvZ3JhcGh5IC0tLS0tLS0tLS0gKi9cclxuXHJcbioge1xyXG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xyXG4gICAgfVxyXG59XHJcblxyXG4qIHtcclxuICAgICY6Oi13ZWJraXQtc2VsZWN0aW9uLFxyXG4gICAgJjo6c2VsZWN0aW9uIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcclxuICAgIH1cclxufVxyXG5cclxuKiB7XHJcbiAgICAvLyBmaXJlZm94XHJcbiAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLXdoaXRlLWxpZ2h0KSB2YXIoLS13aGl0ZSk7XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcblxyXG4gICAgLy8gY2hyb21lLCBzYWZhcmlcclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICB3aWR0aDogMC42cmVtO1xyXG4gICAgfVxyXG5cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtbGlnaHQpO1xyXG4gICAgICAgIG91dGxpbmU6IDBweCBzb2xpZCB2YXIoLS13aGl0ZS1saWdodCk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbjpyb290IHtcclxuICAgIC0tZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcclxuICAgIC8vIC0tc2Vjb25kLWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgICAvLyAtLXRoaXJkLWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgIC0tYmctaW5wdXQtd2hpdGU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XHJcbiAgICAtLXdoaXRlOiAjZmZmZmZmO1xyXG4gICAgLS1ibGFjazogIzAwMDAwMDtcclxuICAgIC0td2hpdGUtbGlnaHQ6IHJnYigyMjQsIDIyNCwgMjI0KTtcclxuICAgIC0tYWNjZW50LWNvbG9yOiAjZjNmNmY1O1xyXG4gICAgLS1ncmVlbjogcmdiKDM1LCA5MywgNTcpO1xyXG4gICAgLS10ZXh0LWNvbG9yOiAjMzUzYzQzO1xyXG4gICAgLS15ZWxsb3c6IHJnYigyNTUsIDIwNiwgMCk7XHJcbiAgICAtLXllbGxvdy1ob3ZlcjogcmdiKDIwNCwgMTY1LCAwKTtcclxuICAgIC0tcGxhY2Vob2xkZXItY29sb3I6IHJnYmEoNTMsIDYwLCA2NywgMC42KTtcclxuICAgIC0tdGl0bGUtY29sb3I6IHJnYigzMSwgNDQsIDYyKTtcclxuICAgIC0tZ3JleTogcmdiKDEwNiwgMTEzLCAxMjEpO1xyXG4gICAgLS1ibHVlOiAjMDA1YmFjO1xyXG4gICAgLS1saXN0LWdyZXk6IHJnYigxMzQsIDEzNCwgMTM0KTtcclxuICAgIC0tZGFyay1zaGFkZS1jb2xvcjogIzIxMjczNjtcclxuICAgIC0tbGluZWFyLWdyYWRpZW50LWJnOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2ZmZmZmZiAwJSwgI2YzZjZmNSAxMDAlKTtcclxufVxyXG5cclxuaHRtbCB7XHJcbiAgICAvLyBmb250LXNpemU6IDYyLjUlO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCk7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuLmJhc2UtYm90dG9tLW1hcmdpbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4udGV4dF9fd2hpdGUge1xyXG4gICAgaDEsXHJcbiAgICBoMixcclxuICAgIGgzLFxyXG4gICAgaDQsXHJcbiAgICBoNSxcclxuICAgIGg2IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgfVxyXG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xyXG5cclxuICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICBzcGFuIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xyXG4gICAgfVxyXG59XHJcbmVtIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuaDEge1xyXG4gICAgLy8gQGluY2x1ZGUgZm9udCg3LjZyZW0sIDcwMCwgMS4xKTtcclxuICAgIEBpbmNsdWRlIGZvbnQoNC44cmVtLCA3MDAsIDEuMyk7XHJcbn1cclxuXHJcbmgyIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoNC44cmVtLCA3MDAsIDEuMyk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG5oMyB7XHJcbiAgICBAaW5jbHVkZSBmb250KDMuNnJlbSwgNzAwLCAxLjMpO1xyXG59XHJcblxyXG5oNCB7XHJcbiAgICBAaW5jbHVkZSBmb250KDIuOHJlbSwgNDAwLCAxLjQ1KTtcclxufVxyXG5cclxuaDUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgyLjRyZW0sIDYwMCwgMS40OCk7XHJcbn1cclxuXHJcbmg2IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoMnJlbSwgNjAwLCAxLjQpO1xyXG59XHJcbi5zdWJ0aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KDEuNHJlbSwgNzAwLCAxLjMpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5wIHtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XHJcblxyXG4gICAgQGV4dGVuZCAuYmFzZS1ib3R0b20tbWFyZ2luO1xyXG59XHJcbnNlY3Rpb24ge1xyXG59XHJcbi5zZWN0aW9uX19ib2R5IHtcclxufVxyXG4uc2VjdGlvbl9faGVhZGVyIHtcclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcbn1cclxudWwge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcblxyXG5vbCB7XHJcbn1cclxuXHJcbmEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGlzdF9fc3R5bGUge1xyXG4gICAgdWwge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjJyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gICAgfVxyXG59XHJcbmEsXHJcbmJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JheSk7XHJcbn1cclxuYmxvY2txdW90ZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwi4oCcXCI7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCLigJ1cIjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIH1cclxufVxyXG5cclxuZm9ybSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBpbnB1dCxcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNXJlbTtcclxuICAgICAgICBoZWlnaHQ6IDVyZW07XHJcbiAgICB9XHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQsXHJcbiAgICBzZWxlY3QsXHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgcGFkZGluZzogMS4ycmVtIDIuNnJlbTtcclxuICAgICAgICBAaW5jbHVkZSBmb250KDEuNXJlbSwgNDAwLCAxLjMzKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgdmFyKC0tYWNjZW50LWNvbG9yKTtcclxuXHJcbiAgICAgICAgLy8gYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG5cclxuICAgICAgICAvLyBib3JkZXI6IDA7XHJcblxyXG4gICAgICAgIC8vIGJvcmRlci1yYWRpdXM6IDNyZW07XHJcbiAgICAgICAgLy8gbWluLWhlaWdodDogNS4ycmVtO1xyXG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcclxuXHJcbiAgICAgICAgLy8gY29sb3I6IHZhcigtLWdyYXkpO1xyXG5cclxuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgb3B0aW9uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDQwMCwgMS4zMyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxNXJlbTtcclxuICAgICAgICBoZWlnaHQ6IDE1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KDEuNXJlbSwgNDAwLCAxLjMzKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjRyZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICB9XHJcbn1cclxuLmZvcm0taXRlbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbn1cclxuLyogLS0tLS0tLS0tLSBjdXN0b20gc2VsZWN0IC0tLS0tLSAqL1xyXG5cclxuLmZvcm0tc2VsZWN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtLXNlbGVjdDo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UUWlJR2hsYVdkb2REMGlPQ0lnZG1sbGQwSnZlRDBpTUNBd0lERTBJRGdpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeG5JR05zYVhBdGNHRjBhRDBpZFhKc0tDTmpiR2x3TUY4eU1URXhYelEyS1NJK0NqeHdZWFJvSUdROUlrMDNMamNnTnk0M1RERXpMamNnTVM0M1F6RTBMakVnTVM0eklERTBMakVnTUM0M01EQXdNREVnTVRNdU55QXdMak13TURBd01VTXhNeTR6SUMwd0xqQTVPVGs1T1NBeE1pNDNJQzB3TGpBNU9UazVPU0F4TWk0eklEQXVNekF3TURBeFREY2dOUzQyVERFdU55QXdMak5ETVM0eklDMHdMakVnTUM0M0lDMHdMakVnTUM0eklEQXVNME13TGpFZ01DNDFJREFnTUM0M0lEQWdNVU13SURFdU15QXdMakVnTVM0MUlEQXVNeUF4TGpkTU5pNHpJRGN1TjBNMkxqVWdOeTQ1SURZdU9DQTRJRGNnT0VNM0xqTWdPQ0EzTGpVZ055NDVJRGN1TnlBM0xqZGFJaUJtYVd4c1BTSWpNelV6UXpReklpQm1hV3hzTFc5d1lXTnBkSGs5SWpBdU5UUXhNVGMySWk4K0Nqd3ZaejRLUEdSbFpuTStDanhqYkdsd1VHRjBhQ0JwWkQwaVkyeHBjREJmTWpFeE1WODBOaUkrQ2p4eVpXTjBJSGRwWkhSb1BTSXhOQ0lnYUdWcFoyaDBQU0k0SWlCbWFXeHNQU0ozYUdsMFpTSXZQZ284TDJOc2FYQlFZWFJvUGdvOEwyUmxabk0rQ2p3dmMzWm5QZ289XCIpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxLjRyZW07XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgd2lkdGg6IDEuNHJlbTtcclxuICAgIGhlaWdodDogMC44cmVtO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDEuNXJlbTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgei1pbmRleDogMDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0gY2hlY2tib3ggLS0tLS0tLS0tLS0tICovXHJcblxyXG4vLyAuY3VzdG9tLWNoZWNrYm94IHtcclxuLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgIHotaW5kZXg6IC0xO1xyXG4vLyAgICAgb3BhY2l0eTogMDtcclxuLy8gfVxyXG5cclxuLy8gLmN1c3RvbS1jaGVja2JveCArIGxhYmVsIHtcclxuLy8gICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4vLyAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4vLyAgICAgcGFkZGluZy1sZWZ0OiAzLjhyZW07XHJcbi8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbi8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbi8vICAgICBsaW5lLWhlaWdodDogMi44cmVtO1xyXG4vLyB9XHJcblxyXG4vLyAuY3VzdG9tLWNoZWNrYm94ICsgbGFiZWw6OmJlZm9yZSB7XHJcbi8vICAgICBjb250ZW50OiBcIlwiO1xyXG4vLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4vLyAgICAgd2lkdGg6IDIuOHJlbTtcclxuLy8gICAgIGhlaWdodDogMi44cmVtO1xyXG4vLyAgICAgZmxleC1zaHJpbms6IDA7XHJcbi8vICAgICBmbGV4LWdyb3c6IDA7XHJcbi8vICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCB2YXIoLS1ncmF5KTtcclxuLy8gICAgIG1hcmdpbi1yaWdodDogMnJlbTtcclxuLy8gICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbi8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4vLyAgICAgYmFja2dyb3VuZC1zaXplOiAycmVtIDJyZW07XHJcbi8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbi8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vICAgICB0b3A6IDUwJTtcclxuLy8gICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuLy8gICAgIGxlZnQ6IDA7XHJcbi8vIH1cclxuXHJcbi8vIC5jdXN0b20tY2hlY2tib3g6Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xyXG4vLyAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xyXG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcclxuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy90aWNrLXdoaXRlLnN2Z1wiKTtcclxuLy8gfVxyXG5cclxuLy8gLmN1c3RvbS1jaGVja2JveDpmb2N1cyArIGxhYmVsOmhvdmVyOjpiZWZvcmUge1xyXG4vLyB9XHJcbi8vIC5jaGVja2JveC1pdGVtIHtcclxuLy8gICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbi8vIH1cclxuLy8gLmNoZWNrYm94IHtcclxuLy8gICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4vLyAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuLy8gfVxyXG5cclxuLyogLS0tLS0tLS0tLS0gcmFkaW8gLS0tLS0tLS0tLS0tICovXHJcblxyXG4vLyAuY3VzdG9tLXJhZGlvIHtcclxuLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgIHotaW5kZXg6IC0xO1xyXG4vLyAgICAgb3BhY2l0eTogMDtcclxuLy8gfVxyXG5cclxuLy8gLmN1c3RvbS1yYWRpbyArIGxhYmVsIHtcclxuLy8gICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4vLyAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4vLyAgICAgcGFkZGluZy1sZWZ0OiAzLjhyZW07XHJcbi8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbi8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbi8vICAgICBsaW5lLWhlaWdodDogMi44cmVtO1xyXG4vLyB9XHJcblxyXG4vLyAuY3VzdG9tLXJhZGlvICsgbGFiZWw6OmJlZm9yZSB7XHJcbi8vICAgICBjb250ZW50OiBcIlwiO1xyXG4vLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4vLyAgICAgd2lkdGg6IDIuOHJlbTtcclxuLy8gICAgIGhlaWdodDogMi44cmVtO1xyXG4vLyAgICAgZmxleC1zaHJpbms6IDA7XHJcbi8vICAgICBmbGV4LWdyb3c6IDA7XHJcbi8vICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCB2YXIoLS1ncmF5KTtcclxuLy8gICAgIG1hcmdpbi1yaWdodDogMnJlbTtcclxuLy8gICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbi8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4vLyAgICAgYmFja2dyb3VuZC1zaXplOiAycmVtIDJyZW07XHJcbi8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbi8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vICAgICB0b3A6IDUwJTtcclxuLy8gICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuLy8gICAgIGxlZnQ6IDA7XHJcbi8vIH1cclxuXHJcbi8vIC5jdXN0b20tcmFkaW86Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xyXG4vLyAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xyXG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcclxuLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy90aWNrLXdoaXRlLnN2Z1wiKTtcclxuLy8gfVxyXG5cclxuLy8gLmN1c3RvbS1yYWRpbzpmb2N1cyArIGxhYmVsOmhvdmVyOjpiZWZvcmUge1xyXG4vLyB9XHJcbi8vIC5yYWRpby1pdGVtIHtcclxuLy8gICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbi8vIH1cclxuLy8gLnJhZGlvIHtcclxuLy8gICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4vLyAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuLy8gfVxyXG5cclxuLy8gLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHtcclxuLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4vLyAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuLy8gfVxyXG4vLyAud3BjZjctZm9ybS1jb250cm9sLXdyYXAgc3BhbiB7XHJcbi8vICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuLy8gICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xyXG4vLyAgICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xyXG4vLyAgICAgbWFyZ2luLWJvdHRvbTogLTEuMnJlbTtcclxuLy8gfVxyXG5cclxuLyogLS0tLS0tLS0gYnRuIC0tLS0tLS0tLS0gKi9cclxuLmNvbnRhY3RfX2J0bl9fZml4ZWQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHdpZHRoOiA0cmVtO1xyXG4gIH1cclxuICAuY29udGFjdF9fYnRuX19maXhlZCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgd2lkdGg6IDRyZW07XHJcbiAgICBhIHtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxufVxyXG4uYnRuX19maXhlZCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIG1pbi1oZWlnaHQ6IDRyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtIDFyZW0gMCAwO1xyXG4gICAgcGFkZGluZzogMCAycmVtO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xyXG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcclxuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHZhcigtLXdoaXRlKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBmb250KDEuNnJlbSwgNTAwLCAxLjUpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjp2aXNpdGVkIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICB9XHJcbn1cclxuLmJ0bl9fYm94IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW46IC0xcmVtO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYSxcclxuICAgIGJ1dHRvbixcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGlua19fYXJyb3cge1xyXG4gICAgQGluY2x1ZGUgZm9udCgxLjlyZW0sIDcwMCwgMS41KTtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgIHBhZGRpbmc6IDEuM3JlbSAyLjRyZW07XHJcblxyXG4gICAgbWluLWhlaWdodDogNXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XHJcblxyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIEBpbmNsdWRlIGZvbnQoMS41cmVtLCA1MDAsIDEuMzMpO1xyXG5cclxuICAgIGJvcmRlcjogMC4ycmVtIHNvbGlkIHZhcigtLWdyZWVuKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbiwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbiwgYm94LXNoYWRvdyAwLjJzIGVhc2UtaW47XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjp2aXNpdGVkIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcclxuICAgIH1cclxufVxyXG4uYnRuX195ZWxsb3cge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICBwYWRkaW5nOiAxLjNyZW0gMi40cmVtO1xyXG5cclxuICAgIG1pbi1oZWlnaHQ6IDVyZW07XHJcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xyXG5cclxuICAgIEBpbmNsdWRlIGZvbnQoMS41cmVtLCA3MDAsIDEuMzMpO1xyXG5cclxuICAgIGJvcmRlcjogMC4ycmVtIHNvbGlkIHZhcigtLWdyZWVuKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbiwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbiwgYm94LXNoYWRvdyAwLjJzIGVhc2UtaW47XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjp2aXNpdGVkIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcclxuICAgIH1cclxufVxyXG4uYnRuX190cl9fd2hpdGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICBwYWRkaW5nOiAxLjNyZW0gMi40cmVtO1xyXG5cclxuICAgIG1pbi1oZWlnaHQ6IDVyZW07XHJcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS4zMyk7XHJcblxyXG4gICAgYm9yZGVyOiAwLjJyZW0gc29saWQgdmFyKC0td2hpdGUpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW4sIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLCBib3JkZXItY29sb3IgMC4ycyBlYXNlLWluLCBib3gtc2hhZG93IDAuMnMgZWFzZS1pbjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmOnZpc2l0ZWQge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuLmN1c3RvbV9fbGlzdCB7XHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jaGVjay1pY29uLnN2Z1wiKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwLjJyZW07XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5jb250YWluZXIge1xyXG4gICAgbWF4LXdpZHRoOiAxMjByZW07XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xyXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5yb3dzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAuY29sdW1uIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG59XHJcbi5pbWdfX2JveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLXRvcDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICBpZnJhbWUsXHJcbiAgICB2aWRlbyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5vdmVybGF5IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5lbGVtZW50X19iZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgei1pbmRleDogMDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLWFycm93IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgd2lkdGg6IDNyZW07XHJcbiAgICBoZWlnaHQ6IDNyZW07XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlLTIpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICAgIHN2ZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcclxuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW9yYW5nZSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zbGljay1wcmV2IHtcclxuICAgICAgICBsZWZ0OiAtM3JlbTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zbGljay1uZXh0IHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmlnaHQ6IC0zcmVtO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1saXN0IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5zbGljay1kb3RzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IC0ycmVtO1xyXG4gICAgbGVmdDogNTAlO1xyXG5cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBtYXJnaW46IDAgMS4yNXJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxcmVtO1xyXG4gICAgICAgIGhlaWdodDogMXJlbTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHZhcigtLWdyZWVuKTtcclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXRyYWNrIHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG5cclxubWFpbiB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTcuOHJlbTtcclxuXHJcbiAgICAvLyBtaW4taGVpZ2h0OiAxMDB2aDtcclxufVxyXG5cclxuLndwY2Y3IGZvcm0uaW52YWxpZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxyXG4ud3BjZjcgZm9ybS51bmFjY2VwdGVkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXHJcbi53cGNmNyBmb3JtLnBheW1lbnQtcmVxdWlyZWQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAxLjJyZW0gMCAwICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJlZCAhaW1wb3J0YW50O1xyXG59XHJcbi53cGNmNyBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xyXG4gICAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMS4ycmVtIDAgMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hYmFjdXMtYmx1ZSkgIWltcG9ydGFudDtcclxufVxyXG4ud3BjZjctc3Bpbm5lcntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgbWFyZ2luOiAwO1xyXG4gXHJcbn1cclxuLndwY2Y3LW5vdC12YWxpZC10aXB7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICBtYXJnaW46IDAuNXJlbSAwIC0wLjVyZW07XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tIG1vZGFsX193aW5kb3cgLS0tLS0tLS0tLS0tICovXHJcblxyXG4ubW9kYWxfX3dpbmRvdyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgcGFkZGluZzogMCAycmVtO1xyXG4gICAgJjo6YWZ0ZXIsXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgICYubW9kYWwtc2hvdyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsX193aW5kb3dfX292ZXJsYXkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcbiAgICB9XHJcbiAgICAubW9kYWxfX3dpbmRvd19fd3JhcHBlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIuNHJlbTtcclxuICAgICAgICBwYWRkaW5nOiA2cmVtIDNyZW07XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA3MHJlbTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xyXG4gICAgfVxyXG4gICAgLm1vZGFsX193aW5kb3dfY29udGVudCB7XHJcbiAgICB9XHJcbiAgICAuYnV0dG9uX19ib3gge1xyXG4gICAgfVxyXG4gICAgLm1vZGFsX193aW5kb3dfY2xvc2Uge1xyXG4gICAgICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgICAgIGhlaWdodDogNHJlbTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDEuNnJlbTtcclxuICAgICAgICB0b3A6IDEuNnJlbTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgJjo6YWZ0ZXIsXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMi42cmVtO1xyXG4gICAgICAgICAgICB3aWR0aDogMC4ycmVtO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubWFkYWxfX3dpbmRvd19jb250ZW50X2lubmVyIHtcclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLSBoZWFkZXIgLS0tLS0tLS0tICovXHJcblxyXG4uaGVhZGVyIHtcclxuICAgIGhlaWdodDogMTcuOHJlbTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICAmLnN0aWNreSxcclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiKDUzLCA2MCwgNjcpIDUzLjQ0JSA3MS4xOCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5oZWFkZXJfX2JveF9faW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAvLyBwYWRkaW5nOiAxcmVtIDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LW92ZXJsYXkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDkuN3JlbSk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDkuN3JlbTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNob3cge1xyXG4gICAgfVxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLmhlYWRlcl9faW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbSAwO1xyXG4gICAgfVxyXG4gICAgLm1haW5fX25hdl9faW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlcl9fbG9nbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMnJlbTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAvLyBtYXJnaW4tcmlnaHQ6IDEuNHJlbTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMnJlbTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaGVhZGVyX19sZWZ0IHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XHJcbiAgICB9XHJcbiAgICAuaGVhZGVyX19yaWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIC8vIHBhZGRpbmctbGVmdDogNC4xcmVtO1xyXG4gICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLm1lbnUge1xyXG4gICAgfVxyXG5cclxuICAgIC5tYWluX19uYXYge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLnN1Yl9fbWVudSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgLm1haW5fX25hdl9fYnRuX19yaWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLmhlYWRlcl9fYnRuIHtcclxuICAgICAgICB3aWR0aDogNXJlbTtcclxuICAgICAgICBoZWlnaHQ6IDVyZW07XHJcbiAgICAgICAgbWluLXdpZHRoOiA1cmVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMnJlbTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAycmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5oZWFkZXJfX2J0bl9fd3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNHJlbTtcclxuICAgIH1cclxuICAgIC5jYXJ0X19idG5fX2lubmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAubWFpbl9fbWVudSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuNnJlbSwgNDAwLCAxKTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMC41cmVtO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjJyZW07XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1lbnUtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luOiAxLjJyZW0gMC45cmVtO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5uYXZfX2J0bl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgb3JkZXI6IC0xO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGFuZ3VhZ2VfX2JvZHl7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbGl7XHJcbiAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB3aWR0aDogMC4xcmVtO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEuN3JlbTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50LWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgYSwgc3BhbntcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEsIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTAuNXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwLjJyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuLnNvY2lhbF9fbGlzdCB7XHJcbiAgICAgXHJcbiAgICBsaSB7XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDEuOXJlbTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIHdpZHRoOiAzLjJyZW07XHJcbiAgICAgICAgbWluLXdpZHRoOiAzLjJyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICBvcGFjaXR5OiAwLjk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgc3ZnIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm1lbnVfX2Nsb3NlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAzcmVtO1xyXG4gICAgdG9wOiAxLjZyZW07XHJcbiAgICBmb250LXNpemU6IDIuOHJlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tb3JhbmdlKTtcclxuICAgIH1cclxufVxyXG5cclxuLmhhbWJ1cmdlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAyLjhyZW07XHJcbiAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgICAgIGhlaWdodDogNHJlbTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5oZWFkZXJfX3RvcF9fYm94e1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgXHJcbiAgICBhe1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XHJcbiAgICB9XHJcbn1cclxuLnRlbGVwaG9uZV9fYm94e1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIG1hcmdpbi1yaWdodDogMnJlbTtcclxuICAgIC50ZWxlcGhvbmVfX3RpdGxle1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgIH1cclxuICAgIHVse1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBzdmcsIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbmF7XHJcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG59XHJcbn1cclxuLmhhbWJ1cmdlciBzcGFuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAwLjNyZW07XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjFyZW07XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oYW1idXJnZXIgc3BhbjpmaXJzdC1jaGlsZCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xyXG4gICAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XHJcbiAgICAtby10cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDAuM3MsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XHJcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDAuM3MsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XHJcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDAuM3MsIHRyYW5zZm9ybSAwLjNzIGVhc2UgMHMsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwcztcclxufVxyXG5cclxuLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgyKSB7XHJcbiAgICB0b3A6IDU1JTtcclxuICAgIG1hcmdpbi10b3A6IC0wLjNyZW07XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMHM7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcclxufVxyXG5cclxuLmhhbWJ1cmdlciBzcGFuOmxhc3QtY2hpbGQge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlIDAuM3MsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwcztcclxuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjNzIGVhc2UgMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xyXG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDBzO1xyXG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDBzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMHM7XHJcbn1cclxuXHJcbi5oYW1idXJnZXIuc2hvdyBzcGFuOmZpcnN0LWNoaWxkIHtcclxuICAgIHRvcDogMzklO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlIDBzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcclxuICAgIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UgMHMsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzO1xyXG4gICAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzO1xyXG4gICAgdHJhbnNpdGlvbjogdG9wIDAuM3MgZWFzZSAwcywgdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UgMC4zcztcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxufVxyXG5cclxuLmhhbWJ1cmdlci5zaG93IHNwYW46bnRoLWNoaWxkKDIpIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi5oYW1idXJnZXIuc2hvdyBzcGFuOmxhc3QtY2hpbGQge1xyXG4gICAgYm90dG9tOiA0OSU7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZSAwcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlIDAuM3MsIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZSAwLjNzO1xyXG59XHJcblxyXG4uYnRuX19tb3JlX19ib29rcyxcclxuLmJ0bl9fY2xvc2Uge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgJi5zaG93IHtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5idG5fX2hlYWRlciB7XHJcbiAgICBmb250LXNpemU6IDIuOHJlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG1hcmdpbi1sZWZ0OiAxLjZyZW07XHJcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG59XHJcblxyXG4uYnRuX19oZWFkZXJfX3dyYXBwZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODg3cHgpIHtcclxuICAgIC5tb2Ige1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5oYW1idXJnZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4ODZweCkge1xyXG4gICAgLmRlc2t7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLSBoZXJvIC0tLS0tLS0tLSAqL1xyXG4uYWJvdXRfX3NlY3Rpb24ge1xyXG4gICAgcGFkZGluZzogNnJlbSAwIDRyZW07XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgIH1cclxuICAgIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaDYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZXkpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICBmb250LXNpemU6IDEuOXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb25fX2lubmVyIHtcclxuICAgIH1cclxuICAgIC5yb3dzIHtcclxuICAgIH1cclxuICAgIC5jb2x1bW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5sZWZ0IHtcclxuICAgICAgICB3aWR0aDogMzcuNiU7XHJcbiAgICB9XHJcbiAgICAuY29udGVudF9fc2lkZSB7XHJcbiAgICB9XHJcbiAgICAuaW1nX193cmFwcGVyIHtcclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICAgICAgd2lkdGg6IDYyLjQlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcclxuICAgIH1cclxuICAgIC5zdWJ0aXRsZSB7XHJcbiAgICB9XHJcbiAgICAuY29udGVudF9fc2lkZV9fYm94IHtcclxuICAgIH1cclxuICAgIC5jb250YWN0X193cmFwcGVyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XHJcbiAgICAgICAgcGFkZGluZzogMy4xcmVtIDAgMS41cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMC4xcmVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZS1saWdodCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNDU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX2JveCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX2JveF9fdGV4dCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX3RleHQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDUuMXJlbTtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS44KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250YWN0X19pY29uIHtcclxuICAgICAgICB3aWR0aDogNXJlbTtcclxuICAgICAgICBtaW4td2lkdGg6IDVyZW07XHJcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0teWVsbG93KTtcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMi42cmVtO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDIuNnJlbTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcclxuICAgICAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLSBkZWxpdmVyeV9fc2VjdGlvbiAtLS0tLS0tLS0tICovXHJcblxyXG4uZGVsaXZlcnlfX3NlY3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGluZWFyLWdyYWRpZW50LWJnKTtcclxuICAgIHBhZGRpbmc6IDRyZW0gMDtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgfVxyXG4gICAgLnNlY3Rpb25fX2lubmVyIHtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19oZWFkZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuOXJlbSwgNTAwLCAxLjUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9fYm9keSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFicyB7XHJcbiAgICB9XHJcbiAgICAudGFic19faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwLjFyZW07XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4xMjU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYnNfX2l0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoMi4ycmVtLCA3MDAsIDEuNDQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICB3aWR0aDogMi41cmVtO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDIuNXJlbTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMC4ycmVtO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFic19fYm9keV9faXRlbXMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgIGJvcmRlcjogMC4ycmVtIHNvbGlkIHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAudGFic19fYm9keV9faXRlbSB7XHJcbiAgICB9XHJcbiAgICAucm93cyB7XHJcbiAgICB9XHJcbiAgICAuY29sdW1uIHtcclxuICAgIH1cclxuICAgIC5sZWZ0IHtcclxuICAgIH1cclxuICAgIC5jb250ZW50X19zaWRlIHtcclxuICAgIH1cclxuICAgIC5pbWdfX2JveCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwNC40NiU7XHJcbiAgICB9XHJcbiAgICAucmlnaHQge1xyXG4gICAgICAgIHBhZGRpbmc6IDRyZW0gM3JlbTtcclxuICAgIH1cclxuICAgIC5idG5fX2JveCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQuNnJlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwLjFyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDFyZW07XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMTM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0biB7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tIGNvbnRhY3RfX3VzX19iYW5uZXIgLS0tLS0tLS0tLS0gKi9cclxuLmNvbnRhY3RfX3VzX19iYW5uZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xyXG4gICAgcGFkZGluZzogNHJlbSAwIDRyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAudGV4dF9fd2hpdGUge1xyXG4gICAgfVxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faW5uZXIge1xyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xyXG4gICAgICAgIG1heC13aWR0aDogODlyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuYnRuX19ib3gge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQuNXJlbTtcclxuICAgIH1cclxuICAgIC5idG5fX3RyX193aGl0ZSB7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0gbG9naXN0aWNzX19zZWN0aW9uIC0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmxvZ2lzdGljc19fc2VjdGlvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICBwYWRkaW5nOiA0cmVtIDA7XHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjlyZW07XHJcblxyXG4gICAgICAgIG1heC13aWR0aDogNzVyZW07XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnRleHRfX3doaXRlIHtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX2lubmVyIHtcclxuICAgIH1cclxuICAgIC5zdWJ0aXRsZSB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9fYm9keSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAubG9naXN0aWNzX19jb250YWN0cyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNS41cmVtO1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxvZ2lzdGljc19faXRlbXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogLTEuNXJlbSAwO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgLmxvZ2lzdGljc19faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xyXG4gICAgfVxyXG59XHJcbi5sb2dpc3RpY3NfX2l0ZW0ge1xyXG4gICAgcGFkZGluZzogMS41cmVtO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAuaW1nX19ib3gge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogMzQuNXJlbTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNC41cmVtO1xyXG4gICAgfVxyXG4gICAgLmxvZ2lzdGljc19faXRlbV9fY29udGVudCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG5fX2JveCB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS43cmVtO1xyXG4gICAgfVxyXG4gICAgLmxpbmsge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIC5sb2dpc3RpY3NfX2l0ZW1fX2lubmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogNHJlbSAzcmVtO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcbiAgICAubG9naXN0aWNzX19pdGVtX19vdmVybGF5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMzEsIDQ0LCA2MiwgMC45KSAwJSwgcmdiYSg1MywgNjAsIDY3LCAwLjExKSAxMDAlKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaDUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KDEuNXJlbSwgNTAwLCAxLjQ1KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUtbGlnaHQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tIHNlcnZpY2VzIC0tLS0tLS0tLS0gKi9cclxuLnNlcnZpY2VzIHtcclxuICAgIHBhZGRpbmc6IDRyZW0gMCA7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXkpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuOXJlbSwgNTAwLCAxLjUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAucm93cyB7XHJcbiAgICB9XHJcbiAgICAuY29sdW1uIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAubGVmdCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX3NpZGUge1xyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyZXkpO1xyXG4gICAgfVxyXG4gICAgLnJpZ2h0IHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19ib2R5IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cmVtO1xyXG4gICAgfVxyXG4gICAgLnNlcnZpY2VzX19mb290ZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDUuNXJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS40Mik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bl9fYm94IHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5saW5rX19hcnJvdyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIH1cclxufVxyXG4uc2VydmljZXNfX2l0ZW1zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW46IC0ycmVtIDA7XHJcbiAgICAuc2VydmljZXNfX2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcclxuICAgIH1cclxufVxyXG4uc2VydmljZXNfX3NsaWRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbi5zZXJ2aWNlc19faXRlbSB7XHJcbiAgICBwYWRkaW5nOiAycmVtO1xyXG4gICAgLnNlcnZpY2VzX19pdGVtX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuaW1nX19ib3gge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2OC44NiU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICAgIGg1IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0gc2VydmljZXMyIC0tLS0tLS0tLS0gKi9cclxuXHJcbi5zZXJ2aWNlczIge1xyXG4gICAgcGFkZGluZzogNHJlbSAwIDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudC1jb2xvcik7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXkpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuOXJlbSwgNTAwLCAxLjUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9fYm9keSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcclxuICAgIH1cclxufVxyXG4uc2VydmljZXMyX19pdGVtcyB7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgM3JlbSk7XHJcbiAgICBtYXJnaW46IC0xLjVyZW07XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgLnNlcnZpY2VzMl9faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAzcmVtKTtcclxuICAgICAgICBtYXJnaW46IDEuNXJlbTtcclxuICAgIH1cclxufVxyXG4uc2VydmljZXMyX19pdGVtIHtcclxuICAgIC5zZXJ2aWNlczJfX2l0ZW1fX2lubmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcclxuICAgIH1cclxuICAgIC5zZXJ2aWNlczJfX2l0ZW1fX2ljb24ge1xyXG4gICAgICAgIHdpZHRoOiA3cmVtO1xyXG4gICAgICAgIG1pbi13aWR0aDogN3JlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgIHN2ZyxcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1ncmVlbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICAgIC5zdDAge1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncmV5KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLSBzZXJ2aWNlc19faW5mbyAtLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zZXJ2aWNlc19faW5mbyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxMy41cmVtIDAgOS41cmVtO1xyXG4gICAgLnRleHRfX3doaXRlIHtcclxuICAgIH1cclxuICAgIC5wYXJhbGF4X193cmFwcGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLW91dDtcclxuICAgIH1cclxuICAgIC5wYXJhbGF4IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCUsIDAlIDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIHJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkLCBzY3JvbGw7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1vcmlnaW46IHBhZGRpbmctYm94LCBwYWRkaW5nLWJveDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3gsIGJvcmRlci1ib3g7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBpbnNldCgwcHgpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgLS1maXhlZC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIC0tZml4ZWQtYmFja2dyb3VuZC1jb2xvcjogIzM1M2M0MztcclxuICAgICAgICAtLWZpeGVkLXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAtLWZpeGVkLWZpbHRlcjogdW5kZWZpbmVkO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB2YXIoLS1maXhlZC10cmFuc2Zvcm0sIG5vbmUpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW5oZXJpdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZml4ZWQtYmFja2dyb3VuZC1jb2xvciwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogaW5oZXJpdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1maXhlZC1iYWNrZ3JvdW5kLXNpemUsIGNvdmVyKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogaW5oZXJpdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XHJcbiAgICAgICAgICAgIGZpbHRlcjogdmFyKC0tZml4ZWQtZmlsdGVyLCBub25lKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFyYWxheF9fb3ZlcmxheSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgzMSwgNDQsIDYyLCAwLjkpO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faW5uZXIge1xyXG4gICAgfVxyXG4gICAgLnJvd3Mge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDVyZW07XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb2x1bW4ge1xyXG4gICAgfVxyXG4gICAgLmxlZnQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcclxuICAgICAgICAuY29udGVudF9fc2lkZSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDdyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM4cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50X19zaWRlIHtcclxuICAgIH1cclxuICAgIC5zdWJ0aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnN0MCB7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcbi5zZXJ2aWNlc19faW5mb19faXRlbXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzcmVtKTtcclxuICAgIG1hcmdpbjogLTEuNXJlbTtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIC5zZXJ2aWNlc19faW5mb19faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAzcmVtKTtcclxuICAgICAgICBtYXJnaW46IDEuNXJlbTtcclxuICAgIH1cclxufVxyXG4uc2VydmljZXNfX2luZm9fX2l0ZW0ge1xyXG4gICAgLnNlcnZpY2VzX19pbmZvX19pdGVtX19pY29uIHtcclxuICAgICAgICB3aWR0aDogNXJlbTtcclxuICAgICAgICBtaW4td2lkdGg6IDVyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgICBzdmcsXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAvLyBmaWxsOiB2YXIoLS15ZWxsb3cpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZXJ2aWNlc19faW5mb19faXRlbV9fbnVtYmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KDMuNnJlbSwgNzAwLCAxLjMpO1xyXG5cclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuOHJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDUuMXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwLjNyZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLSBmYXFfX3NlY3Rpb24gLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uZmFxX19zZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcclxuICAgIHBhZGRpbmc6IDVyZW0gMCA0cmVtO1xyXG5cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgfVxyXG4gICAgLnNlY3Rpb25fX2lubmVyIHtcclxuICAgIH1cclxuICAgIC5yb3dzIHtcclxuICAgIH1cclxuICAgIC5jb2x1bW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5sZWZ0IHtcclxuICAgICAgICB3aWR0aDogNDEuNDUlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JleSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX3NpZGUge1xyXG4gICAgfVxyXG4gICAgLmZvcm1fX3dyYXBwZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICBwYWRkaW5nOiA0cmVtO1xyXG4gICAgfVxyXG4gICAgLmZvcm1fX2NvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMnJlbTtcclxuICAgIH1cclxuICAgIC5mb3JtLWl0ZW1zIHtcclxuICAgIH1cclxuICAgIC5mb3JtLWl0ZW0ge1xyXG4gICAgfVxyXG4gICAgLmZvcm1fX2lucHV0IHtcclxuICAgIH1cclxuICAgIC5mb3JtLXNlbGVjdCB7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1idG4ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDhyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgLmJ0bl9feWVsbG93IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICAgICAgd2lkdGg6IDU4LjU1JTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxuICAgIH1cclxuICAgIC5jb250ZW50X19ib3gge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjlyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5mYXFfX3NlY3Rpb25fX2Zvb3RlciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0LjJyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5hY2NvcmRpb24ge1xyXG59XHJcbi5hY2NvcmRpb25fX2l0ZW0ge1xyXG4gICAgcGFkZGluZzogMnJlbSAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwLjFyZW07XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgLnF1ZXN0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEuNXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxLjVyZW07XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICY6OmFmdGVyLFxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjNyZW07XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjJyZW07XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMC4ycmVtO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYub3BlbmVkIHtcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hbnN3ZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0gZm9vdGVyIC0tLS0tLS0tLS0gKi9cclxuXHJcbi5mb290ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGl0bGUtY29sb3IpO1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyX190b3Age1xyXG4gICAgICAgIHBhZGRpbmc6IDhyZW0gMCA2cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAucm93cyB7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCAtIDNyZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMC4xcmVtO1xyXG4gICAgICAgICAgICBib3R0b206IDAuMXJlbTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgICAgIH1cclxuICAgICAgICBQIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS40Myk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAucm93cyB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDNyZW0pO1xyXG4gICAgICAgIG1hcmdpbjogLTEuNXJlbTtcclxuICAgIH1cclxuICAgIC5jb2x1bW4ge1xyXG4gICAgICAgIG1hcmdpbjogMS41cmVtO1xyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX3NpZGUge1xyXG4gICAgfVxyXG4gICAgLmhlYWRlcl9fbG9nbyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5LjZyZW07XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi42cmVtO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zb2NpYWxfX2xpc3Qge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDIuNXJlbTtcclxuICAgICAgICAgICAgd2lkdGg6IDIuNXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndpZGdldCB7XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyX19mb3JtIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyLjdyZW07XHJcbiAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwic3VibWl0XCJdKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWlucHV0LXdoaXRlKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1pbnB1dC13aGl0ZSk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyZXkpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JleSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud3BjZjctZm9ybSB7XHJcbiAgICB9XHJcbiAgICAuaW5pdCB7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1pdGVtIHtcclxuICAgIH1cclxuICAgIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XHJcbiAgICB9XHJcbiAgICAuZm9ybV9faW5wdXQge1xyXG4gICAgfVxyXG4gICAgLmZvcm0tYnRuIHtcclxuICAgIH1cclxuICAgIC5idG5fX3RyX193aGl0ZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyX19jb250YWN0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1LjhyZW07XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjdyZW0sIDQwMCwgMS41KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb290ZXJfX2JvdHRvbSB7XHJcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDA7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sZWZ0IHtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbHVtbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gM3JlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jZW50ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yaWdodCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxlZnQsXHJcbiAgICAgICAgLnJpZ2h0IHtcclxuICAgICAgICAgICAgUCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuNXJlbSwgNTAwLCAxLjQzKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KDIuNHJlbSwgNjAwLCAxLjQzKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuOHJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwLjNyZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDYuNzVyZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlLWxpZ2h0KTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud2lkZ2V0IHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS40Myk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1saWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KDEuNXJlbSwgNTAwLCAxLjQzKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tIG5ld3NfX3NlY3Rpb24gLS0tLS0tLS0tLS0tICovXHJcbi5uZXdzX19zZWN0aW9uIHtcclxuICAgIHBhZGRpbmc6IDEwcmVtIDA7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9fYm9keSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXJlbTtcclxuICAgIH1cclxuICAgIC5jb250ZW50X19pbm5lciB7XHJcbiAgICB9XHJcblxyXG4gICAgaDEge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoNC44cmVtLCA3MDAsIDEuMyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmV3c19faXRlbXMge1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDMuOHJlbSk7XHJcbiAgICBtYXJnaW46IC0xLjZyZW0gLTEuOXJlbTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAubmV3c19faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAzLjhyZW0pO1xyXG4gICAgICAgIG1hcmdpbjogMS42cmVtIDEuOXJlbTtcclxuICAgIH1cclxufVxyXG4ubmV3c19faXRlbSB7XHJcbiAgICAubmV3c19faXRlbV9faW5uZXIge1xyXG4gICAgfVxyXG4gICAgLmltZ19fYm94IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNjAlO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5uZXdzX19pdGVtX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoMi40cmVtLCA2MDAsIDEuNDMpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuLmFydGljbGVfX2RhdGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgxLjVyZW0sIDUwMCwgMS40Myk7XHJcbiAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0gYXJ0aWNsZV9fc2VjdGlvbiAtLS0tLS0tLS0tLS0tICovXHJcbi5hcnRpY2xlX19zZWN0aW9uIHtcclxuICAgIHBhZGRpbmc6IDMuMnJlbSAwIDYuNHJlbTtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgfVxyXG4gICAgaDEge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuICAgIGgxLFxyXG4gICAgaDIsXHJcbiAgICBoMyxcclxuICAgIGg0LFxyXG4gICAgaDUsXHJcbiAgICBoNiB7XHJcbiAgICAgICAgbWFyZ2luOiAycmVtIDAgMi40cmVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19pbm5lciB7XHJcbiAgICB9XHJcbiAgICAuaW1nX193cmFwcGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAzLjJyZW07XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnRfX3dyYXBwZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogNzByZW07XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAuYXJ0aWNsZV9fZGF0ZSB7XHJcbiAgICB9XHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcclxuICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0gcHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIC0tLS0tLS0tLS0tICovXHJcblxyXG4ucHJpdmFjeV9fcG9saWN5X19zZWN0aW9uIHtcclxuICAgIHBhZGRpbmc6IDEwcmVtIDA7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xyXG4gICAgfVxyXG4gICAgaDEge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICBoMixcclxuICAgIGgzLFxyXG4gICAgaDQsXHJcbiAgICBoNSxcclxuICAgIGg2IHtcclxuICAgICAgICBtYXJnaW46IDJyZW0gMCAycmVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxuICAgIH1cclxufVxyXG4vKiAtLS0tLS0tLS0tLSBzZWN0aW9uX180MDQgLS0tLS0tLS0tLSAqL1xyXG4uc2VjdGlvbl9fNDA0eyAgXHJcbiAgICBwYWRkaW5nOiA5cmVtIDA7XHJcblxyXG4gICAgaDF7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHJlbTtcclxuICAgIH1cclxuICAgIC5idG5fX2JveHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnNlY3Rpb25fX2lubmVye1xyXG4gICAgICAgIG1heC13aWR0aDogNjByZW07XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tIHNlcnZpY2VzX19wcmljZSAtLS0tLS0tLS0gKi9cclxuLnNlcnZpY2VzX19wcmljZSB7XHJcbiAgICBwYWRkaW5nOiA0cmVtIDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5lYXItZ3JhZGllbnQtYmcpO1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faGVhZGVye1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uX19ib2R5e1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICB9XHJcbiAgICAuY29udGVudF9fc2lkZSB7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbl9faW5uZXIge1xyXG4gICAgfVxyXG4gICAgLnNlcnZpY2VzX19wcmljZV9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogLTFyZW07XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDJyZW0pO1xyXG4gICAgICAgIC5zZXJ2aWNlc19fcHJpY2VfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDFyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMnJlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlcnZpY2VzX19wcmljZV9faXRlbSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xyXG4gICAgICAgICBib3JkZXI6IDAuMnJlbSBzb2xpZCB2YXIoLS1hY2NlbnQtY29sb3IpO1xyXG4gICAgICAgICBwYWRkaW5nOiAzLjJyZW0gMS42cmVtO1xyXG4gICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgIH1cclxuICAgIC5zZXJ2aWNlc19fcHJpY2VfX2l0ZW1fX2ljb24ge1xyXG4gICAgICAgIHdpZHRoOiA4cmVtO1xyXG4gICAgICAgIGhlaWdodDogOHJlbTtcclxuXHJcbiAgICAgICAgc3ZnLCBpbWd7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuNnJlbTtcclxuICAgIH1cclxuICAgIC5zZXJ2aWNlc19fcHJpY2VfX2l0ZW1fX3RpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjZyZW07XHJcbiAgICB9XHJcbiAgICAuc2VydmljZXNfX3ByaWNlX19pdGVtX19pbmZvIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIFxyXG4gICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB3aWR0aDogMi41cmVtO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG4gICAgICAgICAgICBzdmcsIGltZ3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgXHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAucm93c19faW5mbyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDFyZW0pO1xyXG4gICAgICAgIG1hcmdpbjogLTAuNXJlbTtcclxuICAgIH1cclxuICAgIC5jb2x1bW5fX2luZm8ge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMXJlbSk7XHJcbiAgICAgICAgbWFyZ2luOiAwLjVyZW07XHJcbiAgICB9XHJcbiAgICAubGVmdCB7XHJcbiAgICB9XHJcbiAgICAuc3VidGl0bGVfX2luZm8ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyZXkpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICBcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgIH1cclxuICAgIC5idG5fX2JveHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyLjZyZW07XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlX19pbmZvX19ib3h7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxufVxyXG4iXX0= */
