@charset "UTF-8";
/* Base */
/* Reset and base styles  */
@import url(https://fonts.googleapis.com/css?family=Manrope:200,300,regular,500,600,700,800);
* {
  padding: 0px;
  margin: 0px;
  border: none;
}

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

/* Links */
a, a:link, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

/* Common */
aside, nav, footer, header, section, main {
  display: block;
}

h1, h2, h3, h4, h5, h6, p {
  font-size: inherit;
  font-weight: inherit;
}

ul, ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

img, svg {
  max-width: 100%;
  height: auto;
}

address {
  font-style: normal;
}

/* Form */
input, textarea, button, select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
}

input::-ms-clear {
  display: none;
}

button, input[type=submit] {
  display: inline-block;
  box-shadow: none;
  background-color: transparent;
  background: none;
  cursor: pointer;
}

input:focus, input:active,
button:focus, button:active {
  outline: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label {
  cursor: pointer;
}

legend {
  display: block;
}

:root {
  --container-width: 1200px;
  --container-padding: 15px;
  --font-main: "InterTight";
  --font-accent: "InterTight", sans-serif;
  --font-titles: var(--font-accent);
  --page-bg: rgb(255, 255, 255);
  --page-bg-d: rgb(33, 33, 33);
  --text: #3B2D3B;
  --text-d: #F6E3E1;
  --main-color: #F8EDED;
  --main-color-d: #3B2D3B;
  --sec-color: #fdd1af;
  --sec-color-d: #2C2130;
  --btn-color: linear-gradient(to top right, #fd267a, #ff6036);
  --btn-color-text: #F6E3E1;
  --accent: #ac182c;
  --link-color: auto;
  --laptop-size: 1199px;
  --tablet-size: 959px;
  --mobile-size: 599px;
}

.dark {
  --page-bg: #ffffff;
  --text-color: #000000;
}

@font-face {
  font-family: ChivoMono;
  font-display: swap;
  src: url("../fonts/ChivoMono-Bold.woff2") format("woff2"), url("../fonts/ChivoMono-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: ChivoMono;
  font-display: swap;
  src: url("../fonts/ChivoMono-Regular.woff2") format("woff2"), url("../fonts/ChivoMono-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: ChivoMono;
  font-display: swap;
  src: url("../fonts/ChivoMono-Medium.woff2") format("woff2"), url("../fonts/ChivoMono-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: InterTight;
  font-display: swap;
  src: url("../fonts/InterTight-Bold.woff2") format("woff2"), url("../fonts/InterTight-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: InterTight;
  font-display: swap;
  src: url("../fonts/InterTight-Medium.woff2") format("woff2"), url("../fonts/InterTight-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: InterTight;
  font-display: swap;
  src: url("../fonts/InterTight-Regular.woff2") format("woff2"), url("../fonts/InterTight-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
html {
  scroll-behavior: smooth;
  background-color: rgb(39, 39, 39);
}

body {
  background-color: var(--page-bg);
  color: var(--text);
  font-family: var(--font-main);
}

img {
  display: block;
}

a {
  color: var(--link-color);
}

code {
  background-color: #e9f1f6;
  padding: 0.2rem;
  border-radius: 4px;
}

pre.code {
  overflow-x: auto;
  background-color: #e9f1f6;
  padding: 1rem;
  border-radius: 4px;
}

.none {
  display: none !important;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.no-scroll {
  overflow-y: hidden;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

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

.d-flex {
  display: flex;
}

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

/* Демо контент */
.content-demo {
  margin-bottom: 5rem;
  padding: 1rem;
  background-color: #dadada;
}

/* Контейнеры */
.container {
  margin: 0 auto;
  padding: 0 var(--container-padding);
  max-width: var(--container-width);
  width: 100%;
}

.container-full {
  padding: 0 var(--container-padding);
  max-width: 100%;
}

.container-left-50 {
  padding: 0 var(--container-padding);
  max-width: 50%;
}
@media (max-width: 820px) {
  .container-left-50 {
    max-width: 100%;
  }
}

.container-right-50 {
  padding: 0 var(--container-padding);
  max-width: 50%;
  margin-left: auto;
}
@media (max-width: 820px) {
  .container-right-50 {
    max-width: 100%;
  }
}

.container-right {
  padding-left: calc((100% - var(--container-width)) / 2 + var(--container-padding));
}
@media (max-width: 1220px) {
  .container-right {
    padding-left: var(--container-padding);
  }
}

.container-left {
  padding-right: calc((100% - var(--container-width)) / 2 + var(--container-padding));
}
@media (max-width: 1220px) {
  .container-left {
    padding-right: var(--container-padding);
  }
}

.container-half-left {
  padding-right: calc((100% - var(--container-width)) / 2 + var(--container-width) / 2);
  padding-left: calc((100% - var(--container-width)) / 2 + var(--container-padding));
}
@media (max-width: 1220px) {
  .container-half-left {
    padding-left: var(--container-padding);
  }
}
@media (max-width: 820px) {
  .container-half-left {
    padding: 0 var(--container-padding);
  }
}

.container-half-right {
  padding-left: calc((100% - var(--container-width)) / 2 + var(--container-width) / 2);
  padding-right: calc((100% - var(--container-width)) / 2 + var(--container-padding));
}
@media (max-width: 1220px) {
  .container-half-right {
    padding-right: var(--container-padding);
  }
}
@media (max-width: 820px) {
  .container-half-right {
    padding: 0 var(--container-padding);
  }
}

html, body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Blocks */
.footer {
  padding: 30px 0;
  box-shadow: 0px -2px 10px hsla(0, 0%, 0%, 0.2);
}

.footer-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 15px;
}
.footer-container div {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
}
.footer-container div svg {
  transition: all 0.3s ease 0s;
  max-width: 30px;
  width: 100%;
}
.footer-container div svg:hover {
  transform: scale(1.1);
}
.footer-container p {
  line-height: 130%;
  font-size: 18px;
}

.header {
  z-index: 10;
}

.header {
  position: absolute;
  width: 100%;
  padding: 20px;
  background: linear-gradient(to right, hsla(0, 0%, 20%, 0.7), #999999, hsla(0, 0%, 20%, 0.7));
  backdrop-filter: blur(10px); /* Размытие фона */
  -webkit-backdrop-filter: blur(10px); /* Для Webkit-браузеров */
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
}

body.dark-theme header {
  background-color: rgba(0, 0, 0, 0.2); /* Полупрозрачный фон */
}

.header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.btn-profil.btn-nav {
  height: 60px;
  width: 60px;
  margin-right: 15px;
  padding: 0;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  align-items: center;
}
.btn-profil.btn-nav svg {
  width: 30px;
  height: 30px;
}

@media (max-width: 1030px) {
  .btn-profil.btn-nav {
    height: 48px;
    width: 48px;
  }
}
.icons-wrapper {
  padding: 30px 0;
  display: flex;
  column-gap: 30px;
}

.icon {
  fill: transparent;
  stroke: transparent;
  width: 62px;
  height: 62px;
}

.icon--heart-line {
  fill: rgb(241, 68, 131);
}

.icon--id-card-line {
  fill: rgb(51, 51, 51);
}

.icon--search-line {
  fill: rgb(28, 176, 80);
}

.icon--user-star {
  fill: rgb(26, 134, 235);
}

.icon--user {
  stroke: rgb(26, 134, 235);
  transition: all 0.2s ease-in;
}
.icon--user:hover {
  stroke: rgb(17, 193, 90);
}

h3.title {
  font-size: 50px;
  line-height: 130%;
  font-weight: 700;
  text-align: center;
  padding-bottom: 60px;
  text-transform: uppercase;
}

h4.title {
  text-transform: capitalize;
  text-align: center;
  font-size: 30px;
  line-height: 130%;
  font-weight: 600;
  padding-bottom: 20px;
}

h5.title {
  font-size: 20px;
  line-height: 130%;
  font-weight: 600;
  text-align: left;
}

.main-info {
  margin-top: 120px;
  background: var(--main-color);
}

body.dark-theme .main-info {
  background: var(--main-color-d);
}

.nav-right > ul {
  display: flex;
  gap: 20px;
}
.nav-right > ul li {
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 16px;
  line-height: 130%;
  font-weight: 500;
  border: 3px solid var(--text);
  transition: all 0.3s ease 0s;
  cursor: pointer;
}
.nav-right > ul li:hover {
  color: var(--text-d);
  border: 3px solid var(--text);
  background: var(--text);
}

body.dark-theme .nav-right > ul li {
  border: 3px solid var(--text-d);
}
body.dark-theme .nav-right > ul li:hover {
  color: var(--text);
  border: 3px solid var(--text-d);
  background: var(--text-d);
}

@media (max-width: 1030px) {
  .nav-right > ul {
    gap: 10px;
  }
  .nav-right > ul li {
    font-size: 16px;
  }
}
.info-bg {
  padding: 60px 80px;
  border-radius: 30px;
  background: hsla(0, 0%, 0%, 0.1);
}

body.dark-theme .info-bg {
  background: hsla(0, 0%, 100%, 0.1);
}

.text {
  font-size: 17px;
  line-height: 150%;
  font-weight: 400;
  opacity: 0.8;
}

body.dark-theme .section-pluses.full_bg,
body.dark-theme .section-star.full_bg,
body.dark-theme .section-like.full_bg {
  background: var(--sec-color-d);
}

.section-pluses.reverse .pluses-content {
  flex-direction: row-reverse;
}
@media (max-width: 1030px) {
  .section-pluses.reverse .pluses-content {
    flex-direction: column;
  }
}

.section-star.full_bg,
.section-pluses.full_bg,
.section-like.full_bg {
  background: var(--sec-color);
}

.section-pluses {
  padding: 50px 0;
}
.section-pluses .btn-app {
  transition: all 0.3s ease 0s;
  margin: 0 auto;
  padding: 18px 26px;
  font-size: 16px;
  border: 3px var(--text) solid;
  border-radius: 30px;
}
.section-pluses .btn-app:hover {
  color: var(--text-d);
  border: 3px solid var(--text);
  background: var(--text);
}
.section-pluses .pluses-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.section-pluses .pluses-content img {
  object-fit: contain;
  width: 100%;
  max-height: 500px;
  max-width: 50%;
}
.section-pluses .pluses-content > div {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.section-pluses .pluses-content > div > div {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.section-like {
  padding: 50px 0;
}
.section-like .like-content {
  display: grid;
  justify-content: space-between;
  gap: 20px 20px;
  grid-template-columns: repeat(2, minmax(200px, 700px));
}
.section-like .like-cart {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.section-like .text {
  text-align: center;
}

.faq-section {
  padding: 50px 0;
}

.faq.active > svg {
  transition: all 0.3s ease 0s;
  transform: rotate(180deg);
}

.faq > svg {
  transition: all 0.3s ease 0s;
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

body.dark-theme .faq-item {
  background: hsla(0, 0%, 100%, 0.2);
}
body.dark-theme .faq-item a {
  border: 1px solid var(--text-d);
}

.faq-item {
  cursor: pointer;
  border-radius: 30px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0px;
  padding: 20px;
  background: hsla(0, 0%, 0%, 0.2);
  overflow: hidden;
}
.faq-item svg {
  width: 24px;
}
.faq-item .faq {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.faq-info {
  padding: 0 10px;
  opacity: 0;
  visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 10px;
}
.faq-info h5 {
  padding-top: 20px;
}
.faq-info a {
  margin-top: 10px;
  border: 1px solid var(--text);
  padding: 10px;
  border-radius: 30px;
}

.faq-info.active {
  opacity: 1;
  visibility: visible;
}

.section-app {
  padding: 50px 0;
}

.title.app-title {
  padding-bottom: 20px;
}

.app-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.app-container .btn-app {
  transition: all 0.3s ease 0s;
  padding: 18px 26px;
  font-size: 16px;
  border: 3px var(--text) solid;
  border-radius: 30px;
}
.app-container .btn-app:hover {
  color: var(--text-d);
  border: 3px solid var(--text);
  background: var(--text);
}

body.dark-theme .app-container .btn-app:hover {
  color: var(--text);
  border: 3px solid var(--text-d);
  background: var(--text-d);
}

body.dark-theme .app-container .btn-app {
  border: 3px var(--text-d) solid;
}

.info-block {
  display: flex;
  flex-direction: column;
  margin-bottom: 50px;
  gap: 20px;
}
.info-block h4, .info-block h5, .info-block ul, .info-block ol {
  margin: 10px 0;
  line-height: 150%;
}
.info-block ul {
  padding-left: 20px;
}
.info-block ul li {
  list-style: initial;
}
.info-block ol {
  padding-left: 20px;
}
.info-block a {
  border-bottom: 2px solid var(--text);
  padding: 0 5px;
  font-weight: 600;
  font-size: 16px;
  line-height: 150%;
}
.info-block li {
  line-height: 150%;
}
.info-block p {
  line-height: 150%;
}

body.dark-theme .info-block a {
  border-bottom: 2px solid var(--text-d);
}

@media (max-width: 1030px) {
  .info-bg {
    padding: 20px 20px;
  }
  .pluses-content {
    flex-direction: column;
  }
  .pluses-content img {
    max-width: 100%;
  }
  h3.title {
    font-size: 36px;
    line-height: 130%;
    font-weight: 700;
    text-align: center;
    padding-bottom: 50px;
    text-transform: uppercase;
  }
  h4.title {
    text-transform: capitalize;
    text-align: center;
    font-size: 24px;
    line-height: 130%;
    font-weight: 600;
    padding-bottom: 20px;
  }
  h5.title {
    font-size: 18px;
    line-height: 130%;
    font-weight: 600;
    text-align: left;
  }
}
@media (max-width: 765px) {
  .section-like .like-content {
    display: grid;
    justify-content: space-between;
    gap: 20px 20px;
    grid-template-columns: repeat(1, minmax(200px, 800px));
  }
  h3.title {
    font-size: 28px;
    line-height: 130%;
    font-weight: 700;
    text-align: center;
    padding-bottom: 50px;
    text-transform: uppercase;
  }
  h4.title {
    text-transform: capitalize;
    text-align: center;
    font-size: 22px;
    line-height: 130%;
    font-weight: 600;
    padding-bottom: 20px;
  }
  h5.title {
    font-size: 18px;
    line-height: 130%;
    font-weight: 600;
    text-align: left;
  }
}
.section-star {
  padding: 50px 0;
}

.star-list {
  display: grid;
  justify-content: space-between;
  align-items: start;
  grid-template-columns: repeat(4, minmax(200px, 700px));
  gap: 10px;
}

@media (max-width: 1030px) {
  .star-list {
    gap: 30px;
    grid-template-columns: repeat(2, minmax(200px, 700px));
  }
}
@media (max-width: 499px) {
  .star-list {
    gap: 40px;
    grid-template-columns: repeat(1, minmax(200px, 700px));
  }
}
.star-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.star-item svg {
  margin: 0 auto;
  width: 80px;
}
.star-item p {
  margin-top: 10px;
  font-size: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.star-item p span {
  font-weight: 600;
}

* {
  user-select: none;
}

body.light-theme {
  background: var(--main-color);
  color: var(--text);
}
body.light-theme svg {
  fill: var(--text);
}

body.light-theme .btn-white {
  background: #ddd;
}

body.light-theme .btn-dark {
  background: var(--main-color-d);
  color: var(--text-d);
}
body.light-theme .btn-dark svg {
  fill: var(--text-d);
}

/* Стили для тёмной темы */
body.dark-theme,
body.dark-theme .left {
  background: var(--main-color-d);
  color: var(--text-d);
  fill: var(--text-d);
}

body.dark-theme .right {
  background: var(--sec-color-d);
  color: var(--text-d);
}

body.dark-theme .btn-white {
  background: var(--main-color);
  color: var(--text);
}

body.dark-theme .btn-dark,
body.dark-theme .left {
  background: var(--main-color-d);
}

body.dark-theme .bar {
  background: var(--text-d);
}

body.light-theme .bar {
  background: var(--text);
}

.main-section {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  min-height: 100vh;
  background: VAR(var(--main-color));
}

body.dark-theme .main-section {
  background: var(--main-color-d);
}

.bubble {
  position: absolute;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  opacity: 0.7;
  display: flex;
  align-items: center;
  justify-content: center;
}

.heart {
  width: 50px;
  height: 50px;
  fill: white;
}

.left,
.right {
  transition: all 0.3s ease 0s;
  width: 50%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
}

#content1.active {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.right {
  display: flex;
  justify-content: center;
  align-items: center;
}

.left-user-stream {
  transition: all 0.3s ease 0s;
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
}

.content-left {
  margin-top: 120px;
  margin-bottom: 80px;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.5s ease;
  text-align: center;
  display: none;
}

.content-left h2 {
  font-size: 52px;
  font-weight: 600;
  line-height: 130%;
  max-width: 400px;
  text-align: center;
}
.content-left p {
  padding-top: 15px;
  max-width: 600px;
  font-size: 16px;
  line-height: 130%;
}

.content-left.active {
  opacity: 1;
  display: flex;
  flex-direction: column;
}

.full-screen .left {
  width: 100% !important;
}
.full-screen .right {
  transition: all 0s ease 0s;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: 50%;
  top: 0;
  height: 100%;
  width: 0px !important;
  height: 0px !important;
}

.hidden {
  opacity: 0;
  position: absolute;
}

.left {
  background: var(--main-color);
}
.left .btn-app {
  transition: all 0.3s ease 0s;
  margin-top: 20px;
  padding: 18px 26px;
  font-size: 16px;
  border: 3px var(--text) solid;
  border-radius: 30px;
}
.left .btn-app:hover {
  color: var(--text-d);
  border: 3px solid var(--text);
  background: var(--text);
}
.left .btn-app {
  position: relative;
  transition: all 0.3s ease 0s;
  margin-top: 20px;
  padding: 18px 26px;
  font-size: 16px;
  border: 3px var(--text) solid;
  border-radius: 30px;
  font-weight: bold;
}
.left .btn-app:hover {
  color: #fff;
  background: linear-gradient(135deg, #FF8C00, #FFD700);
  border-color: #FFD700;
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.7);
}

body.dark-theme .left .btn-app:hover {
  color: #fff;
  background: linear-gradient(135deg, #FF8C00, #FFD700);
  border-color: #FFD700;
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.7);
}

body.dark-theme .left .btn-app {
  border: 3px var(--text-d) solid;
}

.right {
  background: var(--sec-color);
}

.nav-left {
  z-index: 5;
  padding: 0 30px;
  position: absolute;
  left: 0;
  top: 20px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.btn-sing,
.btn-profil {
  margin-right: 30px;
}

.btn-sing.active,
.btn-store.active,
.btn-profil.active {
  display: inline-block;
}

.btn-sing,
.btn-store,
.btn-profil {
  display: none;
}

.btn-nav {
  padding: 18px 26px;
  font-size: 16px;
  border: 3px var(--text) solid;
  border-radius: 30px;
}

body.dark-theme .btn-nav {
  border: 3px var(--text-d) solid;
}

.logo {
  z-index: 1;
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.logo svg {
  width: 100%;
  max-width: 60px;
}

.Logo-name {
  font-size: 26px;
  font-weight: 600;
  text-transform: uppercase;
}

.nav-list {
  overflow: hidden;
  display: flex;
  position: relative;
  border-radius: 30px;
}
.nav-list::after {
  border-radius: 30px;
  content: "";
  width: 100%;
  height: 100%;
  border: 3px var(--text) solid;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.nav-list button {
  transition: all 0.3s ease 0s;
  z-index: 2;
  padding: 13px 26px;
  font-size: 16px;
  position: relative;
}
.nav-list button svg {
  width: 30px;
  height: 30px;
}
.nav-list button.active {
  background: var(--btn-color);
  color: var(--btn-color-text);
}
.nav-list button.active svg {
  fill: var(--btn-color-text);
}

body.dark-theme .nav-list::after {
  border: 3px var(--text-d) solid;
}

.nav-list.nav-list-left {
  z-index: 11;
  position: fixed;
  left: 50%;
  top: 20px;
  transform: translate(-50%, 0);
}
.nav-list.nav-list-left {
  background: rgba(255, 255, 255, 0.2);
  /* Полупрозрачный фон */
  backdrop-filter: blur(10px);
  /* Размытие фона */
  -webkit-backdrop-filter: blur(10px);
  /* Для Webkit-браузеров */
}
.nav-list.nav-list-left button {
  z-index: 6;
}

.users-online {
  margin-bottom: 20px;
  left: auto;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
}

.nav-right {
  z-index: 1;
  padding: 0 30px;
  position: absolute;
  right: 0;
  top: 20px;
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 0px;
}

.nav-list.nav-list-right {
  border: none;
}

.video-container {
  overflow: hidden;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#videoElement,
#videoElement-user {
  object-fit: cover;
  width: 90%;
  height: 80%;
  border-radius: 30px;
  margin: 0 auto;
  transform: scaleX(-1) scale(1);
  /* Отражение и увеличение */
}

#videoElement.full-screen,
#videoElement-user.full-screen {
  object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: 0px;
  margin: 0 auto;
  transform: scaleX(-1) scale(1);
  /* Отражение и увеличение */
}

@media (max-width: 768px) {
  #videoElement,
  #videoElement-user {
    border-radius: 0px;
    width: 100%;
    height: 100%;
  }
}
.controls-container {
  height: 100%;
  width: 100%;
  z-index: 2;
  position: absolute;
  left: auto;
  bottom: 0%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 20px;
  padding-top: 120px;
}

.controls-container.stream {
  position: fixed;
  left: 0;
  bottom: 0%;
  padding-top: 0px;
  justify-content: end;
}

/* Стиль для настроек */
.chat-friends {
  padding: 10px;
  max-width: 260px;
  overflow-y: hidden;
  /* Включаем горизонтальную прокрутку */
  scroll-snap-type: x mandatory;
  /* Для фиксации при прокрутке */
  -webkit-overflow-scrolling: touch;
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 10px;
  background: var(--sec-color);
  border-radius: 20px 0 0 0px;
  scrollbar-color: var(--main-color) var(--sec-color);
}
.chat-friends > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.chat-friends > div h5 {
  font-size: 14px;
}
.chat-friends > div img {
  border-radius: 50%;
  width: 100%;
  max-width: 50px;
  object-fit: cover;
}
.chat-friends::-webkit-scrollbar-thumb {
  background-color: #ff7f50;
  /* Цвет "ползунка" */
  border-radius: 4px;
  /* Округлые края ползунка */
}
.chat-friends::-webkit-scrollbar-track {
  background-color: #f0f0f0;
  /* Цвет фона полосы прокрутки */
  border-radius: 4px;
  /* Округлые края фона */
}
.chat-friends::-webkit-scrollbar-thumb:hover {
  background-color: #ff4500;
  /* Более темный оттенок при наведении */
}

body.dark-theme .chat-friends {
  background: var(--sec-color-d);
  scrollbar-color: var(--main-color-d) var(--sec-color-d);
}

.btns-setting-chat {
  z-index: 2;
}

#settingsPopup h2 {
  line-height: 200%;
  font-weight: 600;
  font-size: 20px;
  padding: 0 20px;
}

.controls-container.stream .btns-setting-chat {
  position: absolute;
  right: 25%;
  top: 10px;
  transform: translate(50%, 0%);
}
.controls-container.stream .btns-setting-chat button {
  padding: 10px 10px;
}
@media (max-width: 768px) {
  .controls-container.stream .btns-setting-chat {
    position: absolute;
    right: 50%;
    top: 10px;
    transform: translate(50%, 0%);
  }
}

.btns-setting-chat {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 30px;
  background: rgba(53, 46, 90, 0.5);
}
.btns-setting-chat button.active {
  background: var(--btn-color);
  color: var(--btn-color-text);
}
.btns-setting-chat button {
  display: flex;
  text-align: center;
  padding: 12px 20px;
  font-size: 18px;
  color: #ffffff;
  appearance: none;
  /* Убираем стандартную стрелочку */
  -webkit-appearance: none;
  /* Убираем стрелочку на Safari */
  -moz-appearance: none;
  /* Убираем стрелочку на Firefox */
  cursor: pointer;
  transition: all 0.3s ease 0s;
}
.btns-setting-chat button:hover {
  background: rgba(53, 46, 90, 0.3);
}
.btns-setting-chat button:focus {
  outline: none;
  /* Убираем обводку при фокусе */
}
.btns-setting-chat button::-ms-expand {
  display: none;
  /* Убираем стрелочку в IE */
}

.btn-set-chat#gender {
  border-right: 2px solid #ffffff;
}
.btn-set-chat#gender .gender-option svg {
  width: 30px;
  height: 30px;
}

body.dark-theme .gender-select button {
  border: 3px var(--text-d) solid;
}

.gender-select {
  display: grid;
  justify-content: center;
  align-items: center;
  gap: 10px 10px;
  padding: 0px 20px 0px 20px;
  grid-template-columns: repeat(3, minmax(100px, 600px));
}
.gender-select button {
  padding: 10px;
  border: 3px var(--text) solid;
  border-radius: 30px;
  font-size: 18px;
  font-weight: 500;
}
.gender-select .gender-option > span img {
  max-width: 40px;
  object-fit: contain;
  width: 100%;
}
.gender-select .gender-option > span {
  display: flex;
  justify-content: center;
  align-items: center;
}
.gender-select .gender-option.active {
  background: var(--btn-color);
  color: var(--btn-color-text);
}

.gender-option {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@media (max-width: 768px) {
  .gender-option {
    flex-direction: row;
  }
}

body.dark-theme .country-select button {
  border: 3px var(--text-d) solid;
}

.country-select {
  max-height: 200px;
  overflow-y: auto;
  display: grid;
  justify-content: center;
  gap: 10px 10px;
  padding: 0px 20px 20px 20px;
  grid-template-columns: repeat(auto-fit, minmax(100px, 700px));
}
.country-select::-webkit-scrollbar {
  display: none;
}
.country-select button {
  padding: 10px 20px;
  border: 3px var(--text) solid;
  border-radius: 30px;
  font-size: 18px;
  font-weight: 500;
}
.country-select button.active {
  background: var(--btn-color);
  color: var(--btn-color-text);
}
.country-select .country-option > span img {
  max-width: 30px;
  object-fit: contain;
  width: 100%;
}
.country-select .country-option > span {
  display: flex;
  justify-content: center;
  align-items: center;
}

.country-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

body.dark-theme .report-select button {
  border: 3px var(--text-d) solid;
}

.report-select {
  display: grid;
  justify-content: center;
  gap: 10px 10px;
  padding: 40px;
  grid-template-columns: repeat(auto-fit, minmax(100px, 700px));
}
.report-select button {
  padding: 10px 20px;
  border: 3px var(--text) solid;
  border-radius: 30px;
  font-size: 18px;
  font-weight: 500;
}
.report-select .report-option > span img {
  max-width: 40px;
  object-fit: contain;
  width: 100%;
}
.report-select .report-option > span {
  display: flex;
  justify-content: center;
  align-items: center;
}

.report-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

/* Стили для селектов без стрелочек и бордера */
.select-box:focus {
  background: rgba(255, 255, 255, 0.1);
}

/* Стиль для селектора пола */
/* Стиль для селектора страны */
#startButton {
  display: inline;
  font-size: 20px;
  color: var(--btn-color-text);
  background: var(--btn-color);
  padding: 20px 40px;
  border-radius: 30px;
  font-weight: 500;
  line-height: 130%;
  cursor: pointer;
}

.controls {
  margin-bottom: 0px;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}

#nextButton {
  position: absolute;
  top: 80px;
  right: 51%;
  z-index: 1;
}

#backButton {
  position: absolute;
  top: 20px;
  left: 1%;
  z-index: 1;
}

#repButton {
  z-index: 1;
  position: absolute;
  top: 20px;
  right: 51%;
  background: white;
}
#repButton svg {
  fill: red !important;
  background: white !important;
  width: 30px;
  height: 30px;
}

#stopButton {
  position: absolute;
  top: 20px;
  right: 15px;
  z-index: 1;
}
#stopButton svg {
  fill: white !important;
}

.control-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  font-weight: 500;
  line-height: 130%;
  overflow: hidden;
  border-radius: 50%;
  background: white;
  color: var(--btn-color-text);
}
.control-btn svg {
  width: 30px;
  height: 30px;
}

#toggleLight {
  padding: 10px;
  border-radius: 50%;
  background: var(--btn-color);
  color: var(--btn-color-text);
  position: absolute;
  top: 80px;
  right: 15px;
  z-index: 1;
}

.main-section.stream .right {
  background: white;
}

.main-section.stream .left-user-stream {
  background: white;
}

#togglescreen {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  padding: 10px;
  border-radius: 50%;
  background: var(--btn-color);
  color: var(--btn-color-text);
  position: absolute;
  top: 140px;
  right: 15px;
  z-index: 1;
}
#togglescreen svg {
  width: 30px;
  height: 30px;
}

.logo.logo-stream {
  background: none;
  position: absolute;
  left: 20px;
  bottom: 10px;
}
.logo.logo-stream svg {
  background: none;
}

.controls .heart-btn {
  cursor: pointer;
  position: absolute;
  bottom: 70px;
  left: 23%;
  padding: 15px;
  z-index: 1;
  border-radius: 30px;
  font-weight: 500;
  color: white;
  background: linear-gradient(45deg, #f1c40f, #e67e22);
}
.controls .heart-btn svg {
  fill: rgb(84, 218, 84) !important;
  width: 40px;
  height: 40px;
  background: none;
}

.chat-stream {
  position: absolute;
  bottom: 10px;
  right: 0px;
  width: 50%;
  display: flex;
  flex-direction: column-reverse;
}
.chat-stream .chat-stream-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 0px 40px 0 40px;
  overflow: hidden;
}
.chat-stream .stream-messages {
  flex: 1;
  overflow-y: auto;
  display: flex;
  flex-direction: column-reverse;
  max-height: 200px;
  padding: 10px;
}
.chat-stream .stream-messages::-webkit-scrollbar {
  display: none;
}
.chat-stream .stream-messages::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 40px;
  /* Высота градиентного обреза */
  background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 100%);
}
.chat-stream .stream-input-container {
  display: flex;
}
.chat-stream .stream-input-container input {
  color: black;
}
.chat-stream .stream-message-input {
  width: 100%;
  flex: 1;
  padding: 13.37px 20px;
  border: 1px solid #aaa;
  border-radius: 30px 0 0 30px;
  outline: none;
  font-size: 18px;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(10px);
  /* Размытие фона */
  -webkit-backdrop-filter: blur(10px);
  color: var(--text-d);
}
.chat-stream body.dark-theme .chat-stream .stream-message-input {
  color: var(--text-d);
}
.chat-stream .stream-send-btn {
  padding: 8px 16px 8px 12px;
  border: none;
  background: var(--btn-color);
  color: var(--btn-color-text);
  border-radius: 0 30px 30px 0;
  cursor: pointer;
  transition: all 0.3s ease 0s;
  display: flex;
  justify-content: center;
  align-items: center;
}
.chat-stream .send-btn:hover {
  opacity: 0.7;
}
.chat-stream .stream-message {
  padding: 8px 12px;
  background: var(--btn-color);
  color: var(--btn-color-text);
  border-radius: 30px;
  margin-bottom: 5px;
  align-self: flex-start;
  max-width: 80%;
}
.chat-stream .stream-message::after, .chat-stream .stream-message::before {
  display: none;
}
.chat-stream .stream-message.stream-personal {
  background: var(--btn-color);
  color: var(--btn-color-text);
  position: relative;
  align-self: flex-end;
  margin-right: 40px;
}
.chat-stream .stream-message.stream-personal .avatar {
  position: absolute;
  z-index: 1;
  bottom: 0px;
  right: -40px;
  left: auto;
  width: 35px;
  height: 35px;
  border-radius: 30px;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
  border-width: 2px;
  border-style: solid;
  border-color: #fd267a;
  border-image: initial;
}
.chat-stream .stream-message.stream-incoming {
  background: rgba(255, 255, 255, 0.2);
  color: var(--btn-color-text);
  position: relative;
  margin-left: 40px;
}
.chat-stream .stream-message.stream-incoming .avatar {
  position: absolute;
  z-index: 1;
  bottom: 0px;
  left: -40px;
  right: auto;
  width: 35px;
  height: 35px;
  border-radius: 30px;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
  border-width: 2px;
  border-style: solid;
  border-color: rgba(255, 255, 255, 0.24);
  border-image: initial;
}

.users-online {
  display: flex;
  align-items: center;
  justify-content: center;
}

.online-icon {
  width: 10px;
  height: 10px;
  background: rgb(0, 255, 0);
  border-radius: 50%;
  margin-right: 10px;
  /* Отступ между иконкой и текстом */
  margin-bottom: 1px;
  box-shadow: 0 0 5px rgba(0, 255, 0, 0.8);
  /* Свечение */
  animation: pulse 1.5s infinite ease-in-out;
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.3);
    opacity: 0.7;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
#loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  transition: all 0.3s ease 0s;
}
#loading-screen p {
  left: -10px;
  position: relative;
  text-align: center;
  color: white;
  font-size: 18px;
  font-weight: 600;
  z-index: 1;
}
#loading-screen .heart-container {
  position: relative;
  text-align: center;
  animation: fadeIn 1s ease-out forwards;
}
#loading-screen .heart {
  width: 50px;
  height: 50px;
  background: red;
  position: relative;
  transform: rotate(45deg);
  animation: pulse 0.5s infinite ease-in-out;
  border-radius: 0% 0% 0 0;
  box-shadow: 0 0 150px rgba(255, 0, 0, 0.9), 0 0 140px rgba(255, 0, 0, 0.7), 0 0 155px rgba(255, 0, 0, 0.5);
  z-index: 1;
  margin-bottom: 50px;
}
#loading-screen .heart:before,
#loading-screen .heart:after {
  content: "";
  position: absolute;
  background: red;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-shadow: 0 0 222px rgba(255, 0, 0, 0.9), 0 0 40px rgba(255, 0, 0, 0.7), 0 0 55px rgba(255, 0, 0, 0.5);
}
#loading-screen .heart:before {
  top: -50%;
  left: 0;
}
#loading-screen .heart:after {
  left: -50%;
  top: 0;
}
#loading-screen .sparks-container {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  z-index: 0;
}
#loading-screen .spark {
  position: absolute;
  width: 5px;
  height: 5px;
  background: orange;
  border-radius: 50%;
  animation: sparkAnimation 2s infinite ease-in-out;
  box-shadow: 0 0 10px rgba(255, 165, 0, 0.8), 0 0 20px rgba(255, 165, 0, 0.6);
}
#loading-screen .spark:nth-child(1) {
  top: 30%;
  left: 10%;
  animation-delay: 0.1s;
}
#loading-screen .spark:nth-child(2) {
  top: 20%;
  left: 20%;
  animation-delay: 0.3s;
}
#loading-screen .spark:nth-child(3) {
  top: 40%;
  left: 30%;
  animation-delay: 0.5s;
}
#loading-screen .spark:nth-child(4) {
  top: 60%;
  left: 40%;
  animation-delay: 0.7s;
}
#loading-screen .spark:nth-child(5) {
  top: 50%;
  left: 50%;
  animation-delay: 0.9s;
}

@keyframes pulse {
  0% {
    transform: rotate(45deg) scale(1);
  }
  50% {
    transform: rotate(45deg) scale(1.1);
  }
  100% {
    transform: rotate(45deg) scale(1);
  }
}
@keyframes sparkAnimation {
  0% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
  50% {
    transform: translateY(-50px) scale(1.5);
    opacity: 0.5;
  }
  100% {
    transform: translateY(-100px) scale(0);
    opacity: 0;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.stream-load {
  opacity: 0;
  z-index: -1;
}
.stream-load .heart-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 768px) {
  .stream-load .heart-container {
    width: 100%;
    height: 50%;
    top: 50%;
    transform: translate(0%, -50%);
    align-items: flex-start;
  }
}
.stream-load .heart {
  width: 50px;
  height: 50px;
  background: red;
  position: relative;
  transform: rotate(45deg);
  animation: pulse 0.5s infinite ease-in-out;
  border-radius: 0% 0% 0 0;
  box-shadow: 0 0 150px rgba(255, 0, 0, 0.9), 0 0 140px rgba(255, 0, 0, 0.7), 0 0 155px rgba(255, 0, 0, 0.5);
  z-index: 1;
  margin-bottom: 50px;
}
.stream-load .heart:before,
.stream-load .heart:after {
  content: "";
  position: absolute;
  background: red;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-shadow: 0 0 222px rgba(255, 0, 0, 0.9), 0 0 40px rgba(255, 0, 0, 0.7), 0 0 55px rgba(255, 0, 0, 0.5);
}
.stream-load .heart:before {
  top: -50%;
  left: 0;
}
.stream-load .heart:after {
  left: -50%;
  top: 0;
}
.stream-load .sparks-container {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  z-index: 0;
}
.stream-load .spark {
  position: absolute;
  width: 5px;
  height: 5px;
  background: orange;
  border-radius: 50%;
  animation: sparkAnimation 2s infinite ease-in-out;
  box-shadow: 0 0 10px rgba(255, 165, 0, 0.8), 0 0 20px rgba(255, 165, 0, 0.6);
}
.stream-load .spark:nth-child(1) {
  top: 30%;
  left: 10%;
  animation-delay: 0.1s;
}
.stream-load .spark:nth-child(2) {
  top: 20%;
  left: 20%;
  animation-delay: 0.3s;
}
.stream-load .spark:nth-child(3) {
  top: 40%;
  left: 30%;
  animation-delay: 0.5s;
}
.stream-load .spark:nth-child(4) {
  top: 60%;
  left: 40%;
  animation-delay: 0.7s;
}
.stream-load .spark:nth-child(5) {
  top: 50%;
  left: 50%;
  animation-delay: 0.9s;
}

/* Для основного контента */
.main {
  display: none;
  /* Контент скрыт на старте */
}

.theme-toggle {
  display: flex;
  align-items: center;
  padding: 10px 0;
}

.icon {
  pointer-events: none;
  z-index: 1;
  position: relative;
  left: 25px;
  width: 20px;
  height: 20px;
  fill: black;
  transition: all 0.3s ease 0s;
}

.icon.moon-icon {
  position: relative;
  left: -25px;
  width: 20px;
  height: 20px;
  fill: black;
  transition: all 0.3s ease 0s;
}

body.dark-theme .icon {
  width: 20px;
  height: 20px;
  fill: rgb(255, 255, 255);
}

/* Switch styles */
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 30px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--main-color);
  transition: 0.4s;
  border-radius: 34px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  left: 0px;
  bottom: 0px;
  background: var(--btn-color);
  transition: 0.4s;
  border-radius: 50%;
}

input:checked + .slider {
  background: #0a0a0a;
}

input:checked + .slider:before {
  transform: translateX(30px);
}

.history {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 15px;
}

.history .history-item {
  background: var(--sec-color);
  margin: 10px 0;
  padding: 15px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: 400px;
  box-sizing: border-box;
}

.history .history-item img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
}

.history .history-item p {
  margin: 0;
}

.history .super-msg {
  background: var(--btn-color);
  color: var(--btn-color-text);
  border: none;
  padding: 10px 28px;
  cursor: pointer;
  border-radius: 30px;
  margin: 10px 0;
}

.history .history-time {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px grey solid;
  width: 100%;
}

.history .history-time > div {
  display: flex;
  gap: 10px;
}

.history .history-time p {
  padding: 8px;
}

.history .del {
  width: 20px;
}

.history .del svg,
.history .del g,
.history .del path {
  fill: none;
  stroke: var(--text);
}

.history .rep {
  width: 20px;
  fill: none;
}

.history .rep path {
  fill: red;
}

.history .history-user {
  display: flex;
  padding: 0px 20px;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  width: 100%;
}

.history .history-name {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex: 1;
}

.history .history-name p {
  padding: 0;
  font-size: 20px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 200px;
}

.history .history-info {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

.history .history-info p {
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

.history .history-info p span {
  display: flex;
  justify-content: center;
  align-items: center;
}

.history .history-info svg {
  width: 20px;
}

.history .history-info svg,
.history .history-info g,
.history .history-info path {
  fill: none;
}

body.dark-theme .history-item {
  background: var(--sec-color-d);
}

body.dark-theme .del svg,
body.dark-theme .del g,
body.dark-theme .del path {
  stroke: var(--text-d);
}

body.dark-theme .history-info svg,
body.dark-theme .history-info g,
body.dark-theme .history-info path {
  stroke: var(--text-d);
}

.chat-container {
  margin: 0 10px;
  display: flex;
  justify-content: center;
  align-items: start;
}

.chat-list {
  background: var(--sec-color);
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  overflow: hidden;
}

body.dark-theme .chat-list {
  background: var(--sec-color-d);
}

body.dark-theme .chat-left-panel {
  background: var(--sec-color-d);
}

.chat-left-panel {
  height: 500px;
  overflow: auto;
  max-height: 70vh;
  background: var(--sec-color);
  border-radius: 20px 0 0 20px;
}
.chat-left-panel::-webkit-scrollbar {
  display: none;
}

.chat-list-item.active {
  background: var(--btn-color);
  color: var(--btn-color-text);
}

.chat-list-item {
  padding: 10px;
  cursor: pointer;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.chat-list-item img {
  border-radius: 50%;
  max-width: 60px;
  width: 100%;
}
.chat-list-item div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
}
.chat-list-item div h5 {
  font-size: 16px;
  padding: 5px 10px 0 10px;
}
.chat-list-item div p {
  opacity: 0.7;
  text-align: start;
  font-size: 12px;
  padding: 5px 10px;
  line-height: 100%;
  width: 180px;
  /* Ширина блока */
  white-space: nowrap;
  /* Запрещает перенос текста */
  overflow: hidden;
  /* Обрезает текст, выходящий за границы */
  text-overflow: ellipsis;
  /* Добавляет ... в конце */
}

.chat.active {
  display: flex;
}

.chat {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0%);
  position: relative;
  top: auto;
  left: auto;
  transform: translate(0, 0);
  max-width: 600px;
  width: 100%;
  height: 500px;
  max-height: 70vh;
  z-index: 1;
  overflow: hidden;
  background: var(--sec-color);
  border-radius: 0 20px 20px 0;
  display: none;
  justify-content: space-between;
  flex-direction: column;
}

body.dark-theme .chat {
  background: var(--sec-color-d);
}

.btn-chat {
  position: relative;
}
.btn-chat::after {
  display: flex;
  justify-content: center;
  align-items: center;
  content: "99";
  width: 18px;
  height: 18px;
  background: var(--btn-color);
  font-size: 11px;
  color: var(--text-d);
  position: absolute;
  right: 20px;
  top: 15px;
  border-radius: 50%;
  border: none;
}

.btn-chat.active::after {
  background: var(--text);
}

/*--------------------
          Chat Title
          --------------------*/
.chat-title {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: start;
  gap: 5px;
  flex: 0 1 45px;
  position: relative;
  z-index: 2;
  background: rgba(255, 255, 255, 0.2);
  text-transform: uppercase;
  text-align: left;
  padding: 10px 10px 10px 60px;
}
.chat-title h1,
.chat-title h2 {
  font-weight: normal;
  font-size: 14px;
  margin: 0;
  padding: 0;
}
.chat-title h2 {
  font-size: 12px;
  letter-spacing: 1px;
}
.chat-title .avatar {
  position: absolute;
  z-index: 1;
  top: 8px;
  left: 9px;
  border-radius: 30px;
  width: 40px;
  height: 40px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, 0.24);
}
.chat-title .avatar img {
  width: 100%;
  height: auto;
}

/*--------------------
          Messages
          --------------------*/
.messages {
  flex: 1 1 auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.messages .messages-content {
  padding: 10px;
  overflow-y: auto;
  position: absolute;
  top: 0;
  left: 0;
  height: 101%;
  width: 100%;
}
.messages .messages-content::-webkit-scrollbar {
  display: none;
}
.messages .message {
  overflow-wrap: break-word;
  clear: both;
  float: left;
  padding: 6px 10px 7px;
  border-radius: 10px 10px 10px 0;
  background: rgba(255, 255, 255, 0.2);
  margin: 8px 0;
  font-size: 12px;
  line-height: 1.4;
  margin-left: 35px;
  position: relative;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}
.messages .message .timestamp {
  position: absolute;
  bottom: -15px;
  font-size: 9px;
}
.messages .message::before {
  content: "";
  position: absolute;
  bottom: -6px;
  border-top: 6px solid rgba(255, 255, 255, 0.3);
  left: 0;
  border-right: 7px solid transparent;
}
.messages .message .avatar {
  position: absolute;
  z-index: 1;
  bottom: -15px;
  left: -35px;
  border-radius: 30px;
  width: 30px;
  height: 30px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, 0.24);
}
.messages .message .avatar img {
  width: 100%;
  height: auto;
}
.messages .message.message-personal {
  float: right;
  max-width: 80%;
  text-align: right;
  background: var(--btn-color);
  border-radius: 10px 10px 0 10px;
  margin: 8px 35px 8px 0;
}
.messages .message.message-personal::before {
  left: auto;
  right: 0;
  border-right: none;
  border-left: 5px solid transparent;
  border-top: 4px solid #fd267a;
  bottom: -4px;
}
.messages .message.message-personal .avatar {
  position: absolute;
  z-index: 1;
  bottom: -15px;
  right: -35px;
  left: auto;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  overflow: hidden;
  margin: 0px;
  padding: 0px;
  border-width: 2px;
  border-style: solid;
  border-color: rgba(255, 255, 255, 0.24);
  border-image: initial;
}
.messages .message:last-child {
  margin-bottom: 30px;
}
.messages .message.new {
  overflow-wrap: break-word;
  transform: scale(0);
  transform-origin: 0 0;
  animation: bounce 500ms linear both;
  max-width: 80%;
}
.messages .message.loading::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0%);
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 2;
  margin-top: 4px;
  animation: ball 0.45s cubic-bezier(0, 0, 0.15, 1) alternate infinite;
  border: none;
  animation-delay: 0.15s;
}
.messages .message.loading span {
  display: block;
  font-size: 0;
  width: 20px;
  height: 10px;
  position: relative;
}
.messages .message.loading span::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0%);
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 2;
  margin-top: 4px;
  animation: ball 0.45s cubic-bezier(0, 0, 0.15, 1) alternate infinite;
  margin-left: -7px;
}
.messages .message.loading span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0%);
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 2;
  margin-top: 4px;
  animation: ball 0.45s cubic-bezier(0, 0, 0.15, 1) alternate infinite;
  margin-left: 7px;
  animation-delay: 0.3s;
}

/*--------------------
          Message Box
          --------------------*/
.message-box {
  flex: 0 1 40px;
  width: 100%;
  background: rgba(255, 255, 255, 0.3);
  padding: 10px;
  position: relative;
  display: flex;
  justify-content: start;
}
.message-box .message-input {
  line-height: 100%;
  background: none;
  border: none;
  outline: none !important;
  resize: none;
  font-size: 16px;
  margin: 0;
  padding: 0px 20px;
  width: 80%;
}
.message-box .message-input::-webkit-scrollbar {
  display: none;
}
.message-box textarea:focus:-webkit-placeholder {
  color: transparent;
}
.message-box .message-submit {
  position: absolute;
  z-index: 1;
  top: 0px;
  right: 0px;
  height: 100%;
  border: none;
  background: var(--btn-color);
  color: var(--btn-color-text);
  font-size: 20px;
  text-transform: uppercase;
  line-height: 1;
  padding: 18px 16px;
  border-radius: 0;
  outline: none !important;
  transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.message-box .message-submit svg {
  width: 30px;
  height: 30px;
  fill: none;
}
.message-box .message-submit:hover {
  opacity: 0.7;
}

/*--------------------
          Custom Srollbar
          --------------------*/
.mCSB_scrollTools {
  margin: 1px -3px 1px 0;
  opacity: 0;
}

.mCSB_inside > .mCSB_container {
  margin-right: 0px;
  padding: 0 10px;
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.5) !important;
}

/*--------------------
          Bounce
          --------------------*/
@keyframes bounce {
  0% {
    transform: matrix3d(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  4.7% {
    transform: matrix3d(0.45, 0, 0, 0, 0, 0.45, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  9.41% {
    transform: matrix3d(0.883, 0, 0, 0, 0, 0.883, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  14.11% {
    transform: matrix3d(1.141, 0, 0, 0, 0, 1.141, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  18.72% {
    transform: matrix3d(1.212, 0, 0, 0, 0, 1.212, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  24.32% {
    transform: matrix3d(1.151, 0, 0, 0, 0, 1.151, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  29.93% {
    transform: matrix3d(1.048, 0, 0, 0, 0, 1.048, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  35.54% {
    transform: matrix3d(0.979, 0, 0, 0, 0, 0.979, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  41.04% {
    transform: matrix3d(0.961, 0, 0, 0, 0, 0.961, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  52.15% {
    transform: matrix3d(0.991, 0, 0, 0, 0, 0.991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  63.26% {
    transform: matrix3d(1.007, 0, 0, 0, 0, 1.007, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  85.49% {
    transform: matrix3d(0.999, 0, 0, 0, 0, 0.999, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
  100% {
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
  }
}
@keyframes ball {
  from {
    transform: translateY(0) scaleY(0.8);
  }
  to {
    transform: translateY(-10px);
  }
}
.popup-content .package-container {
  display: flex;
}

#packagePopup .popup-content {
  max-width: 1000px;
}

.package-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
  position: relative;
  top: 0%;
  padding: 30px 10px 40px 10px;
}
.package-container .package {
  width: 280px;
  padding: 20px;
  background: var(--sec-color);
  border: 3px solid var(--sec-color-d);
  border-radius: 7px;
  text-align: center;
  transition: transform 0.3s;
  position: relative;
}
.package-container .package .package-btn {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  padding: 10px 24px;
  border: var(--sec-color-d) 3px solid;
  color: var(--btn-color-text);
  background: var(--btn-color);
  border-radius: 30px;
}
.package-container .package:hover {
  transform: scale(1.1);
}
.package-container .name {
  font-size: 2rem;
  font-weight: 300;
}
.package-container .price {
  font-size: 1.5rem;
  font-weight: bold;
}
.package-container .price::after {
  content: " / month per user";
  font-weight: normal;
  font-size: 0.8rem;
}
.package-container hr {
  border: none;
  height: 1px;
  background: #dedede;
  margin: 20px 0;
}
.package-container .trial {
  font-size: 0.9rem;
  font-weight: bold;
  color: var(--btn-color);
  padding: 5px 15px;
  border: 1px solid var(--btn-color);
  border-radius: 15px;
  display: inline-block;
  background: white;
  margin: 8px 0 0 0;
}
body.dark-theme .package-container .trial {
  background: var(--sec-color-d);
  color: var(--text-d);
}
.package-container ul {
  list-style: none;
  padding: 0;
  text-align: left;
}
.package-container li {
  margin-bottom: 10px;
  font-size: 1rem;
}
.package-container li strong {
  color: var(--btn-color);
}
.package-container li::before {
  content: "✔";
  /* Checkmark */
  color: var(--btn-color);
  margin-right: 8px;
  font-size: 18px;
}
.package-container .brilliant {
  border-color: var(--btn-color);
  box-shadow: 0 0 10px var(--btn-color);
}
.package-container .brilliant::before {
  content: "✔";
  color: white;
  background: var(--btn-color);
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: -10px;
  left: 10px;
  font-size: 1rem;
}

.btn-sing,
.btn-profil {
  margin-right: 40px;
  background: none;
}

.btn-profil.active {
  display: block;
  position: relative;
  overflow: hidden;
}
.btn-profil.active.gold-plan {
  border-color: #f1c40f;
  box-shadow: 0px 0px 5px #f1c40f;
}
.btn-profil.active.brilliant-plan {
  border-color: #B0C4DE;
  box-shadow: 0px 0px 5px #B0C4DE;
}
.btn-profil.active.basic-plan {
  box-shadow: none;
}
.btn-profil.active img {
  display: none;
}
.btn-profil.active img.active {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
}
.btn-profil.active svg {
  display: none;
}

.btn-profil {
  display: none;
}

.auth-container {
  text-align: center;
}
.auth-container a svg {
  width: 30px;
  height: 30px;
}
.auth-container button {
  margin-top: 10px;
  font-size: 18px;
  padding: 16px 28px;
  background: var(--btn-color);
  border-radius: 30px;
  color: var(--text-d);
}

.link-auth {
  display: inline-block;
  border-radius: 50%;
  background: var(--main-color);
  padding: 5px;
  width: 40px;
  height: 40px;
  margin-bottom: 10px;
  cursor: pointer;
  text-decoration: none;
  text-transform: capitalize;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
}
.link-auth.guest {
  color: black;
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 10px;
  border-radius: 30px;
  font-weight: 600;
}

.tabs {
  display: flex;
  justify-content: center;
  margin: 30px 0 20px 0;
}

.tab {
  width: 100%;
  padding: 10px 20px;
  cursor: pointer;
}

.tab.active {
  border-bottom: 2px solid var(--text);
}

body.dark-theme .tab.active {
  border-bottom: 2px solid var(--text-d);
}

.form-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.form {
  display: none;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.form.active {
  display: flex;
}

.input-group {
  width: 100%;
  max-width: 300px;
  border-radius: 30px;
  overflow: hidden;
  background: var(--sec-color);
}

body.dark-theme .input-group {
  background: var(--sec-color-d);
}

.input-group input,
.input-group select {
  width: 100%;
  padding: 20px;
  background: rgba(255, 255, 255, 0.07);
  appearance: none;
  border: none;
  outline: none;
  border-radius: 5px;
}
.error-message {
  color: red;
  font-size: 14px;
}

.profil {
  margin: 0 auto;
}

.profil-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.profil-user {
  position: relative;
  display: flex;
  padding: 30px;
  border-radius: 30px;
  justify-content: center;
  align-items: center;
  background: var(--sec-color);
}

.profil-user img {
  border-radius: 50%;
  width: 150px;
  height: 150px;
  position: relative;
  object-fit: cover;
}

.profil-user h2 {
  font-size: 30px;
  padding: 0 20px;
  margin-right: 30px;
  text-align: start;
}

.profil-user p {
  text-align: start;
  padding: 10px 20px;
}

body.dark-theme .profil-user {
  background: var(--sec-color-d);
}

.user-set {
  position: absolute;
  right: 15px;
  top: 15px;
  background: none;
  border: none;
  cursor: pointer;
}

.user-set svg {
  width: 30px;
  height: 30px;
}

body.dark-theme svg {
  fill: var(--text-d);
}

.profil-info {
  padding: 20px;
  border-radius: 30px;
  background: var(--sec-color);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
}

.profil-info div {
  display: flex;
  justify-content: space-between;
}

.profil-info p {
  font-size: 18px;
  padding: 10px;
}

body.dark-theme .profil-info {
  background: var(--sec-color-d);
}

body.dark-theme .modal {
  background: var(--main-color-d);
}

body.dark-theme .modal input {
  background: var(--main-color-d);
}

/* Стили модального окна */
#edit-modal select {
  background: none;
}

.modal {
  margin-top: 40px;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--main-color);
  padding: 30px;
  border-radius: 30px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  max-width: 500px;
  width: 100%;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  gap: 0px;
}
.modal h3 {
  text-align: center;
  margin: 0 auto;
  padding-bottom: 10px;
}

.modal select,
.modal input {
  border-radius: 30px;
  width: 100%;
  padding: 10px 20px;
  margin: 5px 0;
  border: 1px solid #ccc;
  background: var(--sec-color);
}

.modal-buttons {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
  margin: 10px auto 0 auto;
}

.modal-buttons button {
  padding: 8px 15px;
  border: none;
  cursor: pointer;
  border-radius: 5px;
}

.save-btn {
  background: var(--btn-color);
  color: var(--btn-color-text);
  margin-right: 20px;
}

.close-btn {
  background: red;
  color: var(--btn-color-text);
}

#avatar-preview {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover;
  margin: 0 auto 10px auto;
}

.chat-left-panel .messages img {
  max-width: 200px;
  /* Ограничиваем ширину */
  border-radius: 10px;
  /* Закругляем углы */
  display: block;
  margin-top: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  /* Тень для эффекта */
}

/* Стилизация изображений в исходящих сообщениях */
.chat-left-panel .messages.message-personal img {
  border-radius: 10px;
  /* Закругляем углы */
  float: right;
}

.call-btn {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 20px;
  transform: translate(0%, -50%);
  width: 30px;
  height: 30px;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.call-btn svg {
  width: 30px;
  height: 30px;
}

.call-video-btn {
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 60px;
  transform: translate(0%, -50%);
  width: 30px;
  height: 30px;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.call-video-btn svg {
  width: 30px;
  height: 30px;
  fill: none;
}

.attach-btn {
  position: absolute;
  cursor: pointer;
  font-size: 20px;
  right: 92px;
  top: 50%;
  transform: translate(0%, -50%);
  margin-right: 0px;
  display: flex;
  align-items: center;
}
.attach-btn svg {
  width: 30px;
  height: 30px;
}

@media (max-width: 1030px) {
  .chat {
    max-width: 500px;
  }
  .modal {
    margin: 0px;
    width: 95%;
  }
  .modal input {
    padding: 10px 20px;
  }
  #avatar-preview {
    width: 60px;
    height: 60px;
  }
  .btn-nav {
    padding: 12px 20px;
  }
  .btn-nav button {
    padding: 12px 20px;
  }
  .package-container {
    padding: 0px 10px 40px 10px;
  }
  .nav-list-left button {
    padding: 12px 20px;
  }
  .Logo-name {
    font-size: 20px;
  }
  .content-left h2 {
    font-size: 40px;
  }
  .left .btn-app {
    margin-top: 20px;
  }
  .chat-title h2 {
    font-size: 10px;
  }
}
@media (max-width: 865px) {
  .chat {
    max-width: 400px;
  }
  .gender-select {
    display: grid;
    justify-content: center;
    align-items: center;
    gap: 10px 10px;
    padding: 0px 20px 20px 20px;
    grid-template-columns: repeat(auto-fit, minmax(100px, 600px));
  }
  .chat-list-item img {
    max-width: 50px;
  }
  .chat-list-item div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
  }
  .chat-list-item div h5 {
    font-size: 14px;
    padding: 5px 10px 0 10px;
  }
  .chat-list-item div p {
    font-size: 10px;
    width: 80px;
    /* Ширина блока */
  }
  .package-container {
    padding: 100px 10px 100px 10px;
  }
  .nav-list.nav-list-left {
    bottom: 20px;
    top: auto;
  }
  .left,
  .right {
    overflow-y: hidden;
  }
  .nav-right {
    z-index: 1;
    padding: 0 20px 0 0;
  }
  .btn-sing,
  .btn-profil {
    margin-right: 40px;
  }
  .nav-left {
    z-index: 5;
    padding: 0 20px;
  }
}
@media (max-width: 768px) {
  .chat-title {
    padding: 10px 5px 10px 50px;
  }
  .message-box .message-input {
    padding: 0px 5px;
    width: 100%;
  }
  .attach-btn {
    right: 82px;
  }
  .call-btn {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 10px;
    transform: translate(0%, -50%);
    width: 25px;
    height: 25px;
  }
  .call-btn svg {
    width: 25px;
    height: 25px;
  }
  .call-video-btn {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 45px;
    transform: translate(0%, -50%);
    width: 25px;
    height: 25px;
    overflow: hidden;
    margin: 0;
    padding: 0;
  }
  .call-video-btn svg {
    width: 25px;
    height: 25px;
    fill: none;
  }
  .chat-friends {
    padding: 10px;
    max-width: 120px;
  }
  .chat-list {
    min-width: 120px;
  }
  .message-box .message-submit {
    font-size: 16px;
    padding: 10px 20px;
  }
  .chat {
    max-width: 300px;
  }
  .chat-list-item img {
    max-width: 50px;
  }
  .chat-list-item div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
  }
  .chat-list-item div h5 {
    font-size: 12px;
    padding: 5px 5px 0 5px;
    width: 60px;
    /* Ширина блока */
    white-space: nowrap;
    /* Запрещает перенос текста */
    overflow: hidden;
    /* Обрезает текст, выходящий за границы */
    text-overflow: ellipsis;
    /* Добавляет ... в конце */
  }
  .chat-list-item div p {
    display: none;
  }
  .left-user-stream {
    width: 100%;
  }
  .profil-user {
    padding: 20px;
    border-radius: 30px;
    flex-direction: column;
  }
  .profil-user img {
    width: 100px;
    height: 100px;
    margin-bottom: 10px;
  }
  .profil-user p {
    text-align: center;
  }
  .profil-user h2 {
    font-size: 24px;
    padding: 0 20px;
    margin: 0;
    text-align: center;
  }
  .nav-list.nav-list-left {
    border-radius: 30px 30px 0px 0;
    width: 100%;
    bottom: 0px;
    top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .nav-list.nav-list-left button {
    width: 100%;
  }
  .nav-list.nav-list-left::after {
    border-radius: 30px 30px 0px 0;
    content: "";
    width: 100%;
    height: 100%;
    border: 0px var(--text) solid;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .btn-chat::after {
    display: flex;
    justify-content: center;
    align-items: center;
    content: "99";
    width: 18px;
    height: 18px;
    background: var(--btn-color);
    font-size: 11px;
    color: var(--text-d);
    position: absolute;
    right: 35%;
    top: 10px;
    border-radius: 50%;
    border: none;
  }
  .content-left {
    padding: 0 10px;
  }
  .main-section {
    flex-direction: column;
  }
  .left,
  .right {
    width: 100%;
    height: 100%;
    height: 50vh;
  }
  .full-screen .left {
    height: 100% !important;
  }
  .full-screen .content-left {
    height: 100%;
    min-height: 100vh;
  }
  .Logo-name {
    display: none;
  }
  .nav-left {
    width: auto;
  }
  .nav-right {
    position: fixed;
    right: 0;
    top: 20px;
    z-index: 5;
    padding: 0 20px 0 0;
  }
  .history {
    margin-bottom: 70px;
  }
  .video-container {
    overflow: hidden;
    width: 100%;
    height: 100%;
  }
  .left-user-stream {
    height: 100vh;
    max-height: 50vh;
  }
  .controls-container {
    bottom: 20%;
    gap: 10px;
  }
  #startButton {
    font-size: 14px;
    padding: 14px 30px;
  }
  .btn-set-chat {
    padding: 10px 15px;
    font-size: 14px;
  }
  .users-online {
    font-size: 12px;
    font-weight: 500;
    line-height: 130%;
  }
  .online-icon {
    margin-right: 5px;
  }
  .controls {
    position: fixed;
    bottom: 20px;
    left: auto;
  }
  .controls-container.stream .controls {
    width: 100%;
    height: 100%;
  }
  #nextButton {
    top: 50%;
    right: 15px;
  }
  #backButton {
    top: 30px;
    left: 15px;
  }
  #repButton {
    top: 90px;
    right: 15px;
  }
  #stopButton {
    top: 30px;
    right: 15px;
  }
  #toggleLight {
    top: 150px;
    right: 15px;
  }
  #togglescreen {
    top: 210px;
    right: 15px;
  }
  #heart {
    left: 15px;
    bottom: auto;
    top: 90px;
  }
  .chat-stream {
    bottom: 10px;
    width: 100%;
  }
  .chat-stream .chat-stream-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 0px 15px 0 90px;
    overflow: hidden;
  }
  .chat-stream .stream-messages {
    flex-direction: column-reverse;
    max-height: 140px;
    padding: 10px;
  }
  .logo-stream {
    left: 10px;
    bottom: 10px;
  }
  .controls-container {
    padding-top: 90px;
  }
  .left .btn-app {
    margin-top: 10px;
  }
  .left .content-left p {
    padding-top: 10px;
    max-width: 600px;
    font-size: 16px;
    line-height: 130%;
  }
  .controls-container.stream .tags {
    width: 100% !important;
  }
}
.controls svg {
  width: 30px;
  height: 30px;
  fill: none !important;
}

.border-light {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  box-shadow: 0 0 50px 50px white inset;
  pointer-events: none;
  display: none;
  z-index: 999;
}

@media (max-width: 768px) {
  .logo svg {
    width: 50px;
    height: 50px;
  }
}
body.dark-theme .package {
  background: var(--sec-color-d);
}

.popup {
  z-index: 100;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0%) scale(1);
  padding: 20px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  display: none;
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.6s ease-in-out;
}

.popup#friendRequestPopup {
  box-shadow: none;
}

#popupMessage {
  text-align: center;
  padding: 10px;
  font-size: 18px;
  font-weight: 500;
}

.popup.active {
  display: block;
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.popup-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  /* Темный фон */
  display: flex;
  justify-content: center;
  align-items: center;
}

.popup-content {
  overflow: hidden;
  z-index: 101;
  position: relative;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 500px;
  height: auto;
  transform: translate(-50%, 0%) scale(1);
  background: var(--main-color);
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.3);
  overflow-y: auto;
  max-height: 98vh;
}
.popup-content::-webkit-scrollbar {
  display: none;
}

body.dark-theme .popup-content {
  background: var(--main-color-d);
}

.popup-close {
  cursor: pointer;
  z-index: 4;
  position: absolute;
  right: 20px;
  top: 20px;
}

body.dark-theme .popup-content .popup-close {
  background: var(--sec-color-d);
}
body.dark-theme .popup-content .popup-close svg,
body.dark-theme .popup-content .popup-close g,
body.dark-theme .popup-content .popup-close path {
  fill: var(--text-d);
}

.popup-content .popup-close {
  width: 30px;
  height: 30px;
  border-radius: 59%;
  padding: 5px;
  background: var(--main-color);
}

.popup-content .popup-close svg {
  width: 20px;
  fill: var(--text);
}

.tag-container {
  width: 100%;
  margin: 0px auto;
  padding: 0 20px;
  border-radius: 5px;
}
@media (max-width: 768px) {
  .tag-container {
    padding: 0;
  }
}

.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0 5px;
}

.tag {
  background: var(--btn-color);
  color: var(--btn-color-text);
  padding: 5px 10px;
  border-radius: 30px;
  display: flex;
  align-items: center;
  font-size: 12px;
  margin-bottom: 5px;
}

.tag span {
  cursor: pointer;
  margin-left: 5px;
}

.input-container {
  display: flex;
  align-items: center;
  justify-content: start;
  border: 3px solid var(--main-color-d);
  border-radius: 30px;
  overflow: hidden;
  background: hsla(0, 0%, 100%, 0.2);
  width: 100%;
}

body.dark-theme .input-container {
  border: 3px solid var(--main-color);
}

.input-container span {
  padding: 5px 0 5px 10px;
}

.input-container input {
  border: none;
  padding: 10px;
  flex-grow: 1;
  outline: none;
  max-width: 215px;
}
@media (max-width: 768px) {
  .input-container input {
    max-width: 180px;
  }
}
@media (max-width: 376px) {
  .input-container input {
    max-width: 130px;
  }
}

@media (max-width: 768px) {
  .country-select {
    padding: 0px 0 0 0;
  }
}

@media (max-width: 768px) {
  .gender-select {
    padding: 0px 0 10px 0;
  }
}

.add-button {
  min-width: 30px;
  background: var(--btn-color);
  color: var(--btn-color-text);
  border: none;
  padding: 10px 15px 10px 10px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 0 auto;
}
.add-button svg {
  fill: none !important;
  width: 25px;
  height: 25px;
  stroke: var(--btn-color-text);
}

.add-button:disabled {
  background: #ccc;
  cursor: not-allowed;
}

.controls-container.stream .input-container {
  display: none;
}
.controls-container.stream .tags {
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 50%;
  padding: 0 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
}
.controls-container.stream .tags .tag {
  font-size: 12px;
}
.controls-container.stream .tags .tag span {
  display: none;
}

.hero-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
  width: 100%;
  height: 100%;
  padding: 10px;
}

.auth-box {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
}

@media (max-width: 476px) {
  .chat-list-item {
    width: 100%;
  }
  .chat-list-item div h5 {
    display: none;
  }
  .chat-list-item div p {
    display: none;
  }
}
/* Стиль для гамбургер-меню */
.hamburger-menu {
  position: absolute;
  right: 20px;
  top: 35px;
}

@media (max-width: 1030px) {
  .hamburger-menu {
    position: absolute;
    right: 20px;
    top: 35px;
  }
}
body.dark-theme .menu {
  background-color: var(--main-color-d);
  color: var(--text-d);
}

.hamburger {
  width: 30px; /* Ширина контейнера */
  height: 21px; /* Высота контейнера */
  position: relative;
  cursor: pointer;
  display: block; /* Убираем flex, чтобы блок занимал всю область */
  z-index: 100; /* Убедитесь, что полосы не перекрываются друг другом */
}

.bar {
  display: block; /* Каждая полоса на новой строке */
  width: 100%; /* Полоса будет растягиваться на всю ширину контейнера */
  height: 4px; /* Высота полоски */
  background-color: #333; /* Цвет полоски */
  margin: 5px 0; /* Отступы между полосками */
  transition: all 0.3s ease;
}

.menu {
  position: fixed;
  top: 0;
  right: -300px; /* Скрыто по умолчанию */
  width: 250px;
  height: 100%;
  background-color: var(--main-color);
  color: var(--text);
  padding: 20px;
  transition: right 0.3s ease;
  z-index: 102;
}

.menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.menu li {
  margin: 20px 0;
}

.menu li a {
  text-decoration: none;
  font-size: 18px;
  display: block;
  transition: all 0.3s ease 0s;
}

.menu li a:hover {
  opacity: 0.7;
}

.menu.open {
  right: 0;
}

.hamburger.open .bar:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}

.hamburger.open .bar:nth-child(2) {
  opacity: 0;
}

.hamburger.open .bar:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Nav Icon */
.mobile-nav-btn {
  --time: 0.1s;
  --width: 40px;
  --height: 30px;
  --line-height: 4px;
  --spacing: 6px;
  --color: #000;
  --radius: 4px;
  /* Fixed height and width */
  /* height: var(--height); */
  /* width: var(--width); */
  /* Dynamic height and width */
  height: calc(var(--line-height) * 3 + var(--spacing) * 2);
  width: var(--width);
  display: flex;
  justify-content: center;
  align-items: center;
}

.nav-icon {
  position: relative;
  width: var(--width);
  height: var(--line-height);
  background-color: var(--color);
  border-radius: var(--radius);
}

.nav-icon::before,
.nav-icon::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: var(--width);
  height: var(--line-height);
  border-radius: var(--radius);
  background-color: var(--color);
  transition: transform var(--time) ease-in, top var(--time) linear var(--time);
}

.nav-icon::before {
  /* top: calc(var(--line-height) * -2); */
  top: calc(-1 * (var(--line-height) + var(--spacing)));
}

.nav-icon::after {
  /* top: calc(var(--line-height) * 2); */
  top: calc(var(--line-height) + var(--spacing));
}

.nav-icon.nav-icon--active {
  background-color: transparent;
}

.nav-icon.nav-icon--active::before,
.nav-icon.nav-icon--active::after {
  top: 0;
  transition: top var(--time) linear, transform var(--time) ease-in var(--time);
}

.nav-icon.nav-icon--active::before {
  transform: rotate(45deg);
}

.nav-icon.nav-icon--active::after {
  transform: rotate(-45deg);
}

/* Layout */
.mobile-nav-btn {
  z-index: 999;
}

.nav {
  font-size: 18px;
}

.nav__list {
  display: flex;
  column-gap: 30px;
}

.title-1 {
  margin: 1em 0 0.5em;
  font-size: 38px;
  font-weight: 700;
  font-family: var(--font-titles);
}

.title-2 {
  margin: 1em 0 0.5em;
  font-size: 32px;
  font-weight: 700;
  font-family: var(--font-titles);
}

.title-3 {
  margin: 1em 0 0.5em;
  font-size: 26px;
  font-weight: 700;
  font-family: var(--font-titles);
}

.title-4 {
  margin: 1em 0 0.5em;
  font-size: 18px;
  font-weight: 700;
  font-family: var(--font-titles);
}

/* No styles code below. Only in modules */
/* Не пишите CSS код ниже. Только в подключаемых файлах */
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL192YXJzLnNjc3MiLCJiYXNlL19mb250c0F1dG9HZW4uc2NzcyIsImJhc2UvX3V0aWxzLnNjc3MiLCJiYXNlL19jb250YWluZXJzLnNjc3MiLCJiYXNlL19taXhpbnMuc2NzcyIsImJhc2UvX3N0aWNreS1mb290ZXIuc2NzcyIsImJsb2Nrcy9fZm9vdGVyLnNjc3MiLCJibG9ja3MvX2hlYWRlci5zY3NzIiwiYmxvY2tzL19pY29ucy5zY3NzIiwiYmxvY2tzL19tYWluLWxhbmRpbmcuc2NzcyIsImJsb2Nrcy9fbWFpbi5zY3NzIiwiYmxvY2tzL19tb2JpbGUtbmF2LnNjc3MiLCJibG9ja3MvX25hdi1pY29uLnNjc3MiLCJibG9ja3MvX25hdi5zY3NzIiwiYmxvY2tzL190aXRsZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUNBQTtBQ0FRO0FEQ1I7RUFDQztFQUNBO0VBQ0E7OztBQUdEO0FBQUE7QUFBQTtFQUdDOzs7QUFHRDtBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0FBRUE7RUFDQzs7O0FBR0Q7RUFDSTtFQUNIOzs7QUFHRDtFQUNDOzs7QUFJRDtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0U7OztBQUdGO0FBRUE7RUFDQztFQUNHO0VBQ0E7RUFDQTs7O0FBR0o7RUFDQzs7O0FBR0Q7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FFeEZEO0VBQ0M7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUdHO0VBQ0g7RUFDQTs7O0FBR0Q7RUFDSTtFQUNBOzs7QUM5Qko7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FGdENEO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7OztBQUtEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUdqQ0Q7RUFDQzs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FDdENEO0FBQ0E7RUFDQztFQUNBO0VBQ0E7OztBQUdEO0FBQ0E7RUFDQztFQUNBO0VBRUE7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7O0FDVkc7RURRSjtJQUtFOzs7O0FBSUY7RUFDQztFQUNBO0VBQ0E7O0FDcEJHO0VEaUJKO0lBTUU7Ozs7QUFJRjtFQUNDOztBQ2xDRztFRGlDSjtJQU1FOzs7O0FBSUY7RUFDQzs7QUM1Q0c7RUQyQ0o7SUFNRTs7OztBQUlGO0VBQ0M7RUFHQTs7QUN6REc7RURxREo7SUFTRTs7O0FDeERFO0VEK0NKO0lBYUU7Ozs7QUFJRjtFQUNDO0VBR0E7O0FDMUVHO0VEc0VKO0lBU0U7OztBQ3pFRTtFRGdFSjtJQWFFOzs7O0FFMUZGO0VBQ0k7RUFDQTtFQUNBOzs7QVJPSjtBU1ZBO0VBQ0k7RUFDQTs7O0FBRUo7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7OztBQzdCUjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNHO0VBQ0M7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7O0FDekNSO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFJRDtFQUNDO0VBQ0E7O0FBRUE7RUFDQzs7O0FDOUJGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQztFQUNEO0VBQ0M7RUFDQTs7O0FBRUw7RUFFSztFQUNEO0VBQ0M7RUFDQTs7O0FBRUw7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBOzs7QUFNUjtFQUVJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOzs7QUFJWjtFQUNJO0lBQ0k7O0VBQ0E7SUFDSTs7O0FBTVo7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBRUk7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0FBQUE7QUFBQTtFQUdJOzs7QUFHQTtFQUNJOztBQUVKO0VBRUk7SUFDRTs7OztBQUlWO0FBQUE7QUFBQTtFQUdJOzs7QUFFSjtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQVdaO0VBQ0k7RUFDQTtFQUNBO0VBQ0Q7O0FBQ0M7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7O0FBTVo7RUFDSTs7QUFVSjtFQUNJO0VBQ0Y7RUFDQTtFQUNBOztBQUdGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7O0FBS0o7RUFDSTs7O0FBU0E7RUFDSTtFQUNBOzs7QUFJSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7QUFFRztFQUNLOzs7QUFJWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDSTs7QUFFTDtFQUNDO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUlJO0VBQ0E7OztBQUlKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFTSjtFQUNJO0VBQ0E7RUFDQTs7O0FBU1I7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0o7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7O0FBR0E7RUFFSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBS1I7RUFFSTtFQUNGO0VBQ0E7RUFDQTtFQUNEOztBQUtEO0VBQ0k7O0FBRUo7RUFDSTs7O0FBTUo7RUFFSTs7O0FBSVI7RUFDTTtJQUNFOztFQUVGO0lBQ0U7O0VBQ0E7SUFDSTs7RUFHTjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7SUFDQztJQUNEO0lBQ0M7SUFDQTs7RUFFTDtJQUVLO0lBQ0Q7SUFDQztJQUNBOzs7QUFJVDtFQUNJO0lBQ0k7SUFDRjtJQUNBO0lBQ0E7O0VBR0Y7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTtJQUNBO0lBQ0M7SUFDRDtJQUNDO0lBQ0E7O0VBRUw7SUFFSztJQUNEO0lBQ0M7SUFDQTs7O0FBT1Q7RUFDSTs7O0FBUUo7RUFDSTtFQUNGO0VBQ0E7RUFDQTtFQUNFOzs7QUFFSjtFQUNJO0lBRUE7SUFDRTs7O0FBSU47RUFDSTtJQUVBO0lBQ0U7OztBQUtOO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBSUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFQQTtFQUNJOzs7QUM5ZVo7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOzs7QUFJUjtBQUNBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7OztBQVFKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUlKO0VBQ0k7OztBQUlKO0VBQ0k7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBSUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFHSjtFQUVJOztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQU1SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFTSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFVUjtFQUNJOzs7QUFJUjtFQUtJOzs7QUFrQko7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtFQUVJOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTs7O0FBSUo7QUFBQTtBQUFBO0VBR0k7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FBUVI7RUFDSTtFQUNBO0VBRUE7OztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0o7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFLUjtFQUNJO0VBQ0E7O0FBRUE7RUFFSTs7O0FBT1I7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOztBQUdKO0VBQ0k7OztBQWdCUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFPSjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7O0FBS0o7QUFBQTtFQUdJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBQUNBOzs7QUFJSjtBQUFBO0VBR0k7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0FBQ0E7OztBQUdKO0VBRUk7QUFBQTtJQUVJO0lBQ0E7SUFDQTs7O0FBSVI7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFFQTtFQUdJO0VBQ0E7RUFFQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBc0JBOztBQXBCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQU9SO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7O0FBR0o7RUFDSTtBQUNBO0VBQ0E7QUFDQTs7QUFHSjtFQUNJO0FBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVJOztBQUdKO0VBWEo7SUFhUTtJQUNBO0lBQ0E7SUFDQTs7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFFQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtBQUNBOztBQUdKO0VBQ0k7QUFDQTs7O0FBS1o7RUFDSTs7QUFHSTtFQUNJO0VBQ0E7OztBQVFSO0VBRUk7OztBQUtSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBRUE7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7OztBQU1SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQVBKO0lBUVE7Ozs7QUFPSjtFQUVJOzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU1BOztBQUpBO0VBQ0k7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7O0FBS0E7RUFFSTs7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7O0FBSUo7QUFLQTtFQUNJOzs7QUFJSjtBQUtBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNKO0VBTUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBWEE7RUFDSTtFQUNBOzs7QUFZUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBT0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBZEE7RUFDSTtFQUNBOzs7QUFlUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBRUk7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBTVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBR0E7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBS0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVRBO0VBQ0k7O0FBVUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBOztBQUlSO0VBQ0k7O0FBQ0E7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUVJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBRUk7O0FBS1I7RUFDSTtFQUNBO0VBQ1I7RUFDUTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtaO0VBR0k7RUFDQTtFQUNBOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBOzs7QUFHSjtFQUNJO0lBQ0k7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBOzs7QUFJUjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBT1I7RUFDSTtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBOztFQUdKO0lBQ0k7SUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7RUFFQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFWSjtJQVdRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFJUjtBQUNBO0VBQ0k7QUFDQTs7O0FBSUo7RUFDSTtFQUNBO0VBRUE7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU1KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtFQUdJOzs7QUFHSjtFQUNJOzs7QUFLQTtBQUFBO0FBQUE7RUFHSTs7O0FBTUo7QUFBQTtBQUFBO0VBR0k7OztBQTRCUjtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJSjtFQUVJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7O0FBR0o7RUFDSTs7O0FBSUo7RUFDSTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFHQTtFQUNBOztBQUVBO0VBQ0k7OztBQUtSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQVNaO0VBQ0k7OztBQUdKO0VBMUhJO0VBQ0E7RUFDQTtFQUNBO0VBeUhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS0o7RUFDSTs7O0FBSUo7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQU1KO0VBQ0k7OztBQUlSO0FBQUE7QUFBQTtBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUVJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FBTVo7QUFBQTtBQUFBO0FBR0E7RUFDSTtFQUVBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLQTtFQWxXUjtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQW9WWTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQS9XWjtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQWlXZ0I7O0FBR0o7RUFwWFo7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFzV2dCO0VBQ0E7OztBQVVwQjtBQUFBO0FBQUE7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOzs7QUFNWjtBQUFBO0FBQUE7QUFHQTtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBSUo7QUFBQTtBQUFBO0FBR0E7RUFDSTtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTs7O0FBSUo7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBOztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFLSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtBQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLUjtBQUFBO0VBRUk7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUVJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFSjtFQUNJOzs7QUFJUjtFQUNJOzs7QUFLSjtFQUNJOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBOzs7QUFJSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQU1KO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU1KO0VBQ0k7RUFDQTs7O0FBSUo7RUFDSTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFLSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFDQTtFQUNJOzs7QUFFSjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQU1SO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7O0FBSUo7RUFDSTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUNBO0VBQ0k7QUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOzs7QUFNUjtFQUVJO0lBQ0k7O0VBR0o7SUFDSTtJQUNBOztFQUdKO0lBRUk7O0VBSUo7SUFDSTtJQUNBOztFQUlKO0lBQ0k7O0VBRUE7SUFDSTs7RUFJUjtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUtBO0lBRUk7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7O0VBR0o7SUFFSTtJQUNBO0FBQ0E7O0VBTVo7SUFDSTs7RUFHSjtJQUdJO0lBQ0E7O0VBR0o7QUFBQTtJQUVJOztFQUlKO0lBQ0k7SUFDQTs7RUFHSjtBQUFBO0lBRUk7O0VBS0o7SUFDSTtJQUNBOzs7QUFJUjtFQUNJO0lBRUk7O0VBR0o7SUFFSTtJQUNBOztFQUdKO0lBRUk7O0VBSUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7O0VBSVI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUNJO0lBQ0E7SUFDQTs7RUFJUjtJQUdJO0lBQ0E7O0VBR0o7SUFJSTs7RUFHSjtJQUNJO0lBQ0E7O0VBR0o7SUFDSTs7RUFLQTtJQUVJOztFQUdKO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFFSTtJQUNBO0lBQ0E7QUFDQTtJQUNBO0FBQ0E7SUFDQTtBQUNBO0lBQ0E7QUFDQTs7RUFHSjtJQUNJOztFQU9aO0lBQ0k7O0VBS0o7SUFFSTtJQUNBO0lBQ0E7O0VBSUo7SUFDSTtJQUNBO0lBRUE7O0VBR0o7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFJUjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTs7RUFHSjtJQUVJOztFQUlKO0FBQUE7SUFHSTtJQUNBO0lBQ0E7O0VBSUE7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7O0VBSVI7SUFDSTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOztFQUdKO0lBRUk7SUFDQTs7RUFHSjtJQUNJO0lBQ0E7O0VBR0o7SUFFSTtJQUVBOztFQUtKO0lBRUk7SUFDQTs7RUFJSjtJQUdJO0lBQ0E7SUFDQTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7SUFDQTtJQUNBOztFQUlKO0lBQ0k7SUFDQTs7RUFJSjtJQUVJO0lBQ0E7O0VBSUo7SUFDSTtJQUNBOztFQUlKO0lBRUk7SUFDQTs7RUFJSjtJQUdJO0lBQ0E7O0VBSUo7SUFHSTtJQUNBOztFQUlKO0lBR0k7SUFDQTs7RUFJSjtJQUVJO0lBQ0E7SUFDQTs7RUFLSjtJQUVJO0lBRUE7O0VBSUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdKO0lBRUk7SUFDQTtJQUNBOztFQUdKO0lBQ0k7SUFDQTs7RUFHSjtJQUNJOztFQUdKO0lBQ0k7O0VBSUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNJOzs7QUFNUjtFQUNJO0VBQ0E7RUFJQTs7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBRVE7SUFDSTtJQUNBOzs7QUFLWjtFQUNJOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUE7O0FBSkE7RUFDSTs7O0FBTVI7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFzQko7RUFHSTs7QUFFQTtBQUFBO0FBQUE7RUFJSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFOSjtJQU9ROzs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBRUk7OztBQUtKO0VBRUk7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQVBKO0lBUVE7OztBQUdKO0VBWEo7SUFZUTs7OztBQU1KO0VBREo7SUFFUTs7OztBQUtKO0VBREo7SUFFUTs7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFJQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBRUE7RUFDSTs7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtJQUNJOztFQU1JO0lBQ0k7O0VBR0o7SUFDSTs7O0FDMW9IaEI7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7O0FBR1I7RUFDQztFQUNBOzs7QUFFRDtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUVJO0VBQ0E7RUFDQTtFQUNIOzs7QUFHRDtFQUNHOzs7QUFHSDtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUNyRko7QUFDQTtFQUNDO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0FBQUE7RUFFQztFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7OztBQUlEO0FBQ0M7RUFDQTs7O0FBR0Q7QUFDQztFQUNBOzs7QUFHRDtFQUNDOzs7QUFHRDtBQUFBO0VBRUM7RUFDQTs7O0FBSUQ7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBR0Q7QUFFQTtFQUNDOzs7QUNqRkQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBOzs7QUNQRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBOzs7QWpCSEQ7QUFDQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIEJhc2UgKi9cbkBpbXBvcnQgJ2Jhc2UvcmVzZXQnO1xuQGltcG9ydCAnYmFzZS92YXJzJztcbkBpbXBvcnQgJ2Jhc2UvbWl4aW5zJztcbkBpbXBvcnQgJ2Jhc2UvZm9udHNBdXRvR2VuJztcbkBpbXBvcnQgJ2Jhc2UvYmFzZSc7XG5AaW1wb3J0ICdiYXNlL3V0aWxzJztcbkBpbXBvcnQgJ2Jhc2UvY29udGFpbmVycyc7XG5AaW1wb3J0ICdiYXNlL3N0aWNreS1mb290ZXInO1xuXG4vKiBCbG9ja3MgKi9cbkBpbXBvcnQgXCJibG9ja3MvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9faWNvbnMuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9fbG9nby5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL19tYWluLWxhbmRpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImJsb2Nrcy9fbWFpbi5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL19tb2JpbGUtbmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvX25hdi1pY29uLnNjc3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvX25hdi5zY3NzXCI7XG5AaW1wb3J0IFwiYmxvY2tzL190aXRsZXMuc2Nzc1wiO1xuXG4vKiBObyBzdHlsZXMgY29kZSBiZWxvdy4gT25seSBpbiBtb2R1bGVzICovXG4vKiDQndC1INC/0LjRiNC40YLQtSBDU1Mg0LrQvtC0INC90LjQttC1LiDQotC+0LvRjNC60L4g0LIg0L/QvtC00LrQu9GO0YfQsNC10LzRi9GFINGE0LDQudC70LDRhSAqL1xuIiwiLyogUmVzZXQgYW5kIGJhc2Ugc3R5bGVzICAqL1xuKiB7XG5cdHBhZGRpbmc6IDBweDtcblx0bWFyZ2luOiAwcHg7XG5cdGJvcmRlcjogbm9uZTtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogTGlua3MgKi9cblxuYSwgYTpsaW5rLCBhOnZpc2l0ZWQgIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6aG92ZXIgIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIENvbW1vbiAqL1xuXG5hc2lkZSwgbmF2LCBmb290ZXIsIGhlYWRlciwgc2VjdGlvbiwgbWFpbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG5cdGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG51bCwgdWwgbGkge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbmltZyB7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmltZywgc3ZnIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qIEZvcm0gKi9cblxuaW5wdXQsIHRleHRhcmVhLCBidXR0b24sIHNlbGVjdCB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaW5wdXQ6Oi1tcy1jbGVhciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbmJ1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0OmZvY3VzLCBpbnB1dDphY3RpdmUsXG5idXR0b246Zm9jdXMsIGJ1dHRvbjphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcbn1cblxubGFiZWwge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmxlZ2VuZCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU1hbnJvcGU6MjAwLDMwMCxyZWd1bGFyLDUwMCw2MDAsNzAwLDgwMCk7XG5cbmh0bWwge1xuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiKDM5LCAzOSwgMzkpO1xufVxuXG5ib2R5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFnZS1iZyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0KTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbWFpbik7XG5cdC8vIHRleHQtd3JhcDogYmFsYW5jZTtcbn1cblxuXG5pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbn1cblxuY29kZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNlOWYxZjY7XG5cdHBhZGRpbmc6IDAuMnJlbTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5wcmUuY29kZSB7XG5cdG92ZXJmbG93LXg6IGF1dG87XG5cdGJhY2tncm91bmQtY29sb3I6ICNlOWYxZjY7XG5cdHBhZGRpbmc6IDFyZW07XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbiIsIjpyb290IHtcblx0LS1jb250YWluZXItd2lkdGg6IDEyMDBweDtcblx0LS1jb250YWluZXItcGFkZGluZzogMTVweDtcblxuXHQtLWZvbnQtbWFpbjogJ0ludGVyVGlnaHQnO1xuXHQtLWZvbnQtYWNjZW50OiAnSW50ZXJUaWdodCcsIHNhbnMtc2VyaWY7XG5cdC0tZm9udC10aXRsZXM6IHZhcigtLWZvbnQtYWNjZW50KTtcblxuXHQtLXBhZ2UtYmc6IHJnYigyNTUsIDI1NSwgMjU1KTtcblx0LS1wYWdlLWJnLWQ6IHJnYigzMywgMzMsIDMzKTtcblx0LS10ZXh0OiAjM0IyRDNCO1xuXHQtLXRleHQtZDogI0Y2RTNFMTsgICAgIFxuXHQtLW1haW4tY29sb3I6ICNGOEVERUQ7ICAgICAgICBcblx0LS1tYWluLWNvbG9yLWQ6ICMzQjJEM0I7XG5cdC0tc2VjLWNvbG9yOiAjZmRkMWFmOyBcblx0LS1zZWMtY29sb3ItZDogIzJDMjEzMDsgICAgXG5cdC0tYnRuLWNvbG9yOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wIHJpZ2h0LCAjZmQyNjdhLCAjZmY2MDM2KTtcblxuXHQtLWJ0bi1jb2xvci10ZXh0OiAjRjZFM0UxOyAgXG5cdC0tYWNjZW50OiAjYWMxODJjO1xuXHQtLWxpbmstY29sb3I6IGF1dG87XG5cblxuICAgIC0tbGFwdG9wLXNpemU6IDExOTlweDtcblx0LS10YWJsZXQtc2l6ZTogOTU5cHg7XG5cdC0tbW9iaWxlLXNpemU6IDU5OXB4O1xufVxuXG4uZGFyayB7XG4gICAgLS1wYWdlLWJnOiAjZmZmZmZmO1xuICAgIC0tdGV4dC1jb2xvcjogIzAwMDAwMDtcbn0iLCJAZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IENoaXZvTW9ubztcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xuXHRzcmM6IHVybChcIi4uL2ZvbnRzL0NoaXZvTW9uby1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9DaGl2b01vbm8tQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cclxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBDaGl2b01vbm87XG5cdGZvbnQtZGlzcGxheTogc3dhcDtcblx0c3JjOiB1cmwoXCIuLi9mb250cy9DaGl2b01vbm8tUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQ2hpdm9Nb25vLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XHJcbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogQ2hpdm9Nb25vO1xuXHRmb250LWRpc3BsYXk6IHN3YXA7XG5cdHNyYzogdXJsKFwiLi4vZm9udHMvQ2hpdm9Nb25vLU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvQ2hpdm9Nb25vLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cclxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBJbnRlclRpZ2h0O1xuXHRmb250LWRpc3BsYXk6IHN3YXA7XG5cdHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXJUaWdodC1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlclRpZ2h0LUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XHJcbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogSW50ZXJUaWdodDtcblx0Zm9udC1kaXNwbGF5OiBzd2FwO1xuXHRzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyVGlnaHQtTWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlclRpZ2h0LU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cclxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBJbnRlclRpZ2h0O1xuXHRmb250LWRpc3BsYXk6IHN3YXA7XG5cdHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXJUaWdodC1SZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlclRpZ2h0LVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XHJcbiIsIi5ub25lIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udmlzdWFsbHktaGlkZGVuIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMXB4O1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG5cdGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5uby1zY3JvbGwge1xuXHRvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi50ZXh0LWxlZnQge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kLWZsZXgge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4uZmxleC1jZW50ZXIge1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiIsIi8qINCU0LXQvNC+INC60L7QvdGC0LXQvdGCICovXG4uY29udGVudC1kZW1vIHtcblx0bWFyZ2luLWJvdHRvbTogNXJlbTtcblx0cGFkZGluZzogMXJlbTtcblx0YmFja2dyb3VuZC1jb2xvcjogI2RhZGFkYTtcbn1cblxuLyog0JrQvtC90YLQtdC50L3QtdGA0YsgKi9cbi5jb250YWluZXIge1xuXHRtYXJnaW46IDAgYXV0bztcblx0cGFkZGluZzogMCB2YXIoLS1jb250YWluZXItcGFkZGluZyk7XG5cblx0bWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItd2lkdGgpO1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLmNvbnRhaW5lci1mdWxsIHtcblx0cGFkZGluZzogMCB2YXIoLS1jb250YWluZXItcGFkZGluZyk7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLmNvbnRhaW5lci1sZWZ0LTUwIHtcblx0cGFkZGluZzogMCB2YXIoLS1jb250YWluZXItcGFkZGluZyk7XG5cdG1heC13aWR0aDogNTAlO1xuXG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG5cbi5jb250YWluZXItcmlnaHQtNTAge1xuXHRwYWRkaW5nOiAwIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKTtcblx0bWF4LXdpZHRoOiA1MCU7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG5cdEBpbmNsdWRlIG1vYmlsZSB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG5cbi5jb250YWluZXItcmlnaHQge1xuXHRwYWRkaW5nLWxlZnQ6IGNhbGMoXG5cdFx0KDEwMCUgLSB2YXIoLS1jb250YWluZXItd2lkdGgpKSAvIDIgKyB2YXIoLS1jb250YWluZXItcGFkZGluZylcblx0KTtcblxuXHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdHBhZGRpbmctbGVmdDogdmFyKC0tY29udGFpbmVyLXBhZGRpbmcpO1xuXHR9XG59XG5cbi5jb250YWluZXItbGVmdCB7XG5cdHBhZGRpbmctcmlnaHQ6IGNhbGMoXG5cdFx0KDEwMCUgLSB2YXIoLS1jb250YWluZXItd2lkdGgpKSAvIDIgKyB2YXIoLS1jb250YWluZXItcGFkZGluZylcblx0KTtcblxuXHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKTtcblx0fVxufVxuXG4uY29udGFpbmVyLWhhbGYtbGVmdCB7XG5cdHBhZGRpbmctcmlnaHQ6IGNhbGMoXG5cdFx0KDEwMCUgLSB2YXIoLS1jb250YWluZXItd2lkdGgpKSAvIDIgKyAodmFyKC0tY29udGFpbmVyLXdpZHRoKSAvIDIpXG5cdCk7XG5cdHBhZGRpbmctbGVmdDogY2FsYyhcblx0XHQoMTAwJSAtIHZhcigtLWNvbnRhaW5lci13aWR0aCkpIC8gMiArIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKVxuXHQpO1xuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0cGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXItcGFkZGluZyk7XG5cdH1cblxuXHRAaW5jbHVkZSBtb2JpbGUge1xuXHRcdHBhZGRpbmc6IDAgdmFyKC0tY29udGFpbmVyLXBhZGRpbmcpO1xuXHR9XG59XG5cbi5jb250YWluZXItaGFsZi1yaWdodCB7XG5cdHBhZGRpbmctbGVmdDogY2FsYyhcblx0XHQoMTAwJSAtIHZhcigtLWNvbnRhaW5lci13aWR0aCkpIC8gMiArICh2YXIoLS1jb250YWluZXItd2lkdGgpIC8gMilcblx0KTtcblx0cGFkZGluZy1yaWdodDogY2FsYyhcblx0XHQoMTAwJSAtIHZhcigtLWNvbnRhaW5lci13aWR0aCkpIC8gMiArIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKVxuXHQpO1xuXG5cdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0cGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyLXBhZGRpbmcpO1xuXHR9XG5cblx0QGluY2x1ZGUgbW9iaWxlIHtcblx0XHRwYWRkaW5nOiAwIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKTtcblx0fVxufVxuIiwiQG1peGluIG1lZGlhQmcoKSB7XG5cdEBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcblx0ICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIHRhYmxldCAoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMjBweCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtb2JpbGUgKCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4MjBweCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59IiwiaHRtbCwgYm9keSB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4iLCIuZm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDMwcHggMDtcclxuICAgIGJveC1zaGFkb3c6IDBweCAtMnB4IDEwcHggaHNsKDAsIDAlLCAwJSwyMCUpO1xyXG59XHJcbi5mb290ZXItY29udGFpbmVyIHtcclxuIFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDE1cHg7XHJcbiAgICAmIGRpdntcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgXHJcbiAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgJiBzdmcge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgc3ZnOmhvdmVye1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwe1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuICAgIFxyXG59XHJcbi5jb250YWluZXIge1xyXG59XHJcbiIsIi5oZWFkZXIge1xyXG4gICAgei1pbmRleDogMTA7XHJcbn1cclxuLmhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBoc2woMCwgMCUsIDIwJSwwLjcwKSwgIzk5OTk5OSwgaHNsKDAsIDAlLCAyMCUsNzAlKSk7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7IC8qINCg0LDQt9C80YvRgtC40LUg0YTQvtC90LAgKi9cclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpOyAvKiDQlNC70Y8gV2Via2l0LdCx0YDQsNGD0LfQtdGA0L7QsiAqL1xyXG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAxMHB4IHJnYigwLCAwLCAwLDAuMik7XHJcbiBcclxufVxyXG5ib2R5LmRhcmstdGhlbWUgaGVhZGVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwgMC4yKTsgLyog0J/QvtC70YPQv9GA0L7Qt9GA0LDRh9C90YvQuSDRhNC+0L0gKi9cclxufVxyXG4uaGVhZGVyLWNvbnRhaW5lciB7XHJcbiAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICBcclxufVxyXG4uYnRuLXByb2ZpbC5idG4tbmF2e1xyXG4gICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgd2lkdGg6IDYwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICYgc3Zne1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogMTAzMHB4KSB7IFxyXG4gICAgLmJ0bi1wcm9maWwuYnRuLW5hdntcclxuICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICB9XHJcbn1cclxuLm5hdi1sZWZ0IHtcclxuICAgXHJcbn1cclxuLmxvZ28ge1xyXG59XHJcbi5pY29uaWZ5IHtcclxufVxyXG4uaWNvbmlmeS0tdHdlbW9qaSB7XHJcbn1cclxuLkxvZ28tbmFtZSB7XHJcbn1cclxuLm5hdi1saXN0IHtcclxufVxyXG4ubmF2LWxpc3QtbGVmdCB7XHJcbn1cclxuLmJ0bi1ob21lIHtcclxufVxyXG4uYWN0aXZlIHtcclxufVxyXG4uYnRuLWhpc3Rvcnkge1xyXG59XHJcbi5idG4tY2hhdCB7XHJcbn1cclxuLmJ0bi1wcmVtaXVtIHtcclxufVxyXG4ubmF2LXJpZ2h0IHtcclxufVxyXG4ubmF2LWxpc3QtcmlnaHQge1xyXG59XHJcbi50aGVtZS10b2dnbGUge1xyXG59XHJcbi5pY29uIHtcclxufVxyXG4ud2hpdGUge1xyXG59XHJcbi5zd2l0Y2gge1xyXG59XHJcbi5zbGlkZXIge1xyXG59XHJcbi5tb29uLWljb24ge1xyXG59XHJcbi5idG4tc2luZyB7XHJcbn1cclxuLmJ0bi1uYXYge1xyXG59XHJcbiIsIi5pY29ucy13cmFwcGVyIHtcblx0cGFkZGluZzogMzBweCAwO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRjb2x1bW4tZ2FwOiAzMHB4O1xufVxuXG4uaWNvbiB7XG5cdGZpbGw6IHRyYW5zcGFyZW50O1xuXHRzdHJva2U6IHRyYW5zcGFyZW50O1xuXHR3aWR0aDogNjJweDtcblx0aGVpZ2h0OiA2MnB4O1xufVxuXG4uaWNvbi0taGVhcnQtbGluZSB7XG5cdGZpbGw6IHJnYigyNDEsIDY4LCAxMzEpO1xufVxuXG4uaWNvbi0taWQtY2FyZC1saW5lIHtcblx0ZmlsbDogcmdiKDUxLCA1MSwgNTEpO1xufVxuLmljb24tLXNlYXJjaC1saW5lIHtcblx0ZmlsbDogcmdiKDI4LCAxNzYsIDgwKTtcbn1cblxuLmljb24tLXVzZXItc3RhciB7XG5cdGZpbGw6IHJnYigyNiwgMTM0LCAyMzUpO1xuXHRcbn1cblxuLmljb24tLXVzZXIge1xuXHRzdHJva2U6IHJnYigyNiwgMTM0LCAyMzUpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xuXG5cdCY6aG92ZXIge1xuXHRcdHN0cm9rZTogcmdiKDE3LCAxOTMsIDkwKTtcblx0fVxufVxuIiwiYm9keS5kYXJrLXRoZW1le1xyXG5cclxufVxyXG5cclxuaDMudGl0bGUge1xyXG4gICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcbmg0LnRpdGxlIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xyXG4gICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbn1cclxuaDUudGl0bGUge1xyXG4gICAgXHJcbiAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbi5tYWluLWluZm97XHJcbiAgICBtYXJnaW4tdG9wOiAxMjBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpO1xyXG59XHJcbmJvZHkuZGFyay10aGVtZSAubWFpbi1pbmZve1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvci1kKTtcclxufVxyXG4ubmF2LXJpZ2h0ID4gdWx7IFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMjBweDtcclxuICAgICYgbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXRleHQpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWQpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS10ZXh0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dCk7O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5ib2R5LmRhcmstdGhlbWUgLm5hdi1yaWdodCA+IHVseyBcclxuXHJcbiAgICAmIGxpIHtcclxuICAgIFxyXG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXRleHQtZCk7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWQpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogMTAzMHB4KSB7XHJcbiAgICAubmF2LXJpZ2h0ID4gdWx7IFxyXG4gICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAmIGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmluZm8tYmcge1xyXG4gICAgcGFkZGluZzogNjBweCA4MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIGJhY2tncm91bmQ6IGhzbGEoMCwgMCUsIDAlLCAwLjEpO1xyXG59XHJcbmJvZHkuZGFyay10aGVtZSAuaW5mby1iZyB7XHJcbiAgXHJcbiAgICBiYWNrZ3JvdW5kOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjEpO1xyXG59XHJcbi50ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLy8gISEhISEhISEhISEhISEhISEhISEhIVxyXG5ib2R5LmRhcmstdGhlbWUgLnNlY3Rpb24tcGx1c2VzLmZ1bGxfYmcsXHJcbmJvZHkuZGFyay10aGVtZSAuc2VjdGlvbi1zdGFyLmZ1bGxfYmcsXHJcbmJvZHkuZGFyay10aGVtZSAuc2VjdGlvbi1saWtlLmZ1bGxfYmd7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcbn1cclxuLnNlY3Rpb24tcGx1c2VzLnJldmVyc2Uge1xyXG4gICAgJiAucGx1c2VzLWNvbnRlbnQge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDMwcHgpe1xyXG4gICAgICAgXHJcbiAgICAgICAgLnBsdXNlcy1jb250ZW50e1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlY3Rpb24tc3Rhci5mdWxsX2JnICxcclxuLnNlY3Rpb24tcGx1c2VzLmZ1bGxfYmcgLFxyXG4uc2VjdGlvbi1saWtlLmZ1bGxfYmcge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxufVxyXG4uc2VjdGlvbi1wbHVzZXMge1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgJiAuYnRuLWFwcHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDE4cHggMjZweDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggdmFyKC0tdGV4dCkgc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXRleHQpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0KTs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4ucGx1c2VzLWNvbnRhaW5lciB7XHJcbn1cclxuLmNvbnRhaW5lciB7XHJcbn1cclxuXHJcbi50aXRsZS1wbHVzZXMge1xyXG59XHJcbi5wbHVzZXMtY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgZ2FwOiAxMHB4O1xyXG4gICAgJiBpbWd7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgIH1cclxuICAgICYgPiBkaXZ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogNTBweDtcclxuICAgICAgICAmID4gZGl2e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbn1cclxuLy8gISEhISEhISEhISEhISEhISEhISEhISEhXHJcbi5zZWN0aW9uLWxpa2Uge1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG5cclxuLmxpa2UtY29udGFpbmVyIHtcclxufVxyXG4uY29udGFpbmVyIHtcclxufVxyXG4udGl0bGUge1xyXG59XHJcbi50aXRsZS1saWtlIHtcclxufVxyXG4ubGlrZS1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIGdhcDogMjBweCAyMHB4O1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgyMDBweCwgNzAwcHgpKTtcclxuICAgIFxyXG59XHJcbi5saWtlLWNhcnQgeyBcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcbi50ZXh0IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG59XHJcblxyXG5cclxuLmZhcS1zZWN0aW9uIHtcclxuICAgIHBhZGRpbmc6IDUwcHggMDtcclxufVxyXG4uZmFxLWNvbnRhaW5lciB7XHJcbn1cclxuLmNvbnRhaW5lciB7XHJcbn1cclxuLnRpdGxlIHtcclxufVxyXG4uZmFxLmFjdGl2ZSB7XHJcbiAgICAmID4gc3ZnIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuLmZhcSB7XHJcbiAgICAmID4gc3ZnIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgXHJcbiAgICB9XHJcbn1cclxuLmZhcS1saXN0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgXHJcbn1cclxuYm9keS5kYXJrLXRoZW1lIC5mYXEtaXRlbSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjIpO1xyXG4gICBcclxuICAgICAgICYgYSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRleHQtZCk7XHJcbiAgICAgICAgICBcclxuICAgICAgIH1cclxufVxyXG4uZmFxLWl0ZW0ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDBweDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBoc2woMCwgMCUsIDAlLDIwJSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJiBzdmd7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICB9XHJcbiAgICAmIC5mYXF7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICBcclxuXHJcbn1cclxuLmZhcS1pbmZvIHtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XHJcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgIFxyXG4gICAgXHJcbiAgICAmIGg1e1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gICAmIGEge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10ZXh0KTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgIH1cclxufVxyXG4uZmFxLWluZm8uYWN0aXZle1xyXG5cclxuICAgXHJcbiAgXHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxufVxyXG4udGV4dC1mYXEge1xyXG59XHJcbi5zZWN0aW9uLWFwcHtcclxuICAgIHBhZGRpbmc6IDUwcHggMFxyXG59XHJcbi50aXRsZS5hcHAtdGl0bGV7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxufVxyXG4uYXBwLWNvbnRhaW5lcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgJiAuYnRuLWFwcHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICBcclxuICAgICAgICBwYWRkaW5nOiAxOHB4IDI2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQpIHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgIFxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWQpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS10ZXh0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dCk7O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuICBcclxufVxyXG5ib2R5LmRhcmstdGhlbWUgLmFwcC1jb250YWluZXIgeyBcclxuICAgICAgICBcclxuICAgIC5idG4tYXBwe1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0KTtcclxuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuYm9keS5kYXJrLXRoZW1lIC5hcHAtY29udGFpbmVyIHtcclxuICAgXHJcbiBcclxuICAgIFxyXG4gICAgXHJcbiAgICAmIC5idG4tYXBwe1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQtZCkgc29saWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbmZvLWJsb2Nre1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbm1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICBnYXA6IDIwcHg7XHJcbiAgICAmIGg0LGg1LHVsLG9se1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gICAgfVxyXG4gICAgJntcclxuICAgICAgICAmIHVsIHtcclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmIHVsIGxpIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogaW5pdGlhbCA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgb2x7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgYSB7XHJcbiAgICAgICBcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tdGV4dCk7XHJcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XHJcbiAgICAgICBcclxuXHJcbiAgICB9XHJcbiAgICBcclxuICAgICYgbGkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gICAgfVxyXG4gICAgcHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgXHJcbn1cclxuYm9keS5kYXJrLXRoZW1lIC5pbmZvLWJsb2Nre1xyXG4gICAgJiBhIHtcclxuICAgICAgIFxyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS10ZXh0LWQpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTAzMHB4KXtcclxuICAgICAgLmluZm8tYmd7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5wbHVzZXMtY29udGVudHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICYgaW1nIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBoMy50aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICBoNC50aXRsZSB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgaDUudGl0bGUge1xyXG4gICAgICAgIFxyXG4gICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY1cHgpe1xyXG4gICAgLnNlY3Rpb24tbGlrZSAubGlrZS1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIGdhcDogMjBweCAyMHB4O1xyXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCBtaW5tYXgoMjAwcHgsIDgwMHB4KSk7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBoMy50aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICBoNC50aXRsZSB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgaDUudGl0bGUge1xyXG4gICAgICAgIFxyXG4gICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgIFxyXG59XHJcbi8vLy8hISEhISEhISEhISEhXHJcblxyXG5cclxuLnNlY3Rpb24tc3RhciB7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDA7XHJcbiAgICBcclxufVxyXG5cclxuLnN0YXItY29udGFpbmVyIHtcclxufVxyXG4uY29udGFpbmVyIHtcclxufVxyXG4uc3Rhci1saXN0IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMjAwcHgsIDcwMHB4KSk7XHJcbiAgICBnYXA6IDEwcHg7XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6MTAzMHB4KXtcclxuICAgIC5zdGFyLWxpc3Qge1xyXG4gICAgIFxyXG4gICAgZ2FwOiAzMHB4IDtcclxuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDIwMHB4LCA3MDBweCkpO1xyXG4gICAgXHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6NDk5cHgpe1xyXG4gICAgLnN0YXItbGlzdCB7XHJcbiAgICAgXHJcbiAgICBnYXA6IDQwcHggO1xyXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCBtaW5tYXgoMjAwcHgsIDcwMHB4KSk7XHJcbiAgICBcclxuICAgIH1cclxufVxyXG5cclxuLnN0YXItaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgICYgc3Zne1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiA4MHB4O1xyXG5cclxuICAgIH1cclxuICAgICYgcHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAmIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuIiwiKiB7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZVxyXG59XHJcblxyXG5ib2R5LmxpZ2h0LXRoZW1lIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQpO1xyXG5cclxuICAgICYgc3ZnIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS10ZXh0KTtcclxuICAgIH1cclxufVxyXG5cclxuYm9keS5saWdodC10aGVtZSAuYnRuLXdoaXRlIHtcclxuICAgIGJhY2tncm91bmQ6ICNkZGQ7XHJcbn1cclxuXHJcbmJvZHkubGlnaHQtdGhlbWUgLmJ0bi1kYXJrIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3ItZCk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuXHJcbiAgICAmIHN2ZyB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tdGV4dC1kKTtcclxuICAgIH1cclxufVxyXG5cclxuLyog0KHRgtC40LvQuCDQtNC70Y8g0YLRkdC80L3QvtC5INGC0LXQvNGLICovXHJcbmJvZHkuZGFyay10aGVtZSxcclxuYm9keS5kYXJrLXRoZW1lIC5sZWZ0IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3ItZCk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgIGZpbGw6IHZhcigtLXRleHQtZCk7XHJcbn1cclxuXHJcbi8vIGJvZHkuZGFyay10aGVtZSAubWFpbi1zZWN0aW9uLnN0cmVhbSAucmlnaHQge1xyXG4vLyAgICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yLWQpO1xyXG4vLyAgICAgY29sb3I6IHZhcigtLXRleHQtZCk7XHJcbi8vIH1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAucmlnaHQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yLWQpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtZCk7XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuYnRuLXdoaXRlIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQpO1xyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLmJ0bi1kYXJrLFxyXG5ib2R5LmRhcmstdGhlbWUgLmxlZnQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvci1kKTtcclxuXHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuYmFyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtZCk7XHJcblxyXG59XHJcblxyXG5ib2R5LmxpZ2h0LXRoZW1lIC5iYXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dCk7XHJcblxyXG59XHJcblxyXG4ubWFpbi1zZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgYmFja2dyb3VuZDogVkFSKHZhcigtLW1haW4tY29sb3IpKTtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5tYWluLXNlY3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvci1kKTtcclxuXHJcbn1cclxuXHJcbi5idWJibGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDcwcHg7XHJcbiAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxufVxyXG5cclxuLmhlYXJ0IHtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgZmlsbDogd2hpdGU7XHJcbn1cclxuXHJcbi5sZWZ0LFxyXG4ucmlnaHQge1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4jY29udGVudDEuYWN0aXZlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLnJpZ2h0IHtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ubGVmdC11c2VyLXN0cmVhbSB7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnZpZGVvLWNvbnRhaW5lciB7fVxyXG5cclxuLmNvbnRlbnQtbGVmdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvbnRlbnQtbGVmdCB7XHJcblxyXG4gICAgJiBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1MnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJiBwIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRlbnQtbGVmdC5hY3RpdmUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZnVsbC1zY3JlZW4ge1xyXG4gICAgJiAubGVmdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5yaWdodCB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDBzIGVhc2UgMHM7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICB3aWR0aDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmhpZGRlbiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcblxyXG4ubGVmdCB7XHJcblxyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvcik7XHJcblxyXG5cclxuICAgICYgLmJ0bi1hcHAge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBwYWRkaW5nOiAxOHB4IDI2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQpIHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tdGV4dCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQpO1xyXG4gICAgICAgICAgICA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAmIC5idG4tYXBwIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE4cHggMjZweDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggdmFyKC0tdGV4dCkgc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjRkY4QzAwLCAjRkZENzAwKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRkZENzAwO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDI1NSwgMjE1LCAwLCAwLjcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAubGVmdCB7XHJcblxyXG4gICAgLmJ0bi1hcHAge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI0ZGOEMwMCwgI0ZGRDcwMCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0ZGRDcwMDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgyNTUsIDIxNSwgMCwgMC43KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAubGVmdCB7XHJcblxyXG5cclxuXHJcblxyXG4gICAgJiAuYnRuLWFwcCB7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggdmFyKC0tdGV4dC1kKSBzb2xpZDtcclxuICAgIH1cclxufVxyXG5cclxuLnJpZ2h0IHtcclxuXHJcblxyXG5cclxuXHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3IpO1xyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLm1haW4tc2VjdGlvbiB7fVxyXG5cclxuLm1haW4tY29udGFpbmVyIHt9XHJcblxyXG4ubGVmdCB7fVxyXG5cclxuLmJ0bi1kb3dubG9hZCB7fVxyXG5cclxuLm5hdi1sZWZ0IHtcclxuXHJcbiAgICB6LWluZGV4OiA1O1xyXG4gICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMjBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDIwcHg7XHJcbn1cclxuXHJcbi5idG4tc2luZyxcclxuLmJ0bi1wcm9maWwge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4uYnRuLXNpbmcuYWN0aXZlLFxyXG4uYnRuLXN0b3JlLmFjdGl2ZSxcclxuLmJ0bi1wcm9maWwuYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbn1cclxuXHJcbi5idG4tc2luZyxcclxuLmJ0bi1zdG9yZSxcclxuLmJ0bi1wcm9maWwge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbn1cclxuXHJcbi5idG4tbmF2IHtcclxuICAgIHBhZGRpbmc6IDE4cHggMjZweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQpIHNvbGlkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5idG4tbmF2IHtcclxuICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQtZCkgc29saWQ7XHJcbn1cclxuXHJcbi5sb2dvIHtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBnYXA6IDIwcHg7XHJcblxyXG4gICAgJiBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmljb25pZnkge31cclxuXHJcbi5pY29uaWZ5LS10d2Vtb2ppIHt9XHJcblxyXG4uTG9nby1uYW1lIHtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLm5hdi1saXN0IHtcclxuXHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQpIHNvbGlkO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuXHJcblxyXG5cclxuICAgIH1cclxuXHJcbiAgICAmIGJ1dHRvbiB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICBwYWRkaW5nOiAxM3B4IDI2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICYgYnV0dG9uLmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG5cclxuICAgICAgICAmIHN2ZyB7XHJcblxyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1idG4tY29sb3ItdGV4dClcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLm5hdi1saXN0IHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBib3JkZXI6IDNweCB2YXIoLS10ZXh0LWQpIHNvbGlkO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2LWxpc3QubmF2LWxpc3QtbGVmdCB7XHJcbiAgICB6LWluZGV4OiAxMTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogMjBweDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG5cclxuICAgICYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICAvKiDQn9C+0LvRg9C/0YDQvtC30YDQsNGH0L3Ri9C5INGE0L7QvSAqL1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAvKiDQoNCw0LfQvNGL0YLQuNC1INGE0L7QvdCwICovXHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgLyog0JTQu9GPIFdlYmtpdC3QsdGA0LDRg9C30LXRgNC+0LIgKi9cclxuICAgIH1cclxuXHJcbiAgICAmIGJ1dHRvbiB7XHJcbiAgICAgICAgei1pbmRleDogNjtcclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1ob21lIHt9XHJcblxyXG4uYnRuLWhpc3Rvcnkge31cclxuXHJcbi5idG4tY2hhdCB7fVxyXG5cclxuLmJ0bi1wcm9maWwge31cclxuXHJcbi5idG4tcHIge31cclxuXHJcbi5yaWdodCB7fVxyXG5cclxuLnVzZXJzLW9ubGluZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTMwJTtcclxufVxyXG5cclxuLm5hdi1yaWdodCB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDIwcHg7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcclxuICAgIGdhcDogMHB4O1xyXG59XHJcblxyXG4ubmF2LWxpc3QubmF2LWxpc3QtcmlnaHQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG59XHJcblxyXG4uYnRuLXdoaXRlIHt9XHJcblxyXG4uYnRuLWRhcmsge31cclxuXHJcbi52aWRlby1jb250YWluZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge31cclxuXHJcbiN2aWRlb0VsZW1lbnQsXHJcbiN2aWRlb0VsZW1lbnQtdXNlciB7XHJcblxyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB3aWR0aDogOTAlO1xyXG4gICAgaGVpZ2h0OiA4MCU7XHJcbiAgICAvLyBtYXgtaGVpZ2h0OiAxMDB2aDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgc2NhbGUoMSk7XHJcbiAgICAvKiDQntGC0YDQsNC20LXQvdC40LUg0Lgg0YPQstC10LvQuNGH0LXQvdC40LUgKi9cclxuXHJcbn1cclxuXHJcbiN2aWRlb0VsZW1lbnQuZnVsbC1zY3JlZW4sXHJcbiN2aWRlb0VsZW1lbnQtdXNlci5mdWxsLXNjcmVlbiB7XHJcblxyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC8vIG1heC1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHNjYWxlKDEpO1xyXG4gICAgLyog0J7RgtGA0LDQttC10L3QuNC1INC4INGD0LLQtdC70LjRh9C10L3QuNC1ICovXHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOjc2OHB4KSB7XHJcblxyXG4gICAgI3ZpZGVvRWxlbWVudCxcclxuICAgICN2aWRlb0VsZW1lbnQtdXNlciB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRyb2xzLWNvbnRhaW5lciB7XHJcblxyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIGJvdHRvbTogMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcclxufVxyXG5cclxuLmNvbnRyb2xzLWNvbnRhaW5lci5zdHJlYW0ge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMCU7XHJcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbi8qINCh0YLQuNC70Ywg0LTQu9GPINC90LDRgdGC0YDQvtC10LogKi9cclxuXHJcbi5jaGF0LWZyaWVuZHMge1xyXG5cclxuXHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAyNjBweDtcclxuXHJcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAvKiDQktC60LvRjtGH0LDQtdC8INCz0L7RgNC40LfQvtC90YLQsNC70YzQvdGD0Y4g0L/RgNC+0LrRgNGD0YLQutGDICovXHJcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcclxuICAgIC8qINCU0LvRjyDRhNC40LrRgdCw0YbQuNC4INC/0YDQuCDQv9GA0L7QutGA0YPRgtC60LUgKi9cclxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlYy1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4IDAgMCAwcHg7XHJcblxyXG4gICAgJj5kaXYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTBweDtcclxuXHJcbiAgICAgICAgJiBoNSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgaW1nIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcikgdmFyKC0tc2VjLWNvbG9yKTtcclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmN2Y1MDtcclxuICAgICAgICAvKiDQptCy0LXRgiBcItC/0L7Qu9C30YPQvdC60LBcIiAqL1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAvKiDQntC60YDRg9Cz0LvRi9C1INC60YDQsNGPINC/0L7Qu9C30YPQvdC60LAgKi9cclxuICAgIH1cclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcclxuICAgICAgICAvKiDQptCy0LXRgiDRhNC+0L3QsCDQv9C+0LvQvtGB0Ysg0L/RgNC+0LrRgNGD0YLQutC4ICovXHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICAgIC8qINCe0LrRgNGD0LPQu9GL0LUg0LrRgNCw0Y8g0YTQvtC90LAgKi9cclxuICAgIH1cclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNDUwMDtcclxuICAgICAgICAvKiDQkdC+0LvQtdC1INGC0LXQvNC90YvQuSDQvtGC0YLQtdC90L7QuiDQv9GA0Lgg0L3QsNCy0LXQtNC10L3QuNC4ICovXHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuY2hhdC1mcmllbmRzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlYy1jb2xvci1kKTtcclxuICAgIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tbWFpbi1jb2xvci1kKSB2YXIoLS1zZWMtY29sb3ItZCk7XHJcbn1cclxuXHJcbi5idG5zLXNldHRpbmctY2hhdCB7XHJcbiAgICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4jc2V0dGluZ3NQb3B1cCB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udHJvbHMtY29udGFpbmVyLnN0cmVhbSAuYnRucy1zZXR0aW5nLWNoYXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDI1JTtcclxuICAgIHRvcDogMTBweDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgMCUpO1xyXG5cclxuICAgICYgYnV0dG9uIHtcclxuXHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDUwJTtcclxuICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwJSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG5zLXNldHRpbmctY2hhdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblxyXG4gICAgYmFja2dyb3VuZDogcmdiKDUzLCA0NiwgOTAsIDAuNSk7XHJcblxyXG4gICAgJiBidXR0b24uYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICB9XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAvKiDQo9Cx0LjRgNCw0LXQvCDRgdGC0LDQvdC00LDRgNGC0L3Rg9GOINGB0YLRgNC10LvQvtGH0LrRgyAqL1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAvKiDQo9Cx0LjRgNCw0LXQvCDRgdGC0YDQtdC70L7Rh9C60YMg0L3QsCBTYWZhcmkgKi9cclxuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgLyog0KPQsdC40YDQsNC10Lwg0YHRgtGA0LXQu9C+0YfQutGDINC90LAgRmlyZWZveCAqL1xyXG5cclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYig1MywgNDYsIDkwLCAwLjMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIC8qINCj0LHQuNGA0LDQtdC8INC+0LHQstC+0LTQutGDINC/0YDQuCDRhNC+0LrRg9GB0LUgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi1tcy1leHBhbmQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAvKiDQo9Cx0LjRgNCw0LXQvCDRgdGC0YDQtdC70L7Rh9C60YMg0LIgSUUgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tc2V0LWNoYXQjZ2VuZGVyIHtcclxuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmZmZmY7XHJcblxyXG4gICAgJiAuZ2VuZGVyLW9wdGlvbiB7XHJcbiAgICAgICAgJiBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuZ2VuZGVyLXNlbGVjdCB7XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG5cclxuICAgICAgICBib3JkZXI6IDNweCB2YXIoLS10ZXh0LWQpIHNvbGlkO1xyXG5cclxuICAgIH1cclxufVxyXG5cclxuLmdlbmRlci1zZWxlY3Qge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweCAxMHB4O1xyXG4gICAgcGFkZGluZzogMHB4IDIwcHggMHB4IDIwcHg7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMTAwcHgsIDYwMHB4KSk7XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggdmFyKC0tdGV4dCkgc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5nZW5kZXItb3B0aW9uPnNwYW4gaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuZ2VuZGVyLW9wdGlvbj5zcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYgLmdlbmRlci1vcHRpb24uYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5nZW5kZXItc2VsZWN0IHt9XHJcblxyXG4uZ2VuZGVyLW9wdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5jb3VudHJ5LXNlbGVjdCB7XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG5cclxuICAgICAgICBib3JkZXI6IDNweCB2YXIoLS10ZXh0LWQpIHNvbGlkO1xyXG5cclxuICAgIH1cclxufVxyXG5cclxuLmNvdW50cnktc2VsZWN0IHtcclxuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweCAxMHB4O1xyXG4gICAgcGFkZGluZzogMHB4IDIwcHggMjBweCAyMHB4O1xyXG5cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDcwMHB4KSk7XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICBib3JkZXI6IDNweCB2YXIoLS10ZXh0KSBzb2xpZDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAmIGJ1dHRvbi5hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1jb2xvci10ZXh0KTtcclxuICAgIH1cclxuXHJcbiAgICAmIC5jb3VudHJ5LW9wdGlvbj5zcGFuIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMHB4O1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvdW50cnktb3B0aW9uPnNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmNvdW50cnktb3B0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5yZXBvcnQtc2VsZWN0IHtcclxuXHJcbiAgICAmIGJ1dHRvbiB7XHJcblxyXG4gICAgICAgIGJvcmRlcjogM3B4IHZhcigtLXRleHQtZCkgc29saWQ7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4ucmVwb3J0LXNlbGVjdCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBnYXA6IDEwcHggMTBweDtcclxuICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEwMHB4LCA3MDBweCkpO1xyXG5cclxuICAgICYgYnV0dG9uIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAzcHggdmFyKC0tdGV4dCkgc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIH1cclxuXHJcbiAgICAmIC5yZXBvcnQtb3B0aW9uPnNwYW4gaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAucmVwb3J0LW9wdGlvbj5zcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5yZXBvcnQtb3B0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxufVxyXG5cclxuXHJcbi8qINCh0YLQuNC70Lgg0LTQu9GPINGB0LXQu9C10LrRgtC+0LIg0LHQtdC3INGB0YLRgNC10LvQvtGH0LXQuiDQuCDQsdC+0YDQtNC10YDQsCAqL1xyXG5cclxuXHJcblxyXG5cclxuLnNlbGVjdC1ib3g6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG5cclxufVxyXG5cclxuLyog0KHRgtC40LvRjCDQtNC70Y8g0YHQtdC70LXQutGC0L7RgNCwINC/0L7Qu9CwICovXHJcblxyXG5cclxuXHJcblxyXG4vKiDQodGC0LjQu9GMINC00LvRjyDRgdC10LvQtdC60YLQvtGA0LAg0YHRgtGA0LDQvdGLICovXHJcblxyXG5cclxuXHJcblxyXG5cclxuI3N0YXJ0QnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgcGFkZGluZzogMjBweCA0MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTMwJTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbn1cclxuXHJcbi5jb250cm9scyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4jbmV4dEJ1dHRvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDgwcHg7XHJcbiAgICByaWdodDogNTElO1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuI2JhY2tCdXR0b24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAyMHB4O1xyXG4gICAgbGVmdDogMSU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4jcmVwQnV0dG9uIHtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgICByaWdodDogNTElO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcblxyXG4gICAgJiBzdmcge1xyXG4gICAgICAgIGZpbGw6IHJlZCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4jc3RvcEJ1dHRvbiB7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAyMHB4O1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICYgc3ZnIHtcclxuICAgICAgICBmaWxsOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udHJvbC1idG4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG5ib3gtc2hhZG93OiAwcHggMHB4IDVweCByZ2IoMCwgMCwgMCwgLjIpO1xyXG4gICAgJiBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG59XHJcblxyXG4jdG9nZ2xlTGlnaHQge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA4MHB4O1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4ubWFpbi1zZWN0aW9uLnN0cmVhbSAucmlnaHQge1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbn1cclxuLm1haW4tc2VjdGlvbi5zdHJlYW0gLmxlZnQtdXNlci1zdHJlYW0ge1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbn1cclxuXHJcbiN0b2dnbGVzY3JlZW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAmIHN2ZyB7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxNDBweDtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLmxvZ28ubG9nby1zdHJlYW0ge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDIwcHg7XHJcbiAgICBib3R0b206IDEwcHg7XHJcblxyXG4gICAgJiBwIHt9XHJcblxyXG4gICAgJiBzdmcge1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udHJvbHMgLmhlYXJ0LWJ0biB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDcwcHg7XHJcbiAgICBsZWZ0OiAyMyU7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZjFjNDBmLCAjZTY3ZTIyKTtcclxuXHJcbiAgICAmIHN2ZyB7XHJcbiAgICAgICAgZmlsbDogcmdiKDg0LCAyMTgsIDg0KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLXNldC1jaGF0IHt9XHJcblxyXG4uY2hhdC1zdHJlYW0ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAxMHB4O1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHJcblxyXG4gICAgLmNoYXQtc3RyZWFtLWNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBwYWRkaW5nOiAwcHggNDBweCAwIDQwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc3RyZWFtLW1lc3NhZ2VzIHtcclxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIC8qINCS0YvRgdC+0YLQsCDQs9GA0LDQtNC40LXQvdGC0L3QvtCz0L4g0L7QsdGA0LXQt9CwICovXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdHJlYW0taW5wdXQtY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICYgaW5wdXR7XHJcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0cmVhbS1tZXNzYWdlLWlucHV0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIHBhZGRpbmc6IDEzLjM3cHggMjBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMCAwIDMwcHg7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAvKiDQoNCw0LfQvNGL0YLQuNC1INGE0L7QvdCwICovXHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZCk7XHJcbiAgICB9XHJcblxyXG4gICAgYm9keS5kYXJrLXRoZW1lIC5jaGF0LXN0cmVhbSAuc3RyZWFtLW1lc3NhZ2UtaW5wdXQge1xyXG5cclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgIH1cclxuXHJcbiAgICAuc3RyZWFtLXNlbmQtYnRuIHtcclxuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTJweDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMzBweCAzMHB4IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5kLWJ0bjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHJlYW0tbWVzc2FnZSB7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XHJcblxyXG4gICAgICAgICY6OmFmdGVyLFxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuc3RyZWFtLW1lc3NhZ2Uuc3RyZWFtLXBlcnNvbmFsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbnBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgJiAuYXZhdGFyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBib3R0b206IDBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC00MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmQyNjdhO1xyXG4gICAgICAgICAgICBib3JkZXItaW1hZ2U6IGluaXRpYWw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdHJlYW0tbWVzc2FnZS5zdHJlYW0taW5jb21pbmcge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgICAgICAmIC5hdmF0YXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtNDBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1pbWFnZTogaW5pdGlhbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi51c2Vycy1vbmxpbmUge1xyXG5cclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxufVxyXG5cclxuLm9ubGluZS1pY29uIHtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAyNTUsIDAsIDEpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgLyog0J7RgtGB0YLRg9C/INC80LXQttC00YMg0LjQutC+0L3QutC+0Lkg0Lgg0YLQtdC60YHRgtC+0LwgKi9cclxuICAgIG1hcmdpbi1ib3R0b206IDFweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgwLCAyNTUsIDAsIDAuOCk7XHJcbiAgICAvKiDQodCy0LXRh9C10L3QuNC1ICovXHJcbiAgICBhbmltYXRpb246IHB1bHNlIDEuNXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4jbG9hZGluZy1zY3JlZW4ge1xyXG5cclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbGVmdDogLTEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhcnQtY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDFzIGVhc2Utb3V0IGZvcndhcmRzO1xyXG4gICAgfVxyXG5cclxuICAgIC5oZWFydCB7XHJcbiAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJlZDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIGFuaW1hdGlvbjogcHVsc2UgLjVzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAlIDAlIDAgMDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTUwcHggcmdiYSgyNTUsIDAsIDAsIDAuOSksIDAgMCAxNDBweCByZ2JhKDI1NSwgMCwgMCwgMC43KSwgMCAwIDE1NXB4IHJnYmEoMjU1LCAwLCAwLCAwLjUpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhcnQ6YmVmb3JlLFxyXG4gICAgLmhlYXJ0OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmVkO1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIyMnB4IHJnYmEoMjU1LCAwLCAwLCAwLjkpLCAwIDAgNDBweCByZ2JhKDI1NSwgMCwgMCwgMC43KSwgMCAwIDU1cHggcmdiYSgyNTUsIDAsIDAsIDAuNSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYXJ0OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAtNTAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYXJ0OmFmdGVyIHtcclxuICAgICAgICBsZWZ0OiAtNTAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BhcmtzLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTQwcHg7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3Bhcmsge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogNXB4O1xyXG4gICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG9yYW5nZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBzcGFya0FuaW1hdGlvbiAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDI1NSwgMTY1LCAwLCAwLjgpLCAwIDAgMjBweCByZ2JhKDI1NSwgMTY1LCAwLCAwLjYpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGFyazpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgIHRvcDogMzAlO1xyXG4gICAgICAgIGxlZnQ6IDEwJTtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICB9XHJcblxyXG4gICAgLnNwYXJrOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgdG9wOiAyMCU7XHJcbiAgICAgICAgbGVmdDogMjAlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcclxuICAgIH1cclxuXHJcbiAgICAuc3Bhcms6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICB0b3A6IDQwJTtcclxuICAgICAgICBsZWZ0OiAzMCU7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGFyazpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgIHRvcDogNjAlO1xyXG4gICAgICAgIGxlZnQ6IDQwJTtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuN3M7XHJcbiAgICB9XHJcblxyXG4gICAgLnNwYXJrOm50aC1jaGlsZCg1KSB7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC45cztcclxuICAgIH1cclxuXHJcblxyXG5cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlKDEuMSk7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwYXJrQW5pbWF0aW9uIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTBweCkgc2NhbGUoMS41KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCkgc2NhbGUoMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLnN0cmVhbS1sb2FkIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcblxyXG4gICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgLmhlYXJ0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZWFydCB7XHJcbiAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJlZDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIGFuaW1hdGlvbjogcHVsc2UgLjVzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAlIDAlIDAgMDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTUwcHggcmdiYSgyNTUsIDAsIDAsIDAuOSksIDAgMCAxNDBweCByZ2JhKDI1NSwgMCwgMCwgMC43KSwgMCAwIDE1NXB4IHJnYmEoMjU1LCAwLCAwLCAwLjUpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhcnQ6YmVmb3JlLFxyXG4gICAgLmhlYXJ0OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmVkO1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIyMnB4IHJnYmEoMjU1LCAwLCAwLCAwLjkpLCAwIDAgNDBweCByZ2JhKDI1NSwgMCwgMCwgMC43KSwgMCAwIDU1cHggcmdiYSgyNTUsIDAsIDAsIDAuNSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYXJ0OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAtNTAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYXJ0OmFmdGVyIHtcclxuICAgICAgICBsZWZ0OiAtNTAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BhcmtzLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTQwcHg7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3Bhcmsge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogNXB4O1xyXG4gICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG9yYW5nZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBzcGFya0FuaW1hdGlvbiAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDI1NSwgMTY1LCAwLCAwLjgpLCAwIDAgMjBweCByZ2JhKDI1NSwgMTY1LCAwLCAwLjYpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGFyazpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgIHRvcDogMzAlO1xyXG4gICAgICAgIGxlZnQ6IDEwJTtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICB9XHJcblxyXG4gICAgLnNwYXJrOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgdG9wOiAyMCU7XHJcbiAgICAgICAgbGVmdDogMjAlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcclxuICAgIH1cclxuXHJcbiAgICAuc3Bhcms6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICB0b3A6IDQwJTtcclxuICAgICAgICBsZWZ0OiAzMCU7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGFyazpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgIHRvcDogNjAlO1xyXG4gICAgICAgIGxlZnQ6IDQwJTtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuN3M7XHJcbiAgICB9XHJcblxyXG4gICAgLnNwYXJrOm50aC1jaGlsZCg1KSB7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC45cztcclxuICAgIH1cclxufVxyXG5cclxuLyog0JTQu9GPINC+0YHQvdC+0LLQvdC+0LPQviDQutC+0L3RgtC10L3RgtCwICovXHJcbi5tYWluIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAvKiDQmtC+0L3RgtC10L3RgiDRgdC60YDRi9GCINC90LAg0YHRgtCw0YDRgtC1ICovXHJcbn1cclxuXHJcblxyXG4udGhlbWUtdG9nZ2xlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxufVxyXG5cclxuLmljb24ge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMjVweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgZmlsbDogYmxhY2s7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG59XHJcblxyXG4uaWNvbi5tb29uLWljb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogLTI1cHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGZpbGw6IGJsYWNrO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5pY29uIHtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgZmlsbDogcmdiKDI1NSwgMjU1LCAyNTUpO1xyXG59XHJcblxyXG4vKiBTd2l0Y2ggc3R5bGVzICovXHJcbi5zd2l0Y2gge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDYwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbn1cclxuXHJcbi5zd2l0Y2ggaW5wdXQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzRweDtcclxufVxyXG5cclxuLnNsaWRlcjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgbGVmdDogMHB4O1xyXG4gICAgYm90dG9tOiAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgdHJhbnNpdGlvbjogLjRzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG5pbnB1dDpjaGVja2VkKy5zbGlkZXIge1xyXG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcclxufVxyXG5cclxuaW5wdXQ6Y2hlY2tlZCsuc2xpZGVyOmJlZm9yZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5oaXN0b3J5IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG59XHJcblxyXG4uaGlzdG9yeSAuaGlzdG9yeS1pdGVtIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlYy1jb2xvcik7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLmhpc3RvcnkgLmhpc3RvcnktaXRlbSBpbWcge1xyXG4gICAgd2lkdGg6IDYwcHg7XHJcbiAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5oaXN0b3J5LWl0ZW0gcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5zdXBlci1tc2cge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDI4cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgbWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5oaXN0b3J5LXRpbWUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggZ3JleSBzb2xpZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaGlzdG9yeSAuaGlzdG9yeS10aW1lPmRpdiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAxMHB4O1xyXG59XHJcblxyXG4uaGlzdG9yeSAuaGlzdG9yeS10aW1lIHAge1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG59XHJcblxyXG4uaGlzdG9yeSAuZGVsIHtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG59XHJcblxyXG4uaGlzdG9yeSAuZGVsIHN2ZyxcclxuLmhpc3RvcnkgLmRlbCBnLFxyXG4uaGlzdG9yeSAuZGVsIHBhdGgge1xyXG4gICAgZmlsbDogbm9uZTtcclxuICAgIHN0cm9rZTogdmFyKC0tdGV4dCk7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5yZXAge1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBmaWxsOiBub25lO1xyXG59XHJcblxyXG4uaGlzdG9yeSAucmVwIHBhdGgge1xyXG4gICAgZmlsbDogcmVkO1xyXG59XHJcblxyXG4uaGlzdG9yeSAuaGlzdG9yeS11c2VyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwYWRkaW5nOiAwcHggMjBweDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDIwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmhpc3RvcnkgLmhpc3RvcnktbmFtZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5oaXN0b3J5LW5hbWUgcCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5oaXN0b3J5LWluZm8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMjBweDtcclxufVxyXG5cclxuLmhpc3RvcnkgLmhpc3RvcnktaW5mbyBwIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDVweDtcclxufVxyXG5cclxuLmhpc3RvcnkgLmhpc3RvcnktaW5mbyBwIHNwYW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmhpc3RvcnkgLmhpc3RvcnktaW5mbyBzdmcge1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbn1cclxuXHJcbi5oaXN0b3J5IC5oaXN0b3J5LWluZm8gc3ZnLFxyXG4uaGlzdG9yeSAuaGlzdG9yeS1pbmZvIGcsXHJcbi5oaXN0b3J5IC5oaXN0b3J5LWluZm8gcGF0aCB7XHJcbiAgICBmaWxsOiBub25lO1xyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLmhpc3RvcnktaXRlbSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuZGVsIHtcclxuXHJcbiAgICAmIHN2ZyxcclxuICAgIGcsXHJcbiAgICBwYXRoIHtcclxuICAgICAgICBzdHJva2U6IHZhcigtLXRleHQtZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuaGlzdG9yeS1pbmZvIHtcclxuXHJcbiAgICAmIHN2ZyxcclxuICAgIGcsXHJcbiAgICBwYXRoIHtcclxuICAgICAgICBzdHJva2U6IHZhcigtLXRleHQtZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuQG1peGluIGNlbnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcclxufVxyXG5cclxuQG1peGluIGJhbGwge1xyXG4gICAgQGluY2x1ZGUgY2VudGVyO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAzcHg7XHJcbiAgICBoZWlnaHQ6IDNweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICBhbmltYXRpb246IGJhbGwgLjQ1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4xNSwgMSkgYWx0ZXJuYXRlIGluZmluaXRlO1xyXG59XHJcblxyXG4uY29udGVudC1sZWZ0IC5jaGF0IHt9XHJcblxyXG4uY2hhdC1jb250YWluZXIge1xyXG5cclxuICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xyXG5cclxufVxyXG5cclxuLmNoYXQtbGlzdCB7XHJcblxyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XHJcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcblxyXG4gICAgb3ZlcmZsb3c6IGhpZGRlblxyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLmNoYXQtbGlzdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcblxyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLmNoYXQtbGVmdC1wYW5lbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcblxyXG59XHJcblxyXG4uY2hhdC1sZWZ0LXBhbmVsIHtcclxuICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDcwdmg7XHJcblxyXG5cclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlYy1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4IDAgMCAyMHB4O1xyXG5cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLmNoYXQtbGlzdC1pdGVtLmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigtLWJ0bi1jb2xvci10ZXh0KTtcclxufVxyXG5cclxuLmNoYXQtbGlzdC1pdGVtIHtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAmIGltZyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmIGRpdiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuXHJcbiAgICAgICAgJiBoNSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggMCAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiBwIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcclxuICAgICAgICAgICAgLyog0KjQuNGA0LjQvdCwINCx0LvQvtC60LAgKi9cclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgLyog0JfQsNC/0YDQtdGJ0LDQtdGCINC/0LXRgNC10L3QvtGBINGC0LXQutGB0YLQsCAqL1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAvKiDQntCx0YDQtdC30LDQtdGCINGC0LXQutGB0YIsINCy0YvRhdC+0LTRj9GJ0LjQuSDQt9CwINCz0YDQsNC90LjRhtGLICovXHJcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAvKiDQlNC+0LHQsNCy0LvRj9C10YIgLi4uINCyINC60L7QvdGG0LUgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pdGVtLW5hbWUge31cclxuXHJcbi5pdGVtLWxhc3RtZXNzIHt9XHJcblxyXG4uY2hhdC5hY3RpdmUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmNoYXQge1xyXG4gICAgQGluY2x1ZGUgY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1MDBweDtcclxuICAgIG1heC1oZWlnaHQ6IDcwdmg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAyMHB4IDIwcHggMDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuXHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuY2hhdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcblxyXG59XHJcblxyXG4uYnRuLWNoYXQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29udGVudDogXCI5OVwiO1xyXG4gICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLWNoYXQuYWN0aXZlIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0KTtcclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgICAgICAgQ2hhdCBUaXRsZVxyXG4gICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uY2hhdC10aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XHJcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICBnYXA6IDVweDtcclxuICAgIGZsZXg6IDAgMSA0NXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuXHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDYwcHg7XHJcblxyXG4gICAgaDEsXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG5cclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAuYXZhdGFyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0b3A6IDhweDtcclxuICAgICAgICBsZWZ0OiA5cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgICAgICAgIE1lc3NhZ2VzXHJcbiAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5tZXNzYWdlcyB7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuXHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJiAubWVzc2FnZXMtY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMSU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5tZXNzYWdlIHtcclxuICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4IDdweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMTBweCAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICBtYXJnaW46IDhweCAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjIpO1xyXG5cclxuICAgICAgICAudGltZXN0YW1wIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IC0xNXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDlweDtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IC02cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmF2YXRhciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYm90dG9tOiAtMTVweDtcclxuICAgICAgICAgICAgbGVmdDogLTM1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZXNzYWdlLXBlcnNvbmFsIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogOHB4IDM1cHggOHB4IDA7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZmQyNjdhO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAtNHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmIC5hdmF0YXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogLTE1cHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogLTM1cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWltYWdlOiBpbml0aWFsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5uZXcge1xyXG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogYm91bmNlIDUwMG1zIGxpbmVhciBib3RoO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubG9hZGluZyB7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYmFsbDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLjE1cztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAuM3M7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgICAgICAgIE1lc3NhZ2UgQm94XHJcbiAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5tZXNzYWdlLWJveCB7XHJcbiAgICBmbGV4OiAwIDEgNDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xyXG5cclxuICAgICYgLm1lc3NhZ2UtaW5wdXQge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICByZXNpemU6IG5vbmU7XHJcblxyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWE6Zm9jdXM6LXdlYmtpdC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuICAgICYgLm1lc3NhZ2Utc3VibWl0IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHBhZGRpbmc6IDE4cHggMTZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJiBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICAgICBDdXN0b20gU3JvbGxiYXJcclxuICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgbWFyZ2luOiAxcHggLTNweCAxcHggMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi5tQ1NCX2luc2lkZT4ubUNTQl9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbn1cclxuXHJcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgICAgICBCb3VuY2VcclxuICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuQGtleWZyYW1lcyBib3VuY2Uge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogbWF0cml4M2QoMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7XHJcbiAgICB9XHJcblxyXG4gICAgNC43JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjQ1LCAwLCAwLCAwLCAwLCAwLjQ1LCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxKTtcclxuICAgIH1cclxuXHJcbiAgICA5LjQxJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjg4MywgMCwgMCwgMCwgMCwgMC44ODMsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDE0LjExJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgxLjE0MSwgMCwgMCwgMCwgMCwgMS4xNDEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDE4LjcyJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgxLjIxMiwgMCwgMCwgMCwgMCwgMS4yMTIsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDI0LjMyJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgxLjE1MSwgMCwgMCwgMCwgMCwgMS4xNTEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDI5LjkzJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgxLjA0OCwgMCwgMCwgMCwgMCwgMS4wNDgsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDM1LjU0JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjk3OSwgMCwgMCwgMCwgMCwgMC45NzksIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDQxLjA0JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjk2MSwgMCwgMCwgMCwgMCwgMC45NjEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDUyLjE1JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjk5MSwgMCwgMCwgMCwgMCwgMC45OTEsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDYzLjI2JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgxLjAwNywgMCwgMCwgMCwgMCwgMS4wMDcsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDg1LjQ5JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgzZCgwLjk5OSwgMCwgMCwgMCwgMCwgMC45OTksIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogbWF0cml4M2QoMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5Aa2V5ZnJhbWVzIGJhbGwge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlWSguOCk7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wb3B1cC1jb250ZW50IC5wYWNrYWdlLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxufVxyXG5cclxuI3BhY2thZ2VQb3B1cCAucG9wdXAtY29udGVudCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxufVxyXG5cclxuLnBhY2thZ2UtY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogMTVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMCU7XHJcblxyXG5cclxuICAgIHBhZGRpbmc6IDMwcHggMTBweCA0MHB4IDEwcHg7XHJcblxyXG5cclxuICAgIC5wYWNrYWdlIHtcclxuICAgICAgICB3aWR0aDogMjgwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXNlYy1jb2xvci1kKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJiAucGFja2FnZS1idG4ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdmFyKC0tc2VjLWNvbG9yLWQpIDNweCBzb2xpZDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnBhY2thZ2U6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgIH1cclxuXHJcbiAgICAubmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5wcmljZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnByaWNlOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgLyBtb250aCBwZXIgdXNlclwiO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGhyIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2RlZGVkZTtcclxuICAgICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICBib2R5LmRhcmstdGhlbWUgaHIge31cclxuXHJcbiAgICAudHJpYWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwIDA7XHJcblxyXG4gICAgICAgIGJvZHkuZGFyay10aGVtZSAmIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yLWQpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBsaSBzdHJvbmcge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIGxpOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdcXDI3MTQnO1xyXG4gICAgICAgIC8qIENoZWNrbWFyayAqL1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnJpbGxpYW50IHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAuYnJpbGxpYW50OjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwi4pyUXCI7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTEwcHg7XHJcbiAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uYnRuLXNpbmcsXHJcbi5idG4tcHJvZmlsIHtcclxuICAgIG1hcmdpbi1yaWdodDogNDBweDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbn1cclxuXHJcbi5idG4tcHJvZmlsLmFjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmLmdvbGQtcGxhbntcclxuICAgICAgICBib3JkZXItY29sb3I6ICNmMWM0MGY7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggI2YxYzQwZjtcclxuICAgIH1cclxuICAgICYuYnJpbGxpYW50LXBsYW57XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjQjBDNERFO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNXB4ICNCMEM0REU7XHJcbiAgICB9XHJcbiAgICAmLmJhc2ljLXBsYW57XHJcbiAgICAgICAgXHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuICAgICYgaW1ne1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmIGltZy5hY3RpdmV7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxuICAgICYgc3Zne1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tcHJvZmlsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuLmF1dGgtY29udGFpbmVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmIGEgc3ZnIHtcclxuICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJiBidXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE2cHggMjhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5saW5rLWF1dGgge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpO1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDVweCByZ2IoMCwgMCwgMCwgLjEpO1xyXG4gICAgJi5ndWVzdHtcclxuICAgICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIH1cclxufVxyXG5cclxuLnRhYnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAzMHB4IDAgMjBweCAwO1xyXG5cclxufVxyXG5cclxuLnRhYiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbn1cclxuXHJcbi50YWIuYWN0aXZlIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS10ZXh0KTtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC50YWIuYWN0aXZlIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS10ZXh0LWQpO1xyXG59XHJcblxyXG4uZm9ybS1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uZm9ybSB7XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIC8vICYgKiB7XHJcbiAgICAvLyAgICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xyXG4gICAgLy8gfVxyXG59XHJcblxyXG4uZm9ybS5hY3RpdmUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5pbnB1dC1ncm91cCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcbn1cclxuXHJcbi5pbnB1dC1ncm91cCBpbnB1dCxcclxuLmlucHV0LWdyb3VwIHNlbGVjdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDcpO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcblxyXG4gICAgJiBvcHRpb24ge31cclxuXHJcbn1cclxuXHJcbi5lcnJvci1tZXNzYWdlIHtcclxuICAgIGNvbG9yOiByZWQ7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcblxyXG4ucHJvZmlsIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxufVxyXG5cclxuLnByb2ZpbC1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAyMHB4O1xyXG59XHJcblxyXG4ucHJvZmlsLXVzZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxufVxyXG5cclxuLnByb2ZpbC11c2VyIGltZyB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB3aWR0aDogMTUwcHg7XHJcbiAgICBoZWlnaHQ6IDE1MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbn1cclxuXHJcbi5wcm9maWwtdXNlciBoMiB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxufVxyXG5cclxuLnByb2ZpbC11c2VyIHAge1xyXG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAucHJvZmlsLXVzZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yLWQpO1xyXG59XHJcblxyXG4udXNlci1zZXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICB0b3A6IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udXNlci1zZXQgc3ZnIHtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG5cclxuXHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSBzdmcge1xyXG4gICAgZmlsbDogdmFyKC0tdGV4dC1kKTtcclxufVxyXG5cclxuLnByb2ZpbC1pbmZvIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5wcm9maWwtaW5mbyBkaXYge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuLnByb2ZpbC1pbmZvIHAge1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5wcm9maWwtaW5mbyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWMtY29sb3ItZCk7XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAubW9kYWwge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvci1kKTtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5tb2RhbCBpbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tYWluLWNvbG9yLWQpO1xyXG59XHJcblxyXG4vKiDQodGC0LjQu9C4INC80L7QtNCw0LvRjNC90L7Qs9C+INC+0LrQvdCwICovXHJcbiNlZGl0LW1vZGFsIHNlbGVjdHsgXHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG59XHJcbi5tb2RhbCB7XHJcblxyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvcik7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuICAgIGdhcDogMHB4O1xyXG5cclxuICAgICYgaDMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLm1vZGFsIHNlbGVjdCB7fVxyXG5cclxuLm1vZGFsIHNlbGVjdCxcclxuLm1vZGFsIGlucHV0IHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yKTtcclxufVxyXG5cclxuLm1vZGFsLWJ1dHRvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XHJcbn1cclxuXHJcbi5tb2RhbC1idXR0b25zIGJ1dHRvbiB7XHJcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuLnNhdmUtYnRuIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4uY2xvc2UtYnRuIHtcclxuICAgIGJhY2tncm91bmQ6IHJlZDtcclxuICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcblxyXG59XHJcblxyXG4jYXZhdGFyLXByZXZpZXcge1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG5cclxuICAgIG1hcmdpbjogMCBhdXRvIDEwcHggYXV0bztcclxufVxyXG5cclxuXHJcbi5jaGF0LWxlZnQtcGFuZWwgLm1lc3NhZ2VzIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgLyog0J7Qs9GA0LDQvdC40YfQuNCy0LDQtdC8INGI0LjRgNC40L3RgyAqL1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIC8qINCX0LDQutGA0YPQs9C70Y/QtdC8INGD0LPQu9GLICovXHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbiAgICAvKiDQotC10L3RjCDQtNC70Y8g0Y3RhNGE0LXQutGC0LAgKi9cclxufVxyXG5cclxuLyog0KHRgtC40LvQuNC30LDRhtC40Y8g0LjQt9C+0LHRgNCw0LbQtdC90LjQuSDQsiDQuNGB0YXQvtC00Y/RidC40YUg0YHQvtC+0LHRidC10L3QuNGP0YUgKi9cclxuLmNoYXQtbGVmdC1wYW5lbCAubWVzc2FnZXMubWVzc2FnZS1wZXJzb25hbCBpbWcge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIC8qINCX0LDQutGA0YPQs9C70Y/QtdC8INGD0LPQu9GLICovXHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbi5jYWxsLWJ0biB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgJiBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmNhbGwtdmlkZW8tYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHJpZ2h0OiA2MHB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmIHN2ZyB7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hdHRhY2gtYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIHJpZ2h0OiA5MnB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICYgc3ZnIHtcclxuICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMzBweCkge1xyXG5cclxuICAgIC5jaGF0IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tb2RhbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgd2lkdGg6IDk1JTtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwgaW5wdXQge1xyXG5cclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcblxyXG4gICAgfVxyXG5cclxuICAgICNhdmF0YXItcHJldmlldyB7XHJcbiAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLW5hdiB7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xyXG5cclxuICAgICAgICAmIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnBhY2thZ2UtY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwcHggMTBweCA0MHB4IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdi1saXN0LWxlZnQgYnV0dG9uIHtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLkxvZ28tbmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LWxlZnQgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubGVmdCAuYnRuLWFwcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2hhdC10aXRsZSBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogODY1cHgpIHtcclxuICAgIC5jaGF0IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5nZW5kZXItc2VsZWN0IHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxMHB4IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDIwcHggMjBweCAyMHB4O1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwcHgsIDYwMHB4KSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmNoYXQtbGlzdC1pdGVtIHtcclxuXHJcbiAgICAgICAgJiBpbWcge1xyXG5cclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiBkaXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xyXG5cclxuICAgICAgICAgICAgJiBoNSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCAwIDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYgcCB7XHJcblxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICAvKiDQqNC40YDQuNC90LAg0LHQu9C+0LrQsCAqL1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFja2FnZS1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwMHB4IDEwcHggMTAwcHggMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LWxpc3QubmF2LWxpc3QtbGVmdCB7XHJcblxyXG5cclxuICAgICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LFxyXG4gICAgLnJpZ2h0IHtcclxuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5uYXYtcmlnaHQge1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXNpbmcsXHJcbiAgICAuYnRuLXByb2ZpbCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAubmF2LWxlZnQge1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5jaGF0LXRpdGxlIHtcclxuXHJcbiAgICAgICAgcGFkZGluZzogMTBweCA1cHggMTBweCA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tZXNzYWdlLWJveCAubWVzc2FnZS1pbnB1dCB7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDBweCA1cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmF0dGFjaC1idG4ge1xyXG5cclxuICAgICAgICByaWdodDogODJweDtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmNhbGwtYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDI1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xyXG5cclxuICAgICAgICAmIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYWxsLXZpZGVvLWJ0biB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgcmlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xyXG4gICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgIGhlaWdodDogMjVweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAmIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jaGF0LWZyaWVuZHMge1xyXG5cclxuXHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jaGF0LWxpc3Qge1xyXG5cclxuXHJcblxyXG4gICAgICAgIG1pbi13aWR0aDogMTIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lc3NhZ2UtYm94IC5tZXNzYWdlLXN1Ym1pdCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2hhdCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2hhdC1saXN0LWl0ZW0ge1xyXG5cclxuICAgICAgICAmIGltZyB7XHJcblxyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIGRpdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcblxyXG4gICAgICAgICAgICAmIGg1IHtcclxuXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggNXB4IDAgNXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICAvKiDQqNC40YDQuNC90LAg0LHQu9C+0LrQsCAqL1xyXG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgIC8qINCX0LDQv9GA0LXRidCw0LXRgiDQv9C10YDQtdC90L7RgSDRgtC10LrRgdGC0LAgKi9cclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAvKiDQntCx0YDQtdC30LDQtdGCINGC0LXQutGB0YIsINCy0YvRhdC+0LTRj9GJ0LjQuSDQt9CwINCz0YDQsNC90LjRhtGLICovXHJcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgICAgIC8qINCU0L7QsdCw0LLQu9GP0LXRgiAuLi4g0LIg0LrQvtC90YbQtSAqL1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmIHAge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LXVzZXItc3RyZWFtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9maWwtdXNlciB7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAucHJvZmlsLXVzZXIgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZmlsLXVzZXIgcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9maWwtdXNlciBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5uYXYtbGlzdC5uYXYtbGlzdC1sZWZ0IHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4IDMwcHggMHB4IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm90dG9tOiAwcHg7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICYgYnV0dG9uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAwcHggMDtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiAwcHggdmFyKC0tdGV4dCkgc29saWQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLWNoYXQ6OmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29udGVudDogXCI5OVwiO1xyXG4gICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDM1JTtcclxuICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGVudC1sZWZ0IHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tc2VjdGlvbiB7XHJcblxyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LFxyXG4gICAgLnJpZ2h0IHtcclxuICAgICAgICAvLyBwYWRkaW5nOiA0MHB4IDAgMCAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDUwdmg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZ1bGwtc2NyZWVuIHtcclxuICAgICAgICAmIC5sZWZ0IHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmIC5jb250ZW50LWxlZnQge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuTG9nby1uYW1lIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5uYXYtbGVmdCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdi1yaWdodCB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMjBweDtcclxuICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmhpc3Rvcnkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnZpZGVvLWNvbnRhaW5lciB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmxlZnQtdXNlci1zdHJlYW0ge1xyXG5cclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDUwdmhcclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbHMtY29udGFpbmVyIHtcclxuICAgICAgICBib3R0b206IDIwJTtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgI3N0YXJ0QnV0dG9uIHtcclxuXHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgICAgICBwYWRkaW5nOiAxNHB4IDMwcHg7XHJcblxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXNldC1jaGF0IHtcclxuXHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLnVzZXJzLW9ubGluZSB7XHJcblxyXG5cclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcclxuICAgIH1cclxuXHJcbiAgICAub25saW5lLWljb24ge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9scyB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbHMtY29udGFpbmVyLnN0cmVhbSAuY29udHJvbHMge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgI25leHRCdXR0b24ge1xyXG5cclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMTVweDtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgI2JhY2tCdXR0b24ge1xyXG4gICAgICAgIHRvcDogMzBweDtcclxuICAgICAgICBsZWZ0OiAxNXB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAjcmVwQnV0dG9uIHtcclxuXHJcbiAgICAgICAgdG9wOiA5MHB4O1xyXG4gICAgICAgIHJpZ2h0OiAxNXB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAjc3RvcEJ1dHRvbiB7XHJcblxyXG5cclxuICAgICAgICB0b3A6IDMwcHg7XHJcbiAgICAgICAgcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgfVxyXG5cclxuICAgICN0b2dnbGVMaWdodCB7XHJcblxyXG5cclxuICAgICAgICB0b3A6IDE1MHB4O1xyXG4gICAgICAgIHJpZ2h0OiAxNXB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAjdG9nZ2xlc2NyZWVuIHtcclxuXHJcblxyXG4gICAgICAgIHRvcDogMjEwcHg7XHJcbiAgICAgICAgcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgfVxyXG5cclxuICAgICNoZWFydCB7XHJcblxyXG4gICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgICAgIHRvcDogOTBweDtcclxuXHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5jaGF0LXN0cmVhbSB7XHJcblxyXG4gICAgICAgIGJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5jaGF0LXN0cmVhbSAuY2hhdC1zdHJlYW0tY29udGFpbmVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDE1cHggMCA5MHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmNoYXQtc3RyZWFtIC5zdHJlYW0tbWVzc2FnZXMge1xyXG5cclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTQwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAubG9nby1zdHJlYW0ge1xyXG4gICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9scy1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA5MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0IC5idG4tYXBwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAubGVmdCAuY29udGVudC1sZWZ0IHAge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9scy1jb250YWluZXIuc3RyZWFtIC50YWdzIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbi5jb250cm9scyBzdmcge1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcblxyXG5cclxuXHJcbiAgICBmaWxsOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ib3JkZXItbGlnaHQge1xyXG5cclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDUwcHggNTBweCB3aGl0ZSBpbnNldDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHotaW5kZXg6IDk5OTtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6NzY4cHgpIHtcclxuICAgIC5sb2dvIHtcclxuICAgICAgICAmIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5LmRhcmstdGhlbWUgLnBhY2thZ2Uge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2VjLWNvbG9yLWQpO1xyXG59XHJcblxyXG5cclxuLnBvcHVwIHtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSkgc2NhbGUoMSk7XHJcblxyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xyXG5cclxufVxyXG5cclxuLnBvcHVwI2ZyaWVuZFJlcXVlc3RQb3B1cCB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4jcG9wdXBNZXNzYWdlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ucG9wdXAuYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEpO1xyXG59XHJcblxyXG4ucG9wdXAtYmFja2dyb3VuZCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAvKiDQotC10LzQvdGL0Lkg0YTQvtC9ICovXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucG9wdXAtY29udGVudCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogMTAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSkgc2NhbGUoMSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tYWluLWNvbG9yKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbWF4LWhlaWdodDogOTh2aDtcclxufVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5wb3B1cC1jb250ZW50IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3ItZCk7XHJcbn1cclxuXHJcbi5wb3B1cC1jbG9zZSB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDIwcHg7XHJcbiAgICB0b3A6IDIwcHg7XHJcblxyXG59XHJcblxyXG4ucG9wdXAtY29udGVudCB7fVxyXG5cclxuLmF1dGgtY29udGFpbmVyIHt9XHJcblxyXG4udGFicyB7fVxyXG5cclxuLnRhYiB7fVxyXG5cclxuLmFjdGl2ZSB7fVxyXG5cclxuLmZvcm0tY29udGFpbmVyIHt9XHJcblxyXG4uZm9ybSB7fVxyXG5cclxuLmlucHV0LWdyb3VwIHt9XHJcblxyXG4uZXJyb3ItbWVzc2FnZSB7fVxyXG5cclxuYm9keS5kYXJrLXRoZW1lIC5wb3B1cC1jb250ZW50IC5wb3B1cC1jbG9zZSB7XHJcblxyXG5cclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlYy1jb2xvci1kKTtcclxuXHJcbiAgICAmIHN2ZyxcclxuICAgIGcsXHJcbiAgICBwYXRoIHtcclxuXHJcbiAgICAgICAgZmlsbDogdmFyKC0tdGV4dC1kKTtcclxuICAgIH1cclxufVxyXG5cclxuLnBvcHVwLWNvbnRlbnQgLnBvcHVwLWNsb3NlIHtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTklO1xyXG5cclxuICAgIHBhZGRpbmc6IDVweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpXHJcbn1cclxuXHJcbi5wb3B1cC1jb250ZW50IC5wb3B1cC1jbG9zZSBzdmcge1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBmaWxsOiB2YXIoLS10ZXh0KTtcclxufVxyXG5cclxuXHJcbi50YWctY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwcHggYXV0bztcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4udGFncyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiAwIDVweDtcclxuXHJcbn1cclxuXHJcbi50YWcge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWNvbG9yKTtcclxuICAgIGNvbG9yOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLnRhZyBzcGFuIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5pbnB1dC1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tbWFpbi1jb2xvci1kKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogaHNsKDAsIDAlLCAxMDAlLCAyMCUpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmJvZHkuZGFyay10aGVtZSAuaW5wdXQtY29udGFpbmVyIHtcclxuXHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1tYWluLWNvbG9yKTtcclxuXHJcblxyXG59XHJcblxyXG4uaW5wdXQtY29udGFpbmVyIHNwYW4ge1xyXG5cclxuICAgIHBhZGRpbmc6IDVweCAwIDVweCAxMHB4O1xyXG59XHJcblxyXG4uaW5wdXQtY29udGFpbmVyIGlucHV0IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgbWF4LXdpZHRoOiAyMTVweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNzZweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTMwcHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uY291bnRyeS1zZWxlY3Qge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMHB4IDAgMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZ2VuZGVyLXNlbGVjdCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwcHggMCAxMHB4IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hZGQtYnV0dG9uIHtcclxuICAgIG1pbi13aWR0aDogMzBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1jb2xvcik7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWNvbG9yLXRleHQpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgcGFkZGluZzogMTBweCAxNXB4IDEwcHggMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDAgMCAwIGF1dG87XHJcblxyXG4gICAgJiBzdmcge1xyXG4gICAgICAgIGZpbGw6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1idG4tY29sb3ItdGV4dCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hZGQtYnV0dG9uOmRpc2FibGVkIHtcclxuICAgIGJhY2tncm91bmQ6ICNjY2M7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4uY29udHJvbHMtY29udGFpbmVyLnN0cmVhbSB7XHJcbiAgICAuaW5wdXQtY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC50YWdzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwcHg7XHJcbiAgICAgICAgcmlnaHQ6IDBweDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcblxyXG4gICAgICAgICYgLnRhZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuXHJcbiAgICAgICAgICAgICYgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby1zZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuXHJcblxyXG5cclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcblxyXG59XHJcbi5hdXRoLWJveHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3NnB4KSB7XHJcbiAgICAuY2hhdC1saXN0LWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmIGltZyB7fVxyXG5cclxuICAgICAgICAmIGRpdiB7XHJcblxyXG4gICAgICAgICAgICAmIGg1IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYgcCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKiDQodGC0LjQu9GMINC00LvRjyDQs9Cw0LzQsdGD0YDQs9C10YAt0LzQtdC90Y4gKi9cbi5oYW1idXJnZXItbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMzVweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDMwcHgpIHsgXG4gICAgLmhhbWJ1cmdlci1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAzNXB4O1xuICAgIH1cbn1cbmJvZHkuZGFyay10aGVtZSAubWVudSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tY29sb3ItZCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWQpO1xufVxuLmhhbWJ1cmdlciB7XG4gICAgd2lkdGg6IDMwcHg7IC8qINCo0LjRgNC40L3QsCDQutC+0L3RgtC10LnQvdC10YDQsCAqL1xuICAgIGhlaWdodDogMjFweDsgLyog0JLRi9GB0L7RgtCwINC60L7QvdGC0LXQudC90LXRgNCwICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jazsgLyog0KPQsdC40YDQsNC10LwgZmxleCwg0YfRgtC+0LHRiyDQsdC70L7QuiDQt9Cw0L3QuNC80LDQuyDQstGB0Y4g0L7QsdC70LDRgdGC0YwgKi9cbiAgICB6LWluZGV4OiAxMDA7IC8qINCj0LHQtdC00LjRgtC10YHRjCwg0YfRgtC+INC/0L7Qu9C+0YHRiyDQvdC1INC/0LXRgNC10LrRgNGL0LLQsNGO0YLRgdGPINC00YDRg9CzINC00YDRg9Cz0L7QvCAqL1xufVxuXG4uYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLyog0JrQsNC20LTQsNGPINC/0L7Qu9C+0YHQsCDQvdCwINC90L7QstC+0Lkg0YHRgtGA0L7QutC1ICovXG4gICAgd2lkdGg6IDEwMCU7IC8qINCf0L7Qu9C+0YHQsCDQsdGD0LTQtdGCINGA0LDRgdGC0Y/Qs9C40LLQsNGC0YzRgdGPINC90LAg0LLRgdGOINGI0LjRgNC40L3RgyDQutC+0L3RgtC10LnQvdC10YDQsCAqL1xuICAgIGhlaWdodDogNHB4OyAvKiDQktGL0YHQvtGC0LAg0L/QvtC70L7RgdC60LggKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzOyAvKiDQptCy0LXRgiDQv9C+0LvQvtGB0LrQuCAqL1xuICAgIG1hcmdpbjogNXB4IDA7IC8qINCe0YLRgdGC0YPQv9GLINC80LXQttC00YMg0L/QvtC70L7RgdC60LDQvNC4ICovXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgIFxufVxuXG4ubWVudSB7XG5cdFxuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0zMDBweDsgLyog0KHQutGA0YvRgtC+INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOICovXG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dCk7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICB0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2U7XG4gICAgei1pbmRleDogMTAyO1xufVxuXG4ubWVudSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLm1lbnUgbGkge1xuICAgIG1hcmdpbjogMjBweCAwO1xufVxuXG4ubWVudSBsaSBhIHtcbiAgXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xufVxuXG4ubWVudSBsaSBhOmhvdmVyIHtcbiAgIG9wYWNpdHk6IDAuNztcbn1cblxuLm1lbnUub3BlbiB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5oYW1idXJnZXIub3BlbiAuYmFyOm50aC1jaGlsZCgxKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDlweCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmhhbWJ1cmdlci5vcGVuIC5iYXI6bnRoLWNoaWxkKDIpIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4uaGFtYnVyZ2VyLm9wZW4gLmJhcjpudGgtY2hpbGQoMykge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtN3B4KSByb3RhdGUoLTQ1ZGVnKTtcbn1cbiIsIi8qIE5hdiBJY29uICovXG4ubW9iaWxlLW5hdi1idG4ge1xuXHQtLXRpbWU6IDAuMXM7XG5cblx0LS13aWR0aDogNDBweDtcblx0LS1oZWlnaHQ6IDMwcHg7XG5cblx0LS1saW5lLWhlaWdodDogNHB4O1xuXHQtLXNwYWNpbmc6IDZweDtcblxuXHQtLWNvbG9yOiAjMDAwO1xuXHQtLXJhZGl1czogNHB4O1xuXG5cdC8qIEZpeGVkIGhlaWdodCBhbmQgd2lkdGggKi9cblx0LyogaGVpZ2h0OiB2YXIoLS1oZWlnaHQpOyAqL1xuXHQvKiB3aWR0aDogdmFyKC0td2lkdGgpOyAqL1xuXG5cdC8qIER5bmFtaWMgaGVpZ2h0IGFuZCB3aWR0aCAqL1xuXHRoZWlnaHQ6IGNhbGModmFyKC0tbGluZS1oZWlnaHQpICogMyArIHZhcigtLXNwYWNpbmcpICogMik7XG5cdHdpZHRoOiB2YXIoLS13aWR0aCk7XG5cblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5uYXYtaWNvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IHZhcigtLXdpZHRoKTtcblx0aGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbn1cblxuLm5hdi1pY29uOjpiZWZvcmUsXG4ubmF2LWljb246OmFmdGVyIHtcblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblxuXHR3aWR0aDogdmFyKC0td2lkdGgpO1xuXHRoZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0KTtcblxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvcik7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lKSBlYXNlLWluLFxuXHRcdHRvcCB2YXIoLS10aW1lKSBsaW5lYXIgdmFyKC0tdGltZSk7XG59XG5cbi5uYXYtaWNvbjo6YmVmb3JlIHtcblx0LyogdG9wOiBjYWxjKHZhcigtLWxpbmUtaGVpZ2h0KSAqIC0yKTsgKi9cblx0dG9wOiBjYWxjKC0xICogKHZhcigtLWxpbmUtaGVpZ2h0KSArIHZhcigtLXNwYWNpbmcpKSk7XG59XG5cbi5uYXYtaWNvbjo6YWZ0ZXIge1xuXHQvKiB0b3A6IGNhbGModmFyKC0tbGluZS1oZWlnaHQpICogMik7ICovXG5cdHRvcDogY2FsYyh2YXIoLS1saW5lLWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nKSk7XG59XG5cbi5uYXYtaWNvbi5uYXYtaWNvbi0tYWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5uYXYtaWNvbi5uYXYtaWNvbi0tYWN0aXZlOjpiZWZvcmUsXG4ubmF2LWljb24ubmF2LWljb24tLWFjdGl2ZTo6YWZ0ZXIge1xuXHR0b3A6IDA7XG5cdHRyYW5zaXRpb246IHRvcCB2YXIoLS10aW1lKSBsaW5lYXIsXG5cdFx0dHJhbnNmb3JtIHZhcigtLXRpbWUpIGVhc2UtaW4gdmFyKC0tdGltZSk7XG59XG5cbi5uYXYtaWNvbi5uYXYtaWNvbi0tYWN0aXZlOjpiZWZvcmUge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5uYXYtaWNvbi5uYXYtaWNvbi0tYWN0aXZlOjphZnRlciB7XG5cdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi8qIExheW91dCAqL1xuXG4ubW9iaWxlLW5hdi1idG4ge1xuXHR6LWluZGV4OiA5OTk7XG5cdC8vIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbi8vIFx0Lm1vYmlsZS1uYXYtYnRuIHtcbi8vIFx0XHRkaXNwbGF5OiBibG9jaztcbi8vIFx0fVxuLy8gfSIsIi5oZWFkZXJfX25hdiB7XG59XG4ubmF2IHtcblx0Zm9udC1zaXplOiAxOHB4O1xufVxuLm5hdl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGNvbHVtbi1nYXA6IDMwcHg7XG59XG4uYWN0aXZlIHtcbn0iLCIudGl0bGUtMSB7XG5cdG1hcmdpbjogMWVtIDAgMC41ZW07XG5cdGZvbnQtc2l6ZTogMzhweDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGVzKTtcbn1cblxuLnRpdGxlLTIge1xuXHRtYXJnaW46IDFlbSAwIDAuNWVtO1xuXHRmb250LXNpemU6IDMycHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRpdGxlcyk7XG59XG5cbi50aXRsZS0zIHtcblx0bWFyZ2luOiAxZW0gMCAwLjVlbTtcblx0Zm9udC1zaXplOiAyNnB4O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC10aXRsZXMpO1xufVxuXG4udGl0bGUtNCB7XG5cdG1hcmdpbjogMWVtIDAgMC41ZW07XG5cdGZvbnQtc2l6ZTogMThweDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGVzKTtcbn0iXX0= */
