:root {
  --neutral--01: #ffffff;
  --neutral--02: #f8f8f9;
  --neutral--03: #f4f6f8;
  --neutral--04: #f1f0f3;
  --neutral--05: #eaedf0;
  --neutral--06: #454f5c;
  --neutral--07: #080e13;
  --neutral--08: #000000;
  --body-color: var(--neutral--06);
  --theme-primary: #3b2afb;
  --theme-primary-light: #3257FF;
  --theme-secondary: #ff6c2e;
  --bg-dark: --neutral--06;
  --bg-light: --neutral--02;
  --border-light: #dfe3e8;
  --border-dark: #2b2d38;
  --state-success: #13c12f;
  --state-info: #457efa;
  --state-warning: #ffbb29;
  --state-danger: #f01818;
  --btn-hover--primary: #553ffb;
  --font-size-h1: 5rem;
  --font-size-h2: 3.5rem;
  --font-size-h3: 2.5rem;
  --font-size-h4: 1.75rem;
  --font-size-h5: 1.5rem;
  --font-size-h6: 1.25rem;
  --font-size-body: 1.125rem;
  --font-size-21: 1.3125rem;
  --font-size-16: 1rem;
  --font-size-14: 0.875rem;
  --line-height-h1: 1.075;
  --line-height-h2: 1.14;
  --line-height-h3: 1.2;
  --line-height-h4: 1.28;
  --line-height-h5: 1.28;
  --line-height-h6: 1.5;
  --line-height-body: 1.55;
  --padding-1: 70px;
  --padding-2: 90px;
  --padding-3: 110px;
}

/* Core **/
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: "Inter", sans-serif, sans-serif;
  line-height: var(--line-height-body);
  font-size: var(--font-size-body);
  color: var(--body-color);
  line-height: 1.55;
  margin: 0;
  overflow-x: hidden;
}

@media only screen and (max-width: 991px) {
  html {
    font-size: 95%;
  }
}

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

:focus {
  outline: none;
}

a {
  text-decoration: none;
  display: inline-block;
  transition: 0.3s;
}
a:hover {
  text-decoration: none;
}

.btn {
  border-style: none;
}

button {
  cursor: pointer;
  padding: 0;
  border: 0;
  background: transparent;
  line-height: normal;
}
button:focus {
  outline: 0;
}
button:disabled {
  cursor: default;
}

svg {
  display: block;
}
svg text,
svg tspan {
  font-family: "Inter", sans-serif, sans-serif;
}

a {
  color: #3b2afb;
}
a:hover {
  color: #6052fc;
}

input,
textarea {
  padding: 10px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-clip: padding-box;
}
input:focus,
textarea:focus {
  outline: 0;
}
input.placeholder,
textarea.placeholder {
  font-size: 17px;
  font-weight: 400;
  color: var(--neutral--06);
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  font-size: 17px;
  font-weight: 400;
  color: var(--neutral--06);
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  font-size: 17px;
  font-weight: 400;
  color: var(--neutral--06);
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  font-size: 17px;
  font-weight: 400;
  color: var(--neutral--06);
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  font-size: 17px;
  font-weight: 400;
  color: var(--neutral--06);
}

input[type=checkbox] {
  -webkit-appearance: auto;
  width: auto;
}

.checkbox-select input {
  width: auto;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

section {
  position: relative;
}

span {
  display: inline-block;
}

.table-wrapper {
  overflow-x: auto;
}

table {
  width: 100%;
}
table th {
  font-weight: 500;
  font-size: 12px;
}
table td {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--neutral--07);
}
table td,
table th {
  border-bottom: 1px solid var(--border-light);
  padding: 0.875rem 0.625rem 0.875rem 0;
}

/* Helpers **/
/* ----- Border Radius ---- **/
.border--light {
  border-color: var(--border-light) !important;
}
.border--dark {
  border-color: var(--border-dark) !important;
}

/* ----- Border Radius ---- **/
.rounded--5 {
  border-radius: 0.5rem;
}

/* ----- Section Padding ---- **/
.section-padding {
  padding-top: var(--padding-1);
  padding-bottom: var(--padding-1);
}
@media only screen and (min-width: 1200px) {
  .section-padding {
    padding-top: var(--padding-2);
    padding-bottom: var(--padding-2);
  }
}
@media only screen and (min-width: 1400px) {
  .section-padding {
    padding-top: var(--padding-3);
    padding-bottom: var(--padding-3);
  }
}
.section-padding--top {
  padding-top: var(--padding-1);
}
@media only screen and (min-width: 1200px) {
  .section-padding--top {
    padding-top: var(--padding-2);
  }
}
@media only screen and (min-width: 1400px) {
  .section-padding--top {
    padding-top: var(--padding-3);
  }
}
.section-padding--bottom {
  padding-bottom: var(--padding-1);
}
@media only screen and (min-width: 1200px) {
  .section-padding--bottom {
    padding-bottom: var(--padding-2);
  }
}
@media only screen and (min-width: 1400px) {
  .section-padding--bottom {
    padding-bottom: var(--padding-3);
  }
}

/* ----- Drop Shadow ---- **/
.section-terms .wrapper, .sidebar,
.depth--1 {
  box-shadow: 0px 15px 40px rgba(11, 32, 78, 0.14);
}

/* ----- Text Pill ---- **/
.text-pill {
  color: var(--theme-primary);
  border: 1px solid var(--theme-primary);
  background: rgba(59, 42, 251, 0.08);
  padding: 0.375rem 0.9375rem;
  font-size: 1rem;
  border-radius: 100px;
  font-weight: 500;
}
.text-pill--light {
  color: var(--neutral--07);
  border: 1px solid var(--border-light);
  background-color: var(--neutral--01);
}
.text-pill--border {
  color: var(--neutral--07);
  background-color: transparent;
}
.text-pill--border.text-pill--border {
  color: var(--neutral--01);
}

/* ----- transition ---- **/
.hero .hero-image .swiper-pagination .swiper-pagination-bullet, .hero .hero-image .swiper-navigation img, .hero .hero-image .swiper-navigation,
.tran--default {
  transition: 0.3s;
}

/* ----- Loader ---- **/
.spin-loader {
  content: "";
  display: block;
  width: 1.1em;
  height: 1.1em;
  line-height: 1em;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -0.5em;
  margin-left: -0.5em;
  border: 1px solid transparent;
  border-top-color: currentColor;
  border-left-color: currentColor;
  border-radius: 50px;
  animation: loaderspinner 0.4s linear infinite;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  z-index: -1;
}

@keyframes loaderspinner {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* Typography **/
h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
  font-weight: var(--font-regular);
  font-family: "Inter", sans-serif, sans-serif;
  color: var(--neutral--07);
  font-weight: 600;
}

/* ----- font Setting (size & line height, spacing etc) ---- **/
h1,
.font--h1 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
  letter-spacing: -0.09375rem;
}
@media only screen and (min-width: 1200px) {
  h1,
  .font--h1 {
    font-size: var(--font-size-h1);
    line-height: var(--line-height-h1);
    letter-spacing: -0.1875rem;
  }
}

h2,
.font--h2 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  letter-spacing: -0.001875rem;
}
@media only screen and (min-width: 1200px) {
  h2,
  .font--h2 {
    font-size: var(--font-size-h2);
    line-height: var(--line-height-h2);
    letter-spacing: -0.09375rem;
  }
}

h3,
.font--h3 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  letter-spacing: -0.001875rem;
}
@media only screen and (min-width: 1200px) {
  h3,
  .font--h3 {
    font-size: var(--font-size-h3);
    line-height: var(--line-height-h3);
    letter-spacing: -0.09375rem;
  }
}

h4,
.font--h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  letter-spacing: 0;
}

h5,
.font--h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  letter-spacing: 0;
}

h6,
.font--h6,
.use-cases .use-cases-card .title,
.features-set-one .single-item .title {
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  letter-spacing: 0;
}

.p,
p {
  line-height: var(--line-height-body);
  margin-bottom: 0;
}

.font--21 {
  font-size: var(--font-size-21);
}

.font--16 {
  font-size: var(--font-size-16);
}

.font--14 {
  font-size: var(--font-size-14);
}

/* Buttons **/
/* ==================================================================
                                Button
 ================================================================== **/
/* ----- Button General Styling ---- **/
.btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  text-align: initial;
  font-weight: 600;
  border-radius: 0.5rem;
  transition: 0.3s;
  padding-right: 1.875rem;
  padding-left: 1.875rem;
  color: var(--neutral--01);
  -webkit-font-smoothing: antialiased;
}

/* ----- Button Color ---- **/
.btn--primary {
  background: var(--theme-primary);
  box-shadow: 0px 15px 40px rgba(11, 32, 78, 0.14);
}
.btn--primary:hover {
  color: var(--neutral--01);
  background: var(--btn-hover--primary);
}
.btn--secondary {
  color: var(--neutral--01);
  background: var(--theme-secondary);
}
.btn--secondary:hover {
  color: var(--neutral--01);
}
.btn--light {
  background: var(--neutral--01);
  color: var(--neutral--07);
}
.btn--gray {
  background: var(--neutral--05);
  color: var(--neutral--06);
}
.btn--gray.btn--icon:hover img {
  filter: brightness(10);
}
.btn--dark {
  background: var(--neutral--07);
  color: var(--neutral--01);
}
.btn--dark:hover {
  background: var(--theme-primary);
}
.btn--outline {
  border: 2px solid #c9ccce;
  color: var(--neutral--07);
}
.btn--outline:hover {
  background: var(--theme-primary);
  color: var(--neutral--01) !important;
  border-color: var(--theme-primary);
}
.btn--outline:hover:hover img {
  filter: invert(1);
}
.btn--outline--dark {
  border-color: var(--neutral--07);
}
.btn--rounded {
  border-radius: 6.25rem;
}
.btn--icon {
  gap: 0.625rem;
}
.btn--icon img {
  transition: 0.3s;
}
.btn[disabled] {
  background: #a29baf;
}
.btn[disabled]:hover {
  background: #a29baf;
}

/* ----- Button Size ---- **/
.btn--sm {
  padding-right: 1.125rem;
  padding-left: 1.125rem;
  min-height: 3rem;
}
.btn--md {
  min-height: 3.5rem;
}
.btn--lg {
  min-height: 3.5rem;
}
@media only screen and (min-width: 768px) {
  .btn--lg {
    min-height: 4rem;
  }
}

/* ----- Button Group ---- **/
.button-group {
  display: flex;
  gap: 0.625rem;
}
.button-group--vertical {
  flex-direction: column;
}

/* Section Title **/
.section-title {
  margin-bottom: 3.75rem;
  max-width: 50rem;
}
@media only screen and (min-width: 992px) {
  .section-title {
    margin-bottom: 5rem;
  }
}
.section-title h2 {
  color: var(--neutral--07);
  text-align: center;
  font-weight: 700;
}

/* Background Holder **/
/* Form **/
.form-label {
  font-size: 1rem;
  margin-bottom: 0.5rem;
  color: var(--neutral--07);
  font-weight: 500;
}

.form-control {
  border-radius: 0.5rem;
  border: 2px solid var(--border-light);
  padding: 1rem;
  font-size: 16px;
  font-weight: 400;
  color: var(--neutral--07);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.form-control:focus {
  border-color: var(--border-dark);
}

.form-select {
  border-radius: 0.5rem;
  border: 1px solid var(--border-light);
  padding: 0.625rem 0.875rem;
  font-size: 0.9375rem;
  font-weight: 400;
  color: var(--neutral--07);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.form-select:focus {
  border-color: #c6c5c9;
  box-shadow: none;
}

.form .input-group {
  margin-bottom: 1.125rem;
}
.form .btn {
  margin-top: 0.625rem;
  margin-bottom: 1.5625rem;
}
.form .label-group {
  display: flex;
  justify-content: space-between;
}
.form .label-group a {
  font-size: 16px;
  font-weight: 500;
}

.account-form .other-approach {
  font-size: 16px;
  font-weight: 500;
  color: var(--neutral--07);
}

/* Sidebar **/
.sidebar {
  background: var(--neutral--01);
  padding-bottom: 0;
  border-radius: 0.5rem;
  overflow: auto;
  max-height: 87vh;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .sidebar {
    max-height: 100vh;
  }
}
.sidebar.select--offset-on {
  overflow: inherit;
}
.sidebar .select-wrapper {
  padding: 0 1.25rem;
}
.sidebar .select-wrapper .single-select {
  margin-bottom: 0.5rem;
  display: flex;
  flex-direction: column;
}
.sidebar .select-wrapper .title {
  font-size: 0.875rem;
  color: var(--neutral--07);
  font-weight: 500;
  margin-bottom: 0.4375rem;
}
.sidebar .select-wrapper .ss-open-below {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.sidebar .select-wrapper .ss-open-above {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.sidebar .generate-btn {
  margin-bottom: 0;
  position: sticky;
  bottom: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.sidebar .btn-dismiss {
  display: none;
}
.sidebar .ss-main .ss-values .ss-value {
  background: var(--theme-primary);
  padding-top: 0.1875rem;
  padding-bottom: 0.1875rem;
}
.sidebar .ss-main .ss-values .ss-value .ss-value-text {
  font-weight: 500;
}

.ss-content {
  border-radius: 0.5rem !important;
  border: 1px solid #c6c5c9;
  padding: 0.25rem;
}
.ss-content.ss-open-below {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.ss-content.ss-open-above {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.ss-content .ss-list .ss-option {
  font-size: 0.9375rem;
  color: var(--neutral--07);
  font-weight: 500;
  padding: 0.5rem;
  transition: 0.3s;
}
.ss-content .ss-list .ss-option:not(:last-child) {
  border-bottom: 1px solid var(--border-light);
}
.ss-content .ss-list .ss-option.ss-selected {
  padding: 0.75rem 0.625rem;
}
.ss-content .ss-list .ss-option:hover, .ss-content .ss-list .ss-option.ss-highlighted {
  background: var(--neutral--05);
  color: var(--neutral--07);
}
.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected {
  background: var(--neutral--07);
  border-radius: 0.5rem;
}

@media only screen and (max-width: 767px) {
  .sidebar {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    transition: 0.3s;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    padding-top: 2.375rem;
  }
  .sidebar--open {
    opacity: 1;
    visibility: visible;
  }
  .sidebar .btn-dismiss {
    position: absolute;
    right: 1.25rem;
    top: 0;
    padding: 0.375rem;
    opacity: 0.8;
    display: block;
  }
}
.select-dropdown {
  margin: 0;
  padding: 0;
}
.select-dropdown li {
  list-style: none;
}
.select-dropdown .form-select {
  color: var(--neutral--08);
  display: flex;
  justify-content: space-between;
}
.select-dropdown .arrow {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 1 auto;
  width: 10.7px;
  height: 12px;
  margin: auto 5px auto 5px;
  transition: 0.2s;
}
.select-dropdown .arrow path {
  fill: none;
  stroke: #4d4d4d;
  stroke-width: 18;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition-timing-function: ease-out;
  transition: 0.2s;
}

.decor-dropdown {
  position: absolute;
  background-color: var(--neutral--01);
  z-index: 1;
  opacity: 0;
  transform: scale(0.95); /* Start with slightly scaled down */
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease; /* Add transition for opacity and scale */
  padding: 1rem;
  border-radius: 0.5rem;
  border: 2px solid var(--border-light);
  z-index: 99999;
  width: calc(100% - 40px);
}
@media only screen and (max-width: 767px) {
  .decor-dropdown {
    margin-left: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .decor-dropdown {
    max-width: 478px;
    margin-left: 3px;
  }
}
.decor-dropdown ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  gap: 1.25rem 1rem;
}
.decor-dropdown li {
  list-style: none;
  flex: 0 0 calc(50% - 0.5rem);
  text-align: center;
}
.decor-dropdown li a {
  color: var(--neutral--07);
  display: flex;
  flex-direction: column;
}
.decor-dropdown li a img {
  border-radius: 0.5rem;
  transition: 0.3s;
}
.decor-dropdown li a span {
  margin-top: 0.625rem;
  font-size: var(--font-size-14);
  font-weight: 500;
}
.decor-dropdown li:hover img, .decor-dropdown li.active img {
  box-shadow: 0 0 0 2px var(--theme-primary);
}

/* innerpage banner **/
.inner-title-bar {
  margin: 6.5625rem 0 3.125rem;
}
@media only screen and (min-width: 992px) {
  .inner-title-bar {
    margin: 9.375rem 0 5rem;
  }
}
.inner-title-bar .inner-title-bar-content {
  max-width: 53.125rem;
  margin: 0 auto;
}
.inner-title-bar .description {
  max-width: 43.75rem;
  margin: 0.9375rem auto 0;
}

/* Pagination **/
.pagination {
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  flex-wrap: wrap;
}
.pagination .page-item {
  margin: 0.1875rem;
}
.pagination .page-item .page-link {
  height: 2.25rem;
  width: 2.25rem;
  border: 1px solid var(--border-light);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.1875rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--neutral--07);
}
.pagination .page-item .page-link .icon {
  height: 0.875rem;
}
.pagination .page-item:not(.disabled) .page-link:hover, .pagination .page-item.active .page-link {
  border: 1px solid var(--neutral--07);
  background-color: var(--neutral--03);
}
.pagination .page-item:first-child .page-link {
  background-image: url(../img/icon/arrow-left-2.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.pagination .page-item:last-child .page-link {
  background-image: url(../img/icon/arrow-right-2.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

/* navigation **/
@media only screen and (max-width: 991px) {
  .navbar {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .navbar .navbar-brand img {
    width: 160px;
  }
}
@media (max-width: 550px) {
  .navbar .navbar-brand img {
    width: 130px;
  }
}
@media (max-width: 360px) {
  .navbar .navbar-brand img {
    width: 90px;
  }
}
.navbar .nav-link {
  color: var(--neutral--07);
  font-weight: 500;
  font-size: 1rem;
}
.navbar .nav-link:hover, .navbar .nav-link.active {
  color: rgba(8, 14, 19, 0.6);
}
@media only screen and (min-width: 992px) {
  .navbar .navbar-nav {
    align-items: center;
  }
}
.navbar .btn-sm-device,
.navbar .navbar-toggler {
  min-height: 2.625rem;
}
.navbar .navbar-toggler {
  border-width: 2px;
}

.fixed-top {
  transition: background 0.1s;
}

.navbar-brand-light {
  display: none;
}

.page-landing .navbar .navbar-brand-light {
  display: inline-block;
}
.page-landing .navbar .navbar-brand-dark {
  display: none;
}
.page-landing .offcanvas {
  background: var(--neutral--07);
}
.page-landing .navbar-toggler {
  border-color: #444;
}
.page-landing .navbar-toggler-icon,
.page-landing .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.page-landing .navbar .nav-link,
.page-landing .navbar .btn {
  color: var(--neutral--01);
}

.scrolled .page-landing .navbar {
  background: var(--neutral--07);
  border-bottom: 1px solid var(--border-dark);
}

.scrolled .navbar {
  background: var(--neutral--01);
  border-bottom: 1px solid var(--border-light);
}

/* ----- Navigation Bottom---- **/
@media only screen and (max-width: 767px) {
  .navbar-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 99;
  }
  .navbar-bottom:after {
    background: var(--neutral--01);
    position: absolute;
    content: "";
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    height: 57%;
    z-index: -1;
    border-top: 2px solid var(--border-light);
  }
  .navbar-bottom .navbar-nav {
    display: flex;
    align-items: flex-end;
    flex-direction: row;
    justify-content: center;
    gap: 0.9375rem;
    padding-bottom: 0.4375rem;
  }
  .navbar-bottom .navbar-nav .nav-link {
    display: flex;
    align-items: center;
  }
  .navbar-bottom .navbar-nav .nav-link:hover {
    opacity: 1;
  }
  .navbar-bottom .nav-item .gallery-icon,
  .navbar-bottom .nav-item .pricing-icon {
    margin-right: 0.375rem;
  }
  .navbar-bottom a {
    color: var(--neutral--07);
  }
  .navbar-bottom .nav-cta {
    position: relative;
    color: var(--neutral--01);
    background: var(--theme-primary);
    text-align: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    height: 5.75rem;
    width: 5.75rem;
    border-radius: 100px;
    box-shadow: 0 0 0px 0.4375rem var(--neutral--01);
    font-weight: 600;
    font-size: 0.875rem;
    line-height: 1.2;
  }
  .navbar-bottom .nav-cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    box-shadow: 0 0 0px 0.4375rem var(--neutral--01), 0 0 0px 0.5625rem var(--border-light);
    border-radius: 100px;
    z-index: -1;
  }
  .navbar-bottom .nav-cta .generate-icon {
    margin-bottom: 0.3125rem;
  }
}
@media only screen and (min-width: 768px) {
  .navbar-bottom {
    display: none;
  }
}
.has-top-bar {
  flex-direction: column;
  padding-top: 0;
}
.has-top-bar .top-bar {
  width: 100%;
  background: var(--theme-primary-light);
  text-align: center;
  padding: 5px;
  margin-bottom: 15px;
}
.has-top-bar .top-bar p {
  color: white;
}

/* home **/
/* ----- Hero ---- **/
.hero {
  position: relative;
  padding-top: 7.5rem;
  padding-bottom: 6.25rem;
  overflow: hidden;
  background: var(--neutral--08);
}
@media only screen and (min-width: 992px) {
  .hero {
    padding-top: 10.625rem;
    padding-bottom: 7.1875rem;
  }
}
.hero .ellipse {
  background-image: url(../img/hero-image.webp);
  position: absolute;
  width: 100%;
  bottom: -4px;
  height: 100%;
  z-index: 1;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: bottom;
}
.hero .title {
  margin-bottom: 1.875rem;
  color: var(--neutral--01);
  font-weight: 500;
}
@media only screen and (max-width: 575px) {
  .hero .title {
    font-size: 1.875rem;
  }
}
.hero .hero-btn {
  margin-bottom: 1.25rem;
}
.hero-content {
  position: relative;
  z-index: 1;
  margin-bottom: 3.75rem;
}
@media only screen and (min-width: 992px) {
  .hero-content {
    margin-bottom: 5.625rem;
  }
}
.hero-content p {
  font-size: 1rem;
  color: var(--neutral--05);
  opacity: 0.8;
}
.hero .typeWriter {
  border-right: 0.1em solid transparent;
  animation: none;
}
.hero .cursor-animation {
  animation: blink 1.5s step-end infinite;
  font-weight: 400;
}
@keyframes blink {
  from, to {
    color: transparent;
  }
  50% {
    color: black;
  }
}
.hero .hero-image {
  position: relative;
  z-index: 2;
  display: flex;
  background: var(--neutral--01);
  justify-content: center;
  margin: 0 auto;
  box-shadow: 0px 44px 74px 0px rgba(0, 0, 0, 0.09);
  padding: 0.5rem;
  border-radius: 1rem;
}
@media only screen and (min-width: 768px) {
  .hero .hero-image {
    padding: 0.9375rem;
    border-radius: 1.5rem;
  }
}
.hero .hero-image .image-wrapper {
  gap: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .hero .hero-image .image-wrapper {
    gap: 0.9375rem;
  }
}
.hero .hero-image .image-wrapper .single-image {
  position: relative;
  width: 100%;
}
.hero .hero-image .image-wrapper .single-image img {
  border-radius: 0.625rem;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .hero .hero-image .image-wrapper .single-image img {
    border-radius: 1rem;
  }
}
.hero .hero-image .image-wrapper .single-image span {
  position: absolute;
  left: 50%;
  bottom: 0.5rem;
  transform: translateX(-50%);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.7);
  -webkit-backdrop-filter: blur(3.5px);
          backdrop-filter: blur(3.5px);
  padding: 8px 16px;
  color: var(--neutral--01);
  width: -moz-fit-content;
  width: fit-content;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .hero .hero-image .image-wrapper .single-image span {
    font-size: 12px;
    padding: 5px 10px;
  }
}
@media only screen and (min-width: 768px) {
  .hero .hero-image .image-wrapper .single-image span {
    bottom: 1rem;
  }
}
.hero .hero-image .swiper {
  border-radius: 0.625rem;
}
@media only screen and (min-width: 768px) {
  .hero .hero-image .swiper {
    border-radius: 1rem;
  }
}
.hero .hero-image .swiper-notification {
  display: none;
}
.hero .hero-image .swiper-navigations {
  position: absolute;
  top: calc(50% + 10px);
  transform: translateY(-50%);
  z-index: 2;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.hero .hero-image .swiper-navigation {
  position: relative;
  height: 3rem;
  width: 3rem;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--neutral--05);
  background: var(--neutral--01);
}
@media only screen and (max-width: 575px) {
  .hero .hero-image .swiper-navigation {
    display: none;
  }
}
.hero .hero-image .swiper-navigation img {
  opacity: 0.5;
}
.hero .hero-image .swiper-navigation:hover {
  border-color: var(--neutral--06);
}
.hero .hero-image .swiper-navigation:hover img {
  opacity: 1;
}
.hero .hero-image .swiper-button-prev {
  right: 1.5rem;
}
.hero .hero-image .swiper-button-next {
  left: 1.5rem;
}
.hero .hero-image .swiper-pagination {
  position: absolute;
  bottom: -30px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 0.3125rem;
  z-index: 2;
}
.hero .hero-image .swiper-pagination .swiper-pagination-bullet {
  height: 0.75rem;
  width: 0.75rem;
  opacity: 0.15;
  background: var(--neutral--01);
  border: 2px solid var(--neutral--06);
  border-radius: 100px;
}
.hero .hero-image .swiper-pagination .swiper-pagination-bullet-active {
  opacity: 0.6;
}

/* ----- Proccess ---- **/
@media only screen and (max-width: 767px) {
  .process {
    margin-top: -30px;
  }
}
.process .process-wrapper {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  align-items: center;
  gap: 1.875rem;
}
@media only screen and (max-width: 991px) {
  .process .process-wrapper {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .process .process-wrapper {
    flex-direction: column;
    gap: 1.25rem;
  }
}
@media only screen and (min-width: 1400px) {
  .process .process-wrapper {
    gap: 3.125rem;
  }
}
.process .process-wrapper .single-item {
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media only screen and (max-width: 991px) {
  .process .process-wrapper .single-item {
    flex: 0 0 calc(50% - 3.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .process .process-wrapper .single-item {
    flex: 0 0 100%;
    max-width: 350px;
  }
}
.process .process-wrapper .single-item span {
  font-size: var(--line-height-h5);
  font-weight: 500;
  color: var(--neutral--08);
}
@media only screen and (max-width: 767px) {
  .process .process-wrapper .arrow-icon {
    transform: rotate(90deg);
  }
}

/* ----- Features Set One ---- **/
.features-set-one .features-items {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 3.125rem;
  -moz-column-gap: 3.75rem;
       column-gap: 3.75rem;
}
.features-set-one .single-item {
  display: flex;
  align-items: flex-start;
  gap: 1.875rem;
}
@media only screen and (min-width: 768px) {
  .features-set-one .single-item {
    flex: calc(50% - 3.75rem);
  }
}
.features-set-one .single-item .title {
  margin-bottom: 0.75rem;
}

/* ----- Features Set Two ---- **/
.features-set-two .text-pill {
  margin-bottom: 1.875rem;
}
.features-set-two .title {
  margin-bottom: 1.5625rem;
}
.features-set-two p {
  color: var(--neutral--07);
}
.features-set-two .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
@media only screen and (min-width: 768px) {
  .features-set-two .wrapper {
    flex-direction: row;
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
  }
}
@media only screen and (min-width: 992px) {
  .features-set-two .wrapper {
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
  }
}
@media only screen and (min-width: 1400px) {
  .features-set-two .wrapper {
    -moz-column-gap: 6.25rem;
         column-gap: 6.25rem;
  }
}
.features-set-two .image {
  margin-bottom: 2.5rem;
}
.features-set-two .content {
  flex: 0 0 48%;
}
@media only screen and (min-width: 1400px) {
  .features-set-two .content p {
    padding-right: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  .features-set-two .multiple-styles .wrapper {
    flex-direction: column-reverse;
  }
}
@media only screen and (max-width: 767px) {
  .features-set-two .multiple-styles .content {
    padding-top: 1.875rem;
  }
}
.features-set-two .multiple-styles .marquee-slider {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .features-set-two .multiple-styles .marquee-slider {
    max-width: 45%;
  }
}
.features-set-two .multiple-styles .marquee-slider:before, .features-set-two .multiple-styles .marquee-slider:after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  width: 40%;
  z-index: 1;
}
.features-set-two .multiple-styles .marquee-slider:before {
  left: 0;
  background: linear-gradient(to right, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
}
.features-set-two .multiple-styles .marquee-slider:after {
  right: 0;
  z-index: 1;
  background: linear-gradient(to left, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
}
.features-set-two .multiple-styles .marquee-slider .text-pill {
  margin: 0.5rem 0.3125rem;
}

/* ----- Features Set Two ---- **/
.use-cases {
  background: var(--neutral--02);
  overflow: hidden;
}
.use-cases .section-title h2 {
  text-align: left;
}
.use-cases .use-cases-card {
  background: var(--neutral--01);
  border-radius: 0.5rem;
  padding: 1.5625rem;
}
.use-cases .use-cases-card img {
  margin-bottom: 2.1875rem;
}
.use-cases .use-cases-card .title {
  margin-bottom: 0.5rem;
}
@media only screen and (min-width: 1400px) {
  .use-cases .swiper {
    margin-right: -100%;
  }
}

/* ----- How it works ---- **/
.how-it-works {
  background: var(--neutral--02);
  background-image: url(../img/floor-img.png);
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
}
.how-it-works .card-wrapper {
  row-gap: 1.5rem;
  margin-bottom: 3.75rem;
}
@media only screen and (min-width: 992px) {
  .how-it-works .card-wrapper {
    margin-bottom: 5.3125rem;
  }
}
.how-it-works .card {
  background-color: var(--neutral--01);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  overflow: hidden;
  text-align: center;
}
.how-it-works .card .single-image img {
  width: 100%;
}
.how-it-works .card .single-image span {
  position: absolute;
  bottom: 0.9375rem;
  word-wrap: normal;
  right: 50%;
  transform: translateX(50%);
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  padding: 0.1875rem 0.5rem;
  border-radius: 5px;
  font-size: 13px;
}
.how-it-works .card .card-title {
  color: var(--neutral--07);
  font-weight: 500;
  padding: 0.8rem;
}
.how-it-works .cta .title {
  margin-bottom: 1.5625rem;
}

/* ----- Hero ---- **/
/* gallery **/
.section-gallery .single-gallery-item {
  position: relative;
}
.section-gallery .single-gallery-item:not(:last-child) {
  margin-bottom: 1.25rem;
}
@media only screen and (min-width: 768px) {
  .section-gallery .single-gallery-item:not(:last-child) {
    margin-bottom: 2.5rem;
  }
}
.section-gallery .single-gallery-item .image-wrapper {
  display: flex;
  justify-content: space-between;
}
.section-gallery .single-gallery-item .single-image {
  width: 100%;
}
.section-gallery .single-gallery-item .image-type {
  position: relative;
  overflow: hidden;
  width: 50%;
}
.section-gallery .single-gallery-item .image-type img {
  border: 0.25rem solid var(--neutral--07);
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
.section-gallery .single-gallery-item .image-type:first-child img {
  border-right: 0.125rem solid var(--neutral--07);
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
}
.section-gallery .single-gallery-item .image-type:last-child img {
  border-left: 0.125rem solid var(--neutral--07);
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
.section-gallery .single-gallery-item .image-type-title {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background: rgba(8, 14, 19, 0.75);
  color: var(--neutral--01);
  border-radius: 0.3125rem;
  padding: 0.3125rem 0.5rem;
  font-size: 0.875rem;
}
.section-gallery .page-navigation {
  display: flex;
  justify-content: center;
  margin-bottom: 3.125rem;
  margin-top: 1.875rem;
}
@media only screen and (min-width: 992px) {
  .section-gallery .page-navigation {
    margin-top: 3.75rem;
    margin-bottom: 6.5625rem;
  }
}
.section-gallery .page-navigation .pagination .page-item:first-child a, .section-gallery .page-navigation .pagination .page-item:first-child span {
  font-size: 0;
}
.section-gallery .page-navigation .pagination .page-item:last-child a, .section-gallery .page-navigation .pagination .page-item:last-child span {
  font-size: 0;
}

/* pricing **/
.section-pricing {
  padding-bottom: 3.125rem;
}
@media only screen and (min-width: 992px) {
  .section-pricing {
    padding-bottom: 4.375rem;
  }
}
.section-pricing .plan-options {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border-light);
  border-radius: 0.75rem;
  padding: 0.3125rem;
  margin-bottom: 1.25rem;
}
.section-pricing .plan-options .btn {
  color: var(--neutral--07);
  font-size: 0.9375rem;
  padding: 0.8125rem 1.625rem;
  margin: 3px;
}
.section-pricing .plan-options .btn:hover {
  background: var(--theme-secondary);
  color: var(--neutral--01);
}
.section-pricing .plan-options .btn:hover .discount-text {
  color: var(--neutral--01);
}
.section-pricing .plan-options .discount-text {
  color: var(--theme-secondary);
  transition: 0.3s;
  margin-left: 0.25rem;
}
.section-pricing .plan-options .btn--active {
  background: var(--theme-secondary);
  color: var(--neutral--01);
  padding: 0.8125rem 1.625rem;
}
.section-pricing .plan-options .btn--active .discount-text {
  color: var(--neutral--01);
}
.section-pricing .plan-options-card {
  display: flex;
  gap: 1.875rem;
  justify-content: center;
  flex-wrap: wrap;
}
.section-pricing .pricing-card {
  padding: 1.875rem 0;
  background: var(--neutral--03);
  border-radius: 0.625rem;
  position: relative;
  overflow: hidden;
}
.section-pricing .pricing-card-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-bottom: 1px solid var(--border-light);
  padding: 0.75rem 0 1.875rem;
  margin-bottom: 1.875rem;
}
.section-pricing .pricing-card-header .plan-name {
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--neutral--07);
}
.section-pricing .pricing-card-header .amount {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--neutral--07);
}
.section-pricing .pricing-card-header .plan-discount {
  color: var(--neutral--01);
  background: var(--theme-primary);
  font-size: 0.8125rem;
  position: absolute;
  top: 2.8125rem;
  right: 2.8125rem;
  transform: translate(50%, -50%) rotate(45deg);
  width: 100%;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
}
.section-pricing .pricing-card-header .option-name {
  font-size: 1.3125rem;
  font-weight: 500;
  position: relative;
  top: -2px;
}
.section-pricing .pricing-card-body {
  padding: 0 1.875rem;
}
.section-pricing .pricing-card-body .btn {
  margin-top: 0.9375rem;
  width: 100%;
}
.section-pricing .plan-features {
  padding: 0;
  list-style: none;
}
.section-pricing .plan-features li {
  margin-bottom: 0.9375rem;
  font-size: 0.9375rem;
  color: var(--neutral--07);
  display: flex;
}
.section-pricing .plan-features li .icon {
  margin-right: 0.75rem;
}

@media only screen and (max-width: 767px) {
  .modal-pricing .pricing-card {
    padding: 1.25rem 0;
  }
  .modal-pricing .pricing-card-header {
    padding-top: 0;
    padding-bottom: 0.625rem;
    margin-bottom: 1.25rem;
  }
  .modal-pricing .plan-features li {
    margin-bottom: 0.625rem;
  }
  .modal-pricing .pricing-card-body .btn {
    margin-top: 0.625rem;
  }
}
.modal-pricing .modal-header {
  position: relative;
  border-bottom: none;
  margin: 0.9375rem;
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .modal-pricing .modal-header {
    margin: 1.25rem 1.875rem;
  }
}
.modal-pricing .modal-header .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0.7;
  transition: 0.3s;
}
.modal-pricing .modal-header .modal-title {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: var(--neutral--01);
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 600;
  max-width: 600px;
  margin: 0 auto;
}
@media only screen and (min-width: 576px) {
  .modal-pricing .modal-header .modal-title {
    font-size: 1.875rem;
  }
}
@media only screen and (min-width: 768px) {
  .modal-pricing .modal-header .modal-title {
    font-size: 2.875rem;
  }
}
.modal-pricing .modal-content {
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
}
.modal-pricing .pricing-card {
  background: var(--neutral--01);
  box-shadow: 0px 15px 40px rgba(11, 32, 78, 0.14);
}

/* FAQ **/
.section-faq {
  margin-bottom: 3.125rem;
}
@media only screen and (min-width: 992px) {
  .section-faq {
    margin-bottom: 6.5625rem;
    margin-top: 1.25rem;
  }
}
.section-faq .accordion-item {
  margin-bottom: 0.625rem;
  border: 1px solid var(--border-light);
  border-radius: 0.5rem;
  background-color: var(--neutral--03);
}
.section-faq .accordion-header .accordion-button {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--neutral--07);
  background-color: var(--neutral--03);
  border-radius: 0.5rem;
}
.section-faq .accordion-header .accordion-button:focus {
  box-shadow: none;
}
.section-faq .accordion-header .accordion-button:not(.collapsed) {
  box-shadow: none;
}
.section-faq .accordion-header .accordion-button::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  margin-left: auto;
  margin-right: 0;
}
.section-faq .accordion-header .accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.section-faq .accordion-body {
  padding-top: 0rem;
}
.section-faq .accordion-body p {
  font-size: 1rem;
  color: var(--neutral--06);
}

/* file upload **/
.file-uploader {
  padding: 1.25rem;
  padding-bottom: 0.5rem;
}
.file-uploader .file-input-container {
  position: relative;
  width: 100%;
  height: 8.75rem;
  border: 2px dashed var(--border-light);
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  cursor: pointer;
  text-align: center;
  padding: 0.625rem;
  transition: 0.3s;
}
.file-uploader .file-input-container:hover {
  border-color: #c6c5c9;
}
.file-uploader .file-input-container input[type=file] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.file-uploader .file-input-container .upload-icon {
  margin-bottom: 0.625rem;
}
.file-uploader .file-input-container .instructions {
  font-size: 0.9375rem;
  color: var(--neutral--06);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.file-uploader .file-input-container .preview-img {
  max-width: 100%;
  max-height: 100%;
}
.file-uploader .file-input-container .remove-uploaded-image {
  display: none;
  z-index: 2;
  cursor: pointer;
  position: absolute;
  right: 5px;
  top: 5px;
  z-index: 2;
}
.file-uploader .messages {
  font-size: 0.9375rem;
  color: var(--neutral--07);
  font-weight: 600;
}
.file-uploader .progress {
  height: 0.75rem;
  border-radius: 6.25rem;
  margin-top: 0.625rem;
  margin-bottom: 0.3125rem;
  padding: 2px;
  border: 1px solid var(--border-light);
  width: 100%;
}
.file-uploader .progress-bar {
  border-radius: 6.25rem;
  height: 100%;
  transition: 0.3s;
}
.file-uploader-value {
  color: var(--neutral--01);
  font-size: 0.875rem;
  font-weight: 500;
}

/* generator app **/
.page-app .main {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.section-decorai-app .body-wrapper {
  background: var(--neutral--01);
  display: flex;
  border-radius: 0.5rem;
  padding: 0.625rem;
  gap: 0.625rem;
  text-align: center;
}
@media only screen and (max-width: 991px) {
  .section-decorai-app .body-wrapper {
    flex-direction: column;
  }
}
.section-decorai-app .image-container {
  flex: 0 0 calc(50% - 0.3125rem);
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
}
.section-decorai-app .image-container .title {
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}
.section-decorai-app .image-container .image-wrapper {
  height: 100%;
  width: 100%;
  border: 1px dashed var(--border-light);
  border-radius: 0.5rem;
  overflow: hidden;
  padding: 0.3125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.section-decorai-app .image-container .image-wrapper img {
  border-radius: 0.375rem;
}
.section-decorai-app .image-container .render-progress,
.section-decorai-app .image-container .output-action {
  position: absolute;
  width: calc(100% - 0.625rem);
  height: calc(100% - 0.625rem);
  left: 0.3125rem;
  top: 0.3125rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 1;
  transition: 0.3s;
}
.section-decorai-app .image-container .render-progress::before,
.section-decorai-app .image-container .output-action::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: -1;
  border-radius: 0.375rem;
}
.section-decorai-app .image-container .render-progress .progress-bar {
  height: 0.625rem;
  border-radius: 6.25rem;
  margin-bottom: 0.625rem;
  padding: 2px;
  background-color: var(--neutral--01);
  width: 80%;
}
.section-decorai-app .image-container .render-progress .progress-bar-inside {
  border-radius: 6.25rem;
  background: var(--theme-secondary);
  height: 100%;
  transition: 0.3s;
}
.section-decorai-app .image-container .render-progress-value {
  color: var(--neutral--01);
  font-size: 0.875rem;
  font-weight: 500;
}
.section-decorai-app .image-container .output-action {
  opacity: 0;
  visibility: hidden;
}
.section-decorai-app .image-container .generation-done:hover .output-action {
  opacity: 1;
  visibility: visible;
}

/* file upload **/
.page-dashboard {
  background-color: var(--neutral--05);
  min-height: 100vh;
  /* Subscription Settings **/
  /* API **/
}
@media only screen and (max-width: 991px) {
  .page-dashboard {
    padding-bottom: 2.5rem !important;
  }
}
@media only screen and (min-width: 992px) {
  .page-dashboard .navbar {
    padding-top: 1.5625rem;
  }
}
.page-dashboard .wrapper {
  display: flex;
  background-color: var(--neutral--01);
  border-radius: 0.5rem;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .wrapper {
    min-height: 70vh;
  }
}
@media only screen and (max-width: 767px) {
  .page-dashboard .wrapper {
    flex-direction: column;
  }
}
.page-dashboard .sidebar {
  box-shadow: none;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
  padding-left: 0.9375rem;
  border-radius: 0;
  background: transparent;
  position: relative;
  visibility: visible;
  opacity: 1;
  z-index: 999;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .sidebar {
    border-right: 1px solid var(--border-light);
    min-height: 100%;
    flex: 0 0 13.75rem;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    padding-left: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .page-dashboard .sidebar {
    border-bottom: 1px solid var(--border-light);
    overflow: initial;
    padding-bottom: 0.625rem;
  }
}
.page-dashboard .sidebar .nav {
  display: flex;
  flex-direction: column;
  padding: 0;
}
.page-dashboard .sidebar .nav .nav-link {
  padding-top: 0;
  color: var(--neutral--07);
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 0.9375rem;
  padding-bottom: 0.3125rem;
  padding-left: 0;
}
.page-dashboard .sidebar .nav .nav-link:not(.active) {
  color: var(--neutral--06);
}
.page-dashboard .sidebar .nav .nav-link.active {
  font-weight: 600;
}
.page-dashboard .sidebar .nav .nav-link:hover {
  color: var(--theme-primary);
}
.page-dashboard .page-body {
  flex: 1;
  padding: 0.9375rem;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .page-body {
    padding: 1.875rem;
  }
}
.page-dashboard .page-body .title-bar-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-bottom: 1.5625rem;
}
.page-dashboard .page-body .title-bar-wrapper a {
  font-size: 0.875rem;
}
.page-dashboard .page-body .title-bar {
  font-size: 1.125rem;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .page-body .form {
    max-width: 25rem;
  }
}
.page-dashboard .page-body .form .form-label {
  font-weight: 700;
}
.page-dashboard .border-bottom {
  border-color: var(--neutral--05);
  margin-top: 1.5625rem;
  margin-bottom: 1.3125rem;
}
.page-dashboard .plan-info {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  font-size: 0.875rem;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .plan-info {
    max-width: 23.75rem;
  }
}
.page-dashboard .plan-info .title {
  margin-bottom: 0.9375rem;
}
.page-dashboard .plan-info .title,
.page-dashboard .plan-info .plan-type,
.page-dashboard .plan-info .date {
  color: var(--neutral--07);
  font-weight: 600;
}
.page-dashboard .plan-info .content-right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}
.page-dashboard .plan-info .content-right .btn--gray {
  font-weight: 400;
  margin-top: 0.625rem;
  font-size: 0.875rem;
}
.page-dashboard .plan-info .plan-type {
  display: flex;
  align-items: center;
  font-size: 1rem;
}
.page-dashboard .plan-info .pill {
  border-radius: 100px;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0.3125rem 0.75rem;
  gap: 0.375rem;
  margin-left: 0.625rem;
  font-size: 12px;
}
.page-dashboard .plan-info .pill .dot {
  width: 8px;
  height: 8px;
  border-radius: 100px;
  background: #03d0b0;
}
.page-dashboard .plan-info .pill--active {
  background: rgba(159, 251, 162, 0.3);
}
.page-dashboard .plan-info .pill--inactive {
  background: var(--state-danger);
  color: var(--neutral--01);
}
.page-dashboard .plan-info .pill--inactive .dot {
  background: var(--neutral--01);
}
.page-dashboard .transaction-history .transaction-history-title {
  color: var(--neutral--07);
  font-weight: 600;
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .transaction-history table {
    width: 31.25rem;
  }
}
.page-dashboard .api-key .title,
.page-dashboard .balance .title,
.page-dashboard .usage-history .title {
  color: var(--neutral--07);
  font-weight: 600;
  font-size: 0.875rem;
  margin-bottom: 0.9375rem;
}
.page-dashboard .balance {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .page-dashboard .balance {
    max-width: 23.75rem;
  }
}
.page-dashboard .balance .content-right {
  display: flex;
  flex-direction: column;
}
.page-dashboard .balance .amount {
  font-size: 1rem;
  color: var(--neutral--07);
  font-weight: 600;
  margin-bottom: 0.9375rem;
}
.page-dashboard .api-key .form-control {
  color: var(--neutral--06);
}
@media only screen and (min-width: 1200px) {
  .page-dashboard .usage-history table {
    width: 90%;
  }
}

/* common **/
.page-app,
.page-dashboard {
  background-color: var(--neutral--05);
  padding-bottom: 7.5rem;
}
@media only screen and (min-width: 768px) {
  .page-app,
  .page-dashboard {
    padding-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 992px) {
  .page-app .navbar,
  .page-dashboard .navbar {
    padding-top: 1.5625rem;
  }
}
.page-app .section-dashboard,
.page-app .section-decorai-app,
.page-dashboard .section-dashboard,
.page-dashboard .section-decorai-app {
  padding-top: 65px;
  padding-bottom: 3.125rem;
  flex: 1;
}
@media only screen and (min-width: 992px) {
  .page-app .section-dashboard,
  .page-app .section-decorai-app,
  .page-dashboard .section-dashboard,
  .page-dashboard .section-decorai-app {
    padding-top: 6.25rem;
    padding-bottom: 5rem;
  }
}

.support-btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9;
}
.support-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 60px;
  width: 60px;
  border-radius: 100px;
  background: var(--neutral--07);
  font-size: 32px;
  transition: 0.3s;
}
.support-btn a:hover {
  background: var(--theme-primary);
}

/* terms **/
.section-terms .wrapper {
  border-radius: 0.9375rem;
  padding: 1.25rem;
}
@media only screen and (min-width: 768px) {
  .section-terms .wrapper {
    padding: 2.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .section-terms .wrapper {
    padding: 5rem;
  }
}
.section-terms .single-item:not(:last-child) {
  margin-bottom: 1.5625rem;
}
.section-terms .single-item .title {
  font-size: 1.5rem;
  margin-bottom: 0.625rem;
}
.section-terms .single-item p {
  font-size: 1rem;
}

/* api **/
.section-api {
  background: var(--theme-primary-light);
}
.section-api .wrapper {
  text-align: center;
}
.section-api .content {
  margin-bottom: 3.75rem;
}
@media only screen and (min-width: 992px) {
  .section-api .content {
    margin-bottom: 5rem;
  }
}
.section-api .content .text-pill {
  margin-bottom: 1.8rem;
}
.section-api .content .title {
  font-size: 2.25rem;
  margin-bottom: 1.375rem;
  color: var(--neutral--01);
  max-width: 50rem;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 992px) {
  .section-api .content .title {
    font-size: 4rem;
  }
}
.section-api p {
  color: var(--neutral--01);
  max-width: 28.125rem;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 2.5rem;
}

/* footer **/
.footer {
  background: var(--neutral--07);
  padding: 4.375rem 0;
}
.footer .footer-cta {
  padding-bottom: 4.375rem;
}
@media only screen and (max-width: 767px) {
  .footer .footer-cta {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .footer .footer-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
.footer .footer-cta .title {
  color: var(--neutral--01);
}
@media only screen and (max-width: 767px) {
  .footer .footer-cta .title {
    margin-bottom: 1.875rem;
  }
}
.footer .footer-main {
  padding-top: 4.375rem;
  row-gap: 1.875rem;
}
.footer .footer-main .nav {
  flex-direction: column;
  row-gap: 0.9375rem;
  padding: 0;
}
.footer .footer-main .nav a {
  font-size: 1rem;
  color: var(--neutral--01);
}
.footer .footer-main .nav a:hover {
  color: var(--theme-primary);
}
.footer .footer-main .group-title {
  font-size: 1rem;
  color: var(--neutral--01);
  opacity: 0.4;
  margin-bottom: 1.875rem;
}

.footer--v2 .footer-main {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .footer--v2 .footer-main {
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .footer--v2 .footer-main {
    gap: 0.625rem;
  }
}
.footer--v2 .footer-main .copyright,
.footer--v2 .footer-main .nav a {
  color: var(--neutral--07);
  font-size: 0.875rem;
}
.footer--v2 .footer-main .nav {
  display: flex;
  justify-content: center;
  gap: 0.9375rem;
}
@media only screen and (min-width: 768px) {
  .footer--v2 .footer-main .nav {
    gap: 1.875rem;
  }
}
.footer--v2 .footer-main .nav a:hover {
  color: var(--theme-primary);
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjEtc2Nzc19oZWxwZXJzL192YXJpYWJsZXMuc2NzcyIsImFwcC5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fY29yZS5zY3NzIiwiMS1zY3NzX2hlbHBlcnMvX21peGlucy5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9faGVscGVycy5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fc2VjdGlvbi10aXRsZS5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9fc2lkZWJhci5zY3NzIiwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9faW5uZXItdGl0bGUtYmFyLnNjc3MiLCIyLWZyYW1ld29ya19jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIzLXRoZW1lX2NvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsIjMtdGhlbWVfY29tcG9uZW50cy9faG9tZS5zY3NzIiwiMy10aGVtZV9jb21wb25lbnRzL19nYWxsZXJ5LnNjc3MiLCIzLXRoZW1lX2NvbXBvbmVudHMvX3ByaWNpbmcuc2NzcyIsIjMtdGhlbWVfY29tcG9uZW50cy9fZmFxLnNjc3MiLCIzLXRoZW1lX2NvbXBvbmVudHMvX2ZpbGUtdXBsb2FkLnNjc3MiLCIzLXRoZW1lX2NvbXBvbmVudHMvX2dlbmVyYXRvci1hcHAuc2NzcyIsIjMtdGhlbWVfY29tcG9uZW50cy9fZGFzaGJvYXJkLnNjc3MiLCIzLXRoZW1lX2NvbXBvbmVudHMvX2NvbW1vbi5zY3NzIiwiMy10aGVtZV9jb21wb25lbnRzL190ZXJtcy5zY3NzIiwiMy10aGVtZV9jb21wb25lbnRzL19hcGkuc2NzcyIsIjMtdGhlbWVfY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBw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Q0E7O0FwQjdDQTtFb0J5Q0Q7SUFNRTs7O0FwQnpDRDtFb0JtQ0Q7SUFTRTs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7O0FwQjVERDtFb0J5REE7SUFLRTs7O0FBR0Q7RUFDQyIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQnJlYWtwb2ludHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGJyZWFrcG9pbnRzOiAoXG5cdFwiXCI6IFwiXCIsXG5cdFwieHNcIjogMCxcblx0XCJzbVwiOiA1NzZweCxcblx0XCJtZFwiOiA3NjhweCxcblx0XCJsZ1wiOiA5OTJweCxcblx0XCJ4bHNcIjogMTAyNXB4LFxuXHRcInhsXCI6IDEyMDBweCxcblx0XCJ4eGxcIjogMTQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8gIENvbG9yIHBhbGV0dGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNDU1MgVmFyaWFibGVcblx0Ly8gTmV1dHJhbFxuXHQkbmV1dHJhbC0tMDE6ICNmZmZmZmY7XG5cdCRuZXV0cmFsLS0wMjogI2Y4ZjhmOTtcblx0JG5ldXRyYWwtLTAzOiAjZjRmNmY4O1xuXHQkbmV1dHJhbC0tMDQ6ICNmMWYwZjM7XG5cdCRuZXV0cmFsLS0wNTogI2VhZWRmMDtcblx0JG5ldXRyYWwtLTA2OiAjNDU0ZjVjO1xuXHQkbmV1dHJhbC0tMDc6ICMwODBlMTM7XG5cdCRuZXV0cmFsLS0wODogIzAwMDAwMDtcblxuXHQvLyBCb2R5IENvbG9yXG5cdCRib2R5LWNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNik7XG5cblx0Ly8gU29saWQgVGhlbWUgQ29sb3Jcblx0JHRoZW1lLXByaW1hcnk6ICMzYjJhZmI7XG5cdCR0aGVtZS1wcmltYXJ5LWxpZ2h0OiAjMzI1N0ZGO1xuXHQkdGhlbWUtc2Vjb25kYXJ5OiAjZmY2YzJlO1xuXG4vLyBDU1MgVmFyaWFibGVcbjpyb290IHtcblx0Ly8gTmV1dHJhbFxuXHQtLW5ldXRyYWwtLTAxOiAjeyRuZXV0cmFsLS0wMX07XG5cdC0tbmV1dHJhbC0tMDI6ICN7JG5ldXRyYWwtLTAyfTtcblx0LS1uZXV0cmFsLS0wMzogI3skbmV1dHJhbC0tMDN9O1xuXHQtLW5ldXRyYWwtLTA0OiAjeyRuZXV0cmFsLS0wNH07XG5cdC0tbmV1dHJhbC0tMDU6ICN7JG5ldXRyYWwtLTA1fTtcblx0LS1uZXV0cmFsLS0wNjogI3skbmV1dHJhbC0tMDZ9O1xuXHQtLW5ldXRyYWwtLTA3OiAjeyRuZXV0cmFsLS0wN307XG5cdC0tbmV1dHJhbC0tMDg6ICN7JG5ldXRyYWwtLTA4fTtcblxuXHQvLyBCb2R5IENvbG9yXG5cdC0tYm9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG5cblx0Ly8gU29saWQgVGhlbWUgQ29sb3Jcblx0LS10aGVtZS1wcmltYXJ5OiAjeyR0aGVtZS1wcmltYXJ5fTtcblx0LS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjeyR0aGVtZS1wcmltYXJ5LWxpZ2h0fTtcblx0LS10aGVtZS1zZWNvbmRhcnk6ICN7JHRoZW1lLXNlY29uZGFyeX07XG5cblx0Ly8gQmFja2dyb3VuZCBDb2xvclxuXHQtLWJnLWRhcms6IC0tbmV1dHJhbC0tMDY7XG5cdC0tYmctbGlnaHQ6IC0tbmV1dHJhbC0tMDI7XG5cblx0Ly8gQm9yZGVyXG5cdC0tYm9yZGVyLWxpZ2h0OiAjZGZlM2U4O1xuXHQtLWJvcmRlci1kYXJrOiAjMmIyZDM4O1xuXG5cdC8vIFN0YXRlXG5cdC0tc3RhdGUtc3VjY2VzczogIzEzYzEyZjtcblx0LS1zdGF0ZS1pbmZvOiAjNDU3ZWZhO1xuXHQtLXN0YXRlLXdhcm5pbmc6ICNmZmJiMjk7XG5cdC0tc3RhdGUtZGFuZ2VyOiAjZjAxODE4O1xuXG5cdC8vIEJ1dHRvbiBIb3ZlclxuXHQtLWJ0bi1ob3Zlci0tcHJpbWFyeTogIzU1M2ZmYjtcblx0Ly8gZm9udCBTaXplXG5cdC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0LS1mb250LXNpemUtaDE6IDVyZW07XG5cdC0tZm9udC1zaXplLWgyOiAzLjVyZW07XG5cdC0tZm9udC1zaXplLWgzOiAyLjVyZW07XG5cdC0tZm9udC1zaXplLWg0OiAxLjc1cmVtO1xuXHQtLWZvbnQtc2l6ZS1oNTogMS41cmVtO1xuXHQtLWZvbnQtc2l6ZS1oNjogMS4yNXJlbTtcblx0LS1mb250LXNpemUtYm9keTogMS4xMjVyZW07XG5cdC0tZm9udC1zaXplLTIxOiAxLjMxMjVyZW07XG5cdC0tZm9udC1zaXplLTE2OiAxcmVtO1xuXHQtLWZvbnQtc2l6ZS0xNDogMC44NzVyZW07XG5cblx0Ly8gZm9udCBsaW5lIGhlaWdodFxuXHQvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdC0tbGluZS1oZWlnaHQtaDE6IDEuMDc1O1xuXHQtLWxpbmUtaGVpZ2h0LWgyOiAxLjE0O1xuXHQtLWxpbmUtaGVpZ2h0LWgzOiAxLjI7XG5cdC0tbGluZS1oZWlnaHQtaDQ6IDEuMjg7XG5cdC0tbGluZS1oZWlnaHQtaDU6IDEuMjg7XG5cdC0tbGluZS1oZWlnaHQtaDY6IDEuNTtcblx0LS1saW5lLWhlaWdodC1ib2R5OiAxLjU1O1xuXG5cdC8vIFBhZGRpbmdcblx0Ly8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cdC0tcGFkZGluZy0xOiA3MHB4O1xuXHQtLXBhZGRpbmctMjogOTBweDtcblx0LS1wYWRkaW5nLTM6IDExMHB4O1xufVxuXG4vLyBiYXNlIGZvbnQgc2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRiYXNlLXVuaXQ6IDE2ICFkZWZhdWx0O1xuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8gZm9udHMgZmFtaWx5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kZm9udC1ib2R5OiBcIkludGVyXCIsIHNhbnMtc2VyaWYsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIERyb3AgU2hhZG93XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kZGVwdGgtMTogMHB4IDIuOTc4NzJweCA1OS41NzQ1cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiRkZXB0aC0xOiAwcHggMTVweCA0MHB4IHJnYmEoMTEsIDMyLCA3OCwgMC4xNCk7XG4iLCJAaW1wb3J0IFwiMS1zY3NzX2hlbHBlcnMvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiMS1zY3NzX2hlbHBlcnMvdmFyaWFibGVzXCI7XG4vLyBAaW1wb3J0IFwiX3J0bC5zY3NzXCI7XG5AaW1wb3J0IFwiMS1zY3NzX2hlbHBlcnMvbWl4aW5zXCI7XG5cbi8vIC8qICEqKioqKioqKioqKioqKi9cbi8vIC8qIGNvcmUgKiovXG4vLyAvKiBidXR0b25zICoqL1xuLy8gLyogaGVscGVycyAqKi9cbi8vIC8qIGNhcmRzICoqL1xuLy8gLyogYmFja2dyb3VuZCBob2xkZXIgKiovXG4vLyAvKiBmb3JtICoqL1xuLy8gLyogaGVybyAqKi9cbi8vIC8qIGZyb250ZW5kIGlubmVyIHBhZ2VzICAqKi9cbi8vIC8qIG5hdmlnYXRpb24gKiovXG4vLyAvKiBmb290ZXIgKiovXG5cbi8vIC8qID09PT09PT09PT09PT09PT0gKi9cbi8vIC8qID09PT09PT09PT09PT09PT0gKi9cbi8vIC8qID09PT09PT09PT09PT09PT0gKi9cbi8vIC8qID09PT09PT09PT09PT09PT0gKi9cbi8vIC8qIEZyYW1ld29yayBDb21wb25lbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLyogQ29yZSAqKi9cbkBpbXBvcnQgXCIyLWZyYW1ld29ya19jb21wb25lbnRzL2NvcmVcIjtcblxuLyogSGVscGVycyAqKi9cbkBpbXBvcnQgXCIyLWZyYW1ld29ya19jb21wb25lbnRzL2hlbHBlcnNcIjtcblxuLyogVHlwb2dyYXBoeSAqKi9cbkBpbXBvcnQgXCIyLWZyYW1ld29ya19jb21wb25lbnRzL3R5cG9ncmFwaHlcIjtcblxuLyogQnV0dG9ucyAqKi9cbkBpbXBvcnQgXCIyLWZyYW1ld29ya19jb21wb25lbnRzL2J1dHRvbnNcIjtcblxuLyogU2VjdGlvbiBUaXRsZSAqKi9cbkBpbXBvcnQgXCIyLWZyYW1ld29ya19jb21wb25lbnRzL3NlY3Rpb24tdGl0bGVcIjtcblxuLyogQmFja2dyb3VuZCBIb2xkZXIgKiovXG5AaW1wb3J0IFwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9iYWNrZ3JvdW5kLWhvbGRlclwiO1xuXG4vKiBGb3JtICoqL1xuQGltcG9ydCBcIjItZnJhbWV3b3JrX2NvbXBvbmVudHMvZm9ybVwiO1xuXG4vKiBTaWRlYmFyICoqL1xuQGltcG9ydCBcIjItZnJhbWV3b3JrX2NvbXBvbmVudHMvc2lkZWJhclwiO1xuXG4vKiBpbm5lcnBhZ2UgYmFubmVyICoqL1xuQGltcG9ydCBcIjItZnJhbWV3b3JrX2NvbXBvbmVudHMvaW5uZXItdGl0bGUtYmFyXCI7XG5cbi8qIFBhZ2luYXRpb24gKiovXG5AaW1wb3J0IFwiMi1mcmFtZXdvcmtfY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5cbi8vIC8qXG4vLyAqICBUaGVtZSBDb21wb25lbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLyogbmF2aWdhdGlvbiAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvbmF2aWdhdGlvblwiO1xuXG4vKiBob21lICoqL1xuQGltcG9ydCBcIjMtdGhlbWVfY29tcG9uZW50cy9ob21lXCI7XG5cbi8qIGdhbGxlcnkgKiovXG5AaW1wb3J0IFwiMy10aGVtZV9jb21wb25lbnRzL2dhbGxlcnlcIjtcblxuLyogcHJpY2luZyAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvcHJpY2luZ1wiO1xuXG4vKiBGQVEgKiovXG5AaW1wb3J0IFwiMy10aGVtZV9jb21wb25lbnRzL2ZhcVwiO1xuXG4vKiBmaWxlIHVwbG9hZCAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvZmlsZS11cGxvYWRcIjtcblxuLyogZ2VuZXJhdG9yIGFwcCAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvZ2VuZXJhdG9yLWFwcFwiO1xuXG4vKiBmaWxlIHVwbG9hZCAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvZGFzaGJvYXJkXCI7XG5cbi8qIGNvbW1vbiAqKi9cbkBpbXBvcnQgXCIzLXRoZW1lX2NvbXBvbmVudHMvY29tbW9uXCI7XG5cbi8qIHRlcm1zICoqL1xuQGltcG9ydCBcIjMtdGhlbWVfY29tcG9uZW50cy90ZXJtc1wiO1xuXG4vKiBhcGkgKiovXG5AaW1wb3J0IFwiMy10aGVtZV9jb21wb25lbnRzL2FwaVwiO1xuXG4vKiBmb290ZXIgKiovXG5AaW1wb3J0IFwiMy10aGVtZV9jb21wb25lbnRzL2Zvb3RlclwiO1xuIiwiYm9keSB7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRAaW5jbHVkZSBmb250LWZhY2UoJGZvbnQtYm9keSk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1ib2R5KTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG5cdGNvbG9yOiB2YXIoLS1ib2R5LWNvbG9yKTtcblx0bGluZS1oZWlnaHQ6IDEuNTU7XG5cdG1hcmdpbjogMDtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5odG1sIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobGcpIHtcblx0XHRmb250LXNpemU6IDk1JTtcblx0fVxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG46Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG5hIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRyYW5zaXRpb246IDAuM3M7XG5cblx0Jjpob3ZlciB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG59XG5cbi5idG4ge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbiB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogMDtcblx0fVxuXG5cdCY6ZGlzYWJsZWQge1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0fVxufVxuXG5zdmcge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHR0ZXh0LFxuXHR0c3BhbiB7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LWJvZHk7XG5cdH1cbn1cbmEge1xuXHRjb2xvcjogJHRoZW1lLXByaW1hcnk7XG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBsaWdodGVuKCRjb2xvcjogJHRoZW1lLXByaW1hcnksICRhbW91bnQ6IDgpO1xuXHR9XG59XG5pbnB1dCxcbnRleHRhcmVhIHtcblx0cGFkZGluZzogMTBweDtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0Zm9udC1zaXplOiAxN3B4O1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA2KTtcblx0fVxufVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvO1xuXHR3aWR0aDogYXV0bztcbn1cbi5jaGVja2JveC1zZWxlY3Qge1xuXHRpbnB1dCB7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cbn1cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cbi8qIEZpcmVmb3ggKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHQtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuc2VjdGlvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbnNwYW4ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udGFibGUtd3JhcHBlcntcblx0b3ZlcmZsb3cteDogYXV0bztcblxufVxudGFibGUge1xuXHR3aWR0aDogMTAwJTtcblxuXHR0aCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdH1cblx0dGQge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdH1cblx0dGQsXG5cdHRoIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0XHRwYWRkaW5nOiByZW0oMTQpIHJlbSgxMCkgcmVtKDE0KSAwO1xuXHR9XG59XG5cbi8vIC8vIERhcmsgU2Nyb2xsIEJhclxuXG4vLyAvLyBodG1sIHtcbi8vIC8vIHNjcm9sbGJhci1mYWNlLWNvbG9yOiAjNjQ2NDY0O1xuLy8gLy8gc2Nyb2xsYmFyLWJhc2UtY29sb3I6ICM2NDY0NjQ7XG4vLyAvLyBzY3JvbGxiYXItM2RsaWdodC1jb2xvcjogIzY0NjQ2NDtcbi8vIC8vIHNjcm9sbGJhci1oaWdobGlnaHQtY29sb3I6ICM2NDY0NjQ7XG4vLyAvLyBzY3JvbGxiYXItdHJhY2stY29sb3I6ICMwMDA7XG4vLyAvLyBzY3JvbGxiYXItYXJyb3ctY29sb3I6ICMwMDA7XG4vLyAvLyBzY3JvbGxiYXItc2hhZG93LWNvbG9yOiAjNjQ2NDY0O1xuLy8gLy8gc2Nyb2xsYmFyLWRhcmstc2hhZG93LWNvbG9yOiAjNjQ2NDY0O1xuLy8gLy8gfVxuXG4vLyBib2R5IHtcbi8vIFx0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4vLyBcdFx0d2lkdGg6IDhweDtcbi8vIFx0XHRoZWlnaHQ6IDNweDtcbi8vIFx0fVxuXG4vLyBcdDo6LXdlYmtpdC1zY3JvbGxiYXItYnV0dG9uIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbi8vIFx0fVxuXG4vLyBcdDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuLy8gXHRcdGJhY2tncm91bmQtY29sb3I6ICM2NDY0NjQ7XG4vLyBcdFx0Ym9yZGVyLXJhZGl1czogMTAwcHg7XG4vLyBcdH1cblxuLy8gXHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrLXBpZWNlIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNik7XG4vLyBcdFx0Ym9yZGVyLXJhZGl1czogMTAwcHg7XG4vLyBcdH1cblxuLy8gXHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbi8vIFx0XHRoZWlnaHQ6IDUwcHg7XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogIzY2Njtcbi8vIFx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcbi8vIFx0XHQmOmhvdmVyIHtcbi8vIFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yOiAjNjY2LCAkYW1vdW50OiA1KTtcbi8vIFx0XHR9XG4vLyBcdH1cblxuLy8gXHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogIzY0NjQ2NDtcbi8vIFx0fVxuXG4vLyBcdDo6LXdlYmtpdC1yZXNpemVyIHtcbi8vIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuLy8gXHR9XG4vLyB9XG4iLCIvLyAvKiotLS0tLS0tLS0gRk9OVCBGQU1JTFkgLS0tLS0tLS0qL1xuQG1peGluIGZvbnQtZmFjZSgkZm9udCkge1xuICBmb250LWZhbWlseTogJGZvbnQ7XG59XG5cbi8vIC8qKi0tLS0tLS0tLSBTVEFSVCBPRiBNRURJQSBRVUVSWSAtLS0tLS0tLSovXG5cbkBtaXhpbiBicmVha3BvaW50LW1pbigkYnAsICRydWxlOiBtaW4td2lkdGgpIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoI3skcnVsZX06IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJyZWFrcG9pbnQtbWF4KCRicCwgJHJ1bGU6IG1heC13aWR0aCkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgjeyRydWxlfTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCkgLSAxKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gIEVYQU1QTEUgT0YgVVNBR0U6XG4vLyBcbi8vICAgQGluY2x1ZGUgbWVkaWEoeGwpIHtcbi8vICAgICBiYWNrZ3JvdW5kOiBibHVlO1xuLy8gICB9XG5cbi8vIC8qKi0tLS0tLS0tLSBTdGFydCBPRiBEaXJlY3Rpb24gTWl4aW4tLS0tLS0tLSovXG4kZGlyOiBsdHIgIWRlZmF1bHQ7XG5cbi8vIERlZmF1bHQgJGRpciBpZiBub3QgdmFsaWRcbkBpZiAkZGlyICE9bHRyIGFuZCAkZGlyICE9cnRsIHtcbiAgJGRpcjogbHRyO1xufVxuXG5AZnVuY3Rpb24gbHRyKCRpZiwgJGVsc2U6IG51bGwpIHtcbiAgQGlmICRkaXIgIT1ydGwge1xuICAgIEByZXR1cm4gJGlmO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGVsc2U7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHJ0bCgkaWYsICRlbHNlOiBudWxsKSB7XG4gIEByZXR1cm4gbHRyKCRlbHNlLCAkaWYpO1xufVxuXG4kbGVmdDogbHRyKGxlZnQsIHJpZ2h0KTtcbiRyaWdodDogbHRyKHJpZ2h0LCBsZWZ0KTtcblxuQGZ1bmN0aW9uIGRpci12YWx1ZXMoJHZhbHVlcykge1xuICBAaWYgJGRpcj09cnRsIGFuZCBsZW5ndGgoJHZhbHVlcyk9PTQge1xuICAgIC8vIFJlb3JkZXIgcmlnaHQgYW5kIGxlZnQgcG9zaXRpb25zIGluIGxpc3RcbiAgICBAcmV0dXJuIG50aCgkdmFsdWVzLCAxKSBudGgoJHZhbHVlcywgNCkgbnRoKCR2YWx1ZXMsIDMpIG50aCgkdmFsdWVzLCAyKTtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICR2YWx1ZXM7XG4gIH1cbn1cblxuQG1peGluIGx0ciB7XG4gIEBpZiAkZGlyICE9cnRsIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsIHtcbiAgQGlmICRkaXI9PXJ0bCB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuXG4vLyAgRVhBTVBMRSBPRiBVU0FHRTpcblxuLy8gc2VjdGlvbiB7XG4vLyAgICAgLy8gZGVmaW5lIGhlcmUgaW5saW5lIHlvdXIgcnRsIGNvbmRpdGlvbnNcbi8vICAgICBtYXJnaW4tI3skbGVmdH06IDEwcHg7XG4vLyAgICAgQGluY2x1ZGUgbHRyIHtcbi8vICAgICBmbG9hdDogbGVmdDtcblxuLy8gICAgIH1cbi8vICAgICBAaW5jbHVkZSBydGwge1xuLy8gICAgICAgZmxvYXQ6IHJpZ2h0O1xuLy8gICAgIH1cbi8vICAgfVxuLy8qKi0tLS0tLS0tLSBFTkQgT0YgRGlyZWN0aW9uIE1peGluLS0tLS0tLS0qL1xuXG4vLyAvKiotLS0tLS0tLS0gU1RBUlQgT0YgUExBQ0VIT0xERVIgVEVYVCBDT0xPUiAtLS0tLS0tLSovXG5AbWl4aW4gaW5wdXQtcGxhY2Vob2xkZXIge1xuICAmLnBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vICBFWEFNUExFIE9GIFVTQUdFOlxuLy8gXG4vLyBpbnB1dHtcbi8vICAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG4vLyAgICAgICAgIGNvbG9yOiAjODg4O1xuLy8gICAgIH1cbi8vIH1cbi8vIEZsZXhcbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtaXhpbiBmbGV4LS1iZXR3ZWVuIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1peGluIGZsZXgtLWFsaWduLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWl4aW4gZmxleC0tanVzdGlmeS1jZW50ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtaXhpbiBmbGV4LS1jZW50ZXItYm90aCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWl4aW4gZmxleC0tY2VudGVyLWJldHdlZW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4iLCIvKiAtLS0tLSBCb3JkZXIgUmFkaXVzIC0tLS0gKiovXG4lYm9yZGVyLFxuLmJvcmRlciB7XG5cdCYtLWxpZ2h0IHtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1saWdodCkgIWltcG9ydGFudDtcblx0fVxuXHQmLS1kYXJrIHtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1kYXJrKSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi8qIC0tLS0tIEJvcmRlciBSYWRpdXMgLS0tLSAqKi9cbiVyb3VuZGVkLFxuLnJvdW5kZWQge1xuXHQmLS01IHtcblx0XHRib3JkZXItcmFkaXVzOiByZW0oOCk7XG5cdH1cbn1cblxuLyogLS0tLS0gU2VjdGlvbiBQYWRkaW5nIC0tLS0gKiovXG5cbiVzZWN0aW9uLXBhZGRpbmcsXG4uc2VjdGlvbi1wYWRkaW5nIHtcblx0cGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctMSk7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLTEpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHhsKSB7XG5cdFx0cGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctMik7XG5cdFx0cGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctMik7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50LW1pbih4eGwpIHtcblx0XHRwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy0zKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy0zKTtcblx0fVxuXG5cdCYtLXRvcCB7XG5cdFx0cGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctMSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbih4bCkge1xuXHRcdFx0cGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctMik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeHhsKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy0zKTtcblx0XHR9XG5cdH1cblxuXHQmLS1ib3R0b20ge1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLTEpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeGwpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLTIpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHh4bCkge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctMyk7XG5cdFx0fVxuXHR9XG59XG4vKiAtLS0tLSBEcm9wIFNoYWRvdyAtLS0tICoqL1xuJWRlcHRoLFxuLmRlcHRoIHtcblx0Ji0tMSB7XG5cdFx0Ym94LXNoYWRvdzogJGRlcHRoLTE7XG5cdH1cbn1cblxuLyogLS0tLS0gVGV4dCBQaWxsIC0tLS0gKiovXG4udGV4dC1waWxsIHtcblx0Y29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1wcmltYXJ5KTtcblx0YmFja2dyb3VuZDogcmdiYSgkY29sb3I6ICR0aGVtZS1wcmltYXJ5LCAkYWxwaGE6IDAuMDgpO1xuXHRwYWRkaW5nOiByZW0oNikgcmVtKDE1KTtcblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRib3JkZXItcmFkaXVzOiAxMDBweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Ji0tbGlnaHQge1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdH1cblx0Ji0tYm9yZGVyIHtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdCYudGV4dC1waWxsLS1ib3JkZXJ7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdH1cblx0fVxufVxuXG4vKiAtLS0tLSB0cmFuc2l0aW9uIC0tLS0gKiovXG4ldHJhbi0tZGVmYXVsdCxcbi50cmFuLS1kZWZhdWx0IHtcblx0dHJhbnNpdGlvbjogMC4zcztcbn1cbi8qIC0tLS0tIExvYWRlciAtLS0tICoqL1xuLnNwaW4tbG9hZGVyIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxLjFlbTtcblx0aGVpZ2h0OiAxLjFlbTtcblx0bGluZS1oZWlnaHQ6IDFlbTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0I3skbGVmdH06IDUwJTtcblx0bWFyZ2luLXRvcDogLTAuNWVtO1xuXHRtYXJnaW4tI3skbGVmdH06IC0wLjVlbTtcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci10b3AtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0Ym9yZGVyLSN7JGxlZnR9LWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cdGFuaW1hdGlvbjogbG9hZGVyc3Bpbm5lciAwLjRzIGxpbmVhciBpbmZpbml0ZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHotaW5kZXg6IC0xO1xufVxuXG5Aa2V5ZnJhbWVzIGxvYWRlcnNwaW5uZXIge1xuXHRmcm9tIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcblx0fVxufSIsImgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtcmVndWxhcik7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1ib2R5O1xuXHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRmb250LXdlaWdodDogNjAwO1xufVxuLyogLS0tLS0gZm9udCBTZXR0aW5nIChzaXplICYgbGluZSBoZWlnaHQsIHNwYWNpbmcgZXRjKSAtLS0tICoqL1xuaDEsXG4uZm9udC0taDEsXG4lZm9udC0taDEge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XG5cdGxldHRlci1zcGFjaW5nOiByZW0oLTEuNSk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeGwpIHtcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgxKTtcblx0XHRsZXR0ZXItc3BhY2luZzogcmVtKC0zKTtcblx0fVxufVxuaDIsXG4uZm9udC0taDIsXG4lZm9udC0taDIge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG5cdGxldHRlci1zcGFjaW5nOiByZW0oLTAuMDMpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHhsKSB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xuXHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMik7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgtMS41KTtcblx0fVxufVxuaDMsXG4uZm9udC0taDMsXG4lZm9udC0taDMge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG5cdGxldHRlci1zcGFjaW5nOiByZW0oLTAuMDMpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHhsKSB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuXHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgtMS41KTtcblx0fVxufVxuaDQsXG4uZm9udC0taDQsXG4lZm9udC0taDQge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG5cdGxldHRlci1zcGFjaW5nOiAwO1xufVxuXG5oNSxcbi5mb250LS1oNSxcbiVmb250LS1oNSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg1KTtcblx0bGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbmg2LFxuLmZvbnQtLWg2LFxuJWZvbnQtLWg2IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpO1xuXHRsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xuXHRsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLnAsXG5wIHtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuLmZvbnQtLTIxIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMjEpO1xufVxuLmZvbnQtLTE2IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xufVxuLmZvbnQtLTE0IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1dHRvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqKi9cblxuLyogLS0tLS0gQnV0dG9uIEdlbmVyYWwgU3R5bGluZyAtLS0tICoqL1xuLmJ0biB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHR0ZXh0LWFsaWduOiBpbml0aWFsO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRib3JkZXItcmFkaXVzOiByZW0oOCk7XG5cdHRyYW5zaXRpb246IDAuM3M7XG5cdHBhZGRpbmctcmlnaHQ6IHJlbSgzMCk7XG5cdHBhZGRpbmctbGVmdDogcmVtKDMwKTtcblx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8qIC0tLS0tIEJ1dHRvbiBDb2xvciAtLS0tICoqL1xuLmJ0biB7XG5cdCYtLXByaW1hcnkge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRcdGJveC1zaGFkb3c6ICRkZXB0aC0xO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWJ0bi1ob3Zlci0tcHJpbWFyeSk7XG5cdFx0fVxuXHR9XG5cdCYtLXNlY29uZGFyeSB7XG5cdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1zZWNvbmRhcnkpO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHR9XG5cdH1cblx0Ji0tbGlnaHQge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHR9XG5cdCYtLWdyYXkge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA1KTtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDYpO1xuXHRcdCYuYnRuLS1pY29uIHtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGZpbHRlcjogYnJpZ2h0bmVzcygxMCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS1kYXJrIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRcdH1cblx0fVxuXHQmLS1vdXRsaW5lIHtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAjYzljY2NlO1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1wcmltYXJ5KTtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSkgIWltcG9ydGFudDtcblx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSk7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRmaWx0ZXI6IGludmVydCgxKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLS1kYXJrIHtcblx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdH1cblx0fVxuXHQmLS1yb3VuZGVkIHtcblx0XHRib3JkZXItcmFkaXVzOiByZW0oMTAwKTtcblx0fVxuXHQmLS1pY29uIHtcblx0XHRnYXA6IHJlbSgxMCk7XG5cdFx0aW1nIHtcblx0XHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0fVxuXHR9XG5cdCZbZGlzYWJsZWRdIHtcblx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yOiAkbmV1dHJhbC0tMDQsICRhbW91bnQ6IDMwKTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3I6ICRuZXV0cmFsLS0wNCwgJGFtb3VudDogMzApO1xuXHRcdH1cblx0fVxufVxuXG4vKiAtLS0tLSBCdXR0b24gU2l6ZSAtLS0tICoqL1xuLmJ0biB7XG5cdCYtLXNtIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMTgpO1xuXHRcdHBhZGRpbmctbGVmdDogcmVtKDE4KTtcblxuXHRcdG1pbi1oZWlnaHQ6IHJlbSg0OCk7XG5cdH1cblx0Ji0tbWQge1xuXHRcdG1pbi1oZWlnaHQ6IHJlbSg1Nik7XG5cdH1cblx0Ji0tbGcge1xuXHRcdG1pbi1oZWlnaHQ6IHJlbSg1Nik7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdG1pbi1oZWlnaHQ6IHJlbSg2NCk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIC0tLS0tIEJ1dHRvbiBHcm91cCAtLS0tICoqL1xuLmJ1dHRvbi1ncm91cCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogcmVtKDEwKTtcblx0Ji0tdmVydGljYWwge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdH1cbn1cbiIsIi5zZWN0aW9uLXRpdGxle1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg2MCk7XG4gICAgbWF4LXdpZHRoOiByZW0oODAwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZyl7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4MCk7XG4gICAgfVxuICAgIGgye1xuICAgICAgICBjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufSIsIi5mb3JtLWxhYmVsIHtcblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oOCk7XG5cdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uZm9ybS1jb250cm9sIHtcblx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHRwYWRkaW5nOiAxcmVtO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcblx0Jjpmb2N1cyB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZGFyayk7XG5cdH1cbn1cbi5mb3JtLXNlbGVjdCB7XG5cdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0cGFkZGluZzogcmVtKDEwKSByZW0oMTQpO1xuXHRmb250LXNpemU6IHJlbSgxNSk7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcblx0Jjpmb2N1cyB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAjYzZjNWM5O1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdH1cbn1cbi5mb3JtIHtcblx0LmlucHV0LWdyb3VwIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTgpO1xuXHR9XG5cdC5idG4ge1xuXHRcdG1hcmdpbi10b3A6IHJlbSgxMCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI1KTtcblx0fVxuXHQubGFiZWwtZ3JvdXAge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGEge1xuXHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHR9XG5cdH1cbn1cbi5hY2NvdW50LWZvcm0ge1xuXHQub3RoZXItYXBwcm9hY2gge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdH1cbn1cbiIsIi5zaWRlYmFyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRwYWRkaW5nLWJvdHRvbTogMDtcblx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRvdmVyZmxvdzogYXV0bztcblx0bWF4LWhlaWdodDogODd2aDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAZXh0ZW5kICVkZXB0aC0tMTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0XHRtYXgtaGVpZ2h0OiAxMDB2aDtcblx0fVxuXG5cdCYuc2VsZWN0LS1vZmZzZXQtb24ge1xuXHRcdG92ZXJmbG93OiBpbmhlcml0O1xuXHR9XG5cdC5zZWxlY3Qtd3JhcHBlciB7XG5cdFx0cGFkZGluZzogMCByZW0oMjApO1xuXG5cdFx0LnNpbmdsZS1zZWxlY3Qge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0fVxuXHRcdC50aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNCk7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSg3KTtcblx0XHR9XG5cdFx0LnNzLW9wZW4tYmVsb3cge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXHRcdH1cblx0XHQuc3Mtb3Blbi1hYm92ZSB7XG5cdFx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuXHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG5cdFx0fVxuXHR9XG5cblx0LmdlbmVyYXRlLWJ0biB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRwb3NpdGlvbjogc3RpY2t5O1xuXHRcdGJvdHRvbTogMDtcblx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuXHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuXHR9XG5cdC5idG4tZGlzbWlzcyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQuc3MtbWFpbiAuc3MtdmFsdWVzIC5zcy12YWx1ZSB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeSk7XG5cdFx0cGFkZGluZy10b3A6IHJlbSgzKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDMpO1xuXHRcdC5zcy12YWx1ZS10ZXh0IHtcblx0XHRcdC8vIGZvbnQtc2l6ZTogcmVtKDEyKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0fVxuXHR9XG59XG5cbi5zcy1jb250ZW50IHtcblx0Ym9yZGVyLXJhZGl1czogcmVtKDgpICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNjNmM1Yzk7XG5cdHBhZGRpbmc6IHJlbSg0KTtcblx0Ji5zcy1vcGVuLWJlbG93IHtcblx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcblx0fVxuXHQmLnNzLW9wZW4tYWJvdmUge1xuXHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnNzLWxpc3Qge1xuXHRcdC5zcy1vcHRpb24ge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTUpO1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRwYWRkaW5nOiByZW0oOCk7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0XHR9XG5cblx0XHRcdCYuc3Mtc2VsZWN0ZWQge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0oMTIpIHJlbSgxMCk7XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Ji5zcy1oaWdobGlnaHRlZCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA1KTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdH1cblxuXHRcdFx0Jjpub3QoLnNzLWRpc2FibGVkKS5zcy1zZWxlY3RlZCB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHQuc2lkZWJhciB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdCN7JHJpZ2h0fTogMDtcblx0XHR6LWluZGV4OiA5OTk5O1xuXHRcdHBhZGRpbmctdG9wOiByZW0oMzgpO1xuXHRcdCYtLW9wZW4ge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0fVxuXHRcdC5idG4tZGlzbWlzcyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQjeyRyaWdodH06IHJlbSgyMCk7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRwYWRkaW5nOiByZW0oNik7XG5cdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cbn1cblxuLnNlbGVjdC1kcm9wZG93biB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdH1cblx0LmZvcm0tc2VsZWN0IHtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDgpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHR9XG5cdC5hcnJvdyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0ZmxleDogMCAxIGF1dG87XG5cdFx0d2lkdGg6IDEwLjdweDtcblx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0bWFyZ2luOiBhdXRvIDVweCBhdXRvIDVweDtcblx0XHR0cmFuc2l0aW9uOiAwLjJzO1xuXG5cdFx0cGF0aCB7XG5cdFx0XHRmaWxsOiBub25lO1xuXHRcdFx0c3Ryb2tlOiAjNGQ0ZDRkO1xuXHRcdFx0c3Ryb2tlLXdpZHRoOiAxODtcblx0XHRcdHN0cm9rZS1saW5lY2FwOiByb3VuZDtcblx0XHRcdHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG5cdFx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjJzO1xuXHRcdH1cblx0fVxufVxuXG4vLyAuZGVjb3ItZHJvcGRvd24ge1xuLy8gXHR1bCBsaSB7XG4vLyBcdFx0bGlzdC1zdHlsZTogbm9uZTtcbi8vIFx0XHRtYXJnaW46IDA7XG4vLyBcdFx0cGFkZGluZzogMDtcbi8vIFx0fVxuLy8gXHR1bHtcbi8vIFx0XHRkaXNwbGF5OiBmbGV4O1xuLy8gXHRcdC8vIGZsZXgtd3JhcDogd3JhcDtcbi8vIFx0XHQvLyBmbGV4LWRpcmVjdGlvbjogcm93O1xuLy8gXHRcdGxpe1xuLy8gXHRcdFx0ZmxleDogMCAwIDUwJTtcbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cblxuLmRlY29yLWRyb3Bkb3duIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdHotaW5kZXg6IDE7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogc2NhbGUoMC45NSk7IC8qIFN0YXJ0IHdpdGggc2xpZ2h0bHkgc2NhbGVkIGRvd24gKi9cblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4zcyBlYXNlOyAvKiBBZGQgdHJhbnNpdGlvbiBmb3Igb3BhY2l0eSBhbmQgc2NhbGUgKi9cblx0cGFkZGluZzogcmVtKDE2KTtcblx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHR6LWluZGV4OiA5OTk5OTtcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0bWF4LXdpZHRoOiA0NzhweDtcblx0XHRtYXJnaW4tbGVmdDogM3B4O1xuXHR9XG5cdHVsIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRnYXA6IHJlbSgyMCkgcmVtKDE2KTtcblx0fVxuXHRsaSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRmbGV4OiAwIDAgY2FsYyg1MCUgLSByZW0oOCkpO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRhIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGltZyB7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcztcblx0XHRcdH1cblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiByZW0oMTApO1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6aG92ZXIsXG5cdFx0Ji5hY3RpdmUge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4vLyAgICAgLyogU3R5bGVzIGZvciBzbWFsbCBzY3JlZW5zICovXG4vLyAgICAgLmRlY29yLWRyb3Bkb3duIHtcbi8vIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyBcdFx0Lyogb3RoZXIgc3R5bGVzICovXG4vLyBcdFx0bWF4LXdpZHRoOiAxMDB2dzsgLyogU2V0IG1heC13aWR0aCB0byB2aWV3cG9ydCB3aWR0aCAqL1xuLy8gXHRcdH1cbi8vIH1cbiIsIi5pbm5lci10aXRsZS1iYXIge1xuXHRtYXJnaW46IHJlbSgxMDUpIDAgcmVtKDUwKTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHRtYXJnaW46IHJlbSgxNTApIDAgcmVtKDgwKTtcblx0fVxuXHQuaW5uZXItdGl0bGUtYmFyLWNvbnRlbnR7XG5cdFx0bWF4LXdpZHRoOiByZW0oODUwKTtcblx0XHRtYXJnaW46IDAgYXV0bztcblxuXHR9XG5cdC5kZXNjcmlwdGlvbntcblx0XHRtYXgtd2lkdGg6IHJlbSg3MDApO1xuXHRcdG1hcmdpbjogcmVtKDE1KSBhdXRvIDA7XG5cblx0fVxufVxuIiwiLnBhZ2luYXRpb24ge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdC5wYWdlLWl0ZW0ge1xuXHRcdG1hcmdpbjogcmVtKDMpO1xuXHRcdC5wYWdlLWxpbmsge1xuXHRcdFx0aGVpZ2h0OiByZW0oMzYpO1xuXHRcdFx0d2lkdGg6IHJlbSgzNik7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSgzKTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Lmljb24ge1xuXHRcdFx0XHRoZWlnaHQ6IHJlbSgxNCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6bm90KC5kaXNhYmxlZCkgLnBhZ2UtbGluazpob3Zlcixcblx0XHQmLmFjdGl2ZSAucGFnZS1saW5rIHtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTAzKTtcblx0XHR9XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHQucGFnZS1saW5rIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL2Fycm93LSN7JGxlZnR9LTIuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdC5wYWdlLWxpbmsge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vYXJyb3ctI3skcmlnaHR9LTIuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5uYXZiYXIge1xuXHRAaW5jbHVkZSBicmVha3BvaW50LW1heChsZykge1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHR9XG5cdC5uYXZiYXItYnJhbmQge1xuXHRcdGltZyB7XG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcblx0XHRcdFx0d2lkdGg6IDE2MHB4O1xuXHRcdFx0fVxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDU1MHB4KSB7XG5cdFx0XHRcdHdpZHRoOiAxMzBweDtcblx0XHRcdH1cblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuXHRcdFx0XHR3aWR0aDogOTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Lm5hdi1saW5rIHtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdCY6aG92ZXIsXG5cdFx0Ji5hY3RpdmUge1xuXHRcdFx0Y29sb3I6IHJnYmEoIzA4MGUxMywgMC42KTtcblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHQubmF2YmFyLW5hdiB7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdH1cblx0fVxuXHQuYnRuLXNtLWRldmljZSxcblx0Lm5hdmJhci10b2dnbGVyIHtcblx0XHRtaW4taGVpZ2h0OiByZW0oNDIpO1xuXHR9XG5cdC5uYXZiYXItdG9nZ2xlciB7XG5cdFx0Ym9yZGVyLXdpZHRoOiAycHg7XG5cdH1cbn1cbi5maXhlZC10b3Age1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXM7XG59XG4vLyBMb2dvIFN0eWxlXG4ubmF2YmFyLWJyYW5kLWxpZ2h0IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5wYWdlLWxhbmRpbmcge1xuXHQubmF2YmFyIHtcblx0XHQubmF2YmFyLWJyYW5kLWxpZ2h0IHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdFx0Lm5hdmJhci1icmFuZC1kYXJrIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdC5vZmZjYW52YXMge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0fVxuXG5cdC5uYXZiYXItdG9nZ2xlciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAjNDQ0O1xuXHR9XG5cdC5uYXZiYXItdG9nZ2xlci1pY29uLFxuXHQuYnRuLWNsb3NlIHtcblx0XHRmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKTtcblx0fVxufVxuLy8gSG9tZSBQYWdlIG5hdmJhciBzdHlsZVxuLnBhZ2UtbGFuZGluZyB7XG5cdC5uYXZiYXIge1xuXHRcdC5uYXYtbGluayxcblx0XHQuYnRuIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0fVxuXHR9XG59XG4uc2Nyb2xsZWQge1xuXHQucGFnZS1sYW5kaW5nIHtcblx0XHQubmF2YmFyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGFyayk7XG5cdFx0fVxuXHR9XG59XG4uc2Nyb2xsZWQge1xuXHQubmF2YmFyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdH1cbn1cblxuLyogLS0tLS0gTmF2aWdhdGlvbiBCb3R0b20tLS0tICoqL1xuQGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0Lm5hdmJhci1ib3R0b20ge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR6LWluZGV4OiA5OTtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGhlaWdodDogNTclO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHRib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0XHR9XG5cdFx0Lm5hdmJhci1uYXYge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGdhcDogcmVtKDE1KTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0oNyk7XG5cdFx0XHQubmF2LWxpbmsge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5uYXYtaXRlbSB7XG5cdFx0XHQuZ2FsbGVyeS1pY29uLFxuXHRcdFx0LnByaWNpbmctaWNvbiB7XG5cdFx0XHRcdG1hcmdpbi0jeyRyaWdodH06IHJlbSg2KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdH1cblx0XHQubmF2LWN0YSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeSk7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0aGVpZ2h0OiByZW0oOTIpO1xuXHRcdFx0d2lkdGg6IHJlbSg5Mik7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwcHggcmVtKDcpIHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdCN7JGxlZnR9OiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRib3gtc2hhZG93OiAwIDAgMHB4IHJlbSg3KSB2YXIoLS1uZXV0cmFsLS0wMSksXG5cdFx0XHRcdFx0MCAwIDBweCByZW0oOSkgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTAwcHg7XG5cdFx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdFx0fVxuXHRcdFx0LmdlbmVyYXRlLWljb24ge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oNSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5AaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHQubmF2YmFyLWJvdHRvbSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi8vIFRvcGJhclxuLmhhcy10b3AtYmFye1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nLXRvcDogMDtcblx0LnRvcC1iYXJ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeS1saWdodCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBhZGRpbmc6IDVweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdHB7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHR9XG5cdH1cbn1cbiIsIi8qIC0tLS0tIEhlcm8gLS0tLSAqKi9cbi5oZXJvIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXRvcDogcmVtKDEyMCk7XG5cdHBhZGRpbmctYm90dG9tOiByZW0oMTAwKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZDogdmFyKC0tbmV1dHJhbC0tMDgpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZykge1xuXHRcdHBhZGRpbmctdG9wOiByZW0oMTcwKTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDExNSk7XG5cdH1cblx0LmVsbGlwc2Uge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaGVyby1pbWFnZS53ZWJwKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0Ym90dG9tOiAtNHB4O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcblx0fVxuXG5cdC50aXRsZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChzbSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMzApO1xuXHRcdH1cblx0fVxuXHQuaGVyby1idG4ge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cdH1cblxuXHQmLWNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg2MCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSg5MCk7XG5cdFx0fVxuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA1KTtcblx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHR9XG5cdH1cblx0Ly8gVHlwZXdyaXRlclxuXHQudHlwZVdyaXRlciB7XG5cdFx0Ym9yZGVyLSN7JHJpZ2h0fTogMC4xZW0gc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0YW5pbWF0aW9uOiBub25lO1xuXHR9XG5cdC5jdXJzb3ItYW5pbWF0aW9uIHtcblx0XHRhbmltYXRpb246IGJsaW5rIDEuNXMgc3RlcC1lbmQgaW5maW5pdGU7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0fVxuXG5cdEBrZXlmcmFtZXMgYmxpbmsge1xuXHRcdGZyb20sXG5cdFx0dG8ge1xuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQ1MCUge1xuXHRcdFx0Y29sb3I6IGJsYWNrO1xuXHRcdH1cblx0fVxuXHQvLyBTbGlkZXJcblx0Lmhlcm8taW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAyO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGJveC1zaGFkb3c6IDBweCA0NHB4IDc0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG5cdFx0cGFkZGluZzogcmVtKDgpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxNik7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0cGFkZGluZzogcmVtKDE1KTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSgyNCk7XG5cdFx0fVxuXHRcdC5pbWFnZS13cmFwcGVyIHtcblx0XHRcdGdhcDogcmVtKDgpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRcdGdhcDogcmVtKDE1KTtcblx0XHRcdH1cblx0XHRcdC5zaW5nbGUtaW1hZ2Uge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxMCk7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxNik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdFx0Ym90dG9tOiByZW0oOCk7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDhweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG5cdFx0XHRcdFx0YmFja2Ryb3AtZmlsdGVyOiBibHVyKDMuNXB4KTtcblx0XHRcdFx0XHRwYWRkaW5nOiA4cHggMTZweDtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0XHRcdHdpZHRoOiBmaXQtY29udGVudDtcblx0XHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KG1kKSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMTBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdFx0XHRcdGJvdHRvbTogcmVtKDE2KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LnN3aXBlciB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiByZW0oMTApO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDE2KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnN3aXBlci1ub3RpZmljYXRpb24ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQvLyBuYXZpZ2F0aW9uc1xuXHRcdC5zd2lwZXItbmF2aWdhdGlvbnMge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiBjYWxjKDUwJSArIDEwcHgpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0LnN3aXBlci1uYXZpZ2F0aW9uIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGhlaWdodDogcmVtKDQ4KTtcblx0XHRcdHdpZHRoOiByZW0oNDgpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTAwcHg7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tbmV1dHJhbC0tMDUpO1xuXHRcdFx0QGV4dGVuZCAldHJhbi0tZGVmYXVsdDtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KHNtKSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRcdEBleHRlbmQgJXRyYW4tLWRlZmF1bHQ7XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNik7XG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcblx0XHRcdHJpZ2h0OiByZW0oMjQpO1xuXHRcdH1cblx0XHQuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcblx0XHRcdGxlZnQ6IHJlbSgyNCk7XG5cdFx0fVxuXHRcdC8vIHBhZ2luYXRpb25cblx0XHQuc3dpcGVyLXBhZ2luYXRpb24ge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiAtMzBweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGdhcDogcmVtKDUpO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuXHRcdFx0XHRoZWlnaHQ6IHJlbSgxMik7XG5cdFx0XHRcdHdpZHRoOiByZW0oMTIpO1xuXHRcdFx0XHRvcGFjaXR5OiAwLjE1O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLW5ldXRyYWwtLTA2KTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMTAwcHg7XG5cdFx0XHRcdEBleHRlbmQgJXRyYW4tLWRlZmF1bHQ7XG5cdFx0XHRcdCYtYWN0aXZlIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjY7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLyogLS0tLS0gUHJvY2Nlc3MgLS0tLSAqKi9cbi5wcm9jZXNzIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0XHRtYXJnaW4tdG9wOiAtMzBweDtcblx0fVxuXHQucHJvY2Vzcy13cmFwcGVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMTtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGdhcDogcmVtKDMwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChsZykge1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGdhcDogcmVtKDIwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbih4eGwpIHtcblx0XHRcdGdhcDogcmVtKDUwKTtcblx0XHR9XG5cdFx0LnNpbmdsZS1pdGVtIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Z2FwOiByZW0oMTYpO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobGcpIHtcblx0XHRcdFx0ZmxleDogMCAwIGNhbGMoNTAlIC0gcmVtKDYyKSk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiAzNTBweDtcblx0XHRcdH1cblxuXHRcdFx0Ly8gd2lkdGg6IDMxNXB4O1xuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xuXHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDgpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYXJyb3ctaWNvbiB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4vKiAtLS0tLSBGZWF0dXJlcyBTZXQgT25lIC0tLS0gKiovXG4uZmVhdHVyZXMtc2V0LW9uZSB7XG5cdC5mZWF0dXJlcy1pdGVtcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdHJvdy1nYXA6IHJlbSg1MCk7XG5cdFx0Y29sdW1uLWdhcDogcmVtKDYwKTtcblx0fVxuXHQuc2luZ2xlLWl0ZW0ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0Z2FwOiByZW0oMzApO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRmbGV4OiBjYWxjKDUwJSAtIHJlbSg2MCkpO1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDEyKTtcblx0XHRcdEBleHRlbmQgJWZvbnQtLWg2O1xuXHRcdH1cblx0fVxufVxuXG4vKiAtLS0tLSBGZWF0dXJlcyBTZXQgVHdvIC0tLS0gKiovXG4uZmVhdHVyZXMtc2V0LXR3byB7XG5cdC50ZXh0LXBpbGwge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgzMCk7XG5cdH1cblx0LnRpdGxlIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjUpO1xuXHR9XG5cdHAge1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdH1cblx0LndyYXBwZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHQvLyBjb2x1bW4tZ2FwOiByZW0oMTMwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0Y29sdW1uLWdhcDogcmVtKDMwKTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHRcdGNvbHVtbi1nYXA6IHJlbSgzMCk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHh4bCkge1xuXHRcdFx0Y29sdW1uLWdhcDogcmVtKDEwMCk7XG5cdFx0fVxuXHR9XG5cdC5pbWFnZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcblx0fVxuXHQuY29udGVudCB7XG5cdFx0ZmxleDogMCAwIDQ4JTtcblx0XHRwIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKHh4bCkge1xuXHRcdFx0XHRwYWRkaW5nLSN7JHJpZ2h0fTogcmVtKDgwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ly8gTXVsdGlwbGUgU2x5bGUgQXJlYVxuXHQubXVsdGlwbGUtc3R5bGVzIHtcblx0XHQud3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5jb250ZW50IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KG1kKSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiByZW0oMzApO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubWFycXVlZS1zbGlkZXIge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDQ1JTtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHdpZHRoOiA0MCU7XG5cdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHR9XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdCN7JGxlZnR9OiAwO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG5cdFx0XHRcdFx0dG8gI3skcmlnaHR9LFxuXHRcdFx0XHRcdCNmZmZmZmYgMCUsXG5cdFx0XHRcdFx0I2ZmZjAgMTAwJVxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdCN7JHJpZ2h0fTogMDtcblx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0XHRcdHRvICN7JGxlZnR9LFxuXHRcdFx0XHRcdCNmZmZmZmYgMCUsXG5cdFx0XHRcdFx0I2ZmZjAgMTAwJVxuXHRcdFx0XHQpO1xuXHRcdFx0fVxuXHRcdFx0LnRleHQtcGlsbCB7XG5cdFx0XHRcdG1hcmdpbjogcmVtKDgpIHJlbSg1KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi8qIC0tLS0tIEZlYXR1cmVzIFNldCBUd28gLS0tLSAqKi9cbi51c2UtY2FzZXMge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMik7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC5zZWN0aW9uLXRpdGxlIHtcblx0XHRoMiB7XG5cdFx0XHR0ZXh0LWFsaWduOiAjeyRsZWZ0fTtcblx0XHR9XG5cdH1cblx0LnVzZS1jYXNlcy1jYXJkIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRcdHBhZGRpbmc6IHJlbSgyNSk7XG5cdFx0aW1nIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgzNSk7XG5cdFx0fVxuXHRcdC50aXRsZSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oOCk7XG5cdFx0XHRAZXh0ZW5kICVmb250LS1oNjtcblx0XHR9XG5cdH1cblx0LnN3aXBlciB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeHhsKSB7XG5cdFx0XHRtYXJnaW4tI3skcmlnaHR9OiAtMTAwJTtcblx0XHR9XG5cdH1cbn1cbi8qIC0tLS0tIEhvdyBpdCB3b3JrcyAtLS0tICoqL1xuXG4uaG93LWl0LXdvcmtzIHtcblx0YmFja2dyb3VuZDogdmFyKC0tbmV1dHJhbC0tMDIpO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2Zsb29yLWltZy5wbmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHQuY2FyZC13cmFwcGVyIHtcblx0XHRyb3ctZ2FwOiAxLjVyZW07XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDYwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZykge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDg1KTtcblx0XHR9XG5cdH1cblx0LmNhcmQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHRcdGJvcmRlci1yYWRpdXM6IDhweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHQuc2luZ2xlLWltYWdlIHtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiByZW0oMTUpO1xuXHRcdFx0XHR3b3JkLXdyYXA6IG5vcm1hbDtcblx0XHRcdFx0I3tyaWdodH06IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbSgzKSByZW0oOCk7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDVweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuY2FyZC10aXRsZSB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdHBhZGRpbmc6IDAuOHJlbTtcblx0XHR9XG5cdH1cblx0LmN0YSB7XG5cdFx0LnRpdGxlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgyNSk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIC0tLS0tIEhlcm8gLS0tLSAqKi9cbi8vIC5oZXJvIHtcblxuLy8gXHQvLyBTbGlkZXJcbi8vIFx0Lmhlcm8taW1hZ2Uge1xuLy8gXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIFx0XHR6LWluZGV4OiAyO1xuLy8gXHRcdC8vIGRpc3BsYXk6IGZsZXg7XG4vLyBcdFx0Ly8gYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vIFx0XHQuaW1hZ2Utd3JhcHBlciB7XG4vLyBcdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcbi8vIFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG4vLyBcdFx0XHRib3JkZXItcmFkaXVzOiByZW0oMTYpO1xuLy8gXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4vLyBcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG4vLyBcdFx0XHRtYXJnaW46IDAgYXV0bztcbi8vIFx0XHRcdHBhZGRpbmc6IHJlbSg4KTtcbi8vIFx0XHRcdGdhcDogcmVtKDgpO1xuLy8gXHRcdFx0Ym94LXNoYWRvdzogMHB4IDQ0cHggNzRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA5KTtcbi8vIFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG4vLyBcdFx0XHRcdHBhZGRpbmc6IHJlbSgxNSk7XG4vLyBcdFx0XHRcdGdhcDogcmVtKDE1KTtcbi8vIFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDI0KTtcbi8vIFx0XHRcdH1cbi8vIFx0XHRcdC5zaW5nbGUtaW1hZ2Uge1xuLy8gXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyBcdFx0XHRcdGltZyB7XG4vLyBcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDEwKTtcbi8vIFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuLy8gXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDE2KTtcbi8vIFx0XHRcdFx0XHR9XG4vLyBcdFx0XHRcdH1cbi8vIFx0XHRcdFx0c3BhbiB7XG4vLyBcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuLy8gXHRcdFx0XHRcdGxlZnQ6IDUwJTtcbi8vIFx0XHRcdFx0XHRib3R0b206IHJlbSg4KTtcbi8vIFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4vLyBcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuLy8gXHRcdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbi8vIFx0XHRcdFx0XHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMy41cHgpO1xuLy8gXHRcdFx0XHRcdHBhZGRpbmc6IDhweCAxNnB4O1xuLy8gXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG4vLyBcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcbi8vIFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuLy8gXHRcdFx0XHRcdHRleHQtd3JhcDogbm93cmFwO1xuLy8gXHRcdFx0XHRcdHotaW5kZXg6IDI7XG4vLyBcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcbi8vIFx0XHRcdFx0XHRcdHdpZHRoOiA5MCU7XG4vLyBcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG4vLyBcdFx0XHRcdFx0XHRib3R0b206IHJlbSgxNik7XG4vLyBcdFx0XHRcdFx0fVxuLy8gXHRcdFx0XHR9XG4vLyBcdFx0XHR9XG4vLyBcdFx0fVxuLy8gXHR9XG4vLyB9XG4iLCIuc2VjdGlvbi1nYWxsZXJ5IHtcblx0LnNpbmdsZS1nYWxsZXJ5LWl0ZW0ge1xuXHRcdC8vIGRpc3BsYXk6IGZsZXg7XG5cdFx0Ly8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWFnZS13cmFwcGVyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXHRcdC5zaW5nbGUtaW1hZ2Uge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHRcdC5pbWFnZS10eXBlIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0Ym9yZGVyOiAwLjI1cmVtIHNvbGlkIHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdH1cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGJvcmRlci0jeyRyaWdodH06IHJlbSgyKSBzb2xpZCB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC0jeyRsZWZ0fS1yYWRpdXM6IDFyZW07XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS0jeyRsZWZ0fS1yYWRpdXM6IDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0Ym9yZGVyLSN7JGxlZnR9OiByZW0oMikgc29saWQgdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0XHRcdGJvcmRlci10b3AtI3skcmlnaHR9LXJhZGl1czogMXJlbTtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tLSN7JHJpZ2h0fS1yYWRpdXM6IDFyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlLXR5cGUtdGl0bGUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiByZW0oOCk7XG5cdFx0XHQjeyRyaWdodH06IHJlbSg4KTtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoOCwgMTQsIDE5LCAwLjc1KTtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiByZW0oNSk7XG5cdFx0XHRwYWRkaW5nOiByZW0oNSkgcmVtKDgpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXHRcdH1cblx0fVxuXHQucGFnZS1uYXZpZ2F0aW9uIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg1MCk7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDMwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZykge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtKDYwKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxMDUpO1xuXHRcdH1cblx0XHQucGFnaW5hdGlvbiB7XG5cdFx0XHQucGFnZS1pdGVtIHtcblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YSwgc3BhbiB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YSwgc3BhbiB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIuc2VjdGlvbi1wcmljaW5nIHtcblx0cGFkZGluZy1ib3R0b206IHJlbSg1MCk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKGxnKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSg3MCk7XG5cdH1cblx0Ly8gUGxhbiBPcHRpb25zXG5cdC5wbGFuLW9wdGlvbnMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxMik7XG5cdFx0cGFkZGluZzogcmVtKDUpO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cdFx0LmJ0biB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTUpO1xuXHRcdFx0cGFkZGluZzogcmVtKDEzKSByZW0oMjYpO1xuXHRcdFx0bWFyZ2luOiAzcHg7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtc2Vjb25kYXJ5KTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdFx0LmRpc2NvdW50LXRleHQge1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmRpc2NvdW50LXRleHQge1xuXHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLXNlY29uZGFyeSk7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdFx0bWFyZ2luLSN7JGxlZnR9OiByZW0oNCk7XG5cdFx0fVxuXHRcdC5idG4tLWFjdGl2ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1zZWNvbmRhcnkpO1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdHBhZGRpbmc6IHJlbSgxMykgcmVtKDI2KTtcblx0XHRcdC5kaXNjb3VudC10ZXh0IHtcblx0XHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ly8gUHJpY2luZyBDYXJkXG5cdC5wbGFuLW9wdGlvbnMtY2FyZCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRnYXA6IHJlbSgzMCk7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG5cdC5wcmljaW5nLWNhcmQge1xuXHRcdHBhZGRpbmc6IHJlbSgzMCkgMDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMyk7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDEwKTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXHQucHJpY2luZy1jYXJkLWhlYWRlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0cGFkZGluZzogcmVtKDEyKSAwIHJlbSgzMCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcblx0XHQucGxhbi1uYW1lIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE1KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdH1cblx0XHQuYW1vdW50IHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDQwKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdH1cblx0XHQucGxhbi1kaXNjb3VudCB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeSk7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxMyk7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IHJlbSg0NSk7XG5cdFx0XHQjeyRyaWdodH06IHJlbSg0NSk7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdH1cblx0XHQub3B0aW9uLW5hbWUge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMjEpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogLTJweDtcblx0XHR9XG5cdH1cblx0LnByaWNpbmctY2FyZC1ib2R5IHtcblx0XHRwYWRkaW5nOiAwIHJlbSgzMCk7XG5cdFx0LmJ0biB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0oMTUpO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG5cdC5wbGFuLWZlYXR1cmVzIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bGkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE1KTtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0XHQuaWNvbiB7XG5cdFx0XHRcdG1hcmdpbi0jeyRyaWdodH06IHJlbSgxMik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4vLyBQZWljaW5nIE1vZGFsXG4ubW9kYWwtcHJpY2luZyB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KG1kKSB7XG5cdFx0LnByaWNpbmctY2FyZCB7XG5cdFx0XHRwYWRkaW5nOiByZW0oMjApIDA7XG5cdFx0fVxuXHRcdC5wcmljaW5nLWNhcmQtaGVhZGVyIHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSgxMCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXHRcdH1cblx0XHQucGxhbi1mZWF0dXJlcyB7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wcmljaW5nLWNhcmQtYm9keSB7XG5cdFx0XHQuYnRuIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtKDEwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubW9kYWwtaGVhZGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRtYXJnaW46IHJlbSgxNSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0bWFyZ2luOiByZW0oMjApIHJlbSgzMCk7XG5cdFx0fVxuXG5cdFx0LmJ0bi1jbG9zZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHQjeyRyaWdodH06IDA7XG5cdFx0XHRvcGFjaXR5OiAwLjc7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdH1cblx0XHQubW9kYWwtdGl0bGUge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDIyKTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0bWF4LXdpZHRoOiA2MDBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oc20pIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMzApO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oNDYpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubW9kYWwtY29udGVudCB7XG5cdFx0YmFja2dyb3VuZDogcmdiKDI1NSAyNTUgMjU1IC8gMTAlKTtcblx0XHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcblx0fVxuXHQucHJpY2luZy1jYXJkIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0Ym94LXNoYWRvdzogJGRlcHRoLTE7XG5cdH1cbn1cbiIsIi5zZWN0aW9uLWZhcSB7XG5cdG1hcmdpbi1ib3R0b206IHJlbSg1MCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTA1KTtcblx0XHRtYXJnaW4tdG9wOiByZW0oMjApO1xuXHR9XG5cblx0LmFjY29yZGlvbi1pdGVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTAzKTtcblx0fVxuXG5cdC5hY2NvcmRpb24taGVhZGVyIHtcblx0XHQuYWNjb3JkaW9uLWJ1dHRvbiB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTAzKTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdCY6bm90KC5jb2xsYXBzZWQpIHtcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMyMTI1MjknJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcIik7XG5cdFx0XHRcdG1hcmdpbi0jeyRsZWZ0fTogYXV0bztcblx0XHRcdFx0bWFyZ2luLSN7JHJpZ2h0fTogMDtcblx0XHRcdH1cblxuXHRcdFx0Jjpub3QoLmNvbGxhcHNlZCk6OmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMjEyNTI5JyUzZSUzY3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5hY2NvcmRpb24tYm9keSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbSgwKTtcblx0XHRwIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNik7XG5cdFx0fVxuXHR9XG59XG4iLCIuZmlsZS11cGxvYWRlciB7XG5cdHBhZGRpbmc6IHJlbSgyMCk7XG5cdHBhZGRpbmctYm90dG9tOiByZW0oOCk7XG5cdC5maWxlLWlucHV0LWNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogcmVtKDE0MCk7XG5cdFx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDgpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0cGFkZGluZzogcmVtKDEwKTtcblx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAjYzZjNWM5O1xuXHRcdH1cblxuXHRcdGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdCN7JGxlZnR9OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cblx0XHQudXBsb2FkLWljb24ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcblx0XHR9XG5cdFx0Lmluc3RydWN0aW9ucyB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNSk7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDYpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0fVxuXHRcdC5wcmV2aWV3LWltZyB7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRtYXgtaGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0XHQucmVtb3ZlLXVwbG9hZGVkLWltYWdlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDVweDtcblx0XHRcdHRvcDogNXB4O1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHR9XG5cdH1cblxuXHQubWVzc2FnZXMge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE1KTtcblx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdH1cblx0Ly8gUHJvZ3Jlc3MgQmFyXG5cdC5wcm9ncmVzcyB7XG5cdFx0aGVpZ2h0OiByZW0oMTIpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxMDApO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgxMCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDUpO1xuXHRcdHBhZGRpbmc6IDJweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItbGlnaHQpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdCYtYmFyIHtcblx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxMDApO1xuXHRcdFx0Ly8gYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtc2Vjb25kYXJ5KTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0fVxuXHR9XG5cdCYtdmFsdWUge1xuXHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdH1cbn1cbiIsIi5wYWdlLWFwcCB7XG5cdC5tYWluIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0bWluLWhlaWdodDogMTAwdmg7XG5cdH1cbn1cblxuLnNlY3Rpb24tZGVjb3JhaS1hcHAge1xuXHQuYm9keS13cmFwcGVyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRib3JkZXItcmFkaXVzOiByZW0oOCk7XG5cdFx0cGFkZGluZzogcmVtKDEwKTtcblx0XHRnYXA6IHJlbSgxMCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KGxnKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdH1cblx0fVxuXHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHRmbGV4OiAwIDAgY2FsYyg1MCUgLSByZW0oNSkpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQudGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblx0XHR9XG5cdFx0LmltYWdlLXdyYXBwZXIge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLWxpZ2h0KTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRwYWRkaW5nOiByZW0oNSk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDYpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIFJlbmRlciBQcm9ncmVzcyBCYXIgYW5kIG91dHB1dCBhY3Rpb25cblx0XHQucmVuZGVyLXByb2dyZXNzLFxuXHRcdC5vdXRwdXQtYWN0aW9uIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSByZW0oMTApKTtcblx0XHRcdGhlaWdodDogY2FsYygxMDAlIC0gcmVtKDEwKSk7XG5cdFx0XHQjeyRsZWZ0fTogcmVtKDUpO1xuXHRcdFx0dG9wOiByZW0oNSk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdCN7JGxlZnR9OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvcjogJG5ldXRyYWwtLTA4LCAkYWxwaGE6IDAuNik7XG5cdFx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiByZW0oNik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gUmVuZGVyIFByb2dyZXNzIEJhclxuXHRcdC5yZW5kZXItcHJvZ3Jlc3Mge1xuXHRcdFx0LnByb2dyZXNzLWJhciB7XG5cdFx0XHRcdGhlaWdodDogcmVtKDEwKTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDEwMCk7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG5cdFx0XHRcdHBhZGRpbmc6IDJweDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0XHR3aWR0aDogODAlO1xuXHRcdFx0XHQmLWluc2lkZSB7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogcmVtKDEwMCk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tdGhlbWUtc2Vjb25kYXJ5KTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ji12YWx1ZSB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ly8gb3V0cHV0IGFjdGlvblxuXHRcdC5vdXRwdXQtYWN0aW9uIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0fVxuXHRcdC5nZW5lcmF0aW9uLWRvbmUge1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdC5vdXRwdXQtYWN0aW9uIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5wYWdlLWRhc2hib2FyZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTA1KTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KGxnKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSg0MCkgIWltcG9ydGFudDtcblx0fVxuXHQubmF2YmFyIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZykge1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbSgyNSk7XG5cdFx0fVxuXHR9XG5cblx0LndyYXBwZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0bWluLWhlaWdodDogNzB2aDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHR9XG5cdH1cblx0Ly8gU2lkZWJhclxuXHQuc2lkZWJhciB7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRwYWRkaW5nLXRvcDogcmVtKDE1KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDE1KTtcblx0XHRwYWRkaW5nLSN7JGxlZnR9OiByZW0oMTUpO1xuXG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHotaW5kZXg6IDk5OTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0Ym9yZGVyLSN7JHJpZ2h0fTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0XHRtaW4taGVpZ2h0OiAxMDAlO1xuXHRcdFx0ZmxleDogMCAwIHJlbSgyMjApO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbSgzMCk7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcblx0XHRcdHBhZGRpbmctI3skbGVmdH06IHJlbSgzMCk7XG5cdFxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1heChtZCkge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodCk7XG5cdFx0XHRvdmVyZmxvdzogaW5pdGlhbDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0oMTApO1xuXHRcdH1cblxuXHRcdC5uYXYge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0Lm5hdi1saW5rIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSg1KTtcblx0XHRcdFx0cGFkZGluZy0jeyRsZWZ0fTogMDtcblxuXHRcdFx0XHQmOm5vdCguYWN0aXZlKSB7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA2KTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmLmFjdGl2ZXtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQvLyBwYWdlIEJvZHlcblx0LnBhZ2UtYm9keSB7XG5cdFx0ZmxleDogMTtcblx0XHRwYWRkaW5nOiByZW0oMTUpO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0oMzApO1xuXHRcdH1cblx0XHQudGl0bGUtYmFyLXdyYXBwZXIge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0Z2FwOiByZW0oMTApO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI1KTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnRpdGxlLWJhciB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdH1cblx0XHQuZm9ybSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbSg0MDApO1xuXHRcdFx0fVxuXHRcdFx0LmZvcm0tbGFiZWwge1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQvLyBCb3JkZXJcblx0LmJvcmRlci1ib3R0b20ge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0tbmV1dHJhbC0tMDUpO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgyNSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDIxKTtcblx0fVxuXG5cdC8qIFN1YnNjcmlwdGlvbiBTZXR0aW5ncyAqKi9cblx0Ly8gUGxhbiBpbmZvXG5cdC5wbGFuLWluZm8ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRmb250LXNpemU6IHJlbSgxNCk7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSgzODApO1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcblx0XHR9XG5cdFx0LnRpdGxlLFxuXHRcdC5wbGFuLXR5cGUsXG5cdFx0LmRhdGUge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0fVxuXHRcdC5jb250ZW50LXJpZ2h0IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRnYXA6IHJlbSgxMCk7XG5cdFx0XHQuYnRuLS1ncmF5IHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtKDEwKTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucGxhbi10eXBlIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdH1cblx0XHQucGlsbCB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IHJlbSg1KSByZW0oMTIpO1xuXHRcdFx0Z2FwOiByZW0oNik7XG5cdFx0XHRtYXJnaW4tI3skbGVmdH06IHJlbSgxMCk7XG5cdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHQuZG90IHtcblx0XHRcdFx0d2lkdGg6IDhweDtcblx0XHRcdFx0aGVpZ2h0OiA4cHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDNkMGIwO1xuXHRcdFx0fVxuXHRcdFx0Ji0tYWN0aXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgxNTksIDI1MSwgMTYyLCAwLjMpO1xuXHRcdFx0fVxuXHRcdFx0Ji0taW5hY3RpdmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0ZS1kYW5nZXIpO1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0XHQuZG90IHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblx0fVxuXHQvLyBUcmFuc2FjdGlvbiBIaXN0b3J5XG5cdC50cmFuc2FjdGlvbi1oaXN0b3J5IHtcblx0XHQudHJhbnNhY3Rpb24taGlzdG9yeS10aXRsZSB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG5cdFx0fVxuXHRcdHRhYmxlIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRcdHdpZHRoOiByZW0oNTAwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LyogQVBJICoqL1xuXHQvLyBBUEkgS2V5XG5cdC5hcGkta2V5LFxuXHQuYmFsYW5jZSxcblx0LnVzYWdlLWhpc3Rvcnkge1xuXHRcdC50aXRsZSB7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxNSk7XG5cdFx0fVxuXHR9XG5cdC8vIGJhbGFuY2Vcblx0LmJhbGFuY2Uge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKG1kKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSgzODApO1xuXHRcdH1cblx0XHQuY29udGVudC1yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHR9XG5cdFx0LmFtb3VudCB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDcpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxNSk7XG5cdFx0fVxuXHR9XG5cdC8vIEFQSSBLZXlcblx0LmFwaS1rZXkge1xuXHRcdC5mb3JtLWNvbnRyb2wge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA2KTtcblx0XHR9XG5cdH1cblx0Ly8gdXNhZ2UgaGlzdG9yeVxuXHQudXNhZ2UtaGlzdG9yeSB7XG5cdFx0dGFibGUge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeGwpIHtcblx0XHRcdFx0d2lkdGg6IDkwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5wYWdlLWFwcCxcbi5wYWdlLWRhc2hib2FyZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5ldXRyYWwtLTA1KTtcblx0cGFkZGluZy1ib3R0b206IHJlbSgxMjApO1xuXHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0oNDApO1xuXHR9XG5cblx0Lm5hdmJhciB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obGcpIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0oMjUpO1xuXHRcdH1cblx0fVxuXHQuc2VjdGlvbi1kYXNoYm9hcmQsXG5cdC5zZWN0aW9uLWRlY29yYWktYXBwIHtcblx0XHRwYWRkaW5nLXRvcDogNjVweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDUwKTtcblx0XHRmbGV4OiAxO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKGxnKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtKDEwMCk7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDgwKTtcblx0XHR9XG5cdH1cbn1cbi5zdXBwb3J0LWJ0biB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAyMHB4O1xuXHRyaWdodDogMjBweDtcblx0ei1pbmRleDogOTtcblx0YXtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGhlaWdodDogNjBweDtcblx0XHR3aWR0aDogNjBweDtcblx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1uZXV0cmFsLS0wNyk7XG5cdFx0Zm9udC1zaXplOiAzMnB4O1xuXHRcdHRyYW5zaXRpb246IC4zcztcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRcdH1cblx0XG5cdH1cbn1cbiIsIi5zZWN0aW9uLXRlcm1zIHtcblx0LndyYXBwZXIge1xuXHRcdEBleHRlbmQgJWRlcHRoLS0xO1xuXHRcdGJvcmRlci1yYWRpdXM6IHJlbSgxNSk7XG5cdFx0cGFkZGluZzogcmVtKDIwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0cGFkZGluZzogcmVtKDQwKTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4oeGwpIHtcblx0XHRcdHBhZGRpbmc6IHJlbSg4MCk7XG5cdFx0fVxuXHR9XG5cdC5zaW5nbGUtaXRlbSB7XG5cdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgyNSk7XG5cdFx0fVxuXHRcdC50aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXHRcdH1cblx0XHRwIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHR9XG5cdH1cbn1cbiIsIi5zZWN0aW9uLWFwaSB7XG5cdGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnktbGlnaHQpO1xuXHQud3JhcHBlciB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC5jb250ZW50IHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNjApO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWluKGxnKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oODApO1xuXHRcdH1cblx0XHQudGV4dC1waWxsIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEuOHJlbTtcblx0XHR9XG5cdFx0LnRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDM2KTtcblxuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDIyKTtcblx0XHRcdGNvbG9yOiB2YXIoLS1uZXV0cmFsLS0wMSk7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSg4MDApO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihsZykge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSg2NCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cCB7XG5cdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRtYXgtd2lkdGg6IHJlbSg0NTApO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuXHR9XG59XG5cblxuIiwiLmZvb3RlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0cGFkZGluZzogcmVtKDcwKSAwO1xuXHQuZm9vdGVyLWN0YSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSg3MCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQtbWF4KG1kKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgzMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5mb290ZXItbWFpbiB7XG5cdFx0cGFkZGluZy10b3A6IHJlbSg3MCk7XG5cdFx0Ly8gZmxleC13cmFwOiB3cmFwO1xuXHRcdHJvdy1nYXA6IHJlbSgzMCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0XHRcdC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0fVxuXHRcdC5uYXYge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdHJvdy1nYXA6IHJlbSgxNSk7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTAxKTtcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnkpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5ncm91cC10aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0XHRjb2xvcjogdmFyKC0tbmV1dHJhbC0tMDEpO1xuXHRcdFx0b3BhY2l0eTogMC40O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcblx0XHR9XG5cdH1cbn1cblxuLmZvb3Rlci0tdjIge1xuXHQuZm9vdGVyLW1haW4ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1taW4obWQpIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludC1tYXgobWQpIHtcblx0XHRcdGdhcDogcmVtKDEwKTtcblx0XHR9XG5cdFx0LmNvcHlyaWdodCxcblx0XHQubmF2IGEge1xuXHRcdFx0Y29sb3I6IHZhcigtLW5ldXRyYWwtLTA3KTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHR9XG5cdFx0Lm5hdiB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRnYXA6IHJlbSgxNSk7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50LW1pbihtZCkge1xuXHRcdFx0XHRnYXA6IHJlbSgzMCk7XG5cdFx0XHR9XG5cdFxuXHRcdFx0YTpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiJdfQ== */
