/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/general.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Goudy+Bookletter+1911&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/general.scss (1) ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Eagle+Lake&family=Goudy+Bookletter+1911&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/general.scss (2) ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Eagle+Lake&family=Tulpen+One&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/general.scss (3) ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
* {
  font-family: "Goudy Bookletter 1911", serif;
  font-weight: 400;
  font-style: normal;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: transparent;
}

body.no-scroll {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.font-belina {
  font-family: "Eagle Lake" !important;
  font-weight: 400;
  font-style: normal;
}

html {
  scroll-behavior: smooth;
}

body::-webkit-scrollbar {
  display: none;
  /* Safari and Chrome */
}

body {
  overflow-x: hidden;
  width: 100vw;
  background-color: #fff8ef;
}

picture,
img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  overflow-clip-margin: unset;
}

input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

a {
  text-decoration: none;
  color: inherit;
}

select,
input,
textarea {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  border: none;
}
select:focus, select:active, select:focus-visible, select:focus-within,
input:focus,
input:active,
input:focus-visible,
input:focus-within,
textarea:focus,
textarea:active,
textarea:focus-visible,
textarea:focus-within {
  appearance: none !important;
  border: none;
  outline: none;
}

button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}

.d-hide {
  opacity: 0;
  visibility: hidden;
  height: 0px !important;
  transition: all 0.5s;
}

.d-none {
  display: none !important;
}

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

.d-slide {
  opacity: 0;
  min-height: 0px !important;
  max-height: 0px !important;
}

.d-slide-side {
  font-size: 0px;
  min-width: 0px !important;
  max-width: 0px !important;
}

.object-cover {
  object-fit: cover;
}

.object-contain {
  object-fit: contain;
}

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

.flex-row {
  flex-direction: row !important;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.justify-start {
  justify-content: start;
}

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

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

.justify-around {
  justify-content: space-around;
}

.justify-evenly {
  justify-content: space-evenly;
}

.justify-end {
  justify-content: end;
}

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

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

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

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

.p-sides-10 {
  padding: 0 10px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.w-100 {
  min-width: 100% !important;
  max-width: 100% !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-hidden-no-events {
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  /* Standard syntax */
}

.border {
  border: 1px solid black;
}

.parallax-banner {
  position: relative;
  width: 100vw;
  height: 450px;
  clip-path: inset(0);
}
.parallax-banner img {
  position: fixed;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  min-height: 100vh;
}

.show {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: all !important;
  transition: 1s all;
}

.modal,
.news-mini-modal {
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 10px;
  padding: 20px 50px;
  color: white;
  border-radius: 5px;
  z-index: 100;
  transition: 1s all;
}

.success {
  background-color: rgb(72, 153, 72);
}

.failure {
  background-color: rgb(153, 72, 72);
}

.overflow-hidden-no-events {
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  /* Standard syntax */
}

.border {
  border: 1px solid black;
}

.show-edit {
  display: none;
  visibility: hidden;
}

.bg-no-events {
  pointer-events: all;
  position: fixed;
  top: -100vh;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(2px);
  z-index: 100;
  transition: 1s all;
}
.bg-no-events .popup {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  width: 480px;
  height: 400px;
  background-color: wheat;
}
.bg-no-events .popup h1 {
  font-size: 2rem;
}
.bg-no-events .popup p {
  font-size: 1.4rem;
  text-align: justify;
  padding: 0 30px;
}
.bg-no-events .popup .close-btn {
  cursor: pointer;
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 2rem;
}
.bg-no-events .popup .popup-btn {
  cursor: pointer;
  width: 100px;
  padding: 10px;
  font-size: 1.3rem;
  background-color: white;
  transition: all 0.5s;
}
.bg-no-events .popup .popup-btn:hover {
  background-color: rgb(236, 236, 236);
  transition: all 0.5s;
}

/* Language Selector */
/* ===== Loading Screen ===== */
.loading-page {
  visibility: visible;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  opacity: 1;
  background: #ffffff;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}

.loading-page.hidden {
  opacity: 0;
  visibility: hidden;
}

.loader-logo {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateX(-50%);
  width: 200px;
  height: auto;
  margin-bottom: 20px;
}

.spinner {
  border: 4px solid rgba(0, 0, 0, 0.1);
  border-top-color: #f39200;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.loader {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}

.loader::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 3px solid;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.d-desktop {
  display: block;
}

.d-mobile {
  display: none;
}

@media screen and (max-width: 992px) {
  .d-desktop {
    display: none !important;
  }
  .d-mobile {
    display: block;
  }
}
.pika-button {
  font-size: 1rem;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main/index.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.hero {
  display: flex;
  justify-content: center;
  width: 100vw;
  height: 100vh;
}
.hero .hero-container {
  position: relative;
  width: 100%;
  height: 100%;
}
.hero .hero-container .hero-text {
  position: absolute;
  top: 50%;
  left: 200px;
  transform: translateY(-50%);
  z-index: 100;
  width: 100%;
  color: white;
  background-clip: text;
  text-shadow: none;
}
.hero .hero-container .hero-text h1 {
  font-family: "Tulpen One", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 15rem;
}
.hero .hero-container .hero-text h2 {
  font-family: "Tulpen One", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 6rem;
}
.hero .hero-container::after {
  pointer-events: none;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 90;
  background-color: #000000;
  opacity: 0.5;
}

.hero-small {
  height: 700px !important;
}

.about-section {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
  background-color: #fff8ef;
}
.about-section .container {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 20px;
  width: var(--width);
  height: 900px;
  padding: 20px;
}
.about-section .container .left-col .top,
.about-section .container .right-col .top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  height: 40%;
}
.about-section .container .left-col .full-img,
.about-section .container .right-col .full-img {
  width: 100%;
  height: 60%;
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}
.about-section .container .left-col {
  width: 40%;
  height: 100%;
}
.about-section .container .left-col .top .logo {
  object-fit: contain;
  height: 200px;
}
.about-section .container .left-col .top .title {
  font-size: 2rem;
  text-align: center;
  padding: 10px;
}
.about-section .container .right-col {
  display: flex;
  flex-direction: column;
  align-items: space-between;
  width: 60%;
  height: 100%;
}
.about-section .container .right-col .top {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.about-section .container .right-col .top .title {
  text-align: center;
  font-size: 2.5rem;
}
.about-section .container .right-col .top .subtitle {
  width: 80%;
  text-align: center;
  font-size: 1.5rem;
}
.about-section .bg-img {
  position: absolute;
  z-index: 1;
}

.menu-section {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
}
.menu-section video {
  position: absolute;
  inset: 0;
  z-index: 1;
  object-fit: cover;
}
.menu-section .container {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: var(--width);
  height: auto;
  text-align: center;
  color: #fff8ef;
}
.menu-section .container .top {
  width: 100%;
  height: auto;
}
.menu-section .container .top .title {
  font-size: 3rem;
}
.menu-section .container .top .subtitle {
  font-size: 1.8rem;
}
.menu-section .container .bottom {
  display: flex;
  justify-content: center;
  width: var(--width);
  height: auto;
}
.menu-section .container .bottom .dish-item {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 600px;
  height: auto;
  padding: 20px 50px;
}
.menu-section .container .bottom .dish-item .dish-img {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 455px;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border: 5px solid #fff8ef;
}
.menu-section .container .bottom .dish-item .dish-img::before {
  content: "";
  position: absolute;
  inset: 20px;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border: 5px solid #e1a730;
}
.menu-section .container .bottom .dish-item .dish-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: auto;
}
.menu-section .container .bottom .dish-item .dish-text .title {
  font-size: 2.5rem;
}
.menu-section .container .bottom .dish-item .dish-text .subtitle {
  font-size: 1.5rem;
}
.menu-section .container .btns-container {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 20px;
}
.menu-section .container .btns-container .menu-btn {
  padding: 15px;
  font-size: 1.5rem;
  color: #fff8ef;
  border-radius: 5px;
  background-color: #fd8b44;
}
.menu-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  opacity: 0.2;
  background-color: #222222;
}

.service-banner {
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
  padding: 20px 0;
  background-color: white;
}
.service-banner .container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: var(--width);
  height: auto;
  text-align: center;
}
.service-banner .container .title {
  font-size: 3rem;
}
.service-banner .container .subtitle {
  font-size: 1.5rem;
}
.service-banner .container .images-container {
  display: flex;
  width: 100%;
  height: 600px;
}
.service-banner .container .images-container .item {
  width: 33.3333333333%;
  height: 100%;
  padding: 20px;
}
.service-banner .container .images-container .item img {
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}

.form-section {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
}
.form-section .bg-img {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.form-section .bg-img img {
  object-fit: cover;
}
.form-section .bg-img::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.6;
  background-color: #222222;
}
.form-section .container {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 50px;
  width: var(--width);
  height: 1000px;
  color: #fff8e2;
}
.form-section .container .top {
  width: 50%;
  text-align: center;
}
.form-section .container .top .title {
  font-size: 3.5rem;
}
.form-section .container .top .subtitle {
  font-size: 1.5rem;
}
.form-section .container .form {
  width: 50%;
  padding: 25px;
  border-radius: 10px;
  background-color: #fff8e2;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-size: 1.5rem;
}
.form-section .container .form .row {
  display: flex;
  gap: 20px;
  width: 100%;
}
.form-section .container .form .textarea {
  display: flex;
  flex-direction: column;
}
.form-section .container .form .col-wide {
  flex: 2;
  display: flex;
  flex-direction: column;
}
.form-section .container .form .col-small {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.form-section .container .form label {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 6px;
  color: #222;
}
.form-section .container .form input,
.form-section .container .form textarea {
  width: 100%;
  padding: 10px 12px;
  border-radius: 6px;
  border: 1px solid #ddd;
  font-size: 1.2rem;
  font-family: inherit;
  transition: all 0.2s ease;
  background: white;
}
.form-section .container .form textarea {
  resize: vertical;
  min-height: 120px;
}
.form-section .container .form input:focus,
.form-section .container .form textarea:focus {
  outline: none;
  border-color: #000;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}
.form-section .container .form .btn {
  margin-top: 10px;
  padding: 12px;
  border: none;
  border-radius: 6px;
  background: black;
  color: white;
  font-weight: 600;
  cursor: pointer;
  transition: 0.2s;
}
.form-section .container .form .btn:hover {
  background: #333;
  transform: translateY(-1px);
}

.form-section-small {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
  background-color: #fff8e2;
}
.form-section-small .container {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 50px;
  width: var(--width);
  height: 750px;
  color: #222222;
}
.form-section-small .container .left-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 100px;
  width: 50%;
  text-align: center;
}
.form-section-small .container .left-col .title {
  font-size: 3.5rem;
}
.form-section-small .container .left-col .subtitle {
  font-size: 1.5rem;
}
.form-section-small .container .left-col .img {
  width: 100%;
  height: 200px;
}
.form-section-small .container .left-col .img img {
  object-fit: contain;
}
.form-section-small .container .form {
  width: 50%;
  height: auto;
  padding: 25px;
  border-radius: 10px;
  background-color: #fff8e2;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-size: 1.5rem;
}
.form-section-small .container .form .row {
  display: flex;
  gap: 20px;
  width: 100%;
}
.form-section-small .container .form .textarea {
  display: flex;
  flex-direction: column;
}
.form-section-small .container .form .col-wide {
  flex: 2;
  display: flex;
  flex-direction: column;
}
.form-section-small .container .form .col-small {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.form-section-small .container .form label {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 6px;
  color: #222;
}
.form-section-small .container .form input,
.form-section-small .container .form textarea {
  width: 100%;
  padding: 10px 12px;
  border-radius: 6px;
  border: 1px solid #ddd;
  font-size: 1.2rem;
  font-family: inherit;
  transition: all 0.2s ease;
  background: white;
}
.form-section-small .container .form textarea {
  resize: vertical;
  min-height: 120px;
}
.form-section-small .container .form input:focus,
.form-section-small .container .form textarea:focus {
  outline: none;
  border-color: #000;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}
.form-section-small .container .form .btn {
  margin-top: 10px;
  padding: 12px;
  border: none;
  border-radius: 6px;
  background: black;
  color: white;
  font-weight: 600;
  cursor: pointer;
  transition: 0.2s;
}
.form-section-small .container .form .btn:hover {
  background: #333;
  transform: translateY(-1px);
}

.text-banner {
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
}
.text-banner .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: var(--width);
  text-align: center;
  padding: 50px 0;
}
.text-banner .container .title,
.text-banner .container .text {
  width: 80%;
}
.text-banner .container .title {
  font-size: 3rem;
}
.text-banner .container .text {
  font-size: 1.5rem;
}

.modal-info {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.35);
  transition: opacity 0.25s ease;
}
.modal-info .modal-menu {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  width: 80vw;
  max-width: 1000px;
  height: 80vh;
  padding: 20px;
  background-color: #fff;
  border-radius: 15px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  transform: translateY(0);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.modal-info .modal-menu .side-image {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 12px;
}
.modal-info .modal-menu .side-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modal-info .modal-menu .side-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
  height: auto;
  padding: 10px;
}
.modal-info .modal-menu .side-content h2 {
  color: #222222;
  font-size: 2rem;
}
.modal-info .modal-menu .side-content p {
  color: #222222;
  line-height: 1.5;
}
.modal-info .modal-menu .close {
  position: absolute;
  top: -10px;
  right: -10px;
  cursor: pointer;
  background: white;
  border-radius: 50%;
  padding: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s ease;
}
.modal-info .modal-menu .close svg {
  width: 35px;
  height: 35px;
  color: #222222;
}
.modal-info .modal-menu .close:hover {
  transform: scale(1.1);
}
.modal-info .special-modal-btn {
  cursor: pointer;
  align-self: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  width: auto;
  padding: 12px 24px;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #fff8ef;
  border-radius: 12px;
  border: 1px solid rgba(255, 248, 239, 0.4);
  background: #222222;
  transition: all 0.3s ease;
}
.modal-info .special-modal-btn:hover {
  color: #fff8e2;
  background: #fff8ef;
}
.modal-info .special-modal-btn:active {
  transform: scale(0.97);
}

@media screen and (max-width: 1700px) {
  .about-section {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
    background-color: #fff8ef;
  }
  .about-section .container {
    position: relative;
    z-index: 2;
    display: flex;
    gap: 20px;
    width: var(--width);
    height: 1200px;
    padding: 20px;
  }
  .about-section .container .left-col .top,
  .about-section .container .right-col .top {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    height: 40%;
  }
  .about-section .container .left-col .full-img,
  .about-section .container .right-col .full-img {
    width: 100%;
    height: 60%;
    border-radius: 5px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
  }
  .about-section .container .left-col {
    width: 40%;
    height: 100%;
  }
  .about-section .container .left-col .top .logo {
    object-fit: contain;
    height: 200px;
  }
  .about-section .container .left-col .top .title {
    font-size: 2rem;
    text-align: center;
    padding: 10px;
  }
  .about-section .container .right-col {
    display: flex;
    flex-direction: column;
    align-items: space-between;
    width: 60%;
    height: 100%;
  }
  .about-section .container .right-col .top {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .about-section .container .right-col .top .title {
    text-align: center;
    font-size: 2.5rem;
  }
  .about-section .container .right-col .top .subtitle {
    width: 80%;
    text-align: center;
    font-size: 1.5rem;
  }
  .about-section .bg-img {
    position: absolute;
    z-index: 1;
  }
}
@media screen and (max-width: 992px) {
  .hero {
    display: flex;
    justify-content: center;
    width: 100vw;
    height: calc(100vh - 100px);
  }
  .hero .hero-container {
    position: relative;
    width: var(--width);
    height: 100%;
  }
  .hero .hero-container .hero-text {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    z-index: 100;
  }
  .hero .hero-container .hero-text h1 {
    font-size: 10rem;
  }
  .hero .hero-container .hero-text h2 {
    font-size: 4rem;
  }
  .about-section .container {
    display: flex;
    flex-direction: column;
    height: auto;
  }
  .about-section .container .left-col .top,
  .about-section .container .right-col .top {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    height: auto;
    padding: 20px 0;
  }
  .about-section .container .left-col .full-img,
  .about-section .container .right-col .full-img {
    width: 100%;
    height: 600px;
    border-radius: 5px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
  }
  .about-section .container .left-col {
    width: 100%;
    height: auto;
  }
  .about-section .container .left-col .top .logo {
    object-fit: contain;
    height: 200px;
  }
  .about-section .container .left-col .top .title {
    font-size: 2rem;
    text-align: center;
    padding: 10px;
  }
  .about-section .container .right-col {
    display: flex;
    flex-direction: column;
    align-items: space-between;
    width: 100%;
    height: auto;
  }
  .about-section .container .right-col .top {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .about-section .container .right-col .top .title {
    text-align: center;
    font-size: 2.5rem;
  }
  .about-section .container .right-col .top .subtitle {
    width: 80%;
    text-align: center;
    font-size: 1.5rem;
  }
  .menu-section {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
  }
  .menu-section video {
    position: absolute;
    inset: 0;
    z-index: 1;
    object-fit: cover;
  }
  .menu-section .container {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: var(--width);
    height: auto;
    padding: 20px;
    text-align: center;
    color: #fff8ef;
  }
  .menu-section .container .top {
    width: 100%;
    height: auto;
  }
  .menu-section .container .top .title {
    font-size: 3rem;
  }
  .menu-section .container .top .subtitle {
    font-size: 1.8rem;
  }
  .menu-section .container .bottom {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: var(--width);
    height: auto;
  }
  .menu-section .container .bottom .dish-item {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    padding: 20px 40px;
  }
  .menu-section .container .bottom .dish-item .dish-img {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 300px;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border: 5px solid #fff8ef;
  }
  .menu-section .container .bottom .dish-item .dish-img::before {
    content: "";
    position: absolute;
    inset: 20px;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border: 5px solid #e1a730;
  }
  .menu-section .container .bottom .dish-item .dish-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: auto;
  }
  .menu-section .container .bottom .dish-item .dish-text .title {
    font-size: 2.5rem;
  }
  .menu-section .container .bottom .dish-item .dish-text .subtitle {
    font-size: 1.5rem;
  }
  .menu-section .container .btns-container {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 20px;
  }
  .menu-section .container .btns-container .menu-btn {
    padding: 15px;
    font-size: 1.5rem;
    color: #fff8ef;
    border-radius: 5px;
    background-color: #fd8b44;
  }
  .menu-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    opacity: 0.2;
    background-color: #222222;
  }
  .service-banner .container .title {
    font-size: 3rem;
  }
  .service-banner .container .subtitle {
    font-size: 1.5rem;
    padding: 20px;
  }
  .service-banner .container .images-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
  }
  .service-banner .container .images-container .item {
    width: 100%;
    height: 300px;
    padding: 20px;
  }
  .service-banner .container .images-container .item img {
    border-radius: 5px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
  }
  .form-section {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
  }
  .form-section .bg-img {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  .form-section .bg-img img {
    object-fit: cover;
  }
  .form-section .bg-img::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.4;
    background-color: #222222;
  }
  .form-section .container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: end;
    gap: 50px;
    width: var(--width);
    height: auto;
    padding: 20px;
    color: #fff8e2;
  }
  .form-section .container .top {
    width: 100%;
    text-align: center;
  }
  .form-section .container .top .title {
    font-size: 3rem;
  }
  .form-section .container .top .subtitle {
    font-size: 1.5rem;
    padding: 20px;
  }
  .form-section .container .form {
    width: 100%;
    padding: 25px;
    border-radius: 10px;
    background-color: #fff8e2;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 1.5rem;
  }
  .form-section .container .form .row {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
  }
  .form-section .container .form .col-wide {
    flex: 2;
    display: flex;
    flex-direction: column;
  }
  .form-section .container .form .col-small {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  .form-section .container .form label {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 6px;
    color: #222;
  }
  .form-section .container .form input,
  .form-section .container .form textarea {
    width: 100%;
    padding: 10px 12px;
    border-radius: 6px;
    border: 1px solid #ddd;
    font-size: 1.2rem;
    font-family: inherit;
    transition: all 0.2s ease;
    background: white;
  }
  .form-section .container .form textarea {
    resize: vertical;
    min-height: 120px;
  }
  .form-section .container .form input:focus,
  .form-section .container .form textarea:focus {
    outline: none;
    border-color: #000;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
  }
  .form-section .container .form .btn {
    margin-top: 10px;
    padding: 12px;
    border: none;
    border-radius: 6px;
    background: black;
    color: white;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
  }
  .form-section .container .form .btn:hover {
    background: #333;
    transform: translateY(-1px);
  }
  .form-section-small {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
    background-color: #fff8ef;
  }
  .form-section-small .container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: var(--width);
    height: auto;
    padding: 20px;
    color: #222222;
  }
  .form-section-small .container .left-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 100px;
    width: 100%;
    text-align: center;
  }
  .form-section-small .container .left-col .title {
    font-size: 3rem;
  }
  .form-section-small .container .left-col .subtitle {
    font-size: 1.5rem;
  }
  .form-section-small .container .left-col .img {
    width: 100%;
    height: 80px;
  }
  .form-section-small .container .left-col .img img {
    object-fit: contain;
  }
  .form-section-small .container .form {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    height: auto;
    padding: 25px;
    font-size: 1.5rem;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    background-color: #fff8e2;
  }
  .form-section-small .container .form .row {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
  }
  .form-section-small .container .form .col-wide {
    flex: 2;
    display: flex;
    flex-direction: column;
  }
  .form-section-small .container .form .col-small {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  .form-section-small .container .form label {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 6px;
    color: #222;
  }
  .form-section-small .container .form input,
  .form-section-small .container .form textarea {
    width: 100%;
    padding: 10px 12px;
    border-radius: 6px;
    border: 1px solid #ddd;
    font-size: 1.2rem;
    font-family: inherit;
    transition: all 0.2s ease;
    background: white;
  }
  .form-section-small .container .form textarea {
    resize: vertical;
    min-height: 120px;
  }
  .form-section-small .container .form input:focus,
  .form-section-small .container .form textarea:focus {
    outline: none;
    border-color: #000;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
  }
  .form-section-small .container .form .btn {
    margin-top: 10px;
    padding: 12px;
    border: none;
    border-radius: 6px;
    background: black;
    color: white;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
  }
  .form-section-small .container .form .btn:hover {
    background: #333;
    transform: translateY(-1px);
  }
  .modal-info .modal-menu {
    flex-direction: column;
    height: auto;
    width: 90vw;
  }
  .modal-info .modal-menu .side-image {
    width: 100%;
    height: 290px;
  }
  .modal-info .modal-menu .side-content {
    justify-content: space-between;
    width: 100%;
    height: auto;
  }
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main/about.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.info-section {
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
}
.info-section .container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: var(--width);
  height: auto;
}
.info-section .container .top-title {
  width: 100%;
  padding: 20px 0;
  text-align: center;
  font-size: 3rem;
}
.info-section .container .top-subtitle {
  width: 1100px;
  padding-bottom: 40px;
  text-align: center;
  font-size: 1.5rem;
}
.info-section .container .row {
  display: flex;
  width: 100%;
  height: 680px;
}
.info-section .container .row .img img {
  object-fit: cover;
}
.info-section .container .row .col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  height: 100%;
  text-align: center;
}
.info-section .container .row .col .title,
.info-section .container .row .col .text {
  padding: 0 30px;
}
.info-section .container .row .col .title {
  font-size: 3rem;
}
.info-section .container .row .col .text {
  font-size: 1.5rem;
}
.info-section .container .middle-box {
  position: absolute;
  top: 57%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 180px;
  height: auto;
  padding: 20px;
  background-color: #fff8ef;
}
.info-section .container .middle-box img {
  object-fit: contain;
  overflow-clip-margin: unset;
}

@media screen and (max-width: 992px) {
  .info-section {
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
  }
  .info-section .container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: var(--width);
    height: auto;
  }
  .info-section .container .top-title {
    display: none;
    width: 100%;
    padding: 20px;
    text-align: center;
    font-size: 3rem;
  }
  .info-section .container .top-subtitle {
    width: 100%;
    padding: 40px;
    text-align: center;
    font-size: 1.5rem;
  }
  .info-section .container .row {
    display: flex;
    width: 100%;
    height: auto;
  }
  .info-section .container .row .img img {
    object-fit: cover;
  }
  .info-section .container .row .col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    height: auto;
    min-height: 700px;
    text-align: center;
  }
  .info-section .container .row .col .title,
  .info-section .container .row .col .text {
    padding: 0 20px;
  }
  .info-section .container .row .col .title {
    font-size: 1.8rem;
  }
  .info-section .container .row .col .text {
    font-size: 1.1rem;
    padding: 20px;
  }
  .info-section .container .middle-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 150px;
    height: auto;
    padding: 20px;
    background-color: #fff8ef;
  }
  .info-section .container .middle-box img {
    object-fit: contain;
    overflow-clip-margin: unset;
  }
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main/menu.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.dish-section {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
}
.dish-section .bg-img {
  position: absolute;
  inset: 0;
}
.dish-section .bg-img::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.3;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7));
}
.dish-section .container {
  position: relative;
  width: var(--width);
  padding: 60px 0;
}
.dish-section .container .title {
  position: relative;
  z-index: 2;
  padding: 30px 0;
  color: #fff8ef;
  text-align: center;
  font-size: 3.2rem;
  font-weight: 600;
  letter-spacing: 1px;
}
.dish-section .container .menu-container {
  position: relative;
  z-index: 2;
  width: 100%;
}
.dish-section .container .menu-container .row {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  gap: 30px;
}
.dish-section .container .menu-container .dish-item {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 500px;
  padding: 30px 40px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.dish-section .container .menu-container .dish-item:hover {
  transform: translateY(-8px);
}
.dish-section .container .menu-container .dish-item .dish-img {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 380px;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border: 4px solid #fff8ef;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}
.dish-section .container .menu-container .dish-item .dish-img .title {
  position: absolute;
  left: 50%;
  bottom: 25px;
  transform: translateX(-50%);
  z-index: 3;
  color: #fff8ef;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.5px;
}
.dish-section .container .menu-container .dish-item .dish-img::before {
  content: "";
  position: absolute;
  inset: 15px;
  z-index: 3;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border: 3px solid #e1a730;
}
.dish-section .container .menu-container .dish-item .dish-img::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  opacity: 0.15;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
}
.dish-section .container .menu-container .dish-item .dish-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 20px;
  text-align: center;
}
.dish-section .container .menu-container .dish-item .dish-text .title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 8px;
}
.dish-section .container .menu-container .dish-item .dish-text .subtitle {
  font-size: 1.2rem;
  opacity: 0.8;
  line-height: 1.4;
}

@media screen and (max-width: 992px) {
  .dish-section {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100vw;
    height: auto;
  }
  .dish-section .bg-img {
    position: absolute;
    inset: 0;
    background-color: #222222;
  }
  .dish-section .bg-img img {
    display: none;
  }
  .dish-section .bg-img::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.3;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7));
  }
  .dish-section .container {
    position: relative;
    width: var(--width);
    height: auto;
    padding: 60px 0;
  }
  .dish-section .container .title {
    position: relative;
    z-index: 2;
    padding: 30px 0;
    color: #fff8ef;
    text-align: center;
    font-size: 3.2rem;
    font-weight: 600;
    letter-spacing: 1px;
  }
  .dish-section .container .menu-container {
    position: relative;
    z-index: 2;
    width: 100%;
  }
  .dish-section .container .menu-container .row {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: auto;
    gap: 30px;
  }
  .dish-section .container .menu-container .dish-item {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 400px;
    padding: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  .dish-section .container .menu-container .dish-item:hover {
    transform: translateY(-8px);
  }
  .dish-section .container .menu-container .dish-item .dish-img {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 350px;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border: 4px solid #fff8ef;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
  }
  .dish-section .container .menu-container .dish-item .dish-img .title {
    position: absolute;
    left: 50%;
    bottom: 25px;
    transform: translateX(-50%);
    z-index: 3;
    color: #fff8ef;
    font-size: 2.2rem;
    font-weight: 500;
    letter-spacing: 0.5px;
  }
  .dish-section .container .menu-container .dish-item .dish-img::before {
    content: "";
    position: absolute;
    inset: 15px;
    z-index: 3;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border: 3px solid #e1a730;
  }
  .dish-section .container .menu-container .dish-item .dish-img::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    opacity: 0.15;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
  }
  .dish-section .container .menu-container .dish-item .dish-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 20px;
    text-align: center;
  }
  .dish-section .container .menu-container .dish-item .dish-text .title {
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 8px;
  }
  .dish-section .container .menu-container .dish-item .dish-text .subtitle {
    font-size: 1.2rem;
    opacity: 0.8;
    line-height: 1.4;
  }
}
/*!************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main/gallery.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.gallery-section {
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
  padding: 20px 0;
}
.gallery-section .gallery-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: var(--width);
  height: auto;
}
.gallery-section .gallery-container .row {
  display: flex;
  justify-content: center;
  gap: 20px;
  width: 100%;
  height: 700px;
}
.gallery-section .gallery-container .row .col,
.gallery-section .gallery-container .row .col-third img {
  box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}
.gallery-section .gallery-container .row .col {
  width: 100%;
}
.gallery-section .gallery-container .row .col-third {
  width: 33.3333333333%;
}
.gallery-section .gallery-container .small {
  height: 400px;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/main/extra-pages.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.extra-section {
  display: flex;
  justify-content: center;
  width: 100vw;
  padding: 60px 0;
  background-color: #fff8ef;
}
.extra-section .extra-container {
  width: var(--width);
}
.extra-section .extra-container .section-header {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}
.extra-section .extra-container .section-header .title-container {
  text-align: center;
  padding: 0 20px;
}
.extra-section .extra-container .section-header .title-container .main-title {
  font-family: "Bitter", sans-serif;
  font-size: 3.5rem;
  font-weight: 700;
  color: #222222;
  margin-bottom: 20px;
  position: relative;
}
.extra-section .extra-container .section-header .title-container .main-title::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 3px;
  background: linear-gradient(135deg, #fd8b44, rgb(241.9126984127, 94.4365079365, 2.5873015873));
  border-radius: 2px;
}
.extra-section .extra-container .description-content {
  display: flex;
  justify-content: center;
  padding: 0 20px;
}
.extra-section .extra-container .description-content .text-content {
  max-width: 900px;
  width: 100%;
}
.extra-section .extra-container .description-content .text-content > * {
  margin-bottom: 1.5rem;
}
.extra-section .extra-container .description-content .text-content h1,
.extra-section .extra-container .description-content .text-content h2,
.extra-section .extra-container .description-content .text-content h3,
.extra-section .extra-container .description-content .text-content h4,
.extra-section .extra-container .description-content .text-content h5,
.extra-section .extra-container .description-content .text-content h6 {
  font-family: "Bitter", sans-serif;
  color: #222222;
  margin: 2rem 0 1rem;
  line-height: 1.3;
}
.extra-section .extra-container .description-content .text-content h1 {
  font-size: 2.5rem;
  font-weight: 700;
}
.extra-section .extra-container .description-content .text-content h2 {
  font-size: 2.2rem;
  font-weight: 600;
}
.extra-section .extra-container .description-content .text-content h3 {
  font-size: 1.8rem;
  font-weight: 600;
}
.extra-section .extra-container .description-content .text-content h4 {
  font-size: 1.5rem;
  font-weight: 500;
}
.extra-section .extra-container .description-content .text-content p {
  font-size: 1.2rem;
  line-height: 1.7;
  color: rgb(59.5, 59.5, 59.5);
  text-align: justify;
}
.extra-section .extra-container .description-content .text-content strong,
.extra-section .extra-container .description-content .text-content b {
  font-weight: 600;
  color: #222222;
}
.extra-section .extra-container .description-content .text-content em,
.extra-section .extra-container .description-content .text-content i {
  font-style: italic;
  color: #555555;
}
.extra-section .extra-container .description-content .text-content ul,
.extra-section .extra-container .description-content .text-content ol {
  margin: 1.5rem 0;
  padding-left: 2rem;
}
.extra-section .extra-container .description-content .text-content ul li,
.extra-section .extra-container .description-content .text-content ol li {
  font-size: 1.2rem;
  line-height: 1.6;
  color: rgb(59.5, 59.5, 59.5);
  margin-bottom: 0.5rem;
}
.extra-section .extra-container .description-content .text-content ul {
  list-style-type: disc;
}
.extra-section .extra-container .description-content .text-content ul li::marker {
  color: #fd8b44;
}
.extra-section .extra-container .description-content .text-content ol {
  list-style-type: decimal;
}
.extra-section .extra-container .description-content .text-content ol li::marker {
  color: #fd8b44;
  font-weight: 600;
}
.extra-section .extra-container .description-content .text-content blockquote {
  border-left: 4px solid #fd8b44;
  background: rgba(253, 139, 68, 0.05);
  border-radius: 0 8px 8px 0;
  padding: 1.5rem 2rem;
  margin: 2rem 0;
  font-style: italic;
  color: rgb(110.5, 110.5, 110.5);
}
.extra-section .extra-container .description-content .text-content blockquote p {
  margin: 0;
  font-size: 1.3rem;
}
.extra-section .extra-container .description-content .text-content a {
  color: #fd8b44;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}
.extra-section .extra-container .description-content .text-content a:hover {
  color: rgb(241.9126984127, 94.4365079365, 2.5873015873);
  text-decoration: underline;
}
.extra-section .extra-container .description-content .text-content img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  margin: 2rem 0;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}
.extra-section .extra-container .description-content .text-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 2rem 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.extra-section .extra-container .description-content .text-content table th,
.extra-section .extra-container .description-content .text-content table td {
  padding: 1rem;
  text-align: left;
  border-bottom: 1px solid rgba(34, 34, 34, 0.2);
}
.extra-section .extra-container .description-content .text-content table th {
  background-color: #222222;
  color: #fff8ef;
  font-weight: 600;
}
.extra-section .extra-container .description-content .text-content table tr:hover {
  background-color: rgba(253, 139, 68, 0.05);
}
.extra-section .extra-container .description-content .text-content .special-btn {
  display: inline-block;
  margin: 2rem 0;
}
.extra-section .extra-container .description-content .text-content .special-btn a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  padding: 12px 24px;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #fff8ef;
  border-radius: 12px;
  border: 1px solid rgba(255, 248, 239, 0.4);
  background: linear-gradient(135deg, rgb(253.2698412698, 154.6507936508, 93.2301587302), rgb(252.7301587302, 123.3492063492, 42.7698412698));
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
}
.extra-section .extra-container .description-content .text-content .special-btn a:hover {
  color: #fd8b44;
  background: #fff8ef;
  transform: translateY(-2px);
}
.extra-section .extra-container .description-content .text-content .special-btn a:active {
  transform: scale(0.97);
}

@media screen and (max-width: 1700px) {
  .extra-section .extra-container {
    width: 90%;
  }
  .extra-section .extra-container .section-header .title-container .main-title {
    font-size: 3rem;
  }
}
@media screen and (max-width: 992px) {
  .extra-section {
    padding: 40px 0;
  }
  .extra-section .extra-container {
    width: 95%;
  }
  .extra-section .extra-container .section-header .title-container .main-title {
    font-size: 2.5rem;
  }
  .extra-section .extra-container .section-header .title-container .main-title::after {
    width: 60px;
  }
  .extra-section .extra-container .description-content .text-content h1 {
    font-size: 2rem;
  }
  .extra-section .extra-container .description-content .text-content h2 {
    font-size: 1.8rem;
  }
  .extra-section .extra-container .description-content .text-content h3 {
    font-size: 1.5rem;
  }
  .extra-section .extra-container .description-content .text-content h4 {
    font-size: 1.3rem;
  }
  .extra-section .extra-container .description-content .text-content p {
    font-size: 1.1rem;
    text-align: left;
  }
  .extra-section .extra-container .description-content .text-content ul li,
  .extra-section .extra-container .description-content .text-content ol li {
    font-size: 1.1rem;
  }
  .extra-section .extra-container .description-content .text-content blockquote p {
    font-size: 1.1rem;
    padding: 1rem 1.5rem;
  }
  .extra-section .extra-container .description-content .text-content .special-btn a {
    font-size: 1.1rem;
    padding: 10px 20px;
  }
}
@media screen and (max-width: 768px) {
  .extra-section {
    padding: 30px 0;
  }
  .extra-section .extra-container .section-header .title-container .main-title {
    font-size: 2rem;
  }
  .extra-section .extra-container .description-content .text-content h1 {
    font-size: 1.8rem;
  }
  .extra-section .extra-container .description-content .text-content h2 {
    font-size: 1.6rem;
  }
  .extra-section .extra-container .description-content .text-content h3 {
    font-size: 1.4rem;
  }
  .extra-section .extra-container .description-content .text-content p,
  .extra-section .extra-container .description-content .text-content ul li,
  .extra-section .extra-container .description-content .text-content ol li {
    font-size: 1rem;
  }
  .extra-section .extra-container .description-content .text-content .special-btn {
    display: block;
    text-align: center;
  }
  .extra-section .extra-container .description-content .text-content .special-btn a {
    font-size: 1rem;
    width: 100%;
    max-width: 280px;
  }
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/components/navbar.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
.navbar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  display: flex;
  justify-content: center;
  width: 100vw;
  height: auto;
  color: black;
  background-color: rgba(255, 255, 255, 0.151);
  backdrop-filter: blur(12px);
  overflow: visible;
}
.navbar img {
  object-fit: contain;
}
.navbar svg {
  width: 40px;
  height: 40px;
}
.navbar .navbar-container {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: var(--nav-width);
  height: 100px;
  border-bottom: 1px solid black;
}
.navbar .navbar-container .logo {
  position: absolute;
  top: 40px;
  left: -135px;
  width: 150px;
  height: 100%;
}
.navbar .navbar-container .menu {
  list-style: none;
  display: flex;
  align-items: end;
  gap: 30px;
  height: 100%;
  width: 600px;
  padding-bottom: 10px;
  font-size: 1.5rem;
}
.navbar .navbar-container .menu .menu-item {
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: end;
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.navbar .navbar-container .menu .menu-item a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0 0;
  text-decoration: none;
  color: inherit;
  font-weight: 400;
  letter-spacing: 0.4px;
  transition: color 0.3s ease, opacity 0.3s ease, letter-spacing 0.3s ease, text-shadow 0.3s ease;
}
.navbar .navbar-container .menu .menu-item:hover {
  transform: translateY(-1px);
}
.navbar .navbar-container .menu .menu-item:hover a {
  opacity: 0.85;
  letter-spacing: 0.8px;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.navbar .navbar-container .menu .menu-item.active {
  transform: translateY(-1px);
}
.navbar .navbar-container .menu .menu-item.active a {
  font-weight: 600;
  opacity: 1;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  letter-spacing: 1px;
}
.navbar .navbar-container .middle-logo {
  position: relative;
  top: 0px;
  width: 230px;
  height: 100%;
}
.navbar .navbar-container .lang {
  cursor: pointer;
  position: absolute;
  top: 40px;
  right: 20px;
  z-index: 10000;
  width: auto;
  padding: 0;
}
.navbar .navbar-container .lang .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  padding: 10px;
  border-radius: 50%;
  background-color: #222222;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.navbar .navbar-container .lang .icon:hover, .navbar .navbar-container .lang .icon:focus {
  opacity: 0.85;
  transform: scale(1.05);
}
.navbar .navbar-container .lang .lang-list {
  list-style: none;
  pointer-events: none;
  position: absolute;
  left: 0;
  bottom: 60px;
  transform: translateY(20px);
  z-index: -1;
  width: 50px;
  margin: 0;
  padding: 0;
  opacity: 0;
  transition: all 0.4s ease;
}
.navbar .navbar-container .lang .lang-list li {
  pointer-events: all;
  overflow: hidden;
  position: relative;
  margin-bottom: 5px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  background-color: #fff;
  border-radius: 50%;
}
.navbar .navbar-container .lang .lang-list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  color: #333;
  font-weight: 500;
  text-decoration: none;
  transition: color 0.3s ease;
}
.navbar .navbar-container .lang .lang-list li a span {
  position: relative;
}
.navbar .navbar-container .lang .lang-list li a span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  transition: width 0.3s ease;
}
.navbar .navbar-container .lang .lang-list li a:hover span::after, .navbar .navbar-container .lang .lang-list li a.active span::after {
  width: 100%;
}
.navbar .navbar-container .lang.open .lang-list {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  z-index: 10;
}

@media screen and (max-width: 1700px) {
  .navbar {
    display: flex;
    justify-content: center;
    width: 100vw;
  }
  .navbar .navbar-container {
    width: var(--nav-width);
  }
  .navbar .navbar-container .menu {
    list-style: none;
    display: flex;
    align-items: end;
    gap: 30px;
    height: 100%;
    width: 450px;
    padding-bottom: 10px;
    font-size: 1.2rem;
  }
  .navbar .navbar-container .menu .menu-item {
    display: flex;
    align-items: end;
  }
  .navbar .navbar-container .middle-logo {
    position: relative;
    top: 0;
    width: 220px;
    height: 100%;
  }
  .navbar .navbar-container .lang {
    cursor: pointer;
    position: absolute;
    top: 40px;
    right: 20px;
    z-index: 10000;
    width: auto;
    padding: 0;
  }
  .navbar .navbar-container .lang .icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    padding: 10px;
    border-radius: 50%;
    background-color: #222222;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    transition: opacity 0.3s ease, transform 0.3s ease;
  }
  .navbar .navbar-container .lang .icon:hover, .navbar .navbar-container .lang .icon:focus {
    opacity: 0.85;
    transform: scale(1.05);
  }
  .navbar .navbar-container .lang .lang-list {
    list-style: none;
    pointer-events: none;
    position: absolute;
    left: 0;
    bottom: 60px;
    transform: translateY(20px);
    z-index: -1;
    width: 50px;
    margin: 0;
    padding: 0;
    opacity: 0;
    transition: all 0.4s ease;
  }
  .navbar .navbar-container .lang .lang-list li {
    pointer-events: all;
    overflow: hidden;
    position: relative;
    margin-bottom: 5px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    border-radius: 50%;
  }
  .navbar .navbar-container .lang .lang-list li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    color: #333;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.3s ease;
  }
  .navbar .navbar-container .lang .lang-list li a span {
    position: relative;
  }
  .navbar .navbar-container .lang .lang-list li a span::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    transition: width 0.3s ease;
  }
  .navbar .navbar-container .lang .lang-list li a:hover span::after, .navbar .navbar-container .lang .lang-list li a.active span::after {
    width: 100%;
  }
  .navbar .navbar-container .lang.open .lang-list {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    z-index: 10;
  }
}
.navbar-mobile {
  display: none;
}

.sidebar {
  display: none;
}

@media screen and (max-width: 992px) {
  .navbar {
    display: none;
  }
  .navbar-mobile {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 1000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100vw;
    height: 100px;
    background-color: #fff8ef;
  }
  .navbar-mobile .logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 150px;
    height: 100%;
    padding: 20px;
  }
  .navbar-mobile .logo img {
    object-fit: contain;
    width: 100%;
    height: 100%;
  }
  .navbar-mobile .hamburger {
    cursor: pointer;
    width: 80px;
    height: 50px;
    padding: 0 16px;
  }
}
@media screen and (max-width: 992px) and (hover: hover) {
  .navbar-mobile .hamburger:hover .hamburger-line:before {
    right: calc(100% + 8px);
  }
  .navbar-mobile .hamburger:hover .hamburger-line:after {
    left: 0;
  }
}
@media screen and (max-width: 992px) {
  .navbar-mobile .hamburger-container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    width: 100%;
    height: 100%;
  }
  .navbar-mobile .hamburger-line {
    position: relative;
    width: 100%;
    height: 2px;
    transition: all 900ms cubic-bezier(0.19, 1, 0.22, 1);
    overflow: hidden;
  }
  .navbar-mobile .hamburger-line:last-of-type {
    width: 100%;
    align-self: flex-end;
  }
  .navbar-mobile .hamburger-line:before, .navbar-mobile .hamburger-line:after {
    position: absolute;
    top: 0;
    content: "";
    width: 100%;
    height: 100%;
    transition: all 900ms cubic-bezier(0.19, 1, 0.22, 1);
  }
  .navbar-mobile .hamburger-line:after {
    background-color: black;
    left: calc(100% + 8px);
  }
  .navbar-mobile .hamburger-line:before {
    right: 0;
    background-color: black;
  }
  .navbar-mobile .hamburger-line:nth-child(1):before, .navbar-mobile .hamburger-line:nth-child(1):after {
    transition-delay: 0s;
  }
  .navbar-mobile .hamburger-line:nth-child(2):before, .navbar-mobile .hamburger-line:nth-child(2):after {
    transition-delay: 0.05s;
  }
  .navbar-mobile .hamburger-line:nth-child(3):before, .navbar-mobile .hamburger-line:nth-child(3):after {
    transition-delay: 0.1s;
  }
  .navbar-mobile .hamburger-line:nth-child(4):before, .navbar-mobile .hamburger-line:nth-child(4):after {
    transition-delay: 0.15s;
  }
  .navbar-mobile .hamburger-line:nth-child(5):before, .navbar-mobile .hamburger-line:nth-child(5):after {
    transition-delay: 0.2s;
  }
  .navbar-mobile .hamburger-line:nth-child(6):before, .navbar-mobile .hamburger-line:nth-child(6):after {
    transition-delay: 0.25s;
  }
  .navbar-mobile .hamburger-line:nth-child(7):before, .navbar-mobile .hamburger-line:nth-child(7):after {
    transition-delay: 0.3s;
  }
  .navbar-mobile .hamburger-line:nth-child(8):before, .navbar-mobile .hamburger-line:nth-child(8):after {
    transition-delay: 0.35s;
  }
  .navbar-mobile .hamburger-line:nth-child(9):before, .navbar-mobile .hamburger-line:nth-child(9):after {
    transition-delay: 0.4s;
  }
  .navbar-mobile .hamburger-line:nth-child(10):before, .navbar-mobile .hamburger-line:nth-child(10):after {
    transition-delay: 0.45s;
  }
  .navbar-mobile .hamburger-line:nth-child(11):before, .navbar-mobile .hamburger-line:nth-child(11):after {
    transition-delay: 0.5s;
  }
  .navbar-mobile .hamburger-line:nth-child(12):before, .navbar-mobile .hamburger-line:nth-child(12):after {
    transition-delay: 0.55s;
  }
  .navbar-mobile .hamburger-line:nth-child(13):before, .navbar-mobile .hamburger-line:nth-child(13):after {
    transition-delay: 0.6s;
  }
  .navbar-mobile .hamburger-line:nth-child(14):before, .navbar-mobile .hamburger-line:nth-child(14):after {
    transition-delay: 0.65s;
  }
  .navbar-mobile .hamburger-line:nth-child(15):before, .navbar-mobile .hamburger-line:nth-child(15):after {
    transition-delay: 0.7s;
  }
  .navbar-mobile .hamburger-line:nth-child(16):before, .navbar-mobile .hamburger-line:nth-child(16):after {
    transition-delay: 0.75s;
  }
  .navbar-mobile .hamburger-line:nth-child(17):before, .navbar-mobile .hamburger-line:nth-child(17):after {
    transition-delay: 0.8s;
  }
  .navbar-mobile .hamburger-line:nth-child(18):before, .navbar-mobile .hamburger-line:nth-child(18):after {
    transition-delay: 0.85s;
  }
  .navbar-mobile .hamburger-line:nth-child(19):before, .navbar-mobile .hamburger-line:nth-child(19):after {
    transition-delay: 0.9s;
  }
  .navbar-mobile .hamburger-line:nth-child(20):before, .navbar-mobile .hamburger-line:nth-child(20):after {
    transition-delay: 0.95s;
  }
  .navbar-mobile .hamburger-line:nth-child(21):before, .navbar-mobile .hamburger-line:nth-child(21):after {
    transition-delay: 1s;
  }
  .navbar-mobile .hamburger.active .hamburger-line:first-of-type {
    transform: translate(0, 13.28px) rotate(135deg);
  }
  .navbar-mobile .hamburger.active .hamburger-line:last-of-type {
    width: 100%;
    transform: translate(0, -13.28px) rotate(45deg);
  }
  .sidebar {
    position: fixed;
    top: 100px;
    left: 0;
    z-index: 100000;
    display: flex;
    width: 100vw;
    height: calc(100vh - 100px);
    background-color: #222222;
  }
  .sidebar .menu {
    list-style: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .sidebar .menu li {
    position: relative;
    font-size: 3rem;
    color: #fff8ef;
    padding: 30px 0;
  }
  .sidebar .menu li::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 20px;
    height: 5px;
    width: 0;
    background-color: #e1a730;
    transition: right 0.5s;
  }
  .sidebar .menu .active {
    color: #e1a730;
  }
  .sidebar .menu .active::after {
    width: 100%;
  }
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/components/footer.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
:root {
  --width: 1850px;
  --nav-width: 1600px ;
}

@media screen and (min-width: 1980px) {
  :root {
    --width: 2400px;
    --welcome-animation-width: 100vw;
  }
}
@media screen and (max-width: 1700px) {
  :root {
    --width: 1450px;
    --nav-width: 1250px ;
  }
}
@media screen and (max-width: 992px) {
  :root {
    --width: 100vw;
    --welcome-animation-width: 100vw;
  }
}
footer {
  display: flex;
  justify-content: center;
  width: 100%;
  background-color: #222222;
  color: #fff8ef;
  padding: 60px 20px 20px;
}
footer .container {
  width: var(--width);
  display: flex;
  flex-direction: column;
  gap: 40px;
}
footer .top {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}
footer .menu-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
footer .menu-list li {
  font-size: 1.4rem;
}
footer .menu-list li a {
  color: #fff8ef;
  text-decoration: none;
  transition: opacity 0.2s;
}
footer .menu-list li a:hover {
  opacity: 0.7;
}
footer .logo {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
footer .logo img {
  max-width: 160px;
  width: 100%;
  height: auto;
}
footer .contacts {
  flex: 1.2;
}
footer .contacts .title {
  font-size: 1.6rem;
  margin-bottom: 15px;
}
footer .contacts .info-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 1.2rem;
  line-height: 1.5;
}
footer .bottom {
  list-style: none;
  padding: 20px 0 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  font-size: 0.95rem;
  opacity: 0.8;
}

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