/*!************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/string-replace-loader/index.js??ruleSet[1].rules[0].use[1]!./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs/index.js??ruleSet[1].rules[0].use[4]!./src/scss/style.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,500&family=Outfit:wght@400;500;600;700&display=swap);
/*!****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/string-replace-loader/index.js??ruleSet[1].rules[0].use[1]!./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs/index.js??ruleSet[1].rules[0].use[4]!./src/scss/style.scss (1) ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  /* Base — Lab Signal */
  --color-black: 10, 12, 18;
  --color-bg: 237, 234, 228;
  --color-bg-secondary: 220, 216, 208;
  --color-white: 252, 251, 248;
  --color-gray-100: 248, 247, 244;
  --color-gray-200: 210, 206, 198;
  --color-gray-300: 175, 170, 162;
  --color-gray-400: 140, 135, 128;
  --color-gray-500: 108, 103, 98;
  --color-gray-600: 82, 78, 74;
  --color-gray-700: 58, 54, 50;
  --color-gray-800: 36, 32, 28;
  --color-gray-900: 20, 24, 32;
  /* Brand */
  --color-primary: 20, 24, 32;
  --color-secondary: 42, 157, 143;
  --color-accent: 232, 168, 56;
  --color-primary-dark: 10, 12, 18;
  --color-primary-light: 45, 52, 64;
  --color-deep-navy: 20, 24, 32;
  --color-slate: 82, 88, 96;
  --color-on-primary: 252, 251, 248;
  --color-on-secondary: 10, 12, 18;
  --color-on-dark: 237, 234, 228;
  --color-on-accent: 20, 24, 32;
  --hero-accent-bg: 220, 216, 208;
  --surface-light: 252, 251, 248;
  /* Semantic */
  --primary: rgb(var(--color-primary));
  --secondary: rgb(var(--color-secondary));
  --accent: rgb(var(--color-accent));
  --inverse: rgb(var(--color-white));
  --bg-primary: rgb(var(--color-bg));
  --bg-secondary: rgb(var(--color-bg-secondary));
  --bg-accent: rgb(var(--color-primary));
  --bg-inverse: rgb(var(--color-gray-900));
  --bg-light: rgb(var(--color-white));
  --text-primary: rgb(var(--color-gray-900));
  --text-secondary: rgb(var(--color-slate));
  --text-accent: rgb(var(--color-primary));
  --text-inverse: rgb(var(--color-gray-100));
  --border-color: rgba(20, 24, 32, 0.1);
  --border-strong: rgba(20, 24, 32, 0.22);
  --card-bg: rgb(var(--color-white));
  --shadow-soft: 0 0.5rem 1.75rem rgba(10, 12, 18, 0.07);
  --shadow-float: 0 1.25rem 2.5rem rgba(10, 12, 18, 0.12);
  --shadow-glow: 0 0 2rem rgba(42, 157, 143, 0.18);
  --shadow-btn: 0 0.35rem 1rem rgba(20, 24, 32, 0.18);
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --radius-xl: 1rem;
  --radius-pill: 62.4375rem;
  --glass-blur: 0.75rem;
  --transition-function: cubic-bezier(0.4, 0, 0.2, 1);
  --transition-duration: 0.35s;
}

* {
  padding: 0px;
  margin: 0px;
  border: 0px;
}

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

*::before,
*::after {
  display: inline-block;
}

html,
body {
  height: 100%;
  min-width: 320px;
}

body {
  color: var(--text-primary);
  line-height: 1;
  font-family: "Outfit", sans-serif;
  font-size: 1rem;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

input,
button,
textarea {
  font-family: "Outfit", sans-serif;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  background-color: transparent;
}

input,
textarea {
  width: 100%;
}

label {
  display: inline-block;
}

button,
select,
option {
  cursor: pointer;
}

a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

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

dl, ol, ul {
  padding: 0;
  margin: 0;
}

html {
  scroll-behavior: smooth;
  background-color: rgb(var(--color-bg));
  color: var(--text-primary);
  overflow-x: hidden;
  max-width: 100%;
  transition: background-color 0.3s var(--transition-function), color 0.3s var(--transition-function);
}

body {
  scroll-behavior: smooth;
  overflow-x: hidden;
  max-width: 100%;
  transition: background-color 0.3s var(--transition-function), color 0.3s var(--transition-function);
}
.lock body {
  overflow: hidden;
  touch-action: none;
  overscroll-behavior: none;
}
.loaded body {
  opacity: 1;
}

.wrapper {
  padding-top: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  overflow-x: clip;
  max-width: 100%;
}
.wrapper > main {
  flex: 1 1 auto;
}
.wrapper > main {
  min-width: 0;
}

[class*=__container] {
  max-width: 75rem;
  margin: 0 auto;
  padding: 0 0.9375rem;
}

[class*="--gc"] {
  display: grid;
  min-width: 0;
  grid-template-columns: 0.9375rem 1fr minmax(auto, 73.125rem) 1fr 0.9375rem;
}
[class*="--gc"] > * {
  min-width: 0;
  grid-column: 3/4;
}

@media (min-width: 47.99875em) {
  .menu__body {
    display: contents;
  }
}
@media (max-width: 47.99875em) {
  .menu__body {
    position: fixed;
    width: 100%;
    min-height: 100vh;
    top: 0;
    left: -100%;
    transition: all 0.5s var(--transition-function);
    padding: 5.3125rem 0.9375rem 0.9375rem;
    background-color: rgba(var(--color-white), 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    overflow: auto;
    z-index: 99;
  }
  .menu__body::before {
    content: "";
    position: fixed;
    width: 100%;
    height: 5.3125rem;
    top: 0;
    left: -100%;
    background: rgba(var(--color-black), 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: left 0.5s var(--transition-function);
    z-index: 100;
  }
  html.menu-open .menu__body {
    left: 0;
  }
  html.menu-open .menu__body::before {
    left: 0;
  }
}
.menu__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 75em) {
  .menu__list {
    column-gap: 1.25rem;
  }
}
@media (min-width: 20em) and (max-width: 75em) {
  .menu__list {
    column-gap: clamp( 0.625rem , 0.3977272727rem  +  1.1363636364vw , 1.25rem );
  }
}
@media (max-width: 20em) {
  .menu__list {
    column-gap: 0.625rem;
  }
}
@media (max-width: 47.99875em) {
  .menu__list {
    flex-direction: column;
    align-items: stretch;
    row-gap: 1.5625rem;
    width: 100%;
  }
}
@media (max-width: 47.99875em) {
  .menu__item {
    width: 100%;
    position: relative;
    opacity: 0;
    transform: translateX(-20px);
    transition: all 0.5s ease;
  }
  .menu__item:nth-child(1) {
    transition-delay: 0.1s;
  }
  .menu__item:nth-child(2) {
    transition-delay: 0.2s;
  }
  .menu__item:nth-child(3) {
    transition-delay: 0.3s;
  }
  .menu__item:nth-child(4) {
    transition-delay: 0.4s;
  }
  .menu__item:nth-child(5) {
    transition-delay: 0.5s;
  }
  .menu__item:nth-child(6) {
    transition-delay: 0.6s;
  }
  .menu__item:nth-child(7) {
    transition-delay: 0.7s;
  }
  .menu__item:nth-child(8) {
    transition-delay: 0.8s;
  }
  .menu__item:nth-child(9) {
    transition-delay: 0.9s;
  }
  .menu__item:nth-child(10) {
    transition-delay: 1s;
  }
  html.menu-open .menu__item {
    opacity: 1;
    transform: translateX(0);
  }
  .menu__item::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, var(--text-primary) 0%, transparent 100%);
    opacity: 0.1;
  }
}
.menu__link {
  position: relative;
  color: var(--text-inverse);
  text-decoration: none;
  text-transform: uppercase;
  display: inline-block;
  letter-spacing: 0.05em;
  transition: color 0.3s ease;
}
@media (min-width: 47.99875em) {
  .menu__link {
    color: var(--inverse);
  }
  .menu__link::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: -4px;
    left: 0;
    color: var(--inverse);
    background: var(--accent);
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform 0.4s cubic-bezier(0.7, 0, 0.3, 1);
  }
  .menu__link:hover {
    color: var(--accent);
  }
  .menu__link:hover::before {
    transform: scaleX(1);
    transform-origin: 0% 50%;
  }
}
@media (max-width: 47.99875em) {
  .menu__link {
    width: 100%;
    font-size: 1.75rem;
    padding: 1.25rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: color 0.3s ease, transform 0.3s ease;
  }
  .menu__link::after {
    content: "";
    width: 0.375rem;
    height: 0.375rem;
    border-right: 1px solid var(--text-secondary);
    border-bottom: 1px solid var(--text-secondary);
    transform: rotate(-45deg);
    opacity: 0.5;
    margin-right: 0.625rem;
  }
}
.menu__link:hover {
  color: var(--accent);
}

.ibg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ibg--top {
  object-position: top;
}
.ibg--bottom {
  object-position: bottom;
}
.ibg--left {
  object-position: left;
}
.ibg--right {
  object-position: right;
}
.ibg--contain {
  object-fit: contain;
}

html {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 3rem;
  padding: 0.75rem 1.75rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  border: 0.09375rem solid transparent;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: background-color var(--transition-duration) var(--transition-function), color var(--transition-duration) var(--transition-function), border-color var(--transition-duration) var(--transition-function);
}
.btn--primary {
  color: rgb(var(--color-on-dark));
  background-color: rgb(var(--color-secondary));
  border-color: rgb(var(--color-secondary));
}
.btn--primary:hover {
  background-color: rgb(var(--color-primary));
  border-color: rgb(var(--color-primary));
  color: rgb(var(--color-on-dark));
}
.btn--ghost {
  color: rgb(var(--color-on-dark));
  background-color: transparent;
  border-color: rgba(var(--color-on-dark), 0.35);
}
.btn--ghost:hover {
  border-color: rgb(var(--color-secondary));
  color: rgb(var(--color-secondary));
}
.btn--outline {
  color: rgb(var(--color-primary));
  background-color: transparent;
  border-color: rgb(var(--color-primary));
}
.btn--outline:hover {
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-on-dark));
}
.btn--invert {
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-accent));
  border-color: rgb(var(--color-accent));
}
.btn--invert:hover {
  background-color: rgb(var(--color-on-dark));
  border-color: rgb(var(--color-on-dark));
  color: rgb(var(--color-primary));
}
.btn--fw {
  width: 100%;
}

.page {
  background-color: rgb(var(--color-bg));
  color: rgb(var(--color-gray-900));
}

.section-head {
  margin-bottom: 2.5rem;
}
.section-head--center {
  text-align: center;
}
.section-head--center .section-head__text {
  margin-left: auto;
  margin-right: auto;
}
.section-head__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.section-head__title {
  font-family: "Newsreader", serif;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 600;
  line-height: 1.12;
  color: rgb(var(--color-primary));
  margin-bottom: 0.75rem;
}
.section-head__text {
  max-width: 35rem;
  font-size: 1rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  margin: 0;
}
.section-head__text a {
  font-weight: 600;
  color: rgb(var(--color-secondary));
  text-decoration: none;
}
.section-head__text a:hover {
  text-decoration: underline;
}

ul {
  list-style-type: disc;
  padding-left: 1.5rem;
}

ol {
  list-style-type: decimal;
  padding-left: 1.5rem;
}

ul li {
  list-style-type: disc;
  display: list-item;
}

ol li {
  list-style-type: decimal;
  display: list-item;
}

.page-header__nav-list,
.footer__nav-list,
.footer__contact-list,
.faq__list,
.contact__list,
.contact-section__list,
.blog-catalog__list,
.principles__list,
.services-preview__list {
  list-style-type: none;
  padding-left: 0;
}
.page-header__nav-list li,
.footer__nav-list li,
.footer__contact-list li,
.faq__list li,
.contact__list li,
.contact-section__list li,
.blog-catalog__list li,
.principles__list li,
.services-preview__list li {
  list-style-type: none;
}

.form__note {
  margin-top: 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-500));
}
.form__note a {
  color: rgb(var(--color-secondary));
  font-weight: 600;
}

.form__success {
  margin-top: 1rem;
  padding: 0.875rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  background-color: rgba(var(--color-secondary), 0.12);
  border: 0.0625rem solid rgba(var(--color-secondary), 0.28);
  border-radius: var(--radius-md);
}

.page-hero {
  padding: 3rem 0 2.75rem;
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-on-dark));
  position: relative;
  overflow: hidden;
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(var(--color-secondary), 0.06) 0.0625rem, transparent 0.0625rem), linear-gradient(90deg, rgba(var(--color-secondary), 0.06) 0.0625rem, transparent 0.0625rem);
  background-size: 2rem 2rem;
  pointer-events: none;
}
.page-hero__container {
  position: relative;
  z-index: 1;
}
.page-hero__ref, .page-hero__eyebrow {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.page-hero__title {
  font-family: "Newsreader", serif;
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 600;
  line-height: 1.08;
  margin-bottom: 0.875rem;
  max-width: 45rem;
}
.page-hero__text {
  font-size: 1rem;
  line-height: 1.75;
  color: rgba(var(--color-on-dark), 0.78);
  max-width: 36.25rem;
  margin: 0;
}

.page-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background-color: rgba(var(--color-primary-dark), 0.94);
  backdrop-filter: blur(var(--glass-blur));
  border-bottom: 0.0625rem solid rgba(var(--color-secondary), 0.15);
}
.scrolled .page-header {
  background-color: rgba(var(--color-primary-dark), 0.98);
}
.page-header__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4.25rem;
}
.page-header__logo {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  text-decoration: none;
  color: rgb(var(--color-on-dark));
}
.page-header__logo-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  font-size: 0.875rem;
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-secondary));
  border-radius: var(--radius-sm);
}
.page-header__logo-name {
  font-family: "Newsreader", serif;
  font-size: 1.1875rem;
  font-weight: 600;
}
@media (max-width: 29.99875em) {
  .page-header__logo-name {
    display: none;
  }
}
@media (max-width: 61.99875em) {
  .page-header__nav {
    position: fixed;
    top: 4.25rem;
    left: 0;
    width: 100%;
    height: calc(100vh - 4.25rem);
    background-color: rgb(var(--color-primary-dark));
    padding: 1.5rem;
    transform: translateX(100%);
    opacity: 0;
    visibility: hidden;
    transition: transform var(--transition-duration) var(--transition-function), opacity var(--transition-duration) var(--transition-function), visibility var(--transition-duration) var(--transition-function);
    overflow-y: auto;
  }
}
@media (max-width: 61.99875em) {
  .menu-open .page-header__nav {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
}
.page-header__nav-list {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  margin: 0;
  padding: 0;
}
@media (max-width: 61.99875em) {
  .page-header__nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
}
.page-header__nav-link {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgba(var(--color-on-dark), 0.72);
  padding: 0.25rem 0;
  transition: color var(--transition-duration) var(--transition-function);
}
.page-header__nav-link:hover, .page-header__nav-link--active {
  color: rgb(var(--color-secondary));
}
.page-header__nav-link--active {
  box-shadow: inset 0 -0.125rem 0 rgb(var(--color-secondary));
}
@media (max-width: 61.99875em) {
  .page-header__nav-link {
    padding: 0.875rem 0;
    border-bottom: 0.0625rem solid rgba(var(--color-on-dark), 0.08);
  }
}
.page-header__burger {
  display: none;
  flex-shrink: 0;
  position: relative;
  width: 1.625rem;
  height: 0.875rem;
  z-index: 101;
}
.page-header__burger span, .page-header__burger::before, .page-header__burger::after {
  content: "";
  position: absolute;
  right: 0;
  width: 100%;
  height: 0.125rem;
  background-color: rgb(var(--color-on-dark));
  transition: transform var(--transition-duration) var(--transition-function);
}
.page-header__burger::before {
  top: 0;
}
.page-header__burger span {
  top: calc(50% - 0.0625rem);
}
.page-header__burger::after {
  bottom: 0;
}
html.menu-open .page-header__burger span {
  opacity: 0;
}
html.menu-open .page-header__burger::before {
  top: calc(50% - 0.0625rem);
  transform: rotate(-45deg);
}
html.menu-open .page-header__burger::after {
  bottom: calc(50% - 0.0625rem);
  transform: rotate(45deg);
}
@media (max-width: 61.99875em) {
  .page-header__burger {
    display: block;
  }
}

.footer {
  padding: 3.5rem 0 1.75rem;
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-on-dark));
}
.footer__top {
  display: grid;
  gap: 2rem;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 0.0625rem solid rgba(var(--color-on-dark), 0.1);
}
@media (min-width: 61.99875em) {
  .footer__top {
    grid-template-columns: 1.3fr repeat(3, 1fr);
  }
}
.footer__logo {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 0.875rem;
  text-decoration: none;
  color: rgb(var(--color-on-dark));
}
.footer__logo-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.125rem;
  height: 2.125rem;
  font-size: 0.8125rem;
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-secondary));
  border-radius: var(--radius-sm);
}
.footer__logo-name {
  font-family: "Newsreader", serif;
  font-size: 1.1875rem;
  font-weight: 600;
}
.footer__description {
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgba(var(--color-on-dark), 0.68);
  margin: 0;
  max-width: 18.75rem;
}
.footer__col-title {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 0.875rem;
  color: rgb(var(--color-secondary));
}
.footer__nav-list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin: 0;
  padding: 0;
}
.footer__nav-link {
  font-size: 0.8125rem;
  font-weight: 500;
  text-decoration: none;
  color: rgba(var(--color-on-dark), 0.72);
  transition: color var(--transition-duration) var(--transition-function);
}
.footer__nav-link:hover {
  color: rgb(var(--color-on-dark));
}
.footer__contact-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
}
.footer__contact-item {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgba(var(--color-on-dark), 0.72);
}
.footer__contact-item i {
  flex-shrink: 0;
  margin-top: 0.1875rem;
  color: rgb(var(--color-accent));
}
.footer__contact-item a {
  color: rgba(var(--color-on-dark), 0.72);
  text-decoration: none;
}
.footer__contact-item a:hover {
  color: rgb(var(--color-secondary));
}
.footer__notices {
  display: grid;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
.footer__notice {
  margin: 0;
  padding: 0.875rem 1rem;
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(var(--color-on-dark), 0.85);
  border-left: 0.1875rem solid rgba(var(--color-on-dark), 0.15);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.footer__notice--warning {
  border-left-color: rgb(var(--color-accent));
}
.footer__notice--info {
  border-left-color: rgb(var(--color-secondary));
}
.footer__bottom {
  font-size: 0.75rem;
  color: rgba(var(--color-on-dark), 0.42);
  text-align: center;
}

.cookie-notice {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 200;
  padding: 0.875rem 1.25rem;
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-on-dark));
  border-top: 0.0625rem solid rgba(var(--color-secondary), 0.2);
  transform: translateY(100%);
  opacity: 0;
  visibility: hidden;
  transition: transform var(--transition-duration) var(--transition-function), opacity var(--transition-duration) var(--transition-function), visibility var(--transition-duration) var(--transition-function);
}
.cookie-notice.active {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
.cookie-notice__inner {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  max-width: 60rem;
  margin: 0 auto;
}
@media (min-width: 61.99875em) {
  .cookie-notice__inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.cookie-notice__text {
  font-size: 0.8125rem;
  line-height: 1.65;
  color: rgba(var(--color-on-dark), 0.85);
  margin: 0;
}
.cookie-notice__text a {
  color: rgb(var(--color-secondary));
  font-weight: 600;
}
.cookie-notice__actions {
  display: flex;
  flex-shrink: 0;
  gap: 0.5rem;
}
.cookie-notice__btn {
  min-height: 2.5rem;
  padding: 0.5rem 1.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  border: 0.0625rem solid transparent;
  border-radius: var(--radius-sm);
  cursor: pointer;
}
.cookie-notice__btn--accept {
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-secondary));
}
.cookie-notice__btn--decline {
  color: rgba(var(--color-on-dark), 0.75);
  background-color: transparent;
  border-color: rgba(var(--color-on-dark), 0.3);
}

.hero {
  position: relative;
  overflow: hidden;
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-on-dark));
}
.hero__grid {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(var(--color-secondary), 0.07) 0.0625rem, transparent 0.0625rem), linear-gradient(90deg, rgba(var(--color-secondary), 0.07) 0.0625rem, transparent 0.0625rem);
  background-size: 2.5rem 2.5rem;
  pointer-events: none;
}
.hero__signal {
  position: absolute;
  top: 20%;
  right: -5%;
  width: 26.25rem;
  height: 0.125rem;
  background: linear-gradient(90deg, transparent, rgb(var(--color-secondary)), rgb(var(--color-accent)), transparent);
  transform: rotate(-8deg);
  opacity: 0.5;
  pointer-events: none;
}
.hero__container {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 2.5rem;
  padding-top: 3.5rem;
  padding-bottom: 4rem;
}
@media (min-width: 61.99875em) {
  .hero__container {
    grid-template-columns: 1.15fr 0.55fr;
    align-items: end;
  }
}
.hero__ref {
  display: inline-block;
  margin-bottom: 0.875rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.hero__title {
  font-family: "Newsreader", serif;
  font-size: clamp(2.125rem, 5.5vw, 3.625rem);
  font-weight: 600;
  line-height: 1.06;
  margin-bottom: 1.125rem;
}
.hero__title-accent {
  color: rgb(var(--color-secondary));
}
.hero__text {
  max-width: 32.5rem;
  font-size: 1rem;
  line-height: 1.75;
  color: rgba(var(--color-on-dark), 0.76);
  margin-bottom: 1.75rem;
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.hero__panel {
  padding: 1.5rem;
  background-color: rgba(var(--color-on-dark), 0.04);
  border: 0.0625rem solid rgba(var(--color-secondary), 0.25);
  border-left: 0.1875rem solid rgb(var(--color-secondary));
}
.hero__panel-label {
  display: block;
  margin-bottom: 0.75rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.hero__stats {
  display: grid;
  gap: 0.875rem;
  margin: 0;
  padding: 0;
}
.hero__stat {
  display: grid;
  grid-template-columns: 1.75rem 1fr;
  gap: 0.625rem;
  align-items: start;
  list-style-type: none;
}
.hero__stat-icon {
  color: rgb(var(--color-secondary));
  font-size: 0.75rem;
  margin-top: 0.125rem;
}
.hero__stat-text {
  font-size: 0.8125rem;
  line-height: 1.55;
  color: rgba(var(--color-on-dark), 0.78);
  margin: 0;
}

.overview {
  padding: 4.5rem 0;
  background-color: rgb(var(--color-bg));
}
.overview__layout {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 61.99875em) {
  .overview__layout {
    grid-template-columns: 0.45fr 1fr;
    gap: 3.5rem;
  }
}
.overview__aside {
  padding-top: 0.5rem;
}
.overview__statement {
  font-family: "Newsreader", serif;
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 600;
  line-height: 1.25;
  color: rgb(var(--color-primary));
  margin: 0;
}
.overview__body p {
  font-size: 1rem;
  line-height: 1.75;
  color: rgb(var(--color-slate));
  margin-bottom: 1rem;
}
.overview__body p:last-child {
  margin-bottom: 0;
}
.overview__points {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
.overview__point {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 0.875rem;
  padding: 1rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-left: 0.1875rem solid rgb(var(--color-secondary));
}
.overview__point-num {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: rgb(var(--color-secondary));
}
.overview__point-title {
  font-size: 0.9375rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.25rem;
}
.overview__point-text {
  font-size: 0.875rem;
  line-height: 1.6;
  color: rgb(var(--color-slate));
  margin: 0;
}

.services-preview {
  padding: 4.5rem 0;
  background-color: rgb(var(--color-white));
}
.services-preview__grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 61.99875em) {
  .services-preview__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 75em) {
  .services-preview__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.services-preview__card {
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
  background-color: rgb(var(--color-bg));
  border: 0.0625rem solid var(--border-color);
  transition: border-color var(--transition-duration) var(--transition-function);
}
.services-preview__card:hover {
  border-color: rgba(var(--color-secondary), 0.45);
}
.services-preview__ref {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: rgb(var(--color-accent));
  margin-bottom: 0.75rem;
}
.services-preview__icon {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.875rem;
  font-size: 0.9375rem;
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-primary));
  border-radius: var(--radius-sm);
}
.services-preview__title {
  font-family: "Newsreader", serif;
  font-size: 1.1875rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.services-preview__text {
  flex-grow: 1;
  font-size: 0.875rem;
  line-height: 1.65;
  color: rgb(var(--color-slate));
  margin-bottom: 0.875rem;
}
.services-preview__link {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(var(--color-secondary));
}
.services-preview__link:hover {
  color: rgb(var(--color-primary));
}
.services-preview__footer {
  margin-top: 1.75rem;
  text-align: center;
}

.featured-articles {
  padding: 4.5rem 0;
  background-color: rgb(var(--color-bg-secondary));
}
.featured-articles__list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
}
.featured-articles__item {
  display: grid;
  gap: 1rem;
  padding: 1.375rem 1.5rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  transition: box-shadow var(--transition-duration) var(--transition-function);
}
@media (min-width: 61.99875em) {
  .featured-articles__item {
    grid-template-columns: 6.25rem 1fr auto;
    align-items: center;
  }
}
.featured-articles__item:hover {
  box-shadow: var(--shadow-soft);
}
.featured-articles__ref {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: rgb(var(--color-secondary));
}
.featured-articles__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-bottom: 0.375rem;
}
.featured-articles__cat {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.featured-articles__date {
  font-size: 0.75rem;
  color: rgb(var(--color-gray-500));
}
.featured-articles__title {
  font-family: "Newsreader", serif;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 0.375rem;
}
.featured-articles__title a {
  color: rgb(var(--color-primary));
  text-decoration: none;
}
.featured-articles__title a:hover {
  color: rgb(var(--color-secondary));
}
.featured-articles__excerpt {
  font-size: 0.875rem;
  line-height: 1.6;
  color: rgb(var(--color-slate));
  margin: 0;
}
.featured-articles__link {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(var(--color-secondary));
  white-space: nowrap;
}
.featured-articles__link:hover {
  color: rgb(var(--color-primary));
}

.principles {
  padding: 4.5rem 0;
  background-color: rgb(var(--color-white));
}
.principles__list {
  display: grid;
  gap: 0.875rem;
  margin: 0;
  padding: 0;
}
@media (min-width: 61.99875em) {
  .principles__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.principles__item {
  padding: 1.375rem;
  background-color: rgb(var(--color-bg));
  border: 0.0625rem solid var(--border-color);
  list-style-type: none;
}
.principles__num {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgb(var(--color-secondary));
}
.principles__title {
  font-family: "Newsreader", serif;
  font-size: 1.0625rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.principles__text {
  font-size: 0.875rem;
  line-height: 1.65;
  color: rgb(var(--color-slate));
  margin: 0;
}

.cta {
  padding: 3rem 0;
}
.cta__band {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
  padding: 2.25rem 2rem;
  background-color: rgb(var(--color-primary));
  color: rgb(var(--color-on-dark));
  border-left: 0.25rem solid rgb(var(--color-secondary));
}
@media (min-width: 61.99875em) {
  .cta__band {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.cta__text {
  max-width: 37.5rem;
  font-size: 1.0625rem;
  line-height: 1.65;
  margin: 0;
}
.cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  flex-shrink: 0;
}

.faq {
  padding: 4.5rem 0;
  background-color: rgb(var(--color-bg));
}
.faq__list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.faq-item {
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  overflow: hidden;
}
.faq-item__question {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 1.125rem 1.25rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  text-align: left;
  color: rgb(var(--color-primary));
  background: none;
  border: none;
  cursor: pointer;
}
.faq-item__question::after {
  content: "\f078";
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  margin-left: auto;
  font-size: 0.6875rem;
  color: rgb(var(--color-secondary));
  transition: transform var(--transition-duration) var(--transition-function);
}
.faq-item__question:hover {
  background-color: rgba(var(--color-secondary), 0.06);
}
.faq-item__answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--transition-duration) var(--transition-function);
}
.faq-item__answer p {
  padding: 0 1.25rem 1.125rem;
  padding-top: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  margin: 0;
}
.faq-item__answer p a {
  color: rgb(var(--color-secondary));
  font-weight: 600;
}
.faq-item.active .faq-item__question::after {
  transform: rotate(180deg);
}
.faq-item.active .faq-item__answer {
  max-height: 25rem;
}

.contact {
  padding: 4.5rem 0 5.5rem;
  background-color: rgb(var(--color-bg-secondary));
}
.contact__layout {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 61.99875em) {
  .contact__layout {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 3rem;
  }
}
.contact__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.contact__title {
  font-family: "Newsreader", serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.75rem;
}
.contact__text {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  margin-bottom: 1.5rem;
}
.contact__list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin: 0;
  padding: 0;
}
.contact__list-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-700));
  list-style-type: none;
}
.contact__list-item i {
  flex-shrink: 0;
  margin-top: 0.1875rem;
  color: rgb(var(--color-secondary));
}
.contact__list-item a {
  color: rgb(var(--color-primary));
  text-decoration: none;
  font-weight: 600;
}
.contact__list-item a:hover {
  color: rgb(var(--color-secondary));
}
.contact__form-wrap {
  padding: 1.75rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-top: 0.1875rem solid rgb(var(--color-secondary));
}
.contact__fields {
  display: grid;
  gap: 1rem;
}
@media (min-width: 47.99875em) {
  .contact__fields {
    grid-template-columns: repeat(2, 1fr);
  }
}
.contact__field {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
@media (min-width: 47.99875em) {
  .contact__field--full {
    grid-column: 1/-1;
  }
}
.contact__field-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgb(var(--color-gray-700));
}
.contact__input, .contact__textarea {
  width: 100%;
  padding: 0.75rem 0.875rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.9375rem;
  color: rgb(var(--color-gray-900));
  background-color: rgb(var(--color-bg));
  border: 0.0625rem solid var(--border-color);
  border-radius: var(--radius-sm);
}
.contact__input:focus, .contact__textarea:focus {
  outline: none;
  border-color: rgb(var(--color-secondary));
}
.contact__textarea {
  resize: vertical;
  min-height: 7.5rem;
}

.services-page {
  padding-bottom: 5rem;
  background-color: rgb(var(--color-bg));
}

.services-detail {
  padding: 3.5rem 0 5rem;
}
.services-detail__intro {
  max-width: 42.5rem;
  margin-bottom: 2.5rem;
}
.services-detail__intro p {
  font-size: 1rem;
  line-height: 1.75;
  color: rgb(var(--color-slate));
  margin: 0 0 0.875rem;
}
.services-detail__intro p:last-child {
  margin-bottom: 0;
}
.services-detail__grid {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 61.99875em) {
  .services-detail__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.services-detail__block {
  display: flex;
  flex-direction: column;
  padding: 1.75rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-left: 0.25rem solid rgb(var(--color-secondary));
  transition: border-color var(--transition-duration) var(--transition-function);
}
.services-detail__block:hover {
  border-color: rgba(var(--color-secondary), 0.35);
}
.services-detail__ref {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.services-detail__icon {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.875rem;
  font-size: 0.9375rem;
  color: rgb(var(--color-on-accent));
  background-color: rgb(var(--color-primary));
  border-radius: var(--radius-sm);
}
.services-detail__title {
  font-family: "Newsreader", serif;
  font-size: 1.3125rem;
  font-weight: 600;
  line-height: 1.25;
  color: rgb(var(--color-primary));
  margin-bottom: 0.625rem;
}
.services-detail__text {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  margin-bottom: 1.125rem;
}
.services-detail__methodology {
  margin-top: auto;
  padding-top: 1.125rem;
  border-top: 0.0625rem solid var(--border-color);
}
.services-detail__method-label {
  display: block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.services-detail__method-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.services-detail__method-list li {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-700));
  list-style-type: none;
}
.services-detail__method-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 0.375rem;
  height: 0.375rem;
  background-color: rgb(var(--color-secondary));
  border-radius: 50%;
}
.services-detail__method-list li:last-child {
  margin-bottom: 0;
}
.services-detail__use-case {
  margin-top: 0.875rem;
  padding: 0.75rem 0.875rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-700));
  background-color: rgba(var(--color-secondary), 0.08);
  border-left: 0.125rem solid rgb(var(--color-secondary));
}
.services-detail__use-case strong {
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-primary));
}

.about-page {
  padding-bottom: 5rem;
  background-color: rgb(var(--color-bg));
}

.about-manifesto {
  padding: 3.5rem 0;
  background-color: rgb(var(--color-white));
  border-bottom: 0.0625rem solid var(--border-color);
}
.about-manifesto__ref {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.about-manifesto__title {
  font-family: "Newsreader", serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 600;
  line-height: 1.15;
  color: rgb(var(--color-primary));
  margin-bottom: 1.25rem;
  max-width: 45rem;
}
.about-manifesto__lead {
  font-family: "Newsreader", serif;
  font-size: 1.25rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.55;
  color: rgb(var(--color-gray-800));
  margin-bottom: 1.25rem;
  max-width: 42.5rem;
}
.about-manifesto__text {
  font-size: 1rem;
  line-height: 1.75;
  color: rgb(var(--color-slate));
  margin-bottom: 0.875rem;
  max-width: 42.5rem;
}
.about-manifesto__text:last-child {
  margin-bottom: 0;
}

.about-process {
  padding: 3.5rem 0;
  background-color: rgb(var(--color-bg));
}
.about-process__head {
  margin-bottom: 2.25rem;
}
.about-process__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.about-process__title {
  font-family: "Newsreader", serif;
  font-size: 2rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.625rem;
}
.about-process__text {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  max-width: 35rem;
  margin: 0;
}
.about-process__timeline {
  position: relative;
  margin: 0;
  padding: 0 0 0 1.75rem;
  list-style-type: none;
}
.about-process__timeline::before {
  content: "";
  position: absolute;
  left: 0.6875rem;
  top: 0.5rem;
  bottom: 0.5rem;
  width: 0.125rem;
  background: linear-gradient(180deg, rgb(var(--color-secondary)), rgba(var(--color-secondary), 0.2));
}
.about-process__step {
  position: relative;
  padding: 1.25rem 0 1.25rem 2rem;
  list-style-type: none;
}
.about-process__step:last-child {
  padding-bottom: 0;
}
.about-process__num {
  position: absolute;
  left: -1.75rem;
  top: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  color: rgb(var(--color-on-dark));
  background-color: rgb(var(--color-primary));
  border: 0.125rem solid rgb(var(--color-secondary));
  border-radius: 50%;
  z-index: 1;
}
.about-process__name {
  font-family: "Newsreader", serif;
  font-size: 1.1875rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.about-process__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: rgb(var(--color-slate));
  margin: 0;
}

.about-standards {
  padding: 3.5rem 0 5rem;
  background-color: rgb(var(--color-bg-secondary));
}
.about-standards__head {
  margin-bottom: 2rem;
}
.about-standards__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.about-standards__title {
  font-family: "Newsreader", serif;
  font-size: 2rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.625rem;
}
.about-standards__text {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  max-width: 35rem;
  margin: 0;
}
.about-standards__grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 61.99875em) {
  .about-standards__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 75em) {
  .about-standards__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.about-standards__item {
  padding: 1.375rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-top: 0.1875rem solid rgb(var(--color-secondary));
}
.about-standards__code {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.about-standards__name {
  font-family: "Newsreader", serif;
  font-size: 1.0625rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.about-standards__desc {
  font-size: 0.875rem;
  line-height: 1.65;
  color: rgb(var(--color-slate));
  margin: 0;
}

.blog-page {
  padding-bottom: 5rem;
  background-color: rgb(var(--color-bg));
}

.blog-header {
  padding: 3rem 0 2.5rem;
  background-color: rgb(var(--color-primary-dark));
  color: rgb(var(--color-on-dark));
  position: relative;
  overflow: hidden;
}
.blog-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(var(--color-secondary), 0.06) 0.0625rem, transparent 0.0625rem), linear-gradient(90deg, rgba(var(--color-secondary), 0.06) 0.0625rem, transparent 0.0625rem);
  background-size: 2rem 2rem;
  pointer-events: none;
}
.blog-header__container {
  position: relative;
  z-index: 1;
}
.blog-header__ref {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.blog-header__title {
  font-family: "Newsreader", serif;
  font-size: clamp(2rem, 4.5vw, 3rem);
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 0.75rem;
}
.blog-header__text {
  font-size: 1rem;
  line-height: 1.75;
  color: rgba(var(--color-on-dark), 0.76);
  max-width: 38.75rem;
  margin-bottom: 1.75rem;
}
.blog-header__tools {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 61.99875em) {
  .blog-header__tools {
    grid-template-columns: 1fr auto;
    align-items: end;
  }
}
.blog-header__search {
  position: relative;
  max-width: 30rem;
}
.blog-header__search-icon {
  position: absolute;
  left: 0.875rem;
  top: 50%;
  transform: translateY(-50%);
  color: rgb(var(--color-gray-500));
  font-size: 0.875rem;
  pointer-events: none;
}
.blog-header__search-input {
  width: 100%;
  padding: 0.75rem 0.875rem 0.75rem 2.625rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.9375rem;
  color: rgb(var(--color-gray-900));
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-radius: var(--radius-sm);
}
.blog-header__search-input:focus {
  outline: none;
  border-color: rgb(var(--color-secondary));
}
.blog-header__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}
.blog-header__categories li {
  list-style-type: none;
}
.blog-header__cat-btn {
  padding: 0.5rem 0.875rem;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgb(var(--color-slate));
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: background-color var(--transition-duration) var(--transition-function), color var(--transition-duration) var(--transition-function), border-color var(--transition-duration) var(--transition-function);
}
.blog-header__cat-btn:hover, .blog-header__cat-btn--active {
  color: rgb(var(--color-on-dark));
  background-color: rgb(var(--color-secondary));
  border-color: rgb(var(--color-secondary));
}

.blog-catalog {
  padding: 2rem 0 1rem;
}
.blog-catalog__list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.blog-catalog__row {
  display: grid;
  gap: 1rem;
  padding: 1.25rem 1.5rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  list-style-type: none;
  transition: border-color var(--transition-duration) var(--transition-function), box-shadow var(--transition-duration) var(--transition-function);
}
@media (min-width: 61.99875em) {
  .blog-catalog__row {
    grid-template-columns: 7.5rem 1fr auto;
    align-items: center;
    gap: 1.5rem;
  }
}
.blog-catalog__row.is-hidden {
  display: none;
}
.blog-catalog__row:hover {
  border-color: rgba(var(--color-secondary), 0.35);
  box-shadow: var(--shadow-soft);
}
.blog-catalog__ref {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
  white-space: nowrap;
}
.blog-catalog__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-bottom: 0.375rem;
}
.blog-catalog__cat {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.blog-catalog__date {
  font-size: 0.75rem;
  color: rgb(var(--color-gray-500));
}
.blog-catalog__title {
  font-family: "Newsreader", serif;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 0.375rem;
}
.blog-catalog__title a {
  color: rgb(var(--color-primary));
  text-decoration: none;
}
.blog-catalog__title a:hover {
  color: rgb(var(--color-secondary));
}
.blog-catalog__excerpt {
  font-size: 0.875rem;
  line-height: 1.6;
  color: rgb(var(--color-slate));
  margin: 0;
}
.blog-catalog__link {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(var(--color-secondary));
  white-space: nowrap;
}
.blog-catalog__link:hover {
  color: rgb(var(--color-primary));
}
.blog-catalog__empty {
  display: none;
  padding: 2.5rem;
  text-align: center;
  font-size: 0.9375rem;
  color: rgb(var(--color-gray-500));
  border: 0.0625rem dashed var(--border-color);
  background-color: rgb(var(--color-white));
}
.blog-catalog__empty.is-visible {
  display: block;
}

.blog-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 2rem 0 1rem;
}
.blog-pagination__btn, .blog-pagination__num {
  min-width: 2.5rem;
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgb(var(--color-slate));
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-radius: var(--radius-sm);
  cursor: pointer;
  text-decoration: none;
  transition: background-color var(--transition-duration) var(--transition-function), color var(--transition-duration) var(--transition-function), border-color var(--transition-duration) var(--transition-function);
}
.blog-pagination__btn:hover:not(:disabled), .blog-pagination__num:hover:not(:disabled) {
  border-color: rgb(var(--color-secondary));
  color: rgb(var(--color-secondary));
}
.blog-pagination__btn--active, .blog-pagination__num--active {
  color: rgb(var(--color-on-dark));
  background-color: rgb(var(--color-primary));
  border-color: rgb(var(--color-primary));
}
.blog-pagination__btn:disabled, .blog-pagination__num:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.article-page {
  padding: 2.5rem 0 5rem;
  background-color: rgb(var(--color-bg));
}

.article__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  font-size: 0.8125rem;
  color: rgb(var(--color-gray-500));
}
.article__breadcrumb a {
  color: rgb(var(--color-primary));
  font-weight: 600;
  text-decoration: none;
}
.article__breadcrumb a:hover {
  color: rgb(var(--color-secondary));
  text-decoration: underline;
}
.article__header {
  margin-bottom: 2.25rem;
  padding-bottom: 1.75rem;
  border-bottom: 0.125rem solid rgb(var(--color-primary));
}
.article__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.article__cat {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.article__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1rem;
  font-size: 0.8125rem;
  color: rgb(var(--color-gray-500));
}
.article__title {
  font-family: "Newsreader", serif;
  font-size: clamp(1.75rem, 4.5vw, 2.75rem);
  font-weight: 600;
  line-height: 1.12;
  color: rgb(var(--color-primary));
  margin-bottom: 0.875rem;
}
.article__summary {
  font-size: 1.125rem;
  line-height: 1.65;
  color: rgb(var(--color-slate));
  margin: 0;
}
.article__layout {
  display: grid;
  gap: 2.5rem;
  align-items: start;
}
@media (min-width: 61.99875em) {
  .article__layout {
    grid-template-columns: 1fr 17.5rem;
    gap: 3rem;
  }
}
.article__main {
  min-width: 0;
}
.article__body {
  font-size: 1rem;
  line-height: 1.85;
  color: rgb(var(--color-slate));
}
.article__body h2 {
  font-family: "Newsreader", serif;
  font-size: 1.625rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin: 2.5rem 0 0.875rem;
}
.article__body h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: rgb(var(--color-gray-800));
  margin: 1.75rem 0 0.625rem;
}
.article__body p {
  margin-bottom: 1rem;
}
.article__body ul:not(.article__checklist) {
  margin: 0.75rem 0 1.25rem;
  padding-left: 1.5rem;
}
.article__body ul:not(.article__checklist) li {
  margin-bottom: 0.5rem;
  list-style-type: disc;
  display: list-item;
}
.article__body ol {
  margin: 0.75rem 0 1.25rem;
  padding-left: 1.5rem;
}
.article__body ol li {
  margin-bottom: 0.5rem;
  list-style-type: decimal;
  display: list-item;
}
.article__body a {
  color: rgb(var(--color-secondary));
  font-weight: 600;
}
.article__body strong {
  color: rgb(var(--color-gray-900));
}
.article__sidebar {
  padding: 1.375rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-top: 0.1875rem solid rgb(var(--color-secondary));
}
@media (min-width: 61.99875em) {
  .article__sidebar {
    position: sticky;
    top: 1.5rem;
  }
}
.article__sidebar-label {
  display: block;
  margin-bottom: 0.875rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.article__sidebar-title {
  font-family: "Newsreader", serif;
  font-size: 1.0625rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.75rem;
}
.article__sidebar-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.article__sidebar-list li {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-700));
  list-style-type: none;
}
.article__sidebar-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4375rem;
  width: 0.3125rem;
  height: 0.3125rem;
  background-color: rgb(var(--color-accent));
}
.article__sidebar-list li:last-child {
  margin-bottom: 0;
}
.article__sidebar-note {
  margin-top: 1rem;
  padding-top: 0.875rem;
  border-top: 0.0625rem solid var(--border-color);
  font-size: 0.75rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-500));
}
.article__evidence {
  margin: 1.75rem 0;
  padding: 1.25rem 1.375rem;
  background-color: rgba(var(--color-accent), 0.1);
  border: 0.0625rem solid rgba(var(--color-accent), 0.25);
  border-left: 0.25rem solid rgb(var(--color-accent));
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-gray-800));
}
.article__evidence strong {
  display: block;
  margin-bottom: 0.375rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-primary));
}
.article__checklist {
  margin: 1.25rem 0 1.75rem;
  padding: 1.25rem 1.5rem;
  list-style-type: none;
  padding-left: 1.5rem;
  background-color: rgb(var(--color-bg-secondary));
  border: 0.0625rem solid var(--border-color);
  border-left: 0.1875rem solid rgb(var(--color-secondary));
}
.article__checklist li {
  position: relative;
  padding-left: 1.375rem;
  margin-bottom: 0.625rem;
  list-style-type: none;
}
.article__checklist li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: rgb(var(--color-secondary));
  font-weight: 700;
}
.article__disclaimer {
  margin-top: 2.5rem;
  padding: 1.25rem 1.5rem;
  background-color: rgba(var(--color-secondary), 0.1);
  border-left: 0.25rem solid rgb(var(--color-secondary));
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgb(var(--color-gray-800));
}
.article__disclaimer p {
  margin: 0;
}
.article__footer {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 0.0625rem solid var(--border-color);
}
.article__back {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgb(var(--color-primary));
}
.article__back:hover {
  color: rgb(var(--color-secondary));
}
.article__related-title {
  font-family: "Newsreader", serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 1rem;
}
.article__related {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.article__related-link {
  display: grid;
  gap: 0.25rem;
  padding: 1rem 1.125rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  text-decoration: none;
  color: inherit;
  transition: border-color var(--transition-duration) var(--transition-function), box-shadow var(--transition-duration) var(--transition-function);
}
@media (min-width: 61.99875em) {
  .article__related-link {
    grid-template-columns: 6.25rem 1fr;
    align-items: center;
    gap: 1.25rem;
  }
}
.article__related-link:hover {
  border-color: rgba(var(--color-secondary), 0.4);
  box-shadow: var(--shadow-soft);
}
.article__related-ref {
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-secondary));
}
.article__related-cat {
  display: inline-block;
  margin-bottom: 0.25rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.article__related-name {
  font-family: "Newsreader", serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  color: rgb(var(--color-primary));
  margin: 0;
}

.contact-page {
  padding-bottom: 5rem;
  background-color: rgb(var(--color-bg));
}

.contact-section {
  padding: 3.5rem 0 5rem;
}
.contact-section__grid {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 61.99875em) {
  .contact-section__grid {
    grid-template-columns: 0.85fr 1.15fr;
    gap: 3rem;
  }
}
.contact-section__info-title {
  font-family: "Newsreader", serif;
  font-size: 1.75rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 1rem;
}
.contact-section__info-text {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: rgb(var(--color-slate));
  margin-bottom: 1.75rem;
}
.contact-section__list {
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}
.contact-section__list-item {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
  list-style-type: none;
}
.contact-section__list-item i {
  flex-shrink: 0;
  margin-top: 0.25rem;
  color: rgb(var(--color-secondary));
  font-size: 1rem;
}
.contact-section__label {
  display: block;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
  margin-bottom: 0.25rem;
}
.contact-section__value {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: rgb(var(--color-gray-800));
  margin: 0;
}
.contact-section__value a {
  color: rgb(var(--color-primary));
  font-weight: 600;
  text-decoration: none;
}
.contact-section__value a:hover {
  color: rgb(var(--color-secondary));
}
.contact-section__form-wrap {
  padding: 2rem;
  background-color: rgb(var(--color-white));
  border: 0.0625rem solid var(--border-color);
  border-left: 0.25rem solid rgb(var(--color-secondary));
  box-shadow: var(--shadow-soft);
}
.contact-section__form-title {
  font-family: "Newsreader", serif;
  font-size: 1.625rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.contact-section__form-sub {
  font-size: 0.875rem;
  line-height: 1.6;
  color: rgb(var(--color-slate));
  margin-bottom: 1.5rem;
}
.contact-section__fields {
  display: grid;
  gap: 1rem;
}
@media (min-width: 47.99875em) {
  .contact-section__fields {
    grid-template-columns: repeat(2, 1fr);
  }
}
.contact-section__field {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
@media (min-width: 47.99875em) {
  .contact-section__field--full {
    grid-column: 1/-1;
  }
}
.contact-section__field-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgb(var(--color-gray-700));
}
.contact-section__input, .contact-section__textarea {
  width: 100%;
  padding: 0.75rem 0.875rem;
  font-family: "Outfit", sans-serif;
  font-size: 0.9375rem;
  color: rgb(var(--color-gray-900));
  background-color: rgb(var(--color-bg));
  border: 0.0625rem solid var(--border-color);
  border-radius: var(--radius-sm);
  transition: border-color var(--transition-duration) var(--transition-function);
}
.contact-section__input:focus, .contact-section__textarea:focus {
  outline: none;
  border-color: rgb(var(--color-secondary));
}
.contact-section__textarea {
  resize: vertical;
  min-height: 8.75rem;
}

.legal {
  padding-top: 3rem;
  padding-bottom: 5rem;
  background-color: rgb(var(--color-bg));
  color: rgb(var(--color-gray-900));
}
.legal__header {
  margin-bottom: 2.25rem;
  padding-bottom: 1.25rem;
  border-bottom: 0.1875rem solid rgb(var(--color-secondary));
}
.legal__ref {
  display: inline-block;
  margin-bottom: 0.625rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgb(var(--color-accent));
}
.legal__title {
  font-family: "Newsreader", serif;
  font-size: clamp(1.875rem, 5vw, 2.75rem);
  font-weight: 600;
  line-height: 1.12;
  color: rgb(var(--color-primary));
  margin-bottom: 0.5rem;
}
.legal__updated {
  font-size: 0.8125rem;
  font-weight: 500;
  color: rgb(var(--color-gray-500));
}
.legal__content {
  font-size: 1rem;
  line-height: 1.75;
  color: rgb(var(--color-slate));
}
.legal__content ul {
  margin: 0.75rem 0 1.25rem;
  list-style-type: disc;
  padding-left: 1.5rem;
}
.legal__content ul li {
  list-style-type: disc;
  display: list-item;
}
.legal__content ol {
  margin: 0.75rem 0 1.25rem;
  list-style-type: decimal;
  padding-left: 1.5rem;
}
.legal__content ol li {
  list-style-type: decimal;
  display: list-item;
}
.legal__content li {
  margin-bottom: 0.5rem;
}
.legal__content a {
  color: rgb(var(--color-secondary));
  font-weight: 600;
  text-decoration: underline;
}
.legal__content a:hover {
  color: rgb(var(--color-primary));
}
.legal__content h2 {
  font-family: "Newsreader", serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: rgb(var(--color-primary));
  margin: 2rem 0 0.75rem;
  padding-top: 0.5rem;
  border-top: 0.0625rem solid var(--border-color);
}
.legal__content h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.legal__content h3 {
  font-family: "Newsreader", serif;
  font-size: 1.125rem;
  font-weight: 600;
  color: rgb(var(--color-gray-800));
  margin: 1.5rem 0 0.625rem;
}
.legal__content p {
  margin-bottom: 1rem;
}
.legal__content strong {
  color: rgb(var(--color-gray-900));
}
.legal__content code {
  padding: 0.125rem 0.375rem;
  font-size: 0.875rem;
  background-color: rgba(var(--color-secondary), 0.1);
  border-radius: var(--radius-sm);
}
.legal__section {
  margin-bottom: 0.5rem;
}
.legal__section--warning {
  margin-top: 1.5rem;
}
.legal__warning-box {
  padding: 1.125rem 1.25rem;
  background-color: rgba(var(--color-accent), 0.1);
  border: 0.0625rem solid rgba(var(--color-accent), 0.25);
  border-left: 0.25rem solid rgb(var(--color-accent));
  border-radius: var(--radius-sm);
  color: rgb(var(--color-gray-800));
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL3N0eWxlLmNzcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsZ0JBQWdCO0FDQWhCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FEREY7O0FFNURBO0VBQ0M7RUFDQTtFQUNBO0FGK0REOztBRTdEQTs7O0VBR0M7QUZnRUQ7O0FFOURBOztFQUVDO0FGaUVEOztBRXZEQTs7RUFFQztFQUNBO0FGMEREOztBRXhEQTtFQUNDLDBCRkRXO0VFRVg7RUFDQSxpQ0ZUWTtFRVVaLGVGVFU7RUVXVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGMEREOztBRXhEQTs7O0VBR0MsaUNGckJZO0VFc0JaO0VBQ0E7RUFDQTtFQUNBO0FGMkREOztBRXhEQTs7RUFFQztBRjJERDs7QUV4REE7RUFDQztBRjJERDs7QUV4REE7OztFQUdDO0FGMkREOztBRXpEQTtFQUNDO0VBQ0E7RUFDQTtBRjRERDs7QUUxREE7RUFDQztBRjZERDs7QUUzREE7RUFDQztBRjhERDs7QUU1REE7Ozs7OztFQU1DO0VBQ0E7QUYrREQ7O0FFNURBO0VBQ0M7RUFDQTtBRitERDs7QUE5RUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFnRkY7O0FBN0VBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUFnRkY7QUE5RUU7RUFDRTtFQUNBO0VBQ0E7QUFnRko7QUE3RUU7RUFDRTtBQStFSjs7QUEzRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE4RUY7QUE1RUU7RUFDRTtBQThFSjtBQTNFRTtFQUNFO0FBNkVKOztBQWxFRTtFQUVJO0VBQ0E7RUFJRTtBQWlFUjs7QUF0QkE7RUc5Q0M7RUFDQTtFQUNBO0FId0VEO0FHdkVDO0VBQ0M7RUFjQztBSDRESDs7QUlyTUk7RUFGRjtJQUdJO0VKeU1KO0FBQ0Y7QUl2TUk7RUFORjtJQU9JO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSjBNSjtFSXhNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUowTU47RUl2TUk7SUFDRTtFSnlNTjtFSXZNTTtJQUNFO0VKeU1SO0FBQ0Y7QUluTUU7RUFDRTtFQUNBO0VBQ0E7QUpxTUo7QUd0SkU7RUNsREE7SURtREM7RUh5SkQ7QUFDRjtBR3RKQztFQ3ZEQztJRHdEQSw0RUFkZTtFSHVLZjtBQUNGO0FHOUlFO0VDcEVBO0lEcUVDO0VIaUpEO0FBQ0Y7QUlqTkk7RUFORjtJQU9JO0lBQ0E7SUFDQTtJQUNBO0VKb05KO0FBQ0Y7QUkvTUk7RUFERjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUprTko7RUkvTU07SUFDRTtFSmlOUjtFSWxOTTtJQUNFO0VKb05SO0VJck5NO0lBQ0U7RUp1TlI7RUl4Tk07SUFDRTtFSjBOUjtFSTNOTTtJQUNFO0VKNk5SO0VJOU5NO0lBQ0U7RUpnT1I7RUlqT007SUFDRTtFSm1PUjtFSXBPTTtJQUNFO0VKc09SO0VJdk9NO0lBQ0U7RUp5T1I7RUkxT007SUFDRTtFSjRPUjtFSXhPSTtJQUNFO0lBQ0E7RUowT047RUl2T0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUtBO0VKcU9OO0FBQ0Y7QUloT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmtPSjtBSWhPSTtFQVRGO0lBVUk7RUptT0o7RUlsT0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VKb09OO0VJak9JO0lBQ0U7RUptT047RUlqT007SUFDRTtJQUNBO0VKbU9SO0FBQ0Y7QUkvTkk7RUFuQ0Y7SUFvQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsZ0RBQ0U7RUppT047RUk5Tkk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VKZ09OO0FBQ0Y7QUk3Tkk7RUFDRTtBSitOTjs7QUt2VUE7RUFDRTtFQUNBO0VBQ0E7QUwwVUY7QUt6VUU7RUFDRTtBTDJVSjtBS3pVRTtFQUNFO0FMMlVKO0FLelVFO0VBQ0U7QUwyVUo7QUt6VUU7RUFDRTtBTDJVSjtBS3pVRTtFQUNFO0FMMlVKOztBSzlQQTtFQUNFO0VBQ0E7QUxpUUY7O0FNMVpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUNOY1c7RU1iWDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU42WkY7QU16WkU7RUFDRTtFQUNBO0VBQ0E7QU4yWko7QU16Wkk7RUFDRTtFQUNBO0VBQ0E7QU4yWk47QU12WkU7RUFDRTtFQUNBO0VBQ0E7QU55Wko7QU12Wkk7RUFDRTtFQUNBO0FOeVpOO0FNclpFO0VBQ0U7RUFDQTtFQUNBO0FOdVpKO0FNclpJO0VBQ0U7RUFDQTtBTnVaTjtBTW5aRTtFQUNFO0VBQ0E7RUFDQTtBTnFaSjtBTW5aSTtFQUNFO0VBQ0E7RUFDQTtBTnFaTjtBTWpaRTtFQUNFO0FObVpKOztBTS9ZQTtFQUNFO0VBQ0E7QU5rWkY7O0FNL1lBO0VBQ0U7QU5rWkY7QU1oWkU7RUFDRTtBTmtaSjtBTWhaSTtFQUNFO0VBQ0E7QU5rWk47QU05WUU7RUFDRTtFQUNBO0VBQ0EsaUNOdEVTO0VNdUVUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5nWko7QU03WUU7RUFDRSxnQ041RVU7RU02RVY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTitZSjtBTTVZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU44WUo7QU01WUk7RUFDRTtFQUNBO0VBQ0E7QU44WU47QU01WU07RUFDRTtBTjhZUjs7QU14WUE7RUFDRTtFQUNBO0FOMllGOztBTXhZQTtFQUNFO0VBQ0E7QU4yWUY7O0FNeFlBO0VBQ0U7RUFDQTtBTjJZRjs7QU14WUE7RUFDRTtFQUNBO0FOMllGOztBTXhZQTs7Ozs7Ozs7O0VBU0U7RUFDQTtBTjJZRjtBTXpZRTs7Ozs7Ozs7O0VBQ0U7QU5tWko7O0FNL1lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QU5rWkY7QU1oWkU7RUFDRTtFQUNBO0FOa1pKOztBTTlZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5pWkY7O0FNOVlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTmlaRjtBTS9ZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1NQUNFO0VBRUY7RUFDQTtBTitZSjtBTTVZRTtFQUNFO0VBQ0E7QU44WUo7QU0zWUU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjRZSjtBTXpZRTtFQUNFLGdDTnRNVTtFTXVNVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOMllKO0FNeFlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjBZSjs7QU9ubkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQc25CRjtBT3BuQkU7RUFDRTtBUHNuQko7QU9ubkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQkFuQmlCO0FQd29CckI7QU9sbkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUG9uQko7QU9qbkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQbW5CSjtBT2huQkU7RUFDRSxnQ1BuQlU7RU9vQlY7RUFDQTtBUGtuQko7QU9obkJJO0VBTEY7SUFNSTtFUG1uQko7QUFDRjtBTy9tQkk7RUFERjtJQUVJO0lBQ0EsWUF2RGU7SUF3RGY7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7RVBnbkJKO0FBQ0Y7QU83bUJNO0VBREY7SUFFSTtJQUNBO0lBQ0E7RVBnbkJOO0FBQ0Y7QU81bUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDhtQko7QU81bUJJO0VBUEY7SUFRSTtJQUNBO0lBQ0E7RVArbUJKO0FBQ0Y7QU81bUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDhtQko7QU81bUJJO0VBRUU7QVA2bUJOO0FPMW1CSTtFQUNFO0FQNG1CTjtBT3ptQkk7RUFuQkY7SUFvQkk7SUFDQTtFUDRtQko7QUFDRjtBT3ptQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVAybUJKO0FPem1CSTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQeW1CTjtBT3RtQkk7RUFDRTtBUHdtQk47QU9ybUJJO0VBQ0U7QVB1bUJOO0FPcG1CSTtFQUNFO0FQc21CTjtBT2xtQk07RUFDRTtBUG9tQlI7QU9qbUJNO0VBQ0U7RUFDQTtBUG1tQlI7QU9obUJNO0VBQ0U7RUFDQTtBUGttQlI7QU85bEJJO0VBaERGO0lBaURJO0VQaW1CSjtBQUNGOztBUXp3QkE7RUFDRTtFQUNBO0VBQ0E7QVI0d0JGO0FRMXdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVI0d0JKO0FRMXdCSTtFQVBGO0lBUUk7RVI2d0JKO0FBQ0Y7QVExd0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSNHdCSjtBUXp3QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVIyd0JKO0FReHdCRTtFQUNFLGdDUmZVO0VRZ0JWO0VBQ0E7QVIwd0JKO0FRdndCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJ5d0JKO0FRdHdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUnd3Qko7QVFyd0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUnV3Qko7QVFwd0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUnN3Qko7QVFwd0JJO0VBQ0U7QVJzd0JOO0FRbHdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJvd0JKO0FRandCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUm13Qko7QVFqd0JJO0VBQ0U7RUFDQTtFQUNBO0FSbXdCTjtBUWh3Qkk7RUFDRTtFQUNBO0FSa3dCTjtBUWh3Qk07RUFDRTtBUmt3QlI7QVE3dkJFO0VBQ0U7RUFDQTtFQUNBO0FSK3ZCSjtBUTV2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUjh2Qko7QVE1dkJJO0VBQ0U7QVI4dkJOO0FRM3ZCSTtFQUNFO0FSNnZCTjtBUXp2QkU7RUFDRTtFQUNBO0VBQ0E7QVIydkJKOztBUXZ2QkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUjB2QkY7QVF0dkJFO0VBQ0U7RUFDQTtFQUNBO0FSd3ZCSjtBUXJ2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSdXZCSjtBUXJ2Qkk7RUFQRjtJQVFJO0lBQ0E7SUFDQTtFUnd2Qko7QUFDRjtBUXJ2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBUnV2Qko7QVFydkJJO0VBQ0U7RUFDQTtBUnV2Qk47QVFudkJFO0VBQ0U7RUFDQTtFQUNBO0FScXZCSjtBUWx2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUm92Qko7QVFsdkJJO0VBQ0U7RUFDQTtBUm92Qk47QVFqdkJJO0VBQ0U7RUFDQTtFQUNBO0FSbXZCTjs7QVNsOEJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVRxOEJGO0FTbjhCRTtFQUNFO0VBQ0E7RUFDQSxtTUFDRTtFQUVGO0VBQ0E7QVRtOEJKO0FTaDhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVGs4Qko7QVMvN0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUaThCSjtBUy83Qkk7RUFSRjtJQVNJO0lBQ0E7RVRrOEJKO0FBQ0Y7QVMvN0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRpOEJKO0FTOTdCRTtFQUNFLGdDVHRDVTtFU3VDVjtFQUNBO0VBQ0E7RUFDQTtBVGc4Qko7QVM3N0JFO0VBQ0U7QVQrN0JKO0FTNTdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQ4N0JKO0FTMzdCRTtFQUNFO0VBQ0E7RUFDQTtBVDY3Qko7QVMxN0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQ0N0JKO0FTejdCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUMjdCSjtBU3g3QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVDA3Qko7QVN2N0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVHk3Qko7QVN0N0JFO0VBQ0U7RUFDQTtFQUNBO0FUdzdCSjtBU3I3QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVHU3Qko7O0FTbjdCQTtFQUNFO0VBQ0E7QVRzN0JGO0FTcDdCRTtFQUNFO0VBQ0E7QVRzN0JKO0FTcDdCSTtFQUpGO0lBS0k7SUFDQTtFVHU3Qko7QUFDRjtBU3A3QkU7RUFDRTtBVHM3Qko7QVNuN0JFO0VBQ0UsZ0NUaElVO0VTaUlWO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRxN0JKO0FTajdCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUbTdCTjtBU2o3Qk07RUFDRTtBVG03QlI7QVM5NkJFO0VBQ0U7RUFDQTtFQUNBO0FUZzdCSjtBUzc2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVCs2Qko7QVM1NkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQ4NkJKO0FTMzZCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUNjZCSjtBUzE2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVDQ2Qko7O0FTeDZCQTtFQUNFO0VBQ0E7QVQyNkJGO0FTejZCRTtFQUNFO0VBQ0E7QVQyNkJKO0FTejZCSTtFQUpGO0lBS0k7RVQ0NkJKO0FBQ0Y7QVMxNkJJO0VBUkY7SUFTSTtFVDY2Qko7QUFDRjtBUzE2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQ0NkJKO0FTMTZCSTtFQUNFO0FUNDZCTjtBU3g2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUMDZCSjtBU3Y2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVHk2Qko7QVN0NkJFO0VBQ0UsZ0NUL09VO0VTZ1BWO0VBQ0E7RUFDQTtFQUNBO0FUdzZCSjtBU3I2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUdTZCSjtBU3A2QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRzNkJKO0FTcDZCSTtFQUNFO0FUczZCTjtBU2w2QkU7RUFDRTtFQUNBO0FUbzZCSjs7QVNoNkJBO0VBQ0U7RUFDQTtBVG02QkY7QVNqNkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVG02Qko7QVNoNkJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUazZCSjtBU2g2Qkk7RUFSRjtJQVNJO0lBQ0E7RVRtNkJKO0FBQ0Y7QVNqNkJJO0VBQ0U7QVRtNkJOO0FTLzVCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUaTZCSjtBUzk1QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVGc2Qko7QVM3NUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVCs1Qko7QVM1NUJFO0VBQ0U7RUFDQTtBVDg1Qko7QVMzNUJFO0VBQ0UsZ0NUM1VVO0VTNFVWO0VBQ0E7RUFDQTtFQUNBO0FUNjVCSjtBUzM1Qkk7RUFDRTtFQUNBO0FUNjVCTjtBUzM1Qk07RUFDRTtBVDY1QlI7QVN4NUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQwNUJKO0FTdjVCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUeTVCSjtBU3Y1Qkk7RUFDRTtBVHk1Qk47O0FTcDVCQTtFQUNFO0VBQ0E7QVR1NUJGO0FTcjVCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUdTVCSjtBU3I1Qkk7RUFORjtJQU9JO0VUdzVCSjtBQUNGO0FTcjVCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUdTVCSjtBU3A1QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRzNUJKO0FTbjVCRTtFQUNFLGdDVGpaVTtFU2taVjtFQUNBO0VBQ0E7RUFDQTtBVHE1Qko7QVNsNUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVRvNUJKOztBU2g1QkE7RUFDRTtBVG01QkY7QVNqNUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVG01Qko7QVNqNUJJO0VBVkY7SUFXSTtJQUNBO0lBQ0E7RVRvNUJKO0FBQ0Y7QVNqNUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVRtNUJKO0FTaDVCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUazVCSjs7QVM5NEJBO0VBQ0U7RUFDQTtBVGk1QkY7QVMvNEJFO0VBQ0U7RUFDQTtFQUNBO0FUaTVCSjs7QVM3NEJBO0VBQ0U7RUFDQTtFQUNBO0FUZzVCRjtBUzk0QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUNUNWRTO0VTNmRUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUZzVCSjtBUzk0Qkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVGc1Qk47QVM3NEJJO0VBQ0U7QVQrNEJOO0FTMzRCRTtFQUNFO0VBQ0E7RUFDQTtBVDY0Qko7QVMzNEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUNjRCTjtBUzM0Qk07RUFDRTtFQUNBO0FUNjRCUjtBU3Y0Qkk7RUFDRTtBVHk0Qk47QVN0NEJJO0VBQ0U7QVR3NEJOOztBU240QkE7RUFDRTtFQUNBO0FUczRCRjtBU3A0QkU7RUFDRTtFQUNBO0FUczRCSjtBU3A0Qkk7RUFKRjtJQUtJO0lBQ0E7RVR1NEJKO0FBQ0Y7QVNwNEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRzNEJKO0FTbjRCRTtFQUNFLGdDVHppQlU7RVMwaUJWO0VBQ0E7RUFDQTtFQUNBO0FUcTRCSjtBU2w0QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVG80Qko7QVNqNEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVG00Qko7QVNoNEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVRrNEJKO0FTaDRCSTtFQUNFO0VBQ0E7RUFDQTtBVGs0Qk47QVMvM0JJO0VBQ0U7RUFDQTtFQUNBO0FUaTRCTjtBUy8zQk07RUFDRTtBVGk0QlI7QVM1M0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVQ4M0JKO0FTMzNCRTtFQUNFO0VBQ0E7QVQ2M0JKO0FTMzNCSTtFQUpGO0lBS0k7RVQ4M0JKO0FBQ0Y7QVMzM0JFO0VBQ0U7RUFDQTtFQUNBO0FUNjNCSjtBUzEzQk07RUFERjtJQUVJO0VUNjNCTjtBQUNGO0FTejNCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUMjNCSjtBU3gzQkU7RUFFRTtFQUNBO0VBQ0EsaUNUbm9CUztFU29vQlQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVHkzQko7QVN2M0JJO0VBQ0U7RUFDQTtBVHkzQk47QVNyM0JFO0VBQ0U7RUFDQTtBVHUzQko7O0FVOWhEQTtFQUNFO0VBQ0E7QVZpaURGOztBVTloREE7RUFDRTtBVmlpREY7QVUvaERFO0VBQ0U7RUFDQTtBVmlpREo7QVUvaERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVZpaUROO0FVL2hETTtFQUNFO0FWaWlEUjtBVTVoREU7RUFDRTtFQUNBO0FWOGhESjtBVTVoREk7RUFKRjtJQUtJO0VWK2hESjtBQUNGO0FVNWhERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FWOGhESjtBVTVoREk7RUFDRTtBVjhoRE47QVUxaERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVY0aERKO0FVemhERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FWMmhESjtBVXhoREU7RUFDRSxnQ1YvQ1U7RVVnRFY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjBoREo7QVV2aERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVZ5aERKO0FVdGhERTtFQUNFO0VBQ0E7RUFDQTtBVndoREo7QVVyaERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZ1aERKO0FVcGhERTtFQUNFO0VBQ0E7RUFDQTtBVnNoREo7QVVwaERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZzaEROO0FVcGhETTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZzaERSO0FVbmhETTtFQUNFO0FWcWhEUjtBVWhoREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVmtoREo7QVVoaERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZraEROOztBV3ZxREE7RUFDRTtFQUNBO0FYMHFERjs7QVd2cURBO0VBQ0U7RUFDQTtFQUNBO0FYMHFERjtBV3hxREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDBxREo7QVd2cURFO0VBQ0UsZ0NYR1U7RVdGVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVh5cURKO0FXdHFERTtFQUNFLGdDWFBVO0VXUVY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVh3cURKO0FXcnFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVh1cURKO0FXcnFESTtFQUNFO0FYdXFETjs7QVdscURBO0VBQ0U7RUFDQTtBWHFxREY7QVducURFO0VBQ0U7QVhxcURKO0FXbHFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYb3FESjtBV2pxREU7RUFDRSxnQ1hqRFU7RVdrRFY7RUFDQTtFQUNBO0VBQ0E7QVhtcURKO0FXaHFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhrcURKO0FXL3BERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYaXFESjtBVy9wREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWGlxRE47QVd6cERFO0VBQ0U7RUFDQTtFQUNBO0FYMnBESjtBV3pwREk7RUFDRTtBWDJwRE47QVd2cERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYeXBESjtBV3RwREU7RUFDRSxnQ1hsSFU7RVdtSFY7RUFDQTtFQUNBO0VBQ0E7QVh3cERKO0FXcnBERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYdXBESjs7QVducERBO0VBQ0U7RUFDQTtBWHNwREY7QVdwcERFO0VBQ0U7QVhzcERKO0FXbnBERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYcXBESjtBV2xwREU7RUFDRSxnQ1hwSlU7RVdxSlY7RUFDQTtFQUNBO0VBQ0E7QVhvcERKO0FXanBERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhtcERKO0FXaHBERTtFQUNFO0VBQ0E7QVhrcERKO0FXaHBESTtFQUpGO0lBS0k7RVhtcERKO0FBQ0Y7QVdqcERJO0VBUkY7SUFTSTtFWG9wREo7QUFDRjtBV2pwREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWG1wREo7QVdocERFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhrcERKO0FXL29ERTtFQUNFLGdDWGxNVTtFV21NVjtFQUNBO0VBQ0E7RUFDQTtBWGlwREo7QVc5b0RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhncERKOztBWXIzREE7RUFDRTtFQUNBO0FadzNERjs7QVlyM0RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWnczREY7QVl0M0RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbU1BQ0U7RUFFRjtFQUNBO0FaczNESjtBWW4zREU7RUFDRTtFQUNBO0FacTNESjtBWWwzREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWm8zREo7QVlqM0RFO0VBQ0UsZ0NaZlU7RVlnQlY7RUFDQTtFQUNBO0VBQ0E7QVptM0RKO0FZaDNERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVprM0RKO0FZLzJERTtFQUNFO0VBQ0E7QVppM0RKO0FZLzJESTtFQUpGO0lBS0k7SUFDQTtFWmszREo7QUFDRjtBWS8yREU7RUFDRTtFQUNBO0FaaTNESjtBWTkyREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWmczREo7QVk3MkRFO0VBQ0U7RUFDQTtFQUNBLGlDWjdEUztFWThEVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaKzJESjtBWTcyREk7RUFDRTtFQUNBO0FaKzJETjtBWTMyREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVo2MkRKO0FZMzJESTtFQUNFO0FaNjJETjtBWXoyREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaMjJESjtBWXYyREk7RUFFRTtFQUNBO0VBQ0E7QVp3MkROOztBWW4yREE7RUFDRTtBWnMyREY7QVlwMkRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaczJESjtBWW4yREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWnEyREo7QVlsMkRJO0VBVkY7SUFXSTtJQUNBO0lBQ0E7RVpxMkRKO0FBQ0Y7QVluMkRJO0VBQ0U7QVpxMkROO0FZbDJESTtFQUNFO0VBQ0E7QVpvMkROO0FZaDJERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWmsyREo7QVkvMURFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVppMkRKO0FZOTFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVpnMkRKO0FZNzFERTtFQUNFO0VBQ0E7QVorMURKO0FZNTFERTtFQUNFLGdDWmhMVTtFWWlMVjtFQUNBO0VBQ0E7RUFDQTtBWjgxREo7QVk1MURJO0VBQ0U7RUFDQTtBWjgxRE47QVk1MURNO0VBQ0U7QVo4MURSO0FZejFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FaMjFESjtBWXgxREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWjAxREo7QVl4MURJO0VBQ0U7QVowMUROO0FZdDFERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FadzFESjtBWXQxREk7RUFDRTtBWncxRE47O0FZbjFEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWnMxREY7QVlwMURFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FacTFESjtBWWoxREk7RUFDRTtFQUNBO0FabTFETjtBWWgxREk7RUFDRTtFQUNBO0VBQ0E7QVprMUROO0FZLzBESTtFQUNFO0VBQ0E7QVppMUROOztBYW5uRUE7RUFDRTtFQUNBO0Fic25FRjs7QWFsbkVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FicW5FSjtBYW5uRUk7RUFDRTtFQUNBO0VBQ0E7QWJxbkVOO0Fhbm5FTTtFQUNFO0VBQ0E7QWJxbkVSO0FhaG5FRTtFQUNFO0VBQ0E7RUFDQTtBYmtuRUo7QWEvbUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWJpbkVKO0FhOW1FRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiZ25FSjtBYTdtRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIrbUVKO0FhNW1FRTtFQUNFLGdDYnRDVTtFYXVDVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiOG1FSjtBYTNtRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBYjZtRUo7QWExbUVFO0VBQ0U7RUFDQTtFQUNBO0FiNG1FSjtBYTFtRUk7RUFMRjtJQU1JO0lBQ0E7RWI2bUVKO0FBQ0Y7QWExbUVFO0VBQ0U7QWI0bUVKO0Fhem1FRTtFQUNFO0VBQ0E7RUFDQTtBYjJtRUo7QWF6bUVJO0VBQ0UsZ0NiMUVRO0VhMkVSO0VBQ0E7RUFDQTtFQUNBO0FiMm1FTjtBYXhtRUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBYjBtRU47QWF2bUVJO0VBQ0U7QWJ5bUVOO0FhdG1FSTtFQUNFO0VBQ0E7QWJ3bUVOO0FhdG1FTTtFQUNFO0VBQ0E7RUFDQTtBYndtRVI7QWFwbUVJO0VBQ0U7RUFDQTtBYnNtRU47QWFwbUVNO0VBQ0U7RUFDQTtFQUNBO0Fic21FUjtBYWxtRUk7RUFDRTtFQUNBO0Fib21FTjtBYWptRUk7RUFDRTtBYm1tRU47QWEvbEVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWJpbUVKO0FhL2xFSTtFQU5GO0lBT0k7SUFDQTtFYmttRUo7QUFDRjtBYS9sRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYmltRUo7QWE5bEVFO0VBQ0UsZ0NibkpVO0Vhb0pWO0VBQ0E7RUFDQTtFQUNBO0FiZ21FSjtBYTdsRUU7RUFDRTtFQUNBO0VBQ0E7QWIrbEVKO0FhN2xFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiK2xFTjtBYTdsRU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYitsRVI7QWE1bEVNO0VBQ0U7QWI4bEVSO0FhemxFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjJsRUo7QWF4bEVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjBsRUo7QWF4bEVJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIwbEVOO0FhdGxFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fid2xFSjtBYXRsRUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBYndsRU47QWF0bEVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYndsRVI7QWFubEVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWJxbEVKO0FhbmxFSTtFQUNFO0FicWxFTjtBYWpsRUU7RUFDRTtFQUNBO0VBQ0E7QWJtbEVKO0FhaGxFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fia2xFSjtBYWhsRUk7RUFDRTtBYmtsRU47QWE5a0VFO0VBQ0UsZ0NiclJVO0Vhc1JWO0VBQ0E7RUFDQTtFQUNBO0FiZ2xFSjtBYTdrRUU7RUFDRTtFQUNBO0VBQ0E7QWIra0VKO0FhNWtFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWI4a0VKO0FhM2tFSTtFQVhGO0lBWUk7SUFDQTtJQUNBO0ViOGtFSjtBQUNGO0FhNWtFSTtFQUNFO0VBQ0E7QWI4a0VOO0FhMWtFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWI0a0VKO0FhemtFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiMmtFSjtBYXhrRUU7RUFDRSxnQ2I1VVU7RWE2VVY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjBrRUo7O0FjbjdFQTtFQUNFO0VBQ0E7QWRzN0VGOztBY243RUE7RUFDRTtBZHM3RUY7QWNwN0VFO0VBQ0U7RUFDQTtBZHM3RUo7QWNwN0VJO0VBSkY7SUFLSTtJQUNBO0VkdTdFSjtBQUNGO0FjcDdFRTtFQUNFLGdDZEtVO0VjSlY7RUFDQTtFQUNBO0VBQ0E7QWRzN0VKO0FjbjdFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FkcTdFSjtBY2w3RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRvN0VKO0FjajdFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FkbTdFSjtBY2o3RUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZG03RU47QWMvNkVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRpN0VKO0FjOTZFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FkZzdFSjtBYzk2RUk7RUFDRTtFQUNBO0VBQ0E7QWRnN0VOO0FjOTZFTTtFQUNFO0FkZzdFUjtBYzM2RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNjZFSjtBYzE2RUU7RUFDRSxnQ2RwRVU7RWNxRVY7RUFDQTtFQUNBO0VBQ0E7QWQ0NkVKO0FjejZFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FkMjZFSjtBY3g2RUU7RUFDRTtFQUNBO0FkMDZFSjtBY3g2RUk7RUFKRjtJQUtJO0VkMjZFSjtBQUNGO0FjeDZFRTtFQUNFO0VBQ0E7RUFDQTtBZDA2RUo7QWN2NkVNO0VBREY7SUFFSTtFZDA2RU47QUFDRjtBY3Q2RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZHc2RUo7QWNyNkVFO0VBRUU7RUFDQTtFQUNBLGlDZHJIUztFY3NIVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRzNkVKO0FjcDZFSTtFQUNFO0VBQ0E7QWRzNkVOO0FjbDZFRTtFQUNFO0VBQ0E7QWRvNkVKOztBZTlqRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZmlrRkY7QWUvakZFO0VBQ0U7RUFDQTtFQUNBO0FmaWtGSjtBZTlqRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZmdrRko7QWU3akZFO0VBQ0UsZ0NmQ1U7RWVBVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmK2pGSjtBZTVqRkU7RUFDRTtFQUNBO0VBQ0E7QWY4akZKO0FlM2pGRTtFQUNFO0VBQ0E7RUFDQTtBZjZqRko7QWUzakZJO0VBQ0U7RUFDQTtFQUNBO0FmNmpGTjtBZTNqRk07RUFDRTtFQUNBO0FmNmpGUjtBZXpqRkk7RUFDRTtFQUNBO0VBQ0E7QWYyakZOO0FlempGTTtFQUNFO0VBQ0E7QWYyakZSO0FldmpGSTtFQUNFO0FmeWpGTjtBZXRqRkk7RUFDRTtFQUNBO0VBQ0E7QWZ3akZOO0FldGpGTTtFQUNFO0Fmd2pGUjtBZXBqRkk7RUFDRSxnQ2Z2RFE7RWV3RFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fmc2pGTjtBZXBqRk07RUFDRTtFQUNBO0VBQ0E7QWZzakZSO0FlbGpGSTtFQUNFLGdDZnZFUTtFZXdFUjtFQUNBO0VBQ0E7RUFDQTtBZm9qRk47QWVqakZJO0VBQ0U7QWZtakZOO0FlaGpGSTtFQUNFO0Fma2pGTjtBZS9pRkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZmlqRk47QWU3aUZFO0VBQ0U7QWYraUZKO0FlNWlGRTtFQUNFO0FmOGlGSjtBZTNpRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWY2aUZKLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9zdHlsZS5zY3NzIiwid2VicGFjazovL2Zscy1zdGFydC8uL3NyYy9zY3NzL2Jhc2UvY29sb3JzLXBhbGV0dGUuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9iYXNlL251bGwuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9iYXNlL21peGlucy5zY3NzIiwid2VicGFjazovL2Zscy1zdGFydC8uL3NyYy9zY3NzL2Jhc2UvbWVudS5zY3NzIiwid2VicGFjazovL2Zscy1zdGFydC8uL3NyYy9zY3NzL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9jb21tb24uc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9ob21lLnNjc3MiLCJ3ZWJwYWNrOi8vZmxzLXN0YXJ0Ly4vc3JjL3Njc3Mvc2VydmljZXMuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9hYm91dC5zY3NzIiwid2VicGFjazovL2Zscy1zdGFydC8uL3NyYy9zY3NzL2Jsb2cuc2NzcyIsIndlYnBhY2s6Ly9mbHMtc3RhcnQvLi9zcmMvc2Nzcy9hcnRpY2xlLnNjc3MiLCJ3ZWJwYWNrOi8vZmxzLXN0YXJ0Ly4vc3JjL3Njc3MvY29udGFjdC5zY3NzIiwid2VicGFjazovL2Zscy1zdGFydC8uL3NyYy9zY3NzL2xlZ2FsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyDQn9GW0LTQutC70Y7Rh9C10L3QvdGPINC80ZbQutGB0LjQvdGW0LIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZS9taXhpbnNcIjtcblxuLy8g0J/RltC00LrQu9GO0YfQtdC90L3RjyDRiNGA0LjRhNGC0ZbQsiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1OZXdzcmVhZGVyOml0YWwsb3Bzeix3Z2h0QDAsNi4uNzIsNTAwOzAsNi4uNzIsNjAwOzAsNi4uNzIsNzAwOzEsNi4uNzIsNTAwJmZhbWlseT1PdXRmaXQ6d2dodEA0MDA7NTAwOzYwMDs3MDAmZGlzcGxheT1zd2FwXCIpO1xuLy8gQGltcG9ydCBcImZvbnRzL2ZvbnRzXCI7XG5cbi8vINCf0ZbQtNC60LvRjtGH0LXQvdC90Y8g0YHRgtC40LvRltCyIExlbmlzICjQv9GW0LTQutC70Y7Rh9C40YLQuCDRgNCw0LfQvtC8INC3IGpzL2xpYnMvbGVuaXMuanMpXG4vLyBAaW1wb3J0IFwibGlicy9sZW5pc1wiO1xuXG4vLyDQn9GW0LTQutC70Y7Rh9C10L3QvdGPINGW0LrQvtC90LrQvtCy0LjRhSDRiNGA0LjRhNGC0ZbQsiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vINCf0ZbQtNC60LvRjtGH0LjRgtC4LCDRj9C60YnQviDRlCDRhNCw0LnQuyDRltC60L7QvdC60L7QstC+0LPQviDRiNGA0LjRhNGC0YNcbi8vIEBpbXBvcnQgXCJmb250cy9pY29uc1wiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8g0J3QsNC70LDRiNGC0YPQstCw0L3QvdGPINGI0LDQsdC70L7QvdGDID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyDQl9CwINC30LDQvNC+0LLRh9GD0LLQsNC90L3Rj9C8INGI0YDQuNGE0YIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kZm9udEZhbWlseTogXCJPdXRmaXRcIiwgc2Fucy1zZXJpZjtcbiRmb250U2l6ZTogdG9SZW0oMTYpO1xuXG4kZm9udERpc3BsYXk6IFwiTmV3c3JlYWRlclwiLCBzZXJpZjtcblxuLy8g0J7RgdC90L7QstC90ZYg0LrQvtC70YzQvtGA0LggKNGC0LXQutGB0YIg0L7RgdC90L7QstC90L7Qs9C+INC/0L7RgtC+0LrRgyDigJQg0LcgQ1NTLdC30LzRltC90L3QuNGFKVxuJG1haW5Db2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcblxuLy8g0J/QsNC70ZbRgtGA0LAg0LrQvtC70YzQvtGA0ZbQslxuQGltcG9ydCBcImJhc2UvY29sb3JzLXBhbGV0dGVcIjtcblxuLy8g0J3QsNC70LDRiNGC0YPQstCw0L3QvdGPINCw0LTQsNC/0YLQuNCy0L3QvtGXINGB0ZbRgtC60LggPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8g0JzRltC90ZbQvNCw0LvRjNC90LAg0YjQuNGA0LjQvdCwINGB0YLQvtGA0ZbQvdC60LhcbiRtaW5XaWR0aDogMzIwO1xuLy8g0KjQuNGA0LjQvdCwINC/0L7Qu9C+0YLQvdCwICjQvNCw0LrQtdGC0YMpXG4kbWF4V2lkdGg6IDE5MjA7XG4vLyDQqNC40YDQuNC90LAg0L7QsdC80LXQttGD0Y7Rh9C+0LPQviDQutC+0L3RgtC10LnQvdC10YDQsCAoMCA9INC90LXQvNCw0ZQg0L7QsdC80LXQttC10L3QvdGPKVxuJG1heFdpZHRoQ29udGFpbmVyOiAxMTcwO1xuLy8g0JfQsNCz0LDQu9GM0L3QuNC5INCy0ZbQtNGB0YLRg9C/INGDINC60L7QvdGC0LXQudC90LXRgNCwXG4vLyAoMzAgPSDQv9C+IDE1cHgg0LvRltCy0L7RgNGD0Ycg0ZYg0L/RgNCw0LLQvtGA0YPRhywgMCA9INC90LXQvNCw0ZQg0LLRltC00YHRgtGD0L/RgylcbiRjb250YWluZXJQYWRkaW5nOiAzMDtcblxuLy8g0KjQuNGA0LjQvdCwINGB0L/RgNCw0YbRjNC+0LLRg9Cy0LDQvdC90Y8g0L/QtdGA0YjQvtCz0L4g0LHRgNC10LnQutC/0L7RltC90YLRg1xuJGNvbnRhaW5lcldpZHRoOiAkbWF4V2lkdGhDb250YWluZXIgKyAkY29udGFpbmVyUGFkZGluZztcblxuLy8g0JHRgNC10LnQui3Qv9C+0ZfQvdGC0LhcbiRwYzogdG9FbShcbiAgJGNvbnRhaW5lcldpZHRoXG4pOyAvLyDQn9CaLCDQvdC+0YPRgtCx0YPQutC4LCDQtNC10Y/QutGWINC/0LvQsNC90YjQtdGC0Lgg0YMg0LPQvtGA0LjQt9C+0L3RgtCw0LvRjNC90L7QvNGDINC/0L7Qu9C+0LbQtdC90L3RllxuJHRhYmxldDogdG9FbSg5OTEuOTgpOyAvLyDQn9C70LDQvdGI0LXRgtC4LCDQtNC10Y/QutGWINGC0LXQu9C10YTQvtC90Lgg0LIg0LPQvtGA0LjQt9C+0L3RgtCw0LvRjNC90L7QvNGDINC/0L7Qu9C+0LbQtdC90L3RllxuJG1vYmlsZTogdG9FbSg3NjcuOTgpOyAvLyDQotC10LvQtdGE0L7QvdC4IExcbiRtb2JpbGVTbWFsbDogdG9FbSg0NzkuOTgpOyAvLyDQotC10LvQtdGE0L7QvdC4IFNcblxuLy8g0KLQuNC/INCw0LTQsNC/0YLQuNCy0LA6XG4vLyAxID0g0YfRg9C50L3RltGB0YLRjCAo0YMg0LrQvtC90YLQtdC50L3QtdGA0LAg0L3QtdC80LDRlCDQsdGA0LXQudC60L/QvtGW0L3RgtGW0LIpLFxuLy8gMiA9INC/0L4g0LHRgNC10LnQui3Qv9C+0ZfQvdGCICjQutC+0L3RgtC10LnQvdC10YAg0LfQvNGW0L3RjtGUINGB0LLQvtGOINGI0LjRgNC40L3RgyDQv9C+INCx0YDQtdC50Lot0L/QvtGX0L3RgilcbiRyZXNwb25zaXZlVHlwZTogMTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyDQn9GW0LTQutC70Y7Rh9C10L3QvdGPINGB0YLQuNC70ZbQsiBCb290c3RyYXBcbi8vIEBpbXBvcnQgXCJsaWJzL2Jvb3RzdHJhcC5taW5cIjtcbi8vINCe0LHQvdGD0LvQtdC90L3RjyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZS9udWxsXCI7XG5cbi8vINCf0ZbQtNC60LvRjtGH0LXQvdC90Y8g0LrQvtC80L/QvtC90LXQvdGC0ZbQsiB0YWlsd2luZCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQGltcG9ydCBcImxpYnMvdGFpbHdpbmRcIjtcblxuLy8g0KHRgtC40LvRliDRgtC10LPQsCBCT0RZID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5odG1sIHtcbiAgQGV4dGVuZCAlc21vb3Roc2Nyb2xsO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWJnKSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pLFxuICAgIGNvbG9yIDAuM3MgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG59XG5ib2R5IHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgY29sb3IgMC4zcyB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcbiAgLmxvY2sgJiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogbm9uZTtcbiAgfVxuICAvLyDQodCw0LnRgiDQt9Cw0LLQsNC90YLQsNC20LXQvdC40LlcbiAgLmxvYWRlZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vLyDQntCx0L7Qu9C+0L3QutCwIHdyYXBwZXIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi53cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8g0J/RgNC40YLQuNGB0LrQsNGU0LzQviBmb290ZXJcbiAgPiBtYWluIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuICAvLyDQpNGW0LrRgSDQtNC70Y8g0YHQu9Cw0LnQtNC10YDRltCyIOKAlCDQu9C40YjQtSDQtNC70Y8gbWFpbiwg0L3QtSDQtNC70Y8g0LLRgdGM0L7Qs9C+IHdyYXBwZXIgKNGW0L3QsNC60YjQtSDQutC70ZbQvyDQutC+0L3RgtC10L3RgtGDKVxuICA+IG1haW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLyAoaSkg0KHRgtC40LvRliDQsdGD0LTRg9GC0Ywg0LfQsNGB0YLQvtGB0L7QstGD0LLQsNGC0LjRgdGMINC00L5cbi8vINCy0YHRltGFINC60LvQsNGB0ZbQsiwg0YnQviDQvNGW0YHRgtGP0YLRjCAqX19jb250YWluZXJcbi8vINCd0LDQv9GA0LjQutC70LDQtCBoZWFkZXJfX2NvbnRhaW5lciwgbWFpbl9fY29udGFpbmVyINGWINGCLtC/LlxuLy8g0KHQvdGW0L/Qv9C10YIgKEhUTUwpOiBjbnRcblxuQGlmICgkcmVzcG9uc2l2ZVR5cGU9PTEpIHtcbiAgLy8g0KfRg9C50L3QsFxuICBbY2xhc3MqPVwiX19jb250YWluZXJcIl0ge1xuICAgIEBpZiAoJG1heFdpZHRoQ29udGFpbmVyPjApIHtcbiAgICAgIG1heC13aWR0aDogdG9SZW0oJGNvbnRhaW5lcldpZHRoKTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBAaWYgKCRjb250YWluZXJQYWRkaW5nPjApIHtcbiAgICAgIEBpZiAoJG1heFdpZHRoQ29udGFpbmVyPjApIHtcbiAgICAgICAgcGFkZGluZzogMCB0b1JlbShtYXRoLmRpdigkY29udGFpbmVyUGFkZGluZywgMikpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlVmFsdWUoXG4gICAgICAgICAgXCJwYWRkaW5nLWxlZnRcIixcbiAgICAgICAgICBtYXRoLmRpdigkY29udGFpbmVyUGFkZGluZywgMiksXG4gICAgICAgICAgMTVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmVWYWx1ZShcbiAgICAgICAgICBcInBhZGRpbmctcmlnaHRcIixcbiAgICAgICAgICBtYXRoLmRpdigkY29udGFpbmVyUGFkZGluZywgMiksXG4gICAgICAgICAgMTVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0gQGVsc2Uge1xuICAvLyDQkdGA0LXQudC6LdC/0L7Rl9C90YLQsNC80LhcbiAgW2NsYXNzKj1cIl9fY29udGFpbmVyXCJdIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAaWYgKCRtYXhXaWR0aENvbnRhaW5lcj4wKSB7XG4gICAgICBtYXgtd2lkdGg6IHRvUmVtKCRjb250YWluZXJXaWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaWYgKCRjb250YWluZXJQYWRkaW5nPjApIHtcbiAgICAgICAgcGFkZGluZzogMCB0b1JlbShtYXRoLmRpdigkY29udGFpbmVyUGFkZGluZywgMikpO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHBjKSB7XG4gICAgICBtYXgtd2lkdGg6IHRvUmVtKDk3MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBtYXgtd2lkdGg6IHRvUmVtKDc1MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBAaWYgKCRjb250YWluZXJQYWRkaW5nPjAgYW5kICRtYXhXaWR0aENvbnRhaW5lcj4wKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgdG9SZW0obWF0aC5kaXYoJGNvbnRhaW5lclBhZGRpbmcsIDIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gKGkpINCV0LrRgdC/0LXRgNC10LzQtdC90YLQsNC70YzQvdC40Lkg0YTRg9C90LrRhtGW0L7QvdCw0Ltcbi8vINCX0LDQvNGW0L3QsCDQvtCx0LzQtdC20YPRjtGH0L7QvNGDINC60L7QvdGC0LXQudC90LXRgNGDXG5bY2xhc3MqPVwiLS1nY1wiXSB7XG4gIEBpbmNsdWRlIGdyaWRDb250YWluZXIoKTtcbn1cbi8vINCf0ZbQtNC60LvRjtGH0LXQvdC90Y8g0LHQsNC30L7QstC40YUg0YHRgtC40LvRltCyLCDRiNCw0LHQu9C+0L3RltCyICjQt9Cw0LPQvtGC0ZbQstC10LvRjCkg0YLQsCDQtNC+0L/QvtC80ZbQttC90LjRhSDQutC70LDRgdGW0LJcbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vINCf0ZbQtNC60LvRjtGH0LXQvdC90Y8g0YHRgtC40LvRltCyINC30LDQs9Cw0LvRjNC90LjRhSDQtdC70LXQvNC10L3RgtGW0LIg0L/RgNC+0LXQutGC0YNcbkBpbXBvcnQgXCJjb21tb25cIjtcblxuLy8g0J/RltC00LrQu9GO0YfQtdC90L3RjyDRgdGC0LjQu9GW0LIg0L7QutGA0LXQvNC40YUg0LHQu9C+0LrRltCyXG5AaW1wb3J0IFwiaGVhZGVyXCI7XG5AaW1wb3J0IFwiZm9vdGVyXCI7XG5cbi8vINCf0ZbQtNC60LvRjtGH0LXQvdC90Y8g0YHRgtC40LvRltCyINC+0LrRgNC10LzQuNGFINGB0YLQvtGA0ZbQvdC+0LpcbkBpbXBvcnQgXCJob21lXCI7XG5AaW1wb3J0IFwic2VydmljZXNcIjtcbkBpbXBvcnQgXCJhYm91dFwiO1xuQGltcG9ydCBcImJsb2dcIjtcbkBpbXBvcnQgXCJhcnRpY2xlXCI7XG5AaW1wb3J0IFwiY29udGFjdFwiO1xuQGltcG9ydCBcImxlZ2FsXCI7XG4iLCI6cm9vdCB7XG4gIC8qIEJhc2Ug4oCUIExhYiBTaWduYWwgKi9cbiAgLS1jb2xvci1ibGFjazogMTAsIDEyLCAxODtcbiAgLS1jb2xvci1iZzogMjM3LCAyMzQsIDIyODtcbiAgLS1jb2xvci1iZy1zZWNvbmRhcnk6IDIyMCwgMjE2LCAyMDg7XG4gIC0tY29sb3Itd2hpdGU6IDI1MiwgMjUxLCAyNDg7XG4gIC0tY29sb3ItZ3JheS0xMDA6IDI0OCwgMjQ3LCAyNDQ7XG4gIC0tY29sb3ItZ3JheS0yMDA6IDIxMCwgMjA2LCAxOTg7XG4gIC0tY29sb3ItZ3JheS0zMDA6IDE3NSwgMTcwLCAxNjI7XG4gIC0tY29sb3ItZ3JheS00MDA6IDE0MCwgMTM1LCAxMjg7XG4gIC0tY29sb3ItZ3JheS01MDA6IDEwOCwgMTAzLCA5ODtcbiAgLS1jb2xvci1ncmF5LTYwMDogODIsIDc4LCA3NDtcbiAgLS1jb2xvci1ncmF5LTcwMDogNTgsIDU0LCA1MDtcbiAgLS1jb2xvci1ncmF5LTgwMDogMzYsIDMyLCAyODtcbiAgLS1jb2xvci1ncmF5LTkwMDogMjAsIDI0LCAzMjtcblxuICAvKiBCcmFuZCAqL1xuICAtLWNvbG9yLXByaW1hcnk6IDIwLCAyNCwgMzI7XG4gIC0tY29sb3Itc2Vjb25kYXJ5OiA0MiwgMTU3LCAxNDM7XG4gIC0tY29sb3ItYWNjZW50OiAyMzIsIDE2OCwgNTY7XG4gIC0tY29sb3ItcHJpbWFyeS1kYXJrOiAxMCwgMTIsIDE4O1xuICAtLWNvbG9yLXByaW1hcnktbGlnaHQ6IDQ1LCA1MiwgNjQ7XG4gIC0tY29sb3ItZGVlcC1uYXZ5OiAyMCwgMjQsIDMyO1xuICAtLWNvbG9yLXNsYXRlOiA4MiwgODgsIDk2O1xuICAtLWNvbG9yLW9uLXByaW1hcnk6IDI1MiwgMjUxLCAyNDg7XG4gIC0tY29sb3Itb24tc2Vjb25kYXJ5OiAxMCwgMTIsIDE4O1xuICAtLWNvbG9yLW9uLWRhcms6IDIzNywgMjM0LCAyMjg7XG4gIC0tY29sb3Itb24tYWNjZW50OiAyMCwgMjQsIDMyO1xuICAtLWhlcm8tYWNjZW50LWJnOiAyMjAsIDIxNiwgMjA4O1xuICAtLXN1cmZhY2UtbGlnaHQ6IDI1MiwgMjUxLCAyNDg7XG5cbiAgLyogU2VtYW50aWMgKi9cbiAgLS1wcmltYXJ5OiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAtLXNlY29uZGFyeTogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAtLWFjY2VudDogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAtLWludmVyc2U6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAtLWJnLXByaW1hcnk6IHJnYih2YXIoLS1jb2xvci1iZykpO1xuICAtLWJnLXNlY29uZGFyeTogcmdiKHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSkpO1xuICAtLWJnLWFjY2VudDogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgLS1iZy1pbnZlcnNlOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgLS1iZy1saWdodDogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gIC0tdGV4dC1wcmltYXJ5OiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgLS10ZXh0LXNlY29uZGFyeTogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gIC0tdGV4dC1hY2NlbnQ6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gIC0tdGV4dC1pbnZlcnNlOiByZ2IodmFyKC0tY29sb3ItZ3JheS0xMDApKTtcblxuICAtLWJvcmRlci1jb2xvcjogcmdiYSgyMCwgMjQsIDMyLCAwLjEpO1xuICAtLWJvcmRlci1zdHJvbmc6IHJnYmEoMjAsIDI0LCAzMiwgMC4yMik7XG4gIC0tY2FyZC1iZzogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gIC0tc2hhZG93LXNvZnQ6IDAgMC41cmVtIDEuNzVyZW0gcmdiYSgxMCwgMTIsIDE4LCAwLjA3KTtcbiAgLS1zaGFkb3ctZmxvYXQ6IDAgMS4yNXJlbSAyLjVyZW0gcmdiYSgxMCwgMTIsIDE4LCAwLjEyKTtcbiAgLS1zaGFkb3ctZ2xvdzogMCAwIDJyZW0gcmdiYSg0MiwgMTU3LCAxNDMsIDAuMTgpO1xuICAtLXNoYWRvdy1idG46IDAgMC4zNXJlbSAxcmVtIHJnYmEoMjAsIDI0LCAzMiwgMC4xOCk7XG4gIC0tcmFkaXVzLXNtOiAwLjI1cmVtO1xuICAtLXJhZGl1cy1tZDogMC41cmVtO1xuICAtLXJhZGl1cy1sZzogMC43NXJlbTtcbiAgLS1yYWRpdXMteGw6IDFyZW07XG4gIC0tcmFkaXVzLXBpbGw6IDYyLjQzNzVyZW07XG4gIC0tZ2xhc3MtYmx1cjogMC43NXJlbTtcblxuICAtLXRyYW5zaXRpb24tZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG59XG4iLCIqIHtcclxuXHRwYWRkaW5nOiAwcHg7XHJcblx0bWFyZ2luOiAwcHg7XHJcblx0Ym9yZGVyOiAwcHg7XHJcbn1cclxuKixcclxuKjo6YmVmb3JlLFxyXG4qOjphZnRlciB7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuOmZvY3VzLFxyXG46YWN0aXZlIHtcclxuXHQvLyBvdXRsaW5lOiBub25lO1xyXG59XHJcbmE6Zm9jdXMsXHJcbmE6YWN0aXZlIHtcclxuXHQvLyBvdXRsaW5lOiBub25lO1xyXG59XHJcbmh0bWwsXHJcbmJvZHkge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRtaW4td2lkdGg6ICRtaW5XaWR0aCArIHB4O1xyXG59XHJcbmJvZHkge1xyXG5cdGNvbG9yOiAkbWFpbkNvbG9yO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseTtcclxuXHRmb250LXNpemU6ICRmb250U2l6ZTtcclxuXHQvL3RleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcblx0LW1vei10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcbmlucHV0LFxyXG5idXR0b24sXHJcbnRleHRhcmVhIHtcclxuXHRmb250LWZhbWlseTogJGZvbnRGYW1pbHk7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG5cdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG5pbnB1dCxcclxudGV4dGFyZWEge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5sYWJlbCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCxcclxub3B0aW9uIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuYSB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG51bCBsaSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5pbWcge1xyXG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbn1cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcblx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG59XHJcblxyXG5kbCwgb2wsIHVsIHtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxufSIsIi8v0J/RltC00LrQu9GO0YfQtdC90L3RjyDRiNGA0LjRhNGC0YNcclxuQG1peGluIGZvbnQoJGZvbnRfbmFtZSwgJGZpbGVfbmFtZSwgJHdlaWdodCwgJHN0eWxlKSB7XHJcblx0QGZvbnQtZmFjZSB7XHJcblx0XHRmb250LWZhbWlseTogJGZvbnRfbmFtZTtcclxuXHRcdGZvbnQtZGlzcGxheTogc3dhcDtcclxuXHRcdHNyYzpcclxuXHRcdFx0dXJsKFwiLi4vZm9udHMvI3skZmlsZV9uYW1lfS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcclxuXHRcdFx0dXJsKFwiLi4vZm9udHMvI3skZmlsZV9uYW1lfS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XHJcblx0XHRmb250LXdlaWdodDogI3skd2VpZ2h0fTtcclxuXHRcdGZvbnQtc3R5bGU6ICN7JHN0eWxlfTtcclxuXHR9XHJcbn1cclxuLy9QZXJjZW50XHJcbkBmdW5jdGlvbiBwZXJjZW50KCRweCwgJGZyb206IDEwMCkge1xyXG5cdCRyZXN1bHQ6IG1hdGguZGl2KCRweCwgJGZyb20pICogMTAwJTtcclxuXHRAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuLy9SRU1cclxuQGZ1bmN0aW9uIHRvUmVtKCRweCwgJGN1cnJlbnQ6IDE2KSB7XHJcblx0JHJlc3VsdDogbWF0aC5kaXYoJHB4LCAkY3VycmVudCkgKyByZW07XHJcblx0QHJldHVybiAkcmVzdWx0O1xyXG59XHJcbi8vRU1cclxuQGZ1bmN0aW9uIHRvRW0oJHB4LCAkY3VycmVudDogMTYpIHtcclxuXHQkcmVzdWx0OiBtYXRoLmRpdigkcHgsICRjdXJyZW50KSArIGVtO1xyXG5cdEByZXR1cm4gJHJlc3VsdDtcclxufVxyXG5cclxuLy9DdXJyZW5jeVxyXG5AbWl4aW4gY3VycmVuY3koJHN5bSkge1xyXG5cdCY6OmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6IFwiI3skc3ltfVwiO1xyXG5cdH1cclxufVxyXG5cclxuLy8g0KLRgNC40LrRg9GC0L3QuNC6XHJcbkBtaXhpbiB0cmlhbmdsZSgkZGlyZWN0aW9uLCAkY29sb3IsICRzaXplLCAkc2l6ZTI6ICRzaXplKSB7XHJcblx0QGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XHJcblx0XHRib3JkZXI6IHRvUmVtKCRzaXplMikgc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRib3JkZXItcmlnaHQ6IHRvUmVtKCRzaXplKSBzb2xpZCAkY29sb3I7XHJcblx0fVxyXG5cdEBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcclxuXHRcdGJvcmRlcjogdG9SZW0oJHNpemUyKSBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlci1sZWZ0OiB0b1JlbSgkc2l6ZSkgc29saWQgJGNvbG9yO1xyXG5cdH1cclxuXHRAaWYgJGRpcmVjdGlvbiA9PSB0b3Age1xyXG5cdFx0Ym9yZGVyOiB0b1JlbSgkc2l6ZTIpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogdG9SZW0oJHNpemUpIHNvbGlkICRjb2xvcjtcclxuXHR9XHJcblx0QGlmICRkaXJlY3Rpb24gPT0gYm90dG9tIHtcclxuXHRcdGJvcmRlcjogdG9SZW0oJHNpemUyKSBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlci10b3A6IHRvUmVtKCRzaXplKSBzb2xpZCAkY29sb3I7XHJcblx0fVxyXG59XHJcblxyXG4vLyBHcmlkc1xyXG5AbWl4aW4gZ3JpZENhcmRzKCR0eXBlOiBmaXQsICRtaW46IDI4MHB4LCAkbWF4OiAxZnIsICRnYXA6IDMwcHgpIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdhcDogJGdhcDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLSN7JHR5cGV9LCBtaW5tYXgoJG1pbiwgJG1heCkpO1xyXG59XHJcblxyXG4vLyDQkNC00LDQv9GC0LjQstC90LAg0LLQu9Cw0YHRgtC40LLRltGB0YLRjCAoY2xhbXApXHJcbkBtaXhpbiBhZGFwdGl2ZVZhbHVlKCRwcm9wZXJ0eSwgJHN0YXJ0U2l6ZSwgJG1pblNpemUsICRrZWVwU2l6ZTogMCwgJHdpZHRoRnJvbTogJGNvbnRhaW5lcldpZHRoLCAkd2lkdGhUbzogJG1pbldpZHRoKSB7XHJcblx0QGlmICgkc3RhcnRTaXplPT0wKSB7XHJcblx0XHQkc3RhcnRTaXplOiAwLjAwMDAwMTtcclxuXHR9XHJcblx0QGlmICgkbWluU2l6ZT09MCkge1xyXG5cdFx0JG1pblNpemU6IDAuMDAwMDAxO1xyXG5cdH1cclxuXHJcblx0Ly8g0JTQu9GPIGNhbGMoKTtcclxuXHQkYWRkU2l6ZTogbWF0aC5kaXYoJHN0YXJ0U2l6ZSAtICRtaW5TaXplLCAxNik7XHJcblxyXG5cdEBpZiAoJHdpZHRoRnJvbSA9PSAkY29udGFpbmVyV2lkdGggYW5kICRtYXhXaWR0aENvbnRhaW5lciA9PSAwKSB7XHJcblx0XHQkd2lkdGhGcm9tOiAkbWF4V2lkdGg7XHJcblx0fVxyXG5cclxuXHQvLyDQkdGA0LXQudC6LdC/0L7Rl9C90YLQuCDQsiBFTVxyXG5cdCR3aWR0aEZyb21NZWRpYTogdG9FbSgkd2lkdGhGcm9tKTtcclxuXHQkd2lkdGhUb01lZGlhOiB0b0VtKCR3aWR0aFRvKTtcclxuXHJcblx0Ly8g0KTQvtGA0LzRg9C70LAg0L/Qu9Cw0LLQsNGO0YfQvtCz0L4g0LfQvdCw0YfQtdC90L3Rj1xyXG5cdC8vINCY0YHRgtC+0YfQvdC40Lo6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vbGluZWFybHktc2NhbGUtZm9udC1zaXplLXdpdGgtY3NzLWNsYW1wLWJhc2VkLW9uLXRoZS12aWV3cG9ydC9cclxuXHQkc2xvcGU6IG1hdGguZGl2KCgkc3RhcnRTaXplIC0gJG1pblNpemUpLCAoJHdpZHRoRnJvbSAtICR3aWR0aFRvKSk7XHJcblx0JHlJbnRlcnNlY3Rpb246IC0kd2lkdGhUbyAqICRzbG9wZSArICRtaW5TaXplO1xyXG5cdEBpZiAoJHlJbnRlcnNlY3Rpb249PTApIHtcclxuXHRcdCR5SW50ZXJzZWN0aW9uOiAwLjAwMDAwMTtcclxuXHR9XHJcblx0JGZseVZhbHVlOiAje3RvUmVtKCR5SW50ZXJzZWN0aW9uKX1cIiArIFwiICN7JHNsb3BlICogMTAwfXZ3O1xyXG5cclxuXHQvLyDQntGC0YDQuNC80LDQvdC90Y8g0LfQvdCw0YfQtdC90L3RjyDQstC70LDRgdGC0LjQstC+0YHRgtGWXHJcblx0JHByb3BlcnR5VmFsdWU6ICN7XCJjbGFtcChcIiB0b1JlbSgkbWluU2l6ZSkgXCIsXCIgJGZseVZhbHVlIFwiLFwiIHRvUmVtKCRzdGFydFNpemUpIFwiKVwifTtcclxuXHQvLyDQr9C60YnQviDQvdC10LPQsNGC0LjQstC90ZYg0LfQvdCw0YfQtdC90L3Rj1xyXG5cdEBpZiAoJG1pblNpemUgPiAkc3RhcnRTaXplKSB7XHJcblx0XHQkcHJvcGVydHlWYWx1ZTogI3tcImNsYW1wKFwiIHRvUmVtKCRzdGFydFNpemUpIFwiLFwiICRmbHlWYWx1ZSBcIixcIiB0b1JlbSgkbWluU2l6ZSkgXCIpXCJ9O1xyXG5cdH1cclxuXHJcblx0Ly8g0JLRgdGC0LDQvdC+0LLQu9GO0ZTQvNC+INC30L3QsNGH0LXQvdC90Y8g0LfQsCDQt9Cw0LzQvtCy0YfRg9Cy0LDQvdC90Y/QvFxyXG5cdEBpZiAka2VlcFNpemUgIT0gMSBhbmQgJGtlZXBTaXplICE9IDMge1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aEZyb21NZWRpYSkge1xyXG5cdFx0XHQjeyRwcm9wZXJ0eX06IHRvUmVtKCRzdGFydFNpemUpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQvLyDQkNC00LDQv9GC0YPRlNC80L4g0YDQvtC30LzRltGAINGDINC/0YDQvtC80ZbQttC60YMg0LzRltC2INC30LDQt9C90LDRh9C10L3QuNC80Lgg0YjQuNGA0LjQvdCw0LzQuCDQsifRjtC/0L7RgNGC0YNcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoVG9NZWRpYSkgYW5kIChtYXgtd2lkdGg6ICR3aWR0aEZyb21NZWRpYSkge1xyXG5cdFx0I3skcHJvcGVydHl9OiAkcHJvcGVydHlWYWx1ZTtcclxuXHJcblx0XHQvLyDQr9C60YnQviDQv9GW0LTRgtGA0LjQvNGD0ZTRgtGM0YHRjyBjbGFtcCgpO1xyXG5cdFx0Ly9Ac3VwcG9ydHMgKCN7JHByb3BlcnR5fTogJHByb3BlcnR5VmFsdWUpIHtcclxuXHRcdC8vXHQjeyRwcm9wZXJ0eX06ICRwcm9wZXJ0eVZhbHVlO1xyXG5cdFx0Ly99XHJcblx0XHQvLyDQr9C60YnQviDQvdC1INC/0ZbQtNGC0YDQuNC80YPRlNGC0YzRgdGPIGNsYW1wKCk7XHJcblx0XHQvL0BzdXBwb3J0cyBub3QgKCN7JHByb3BlcnR5fTogJHByb3BlcnR5VmFsdWUpIHtcclxuXHRcdC8vXHQjeyRwcm9wZXJ0eX06IGNhbGMoI3t0b1JlbSgkbWluU2l6ZSl9ICsgI3skYWRkU2l6ZX0gKiAoMTAwdncgLSAje3RvUmVtKCR3aWR0aFRvKX0pIC8gI3ttYXRoLmRpdigkd2lkdGhGcm9tLCAxNikgLSBtYXRoLmRpdigkd2lkdGhUbywgMTYpfSk7XHJcblx0XHQvL31cclxuXHR9XHJcblx0QGlmICRrZWVwU2l6ZSAhPSAxIGFuZCAka2VlcFNpemUgIT0gMiB7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoVG9NZWRpYSkge1xyXG5cdFx0XHQjeyRwcm9wZXJ0eX06IHRvUmVtKCRtaW5TaXplKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIEdyaWQt0LrQvtC90YLQtdC50L3QtdGAXHJcbkBtaXhpbiBncmlkQ29udGFpbmVyKCR0eXBlOiAwLCAkY29udGFpbmVyOiAkbWF4V2lkdGhDb250YWluZXIsICRwYWRkaW5nU3RhcnQ6IG1hdGguZGl2KCRjb250YWluZXJQYWRkaW5nLCAyKSwgJHBhZGRpbmdFbmQ6IG1hdGguZGl2KCRjb250YWluZXJQYWRkaW5nLCAyKSkge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogdG9SZW0oJHBhZGRpbmdTdGFydCkgMWZyIG1pbm1heChhdXRvLCB0b1JlbSgkY29udGFpbmVyKSkgMWZyIHRvUmVtKCRwYWRkaW5nRW5kKTtcclxuXHQ+ICoge1xyXG5cdFx0bWluLXdpZHRoOiAwO1xyXG5cdFx0QGlmICR0eXBlPT0xIHtcclxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyA2O1xyXG5cdFx0fSBAZWxzZSBpZiAkdHlwZT09MiB7XHJcblx0XHRcdGdyaWQtY29sdW1uOiAyIC8gNTtcclxuXHRcdH0gQGVsc2UgaWYgJHR5cGU9PTMge1xyXG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIDY7XHJcblx0XHR9IEBlbHNlIGlmICR0eXBlPT00IHtcclxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyA0O1xyXG5cdFx0fSBAZWxzZSBpZiAkdHlwZT09NSB7XHJcblx0XHRcdGdyaWQtY29sdW1uOiAyIC8gNDtcclxuXHRcdH0gQGVsc2UgaWYgJHR5cGU9PTYge1xyXG5cdFx0XHRncmlkLWNvbHVtbjogMyAvIDU7XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0Z3JpZC1jb2x1bW46IDMgLyA0O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIubWVudSB7XG4gIC8vIC5tZW51X19pY29uXG4gICZfX2ljb24ge1xuICB9XG4gIC8vIC5tZW51X19ib2R5XG4gICZfX2JvZHkge1xuICAgIC8vINCd0LAg0LTQtdGB0LrRgtC+0L/QtSBtZW51X19ib2R5INC/0YDQvtGB0YLQviDQutC+0L3RgtC10LnQvdC10YAsINC90LUg0LzQtdGI0LDQtdGCXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcbiAgICAgIHBhZGRpbmc6IHRvUmVtKDg1KSB0b1JlbSgxNSkgdG9SZW0oMTUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci13aGl0ZSksIDAuOTUpO1xuICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIHotaW5kZXg6IDk5OyAvLyBJbmNyZWFzZWQgei1pbmRleCB0byBlbnN1cmUgbWVudSBhcHBlYXJzIGFib3ZlIG90aGVyIGVsZW1lbnRzXG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogdG9SZW0oODUpO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsYWNrKSwgMC45NSk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC41cyB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcbiAgICAgICAgei1pbmRleDogMTAwOyAvLyBIaWdoZXIgei1pbmRleCBmb3IgdGhlIGhlYWRlciBncmFkaWVudFxuICAgICAgfVxuXG4gICAgICBodG1sLm1lbnUtb3BlbiAmIHtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAubWVudV9fbGlzdFxuICAmX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGFkYXB0aXZlVmFsdWUoXCJjb2x1bW4tZ2FwXCIsIDIwLCAxMCk7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgcm93LWdhcDogdG9SZW0oMjUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gLm1lbnVfX2l0ZW1cbiAgJl9faXRlbSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAjeyRpICogMC4xfXM7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaHRtbC5tZW51LW9wZW4gJiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgdG8gcmlnaHQsXG4gICAgICAgICAgdmFyKC0tdGV4dC1wcmltYXJ5KSAwJSxcbiAgICAgICAgICB0cmFuc3BhcmVudCAxMDAlXG4gICAgICAgICk7XG4gICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAubWVudV9fbGlua1xuICAmX19saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaW52ZXJzZSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnZlcnNlKTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBib3R0b206IC00cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnZlcnNlKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFjY2VudCk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IHRvUmVtKDI4KTtcbiAgICAgIHBhZGRpbmc6IHRvUmVtKDIwKSAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBjb2xvciAwLjNzIGVhc2UsXG4gICAgICAgIHRyYW5zZm9ybSAwLjNzIGVhc2U7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IHRvUmVtKDYpO1xuICAgICAgICBoZWlnaHQ6IHRvUmVtKDYpO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB0b1JlbSgxMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gLy9CdXJnZXIgSWNvblxuLy8gLmljb24tbWVudSB7XG4vLyAgIGRpc3BsYXk6IG5vbmU7XG4vLyAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgIHdpZHRoOiB0b1JlbSgzMCk7XG4vLyAgICAgaGVpZ2h0OiB0b1JlbSgxOCk7XG4vLyAgICAgei1pbmRleDogMTAxOyAvLyBJbmNyZWFzZWQgei1pbmRleCB0byBzdGF5IGFib3ZlIG1lbnUgb3ZlcmxheVxuLy8gICAgIEBtZWRpYSAoYW55LWhvdmVyOiBub25lKSB7XG4vLyAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4vLyAgICAgfVxuLy8gICAgIHNwYW4sXG4vLyAgICAgJjo6YmVmb3JlLFxuLy8gICAgICY6OmFmdGVyIHtcbi8vICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4vLyAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcbi8vICAgICAgIHJpZ2h0OiAwO1xuLy8gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgd2lkdGg6IDEwMCU7XG4vLyAgICAgICBoZWlnaHQ6IDFweDtcbi8vICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludmVyc2UpO1xuLy8gICAgIH1cbi8vICAgICAmOjpiZWZvcmUge1xuLy8gICAgICAgdG9wOiAwO1xuLy8gICAgICAgd2lkdGg6IDEyMCU7XG4vLyAgICAgfVxuLy8gICAgICY6OmFmdGVyIHtcbi8vICAgICAgIGJvdHRvbTogMDtcbi8vICAgICAgIHdpZHRoOiA4MCU7XG4vLyAgICAgfVxuLy8gICAgIHNwYW4ge1xuLy8gICAgICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG4vLyAgICAgfVxuLy8gICAgIGh0bWwubWVudS1vcGVuICYge1xuLy8gICAgICAgc3BhbiB7XG4vLyAgICAgICAgIHdpZHRoOiAwO1xuLy8gICAgICAgfVxuLy8gICAgICAgJjo6YmVmb3JlLFxuLy8gICAgICAgJjo6YWZ0ZXIge1xuLy8gICAgICAgICB3aWR0aDogMTAwJTtcbi8vICAgICAgIH1cbi8vICAgICAgICY6OmJlZm9yZSB7XG4vLyAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuLy8gICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuLy8gICAgICAgfVxuLy8gICAgICAgJjo6YWZ0ZXIge1xuLy8gICAgICAgICBib3R0b206IGNhbGMoNTAlIC0gMXB4KTtcbi8vICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gfVxuIiwiLy8g0JfQsNCz0LDQu9GM0L3QuNC5INGE0LDQudC7INC10LvQtdC80LXQvdGC0ZbQsiDRhNC+0YDQvFxuLy8g0JTQu9GPINC/0ZbQtNC60LvRjtGH0LXQvdC90Y8v0LLRltC00LrQu9GO0YfQtdC90L3RjyDRgdGC0LjQu9GW0LIg0LrQvtC90LrRgNC10YLQvdC+0LPQviDQtdC70LXQvNC10L3RgtCwINGE0L7RgNC80Lgg0LTQuNCy0LjRgdGMIGJhc2UvZm9ybXMvZm9ybXMuc2Nzc1xuQGltcG9ydCBcImJhc2UvZm9ybXMvZm9ybXNcIjtcblxuLy8g0KHRgtC40LvRliDQvNC10L3RjiArINCx0YPRgNCz0LXRgFxuQGltcG9ydCBcImJhc2UvbWVudVwiO1xuXG4vLyDQodGC0LjQu9GWIGxpcXVpZCDQsdC10LrQs9GA0LDRg9C90LTRg1xuLy8g0KHQvdGW0L/Qv9C10YIgKEhUTUwpOiBscWRiZ1xuLy8gQGltcG9ydCBcImJhc2UvbGlxdWlkLWJhY2tncm91bmRcIjtcblxuLy8g0KHRgtC40LvRliDQutCw0YHRgtC+0LzQvdC+0LPQviDQutGD0YDRgdC+0YDQsFxuLy8gU3R5bGVzIGZvciBjdXN0b20gY3Vyc29yXG4vLyBAaW1wb3J0IFwiYmFzZS9jdXJzb3JcIjtcblxuLy8g0KHRgtC40LvRliDQutC90L7Qv9C+0Lpcbi8vIEBpbXBvcnQgXCJiYXNlL2J1dHRvbnNcIjtcblxuLy8g0KHRgtC40LvRliBiYWNrZ3JvdW5kIGNpcmNsZXNcbi8vIEBpbXBvcnQgXCJiYXNlL2JhY2tncm91bmQtY2lyY2xlc1wiO1xuXG4vLyDQodGC0LjQu9GWINC/0L7Qv9Cw0L/RltCyXG4vLyBAaW1wb3J0IFwiYmFzZS9wb3B1cFwiO1xuXG4vLyDQodGC0LjQu9GWINGB0L/QvtC50LvQtdGA0ZbQslxuLy8gQGltcG9ydCBcImJhc2Uvc3BvbGxlcnNcIjtcblxuLy8g0KHRgtC40LvRliDRgtCw0LHRltCyXG4vLyBAaW1wb3J0IFwiYmFzZS90YWJzXCI7XG5cbi8vINCh0YLQuNC70ZYg0LzQsNC/XG4vLyBAaW1wb3J0IFwiYmFzZS9tYXBzXCI7XG5cbi8vINCh0YLQuNC70ZYg0LHQu9C+0LrRgyBcItC/0L7QutCw0LfQsNGC0Lgg0YnQtVwiXG4vLyBAaW1wb3J0IFwiYmFzZS9zaG93bW9yZVwiO1xuXG4vLyDQodGC0LjQu9GWINC00LvRjyDQu9C40L/QutC+0LPQviDQsdC70L7QutGDXG4vLyBAaW1wb3J0IFwiYmFzZS9zdGlja3lcIjtcblxuLy8g0KHRgtC40LvRliDQtNC70Y8g0L/QvtC10LrRgNCw0L3QvtGXINC/0YDQvtC60YDRg9GC0LrQuFxuLy8gU3R5bGVzIGZvciBmdWxscGFnZSBzY3JvbGxcbi8vIEBpbXBvcnQgXCJiYXNlL2Z1bGxwYWdlXCI7XG5cbi8vINCh0YLQuNC70ZYg0LTQu9GPIHJpcHBsZSDQtdGE0LXQutGC0YNcbi8vIFN0eWxlcyBmb3IgcmlwcGxlIGVmZmVjdFxuLy8gQGltcG9ydCBcImJhc2UvcmlwcGxlXCI7XG5cbi8vIEdyaWQgYmFja2dyb3VuZFxuJWdyaWRCYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMXB4LCB0cmFuc3BhcmVudCAxcHgpLFxuICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMzUsIDgwLCAyNDcsIDAuMDMpIDFweCwgdHJhbnNwYXJlbnQgMXB4KTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG59XG5cbi8vINCh0YLQuNC70ZYg0LTQu9GPINGH0YPQudC90LjRhSDQt9C+0LHRgNCw0LbQtdC90L3RjCAoSUJHKVxuLy8g0KHQvdGW0L/Qv9C10YIgKEhUTUwpOiBpYmcgKNC30L7QsdGA0LDQttC10L3QvdGPINC3INC60LvQsNGB0LDQvNC4KVxuLy8g0KHQvdGW0L/Qv9C10YIgKEhUTUwpOiBpYmdhIChhINC3INC30L7QsdGA0LDQttC10L3QvdGP0Lwg0YLQsCDQutC70LDRgdCw0LzQuClcbi5pYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgJi0tdG9wIHtcbiAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgfVxuICAmLS1ib3R0b20ge1xuICAgIG9iamVjdC1wb3NpdGlvbjogYm90dG9tO1xuICB9XG4gICYtLWxlZnQge1xuICAgIG9iamVjdC1wb3NpdGlvbjogbGVmdDtcbiAgfVxuICAmLS1yaWdodCB7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiByaWdodDtcbiAgfVxuICAmLS1jb250YWluIHtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG59XG5cbi8vINCo0LDQsdC70L7QvdC4ICjQt9Cw0LPQvtGC0ZbQstC70ZYpXG4vLyBAZXh0ZW5kICXRltC8J9GPINGI0LDQsdC70L7QvdGDO1xuLy8g0KHQvdGW0L/Qv9C10YIgKFNDU1MpOiBleFxuXG4vLyDQm9GW0YfQuNC70YzQvdC40Log0LTQu9GPINGB0L/QuNGB0LrRg1xuJWxpc3RDb3VudGVyIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBpdGVtO1xuICA+IGxpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBpdGVtO1xuICAgICAgY29udGVudDogY291bnRlcihpdGVtKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyDQkNC00LDQv9GC0LjQstC90LUg0LLRltC00LXQvlxuJXJlc3BvbnNpdmVWaWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIFxuICB2aWRlbyxcbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgfVxufVxuLy8g0JLRltC00LXQviDRj9C6INGE0L7QvVxuJXZpZGVvQmFja2dyb3VuZCB7XG4gIHZpZGVvLFxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cbi8vINCh0ZbRgNC40Lkg0YTRltC70YzRgtGAXG4lZ3JheWZpbHRlciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgIH1cbiAgfVxufVxuLy8g0KHQutCw0YHRg9Cy0LDRgtC4INCy0LjQtNGW0LvQtdC90L3Rj1xuJW5vc2VsZWN0IHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4vLyDQlNC30LXRgNC60LDQu9GM0L3QtSDQstGW0LTQvtCx0YDQsNC20LXQvdC90Y9cbiVtaXJyb3Ige1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cbi8vINCf0LvQsNCy0L3QuNC5INGB0LrRgNC+0LvQu1xuJXNtb290aHNjcm9sbCB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG4vLyDQodGF0L7QstCw0YLQuCDRgdC60YDQvtC70LtcbiVoaWRlc2Nyb2xsIHtcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdG9SZW0oOCk7XG4gIG1pbi1oZWlnaHQ6IHRvUmVtKDQ4KTtcbiAgcGFkZGluZzogdG9SZW0oMTIpIHRvUmVtKDI4KTtcbiAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICBmb250LXNpemU6IHRvUmVtKDEzKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IHRvUmVtKDEuNSkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKSxcbiAgICBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKSxcbiAgICBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG5cbiAgJi0tcHJpbWFyeSB7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgfVxuICB9XG5cbiAgJi0tZ2hvc3Qge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci1vbi1kYXJrKSwgMC4zNSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG4gIH1cblxuICAmLS1vdXRsaW5lIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWRhcmspKTtcbiAgICB9XG4gIH1cblxuICAmLS1pbnZlcnQge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tYWNjZW50KSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgfVxuICB9XG5cbiAgJi0tZncge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWJnKSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbn1cblxuLnNlY3Rpb24taGVhZCB7XG4gIG1hcmdpbi1ib3R0b206IHRvUmVtKDQwKTtcblxuICAmLS1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5zZWN0aW9uLWhlYWRfX3RleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiBjbGFtcCh0b1JlbSgyOCksIDR2dywgdG9SZW0oNDQpKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEyKTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIG1heC13aWR0aDogdG9SZW0oNTYwKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE2KTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBwYWRkaW5nLWxlZnQ6IHRvUmVtKDI0KTtcbn1cblxub2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIHBhZGRpbmctbGVmdDogdG9SZW0oMjQpO1xufVxuXG51bCBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG5vbCBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4ucGFnZS1oZWFkZXJfX25hdi1saXN0LFxuLmZvb3Rlcl9fbmF2LWxpc3QsXG4uZm9vdGVyX19jb250YWN0LWxpc3QsXG4uZmFxX19saXN0LFxuLmNvbnRhY3RfX2xpc3QsXG4uY29udGFjdC1zZWN0aW9uX19saXN0LFxuLmJsb2ctY2F0YWxvZ19fbGlzdCxcbi5wcmluY2lwbGVzX19saXN0LFxuLnNlcnZpY2VzLXByZXZpZXdfX2xpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG59XG5cbi5mb3JtX19ub3RlIHtcbiAgbWFyZ2luLXRvcDogdG9SZW0oMTQpO1xuICBmb250LXNpemU6IHRvUmVtKDEzKTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTUwMCkpO1xuXG4gIGEge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4uZm9ybV9fc3VjY2VzcyB7XG4gIG1hcmdpbi10b3A6IHRvUmVtKDE2KTtcbiAgcGFkZGluZzogdG9SZW0oMTQpO1xuICBmb250LXNpemU6IHRvUmVtKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4xMik7XG4gIGJvcmRlcjogdG9SZW0oMSkgc29saWQgcmdiYSh2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAwLjI4KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbn1cblxuLnBhZ2UtaGVybyB7XG4gIHBhZGRpbmc6IHRvUmVtKDQ4KSAwIHRvUmVtKDQ0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnktZGFyaykpO1xuICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWRhcmspKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgIGxpbmVhci1ncmFkaWVudChyZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMDYpIHRvUmVtKDEpLCB0cmFuc3BhcmVudCB0b1JlbSgxKSksXG4gICAgICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4wNikgdG9SZW0oMSksIHRyYW5zcGFyZW50IHRvUmVtKDEpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHRvUmVtKDMyKSB0b1JlbSgzMik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmX19jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJl9fcmVmLFxuICAmX19leWVicm93IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTIpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IGNsYW1wKHRvUmVtKDMyKSwgNC41dncsIHRvUmVtKDUyKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4wODtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gICAgbWF4LXdpZHRoOiB0b1JlbSg3MjApO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tY29sb3Itb24tZGFyayksIDAuNzgpO1xuICAgIG1heC13aWR0aDogdG9SZW0oNTgwKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIiRwYWdlLWhlYWRlci1oZWlnaHQ6IHRvUmVtKDY4KTtcblxuLnBhZ2UtaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tY29sb3ItcHJpbWFyeS1kYXJrKSwgMC45NCk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cih2YXIoLS1nbGFzcy1ibHVyKSk7XG4gIGJvcmRlci1ib3R0b206IHRvUmVtKDEpIHNvbGlkIHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4xNSk7XG5cbiAgLnNjcm9sbGVkICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tY29sb3ItcHJpbWFyeS1kYXJrKSwgMC45OCk7XG4gIH1cblxuICAmX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiB0b1JlbSgxNik7XG4gICAgbWluLWhlaWdodDogJHBhZ2UtaGVhZGVyLWhlaWdodDtcbiAgfVxuXG4gICZfX2xvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICB9XG5cbiAgJl9fbG9nby1tYXJrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiB0b1JlbSgzNik7XG4gICAgaGVpZ2h0OiB0b1JlbSgzNik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNCk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1hY2NlbnQpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgfVxuXG4gICZfX2xvZ28tbmFtZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE5KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGVTbWFsbCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX19uYXYge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6ICRwYWdlLWhlYWRlci1oZWlnaHQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRwYWdlLWhlYWRlci1oZWlnaHR9KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5LWRhcmspKTtcbiAgICAgIHBhZGRpbmc6IHRvUmVtKDI0KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgICAgIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgICAgIHZpc2liaWxpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cblxuICAgIC5tZW51LW9wZW4gJiB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fbmF2LWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHRvUmVtKDIyKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBnYXA6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fbmF2LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogcmdiYSh2YXIoLS1jb2xvci1vbi1kYXJrKSwgMC43Mik7XG4gICAgcGFkZGluZzogdG9SZW0oNCkgMDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcblxuICAgICY6aG92ZXIsXG4gICAgJi0tYWN0aXZlIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgfVxuXG4gICAgJi0tYWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgdG9SZW0oLTIpIDAgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBwYWRkaW5nOiB0b1JlbSgxNCkgMDtcbiAgICAgIGJvcmRlci1ib3R0b206IHRvUmVtKDEpIHNvbGlkIHJnYmEodmFyKC0tY29sb3Itb24tZGFyayksIDAuMDgpO1xuICAgIH1cbiAgfVxuXG4gICZfX2J1cmdlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IHRvUmVtKDI2KTtcbiAgICBoZWlnaHQ6IHRvUmVtKDE0KTtcbiAgICB6LWluZGV4OiAxMDE7XG5cbiAgICBzcGFuLFxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogdG9SZW0oMik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gI3t0b1JlbSgxKX0pO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBodG1sLm1lbnUtb3BlbiAmIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gI3t0b1JlbSgxKX0pO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogY2FsYyg1MCUgLSAje3RvUmVtKDEpfSk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyIHtcbiAgcGFkZGluZzogdG9SZW0oNTYpIDAgdG9SZW0oMjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeS1kYXJrKSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuXG4gICZfX3RvcCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDMyKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgzMik7XG4gICAgcGFkZGluZy1ib3R0b206IHRvUmVtKDMyKTtcbiAgICBib3JkZXItYm90dG9tOiB0b1JlbSgxKSBzb2xpZCByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjEpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4zZnIgcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuICB9XG5cbiAgJl9fbG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHRvUmVtKDEwKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICB9XG5cbiAgJl9fbG9nby1tYXJrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IHRvUmVtKDM0KTtcbiAgICBoZWlnaHQ6IHRvUmVtKDM0KTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEzKTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWFjY2VudCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICB9XG5cbiAgJl9fbG9nby1uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICBjb2xvcjogcmdiYSh2YXIoLS1jb2xvci1vbi1kYXJrKSwgMC42OCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogdG9SZW0oMzAwKTtcbiAgfVxuXG4gICZfX2NvbC10aXRsZSB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xNGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTQpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19uYXYtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdG9SZW0oMTApO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJl9fbmF2LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjcyKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGFjdC1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB0b1JlbSgxMik7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmX19jb250YWN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMyk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogcmdiYSh2YXIoLS1jb2xvci1vbi1kYXJrKSwgMC43Mik7XG5cbiAgICBpIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogdG9SZW0oMyk7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tY29sb3Itb24tZGFyayksIDAuNzIpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19ub3RpY2VzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDI0KTtcbiAgfVxuXG4gICZfX25vdGljZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHRvUmVtKDE0KSB0b1JlbSgxNik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMyk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tY29sb3Itb24tZGFyayksIDAuODUpO1xuICAgIGJvcmRlci1sZWZ0OiB0b1JlbSgzKSBzb2xpZCByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjE1KTtcbiAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLXNtKSAwO1xuXG4gICAgJi0td2FybmluZyB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAgIH1cblxuICAgICYtLWluZm8ge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG4gIH1cblxuICAmX19ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTIpO1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjQyKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmNvb2tpZS1ub3RpY2Uge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDIwMDtcbiAgcGFkZGluZzogdG9SZW0oMTQpIHRvUmVtKDIwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnktZGFyaykpO1xuICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWRhcmspKTtcbiAgYm9yZGVyLXRvcDogdG9SZW0oMSkgc29saWQgcmdiYSh2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAwLjIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pLFxuICAgIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgdmlzaWJpbGl0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcblxuICAmLmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB0b1JlbSgxNCk7XG4gICAgbWF4LXdpZHRoOiB0b1JlbSg5NjApO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjg1KTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZ2FwOiB0b1JlbSg4KTtcbiAgfVxuXG4gICZfX2J0biB7XG4gICAgbWluLWhlaWdodDogdG9SZW0oNDApO1xuICAgIHBhZGRpbmc6IHRvUmVtKDgpIHRvUmVtKDIwKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEyKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmLS1hY2NlcHQge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1hY2NlbnQpKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG5cbiAgICAmLS1kZWNsaW5lIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjc1KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjMpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gREVTSUdOIERJUkVDVElPTjogTGFiIFNpZ25hbFxuLy8gQ09OQ0VQVDogUmVzZWFyY2ggbGFib3JhdG9yeSBhZXN0aGV0aWMgZm9yIEFJIGludmVzdG1lbnQgc2VydmljZXMg4oCUIGdyYXBoaXRlIGFuYWx5dGljYWwgZW52aXJvbm1lbnQsIHRlYWwgc2lnbmFsIGFjY2VudHMsIHBhcGVyIHN1cmZhY2VzLCB0ZWNobmljYWwgZ3JpZCBhbm5vdGF0aW9ucyBhbmQgY2F0YWxvZyByZWZlcmVuY2UgbnVtYmVycy5cbi8vIFVOSVFVRSBFTEVNRU5UUzogc2lnbmFsLWdyaWQgaGVybywgUkVGLW51bWJlcmVkIHNlY3Rpb24gbWFya2VycywgZXZpZGVuY2UtYmxvY2sgcHJpbmNpcGxlcywgaG9yaXpvbnRhbCBjYXRhbG9nIGFydGljbGUgc3RyaXBzLCBtZXRob2RvbG9neSBzaWRlYmFyIG9uIGFydGljbGVzLCBtb25vc3BhY2UgcmVmIGxhYmVscywgYW5ndWxhciBjb3JuZXJzIChtaW5pbWFsIHJhZGl1cylcbi8vIFZJU1VBTCBTWVNURU06IE91dGZpdCAoVUkpICsgTmV3c3JlYWRlciAoaGVhZGxpbmVzKTsgY29vbCBwYXBlciBiZyArIGRhcmsgbGFiIHBhbmVsczsgZGF0YS1ncmlkIG92ZXJsYXlzOyBzdHJ1Y3R1cmVkIGFzeW1tZXRyeSB3aXRob3V0IGRhc2hib2FyZCBjbGljaMOpc1xuLy8gTk9UIFVTRUQgSU4gUFJFVklPVVMgU0lURVM6IG5vIHdpbmUvZ29sZCBzYWxvbiAoUHJpaW1lIFZlbnR1cmVzKSwgbm8gYnJhc3MvbWlkbmlnaHQgZWRpdG9yaWFsIChDb21tcGFzcyksIG5vIHRlcnJhY290dGEgZm9saW8gKEthcGx1cmV4KSwgbm8gY29yYWwgbWVzaCAoS2FwaXZvcmEpLCBubyBwdXJwbGUgQUkgZ3JhZGllbnRzXG4vLyBIT01FUEFHRSBTRUNUSU9OIE9SREVSOiBIZXJvIOKGkiBPdmVydmlldyDihpIgU2VydmljZXMgUHJldmlldyDihpIgRmVhdHVyZWQgQXJ0aWNsZXMg4oaSIFByaW5jaXBsZXMg4oaSIENUQSDihpIgRkFRIOKGkiBDb250YWN0XG4vLyBCTE9HIEFSQ0hJVkUgRk9STUFUOiBudW1iZXJlZCBjYXRhbG9nIGluZGV4IChSRUYtMjAyNi1YWFggcm93cyB3aXRoIGNhdGVnb3J5LCBkYXRlLCBMYXRpbiB0aXRsZSwgZXhjZXJwdClcbi8vIEFSVElDTEUgUEFHRSBGT1JNQVQ6IGVkaXRvcmlhbCBib2R5ICsgc3RpY2t5IG1ldGhvZG9sb2d5IHNpZGViYXIgKyBldmlkZW5jZSBjYWxsb3V0cyArIHJlbGF0ZWQgY2F0YWxvZyBsaW5rc1xuXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnktZGFyaykpO1xuICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWRhcmspKTtcblxuICAmX19ncmlkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgIGxpbmVhci1ncmFkaWVudChyZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMDcpIHRvUmVtKDEpLCB0cmFuc3BhcmVudCB0b1JlbSgxKSksXG4gICAgICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4wNykgdG9SZW0oMSksIHRyYW5zcGFyZW50IHRvUmVtKDEpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHRvUmVtKDQwKSB0b1JlbSg0MCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmX19zaWduYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwJTtcbiAgICByaWdodDogLTUlO1xuICAgIHdpZHRoOiB0b1JlbSg0MjApO1xuICAgIGhlaWdodDogdG9SZW0oMik7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB0cmFuc3BhcmVudCwgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpLCByZ2IodmFyKC0tY29sb3ItYWNjZW50KSksIHRyYW5zcGFyZW50KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOGRlZyk7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgJl9fY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oNDApO1xuICAgIHBhZGRpbmctdG9wOiB0b1JlbSg1Nik7XG4gICAgcGFkZGluZy1ib3R0b206IHRvUmVtKDY0KTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuMTVmciAwLjU1ZnI7XG4gICAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIH1cbiAgfVxuXG4gICZfX3JlZiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDE0KTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjE4ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiBjbGFtcCh0b1JlbSgzNCksIDUuNXZ3LCB0b1JlbSg1OCkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDY7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTgpO1xuICB9XG5cbiAgJl9fdGl0bGUtYWNjZW50IHtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgbWF4LXdpZHRoOiB0b1JlbSg1MjApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjc2KTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgyOCk7XG4gIH1cblxuICAmX19hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IHRvUmVtKDEyKTtcbiAgfVxuXG4gICZfX3BhbmVsIHtcbiAgICBwYWRkaW5nOiB0b1JlbSgyNCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci1vbi1kYXJrKSwgMC4wNCk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMjUpO1xuICAgIGJvcmRlci1sZWZ0OiB0b1JlbSgzKSBzb2xpZCByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19wYW5lbC1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTIpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItYWNjZW50KSk7XG4gIH1cblxuICAmX19zdGF0cyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDE0KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICZfX3N0YXQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB0b1JlbSgyOCkgMWZyO1xuICAgIGdhcDogdG9SZW0oMTApO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICAmX19zdGF0LWljb24ge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMik7XG4gICAgbWFyZ2luLXRvcDogdG9SZW0oMik7XG4gIH1cblxuICAmX19zdGF0LXRleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLW9uLWRhcmspLCAwLjc4KTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLm92ZXJ2aWV3IHtcbiAgcGFkZGluZzogdG9SZW0oNzIpIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1iZykpO1xuXG4gICZfX2xheW91dCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDQwKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuNDVmciAxZnI7XG4gICAgICBnYXA6IHRvUmVtKDU2KTtcbiAgICB9XG4gIH1cblxuICAmX19hc2lkZSB7XG4gICAgcGFkZGluZy10b3A6IHRvUmVtKDgpO1xuICB9XG5cbiAgJl9fc3RhdGVtZW50IHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAodG9SZW0oMjQpLCAzdncsIHRvUmVtKDMyKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmX19ib2R5IHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNik7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fcG9pbnRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oMTIpO1xuICAgIG1hcmdpbi10b3A6IHRvUmVtKDI0KTtcbiAgfVxuXG4gICZfX3BvaW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdG9SZW0oNDgpIDFmcjtcbiAgICBnYXA6IHRvUmVtKDE0KTtcbiAgICBwYWRkaW5nOiB0b1JlbSgxNik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1sZWZ0OiB0b1JlbSgzKSBzb2xpZCByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19wb2ludC1udW0ge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTEpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19wb2ludC10aXRsZSB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg0KTtcbiAgfVxuXG4gICZfX3BvaW50LXRleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uc2VydmljZXMtcHJldmlldyB7XG4gIHBhZGRpbmc6IHRvUmVtKDcyKSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itd2hpdGUpKTtcblxuICAmX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oMTYpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRwYykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB9XG4gIH1cblxuICAmX19jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogdG9SZW0oMjQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1iZykpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAwLjQ1KTtcbiAgICB9XG4gIH1cblxuICAmX19yZWYge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEyKTtcbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiB0b1JlbSg0MCk7XG4gICAgaGVpZ2h0OiB0b1JlbSg0MCk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1hY2NlbnQpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE5KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDgpO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEyKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgfVxuICB9XG5cbiAgJl9fZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiB0b1JlbSgyOCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5mZWF0dXJlZC1hcnRpY2xlcyB7XG4gIHBhZGRpbmc6IHRvUmVtKDcyKSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmctc2Vjb25kYXJ5KSk7XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdG9SZW0oMTIpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDE2KTtcbiAgICBwYWRkaW5nOiB0b1JlbSgyMikgdG9SZW0oMjQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdG9SZW0oMTAwKSAxZnIgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCk7XG4gICAgfVxuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX21ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdG9SZW0oMTApO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDYpO1xuICB9XG5cbiAgJl9fY2F0IHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItYWNjZW50KSk7XG4gIH1cblxuICAmX19kYXRlIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEyKTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktNTAwKSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE4KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oNik7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19leGNlcnB0IHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE0KTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEyKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICB9XG4gIH1cbn1cblxuLnByaW5jaXBsZXMge1xuICBwYWRkaW5nOiB0b1JlbSg3MikgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDE0KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIHBhZGRpbmc6IHRvUmVtKDIyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG5cbiAgJl9fbnVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg4KTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmN0YSB7XG4gIHBhZGRpbmc6IHRvUmVtKDQ4KSAwO1xuXG4gICZfX2JhbmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHRvUmVtKDIwKTtcbiAgICBwYWRkaW5nOiB0b1JlbSgzNikgdG9SZW0oMzIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgYm9yZGVyLWxlZnQ6IHRvUmVtKDQpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBtYXgtd2lkdGg6IHRvUmVtKDYwMCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNyk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJl9fYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cblxuLmZhcSB7XG4gIHBhZGRpbmc6IHRvUmVtKDcyKSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcblxuICAmX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gIH1cbn1cblxuLmZhcS1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmX19xdWVzdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdG9SZW0oMTIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IHRvUmVtKDE4KSB0b1JlbSgyMCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDcgRnJlZVwiO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxMSk7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAwLjA2KTtcbiAgICB9XG4gIH1cblxuICAmX19hbnN3ZXIge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuXG4gICAgcCB7XG4gICAgICBwYWRkaW5nOiAwIHRvUmVtKDIwKSB0b1JlbSgxOCk7XG4gICAgICBwYWRkaW5nLXRvcDogdG9SZW0oMTIpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxNCk7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgLmZhcS1pdGVtX19xdWVzdGlvbjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICAuZmFxLWl0ZW1fX2Fuc3dlciB7XG4gICAgICBtYXgtaGVpZ2h0OiB0b1JlbSg0MDApO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdCB7XG4gIHBhZGRpbmc6IHRvUmVtKDcyKSAwIHRvUmVtKDg4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSkpO1xuXG4gICZfX2xheW91dCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDQwKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuOWZyIDEuMWZyO1xuICAgICAgZ2FwOiB0b1JlbSg0OCk7XG4gICAgfVxuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IGNsYW1wKHRvUmVtKDI4KSwgNHZ3LCB0b1JlbSg0MCkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTIpO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMjQpO1xuICB9XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdG9SZW0oMTQpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJl9fbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogdG9SZW0oMTIpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTcwMCkpO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGkge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiB0b1JlbSgzKTtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2Zvcm0td3JhcCB7XG4gICAgcGFkZGluZzogdG9SZW0oMjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItdG9wOiB0b1JlbSgzKSBzb2xpZCByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19maWVsZHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiB0b1JlbSgxNik7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1vYmlsZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG4gIH1cblxuICAmX19maWVsZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdG9SZW0oNik7XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fZmllbGQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktNzAwKSk7XG4gIH1cblxuICAmX19pbnB1dCxcbiAgJl9fdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IHRvUmVtKDEyKSB0b1JlbSgxNCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIG1pbi1oZWlnaHQ6IHRvUmVtKDEyMCk7XG4gIH1cbn1cbiIsIi5zZXJ2aWNlcy1wYWdlIHtcbiAgcGFkZGluZy1ib3R0b206IHRvUmVtKDgwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWJnKSk7XG59XG5cbi5zZXJ2aWNlcy1kZXRhaWwge1xuICBwYWRkaW5nOiB0b1JlbSg1NikgMCB0b1JlbSg4MCk7XG5cbiAgJl9faW50cm8ge1xuICAgIG1heC13aWR0aDogdG9SZW0oNjgwKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg0MCk7XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgICBtYXJnaW46IDAgMCB0b1JlbSgxNCk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDIwKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbiAgfVxuXG4gICZfX2Jsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogdG9SZW0oMjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItbGVmdDogdG9SZW0oNCkgc29saWQgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMzUpO1xuICAgIH1cbiAgfVxuXG4gICZfX3JlZiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEyKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICB9XG5cbiAgJl9faWNvbiB7XG4gICAgd2lkdGg6IHRvUmVtKDQwKTtcbiAgICBoZWlnaHQ6IHRvUmVtKDQwKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDE0KTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE1KTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWFjY2VudCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMjEpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTgpO1xuICB9XG5cbiAgJl9fbWV0aG9kb2xvZ3kge1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IHRvUmVtKDE4KTtcbiAgICBib3JkZXItdG9wOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJl9fbWV0aG9kLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX21ldGhvZC1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHRvUmVtKDE2KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDgpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxMyk7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTcwMCkpO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogdG9SZW0oOCk7XG4gICAgICAgIHdpZHRoOiB0b1JlbSg2KTtcbiAgICAgICAgaGVpZ2h0OiB0b1JlbSg2KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdXNlLWNhc2Uge1xuICAgIG1hcmdpbi10b3A6IHRvUmVtKDE0KTtcbiAgICBwYWRkaW5nOiB0b1JlbSgxMikgdG9SZW0oMTQpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTcwMCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4wOCk7XG4gICAgYm9yZGVyLWxlZnQ6IHRvUmVtKDIpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcblxuICAgIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDQpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIH1cbiAgfVxufVxuIiwiLmFib3V0LXBhZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogdG9SZW0oODApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbn1cblxuLmFib3V0LW1hbmlmZXN0byB7XG4gIHBhZGRpbmc6IHRvUmVtKDU2KSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itd2hpdGUpKTtcbiAgYm9yZGVyLWJvdHRvbTogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcblxuICAmX19yZWYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAodG9SZW0oMjgpLCA0dncsIHRvUmVtKDQwKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgyMCk7XG4gICAgbWF4LXdpZHRoOiB0b1JlbSg3MjApO1xuICB9XG5cbiAgJl9fbGVhZCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDIwKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktODAwKSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMjApO1xuICAgIG1heC13aWR0aDogdG9SZW0oNjgwKTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gICAgbWF4LXdpZHRoOiB0b1JlbSg2ODApO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi5hYm91dC1wcm9jZXNzIHtcbiAgcGFkZGluZzogdG9SZW0oNTYpIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1iZykpO1xuXG4gICZfX2hlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDM2KTtcbiAgfVxuXG4gICZfX3JlZiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEwKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgzMik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMCk7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE1KTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXgtd2lkdGg6IHRvUmVtKDU2MCk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJl9fdGltZWxpbmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAgdG9SZW0oMjgpO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogdG9SZW0oMTEpO1xuICAgICAgdG9wOiB0b1JlbSg4KTtcbiAgICAgIGJvdHRvbTogdG9SZW0oOCk7XG4gICAgICB3aWR0aDogdG9SZW0oMik7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDE4MGRlZyxcbiAgICAgICAgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpLFxuICAgICAgICByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMilcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgJl9fc3RlcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHRvUmVtKDIwKSAwIHRvUmVtKDIwKSB0b1JlbSgzMik7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX251bSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHRvUmVtKC0yOCk7XG4gICAgdG9wOiB0b1JlbSgyMCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiB0b1JlbSgyNCk7XG4gICAgaGVpZ2h0OiB0b1JlbSgyNCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLW9uLWRhcmspKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMikgc29saWQgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJl9fbmFtZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE5KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDgpO1xuICB9XG5cbiAgJl9fZGVzYyB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uYWJvdXQtc3RhbmRhcmRzIHtcbiAgcGFkZGluZzogdG9SZW0oNTYpIDAgdG9SZW0oODApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmctc2Vjb25kYXJ5KSk7XG5cbiAgJl9faGVhZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMzIpO1xuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IHRvUmVtKDMyKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEwKTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgIG1heC13aWR0aDogdG9SZW0oNTYwKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oMTYpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRwYykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB9XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICBwYWRkaW5nOiB0b1JlbSgyMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci10b3A6IHRvUmVtKDMpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX2NvZGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1hY2NlbnQpKTtcbiAgfVxuXG4gICZfX25hbWUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg4KTtcbiAgfVxuXG4gICZfX2Rlc2Mge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIi5ibG9nLXBhZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogdG9SZW0oODApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbn1cblxuLmJsb2ctaGVhZGVyIHtcbiAgcGFkZGluZzogdG9SZW0oNDgpIDAgdG9SZW0oNDApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeS1kYXJrKSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itb24tZGFyaykpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgbGluZWFyLWdyYWRpZW50KHJnYmEodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgMC4wNikgdG9SZW0oMSksIHRyYW5zcGFyZW50IHRvUmVtKDEpKSxcbiAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSh2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAwLjA2KSB0b1JlbSgxKSwgdHJhbnNwYXJlbnQgdG9SZW0oMSkpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogdG9SZW0oMzIpIHRvUmVtKDMyKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAmX19yZWYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAodG9SZW0oMzIpLCA0LjV2dywgdG9SZW0oNDgpKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTIpO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tY29sb3Itb24tZGFyayksIDAuNzYpO1xuICAgIG1heC13aWR0aDogdG9SZW0oNjIwKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgyOCk7XG4gIH1cblxuICAmX190b29scyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHRvUmVtKDIwKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICB9XG4gIH1cblxuICAmX19zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IHRvUmVtKDQ4MCk7XG4gIH1cblxuICAmX19zZWFyY2gtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHRvUmVtKDE0KTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTUwMCkpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgJl9fc2VhcmNoLWlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiB0b1JlbSgxMikgdG9SZW0oMTQpIHRvUmVtKDEyKSB0b1JlbSg0Mik7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itd2hpdGUpKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NhdGVnb3JpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdG9SZW0oOCk7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fY2F0LWJ0biB7XG4gICAgcGFkZGluZzogdG9SZW0oOCkgdG9SZW0oMTQpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTEpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itd2hpdGUpKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKSxcbiAgICAgIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pLFxuICAgICAgYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuXG4gICAgJjpob3ZlcixcbiAgICAmLS1hY3RpdmUge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG4gIH1cbn1cblxuLmJsb2ctY2F0YWxvZyB7XG4gIHBhZGRpbmc6IHRvUmVtKDMyKSAwIHRvUmVtKDE2KTtcblxuICAmX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG5cbiAgJl9fcm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oMTYpO1xuICAgIHBhZGRpbmc6IHRvUmVtKDIwKSB0b1JlbSgyNCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgICBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdG9SZW0oMTIwKSAxZnIgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IHRvUmVtKDI0KTtcbiAgICB9XG5cbiAgICAmLmlzLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMzUpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xuICAgIH1cbiAgfVxuXG4gICZfX3JlZiB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgJl9fbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oNik7XG4gIH1cblxuICAmX19jYXQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1hY2NlbnQpKTtcbiAgfVxuXG4gICZfX2RhdGUge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTIpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS01MDApKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg2KTtcblxuICAgIGEge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2V4Y2VycHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTEpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIH1cbiAgfVxuXG4gICZfX2VtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IHRvUmVtKDQwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTUwMCkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgZGFzaGVkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5ibG9nLXBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHRvUmVtKDgpO1xuICBwYWRkaW5nOiB0b1JlbSgzMikgMCB0b1JlbSgxNik7XG5cbiAgJl9fYnRuLFxuICAmX19udW0ge1xuICAgIG1pbi13aWR0aDogdG9SZW0oNDApO1xuICAgIG1pbi1oZWlnaHQ6IHRvUmVtKDQwKTtcbiAgICBwYWRkaW5nOiB0b1JlbSg4KSB0b1JlbSgxMik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pLFxuICAgICAgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbiksXG4gICAgICBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG5cbiAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG5cbiAgICAmLS1hY3RpdmUge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1vbi1kYXJrKSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi5hcnRpY2xlLXBhZ2Uge1xuICBwYWRkaW5nOiB0b1JlbSg0MCkgMCB0b1JlbSg4MCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1iZykpO1xufVxuXG4uYXJ0aWNsZSB7XG4gICZfX2JyZWFkY3J1bWIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdG9SZW0oOCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMjQpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS01MDApKTtcblxuICAgIGEge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgzNik7XG4gICAgcGFkZGluZy1ib3R0b206IHRvUmVtKDI4KTtcbiAgICBib3JkZXItYm90dG9tOiB0b1JlbSgyKSBzb2xpZCByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItYWNjZW50KSk7XG4gIH1cblxuICAmX19jYXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX21ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdG9SZW0oMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDE2KTtcbiAgICBmb250LXNpemU6IHRvUmVtKDEzKTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktNTAwKSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IGNsYW1wKHRvUmVtKDI4KSwgNC41dncsIHRvUmVtKDQ0KSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xMjtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNCk7XG4gIH1cblxuICAmX19zdW1tYXJ5IHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE4KTtcbiAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNsYXRlKSk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJl9fbGF5b3V0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oNDApO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciB0b1JlbSgyODApO1xuICAgICAgZ2FwOiB0b1JlbSg0OCk7XG4gICAgfVxuICB9XG5cbiAgJl9fbWFpbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgJl9fYm9keSB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6IDEuODU7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMjYpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgbWFyZ2luOiB0b1JlbSg0MCkgMCB0b1JlbSgxNCk7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxOCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTgwMCkpO1xuICAgICAgbWFyZ2luOiB0b1JlbSgyOCkgMCB0b1JlbSgxMCk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNik7XG4gICAgfVxuXG4gICAgdWw6bm90KC5hcnRpY2xlX19jaGVja2xpc3QpIHtcbiAgICAgIG1hcmdpbjogdG9SZW0oMTIpIDAgdG9SZW0oMjApO1xuICAgICAgcGFkZGluZy1sZWZ0OiB0b1JlbSgyNCk7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oOCk7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIG9sIHtcbiAgICAgIG1hcmdpbjogdG9SZW0oMTIpIDAgdG9SZW0oMjApO1xuICAgICAgcGFkZGluZy1sZWZ0OiB0b1JlbSgyNCk7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oOCk7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgICB9XG4gIH1cblxuICAmX19zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiB0b1JlbSgyMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gICAgYm9yZGVyOiB0b1JlbSgxKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci10b3A6IHRvUmVtKDMpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiB0b1JlbSgyNCk7XG4gICAgfVxuICB9XG5cbiAgJl9fc2lkZWJhci1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTQpO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gIH1cblxuICAmX19zaWRlYmFyLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTcpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTIpO1xuICB9XG5cbiAgJl9fc2lkZWJhci1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHRvUmVtKDE2KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDEwKTtcbiAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTMpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS03MDApKTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IHRvUmVtKDcpO1xuICAgICAgICB3aWR0aDogdG9SZW0oNSk7XG4gICAgICAgIGhlaWdodDogdG9SZW0oNSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci1hY2NlbnQpKTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zaWRlYmFyLW5vdGUge1xuICAgIG1hcmdpbi10b3A6IHRvUmVtKDE2KTtcbiAgICBwYWRkaW5nLXRvcDogdG9SZW0oMTQpO1xuICAgIGJvcmRlci10b3A6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktNTAwKSk7XG4gIH1cblxuICAmX19ldmlkZW5jZSB7XG4gICAgbWFyZ2luOiB0b1JlbSgyOCkgMDtcbiAgICBwYWRkaW5nOiB0b1JlbSgyMCkgdG9SZW0oMjIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tY29sb3ItYWNjZW50KSwgMC4xKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHJnYmEodmFyKC0tY29sb3ItYWNjZW50KSwgMC4yNSk7XG4gICAgYm9yZGVyLWxlZnQ6IHRvUmVtKDQpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1hY2NlbnQpKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE1KTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS04MDApKTtcblxuICAgIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDYpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NoZWNrbGlzdCB7XG4gICAgbWFyZ2luOiB0b1JlbSgyMCkgMCB0b1JlbSgyOCk7XG4gICAgcGFkZGluZzogdG9SZW0oMjApIHRvUmVtKDI0KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiB0b1JlbSgyNCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItbGVmdDogdG9SZW0oMykgc29saWQgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuXG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiB0b1JlbSgyMik7XG4gICAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxMCk7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCUXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19kaXNjbGFpbWVyIHtcbiAgICBtYXJnaW4tdG9wOiB0b1JlbSg0MCk7XG4gICAgcGFkZGluZzogdG9SZW0oMjApIHRvUmVtKDI0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMSk7XG4gICAgYm9yZGVyLWxlZnQ6IHRvUmVtKDQpIHNvbGlkIHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICBmb250LXNpemU6IHRvUmVtKDE0KTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS04MDApKTtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogdG9SZW0oNDgpO1xuICAgIHBhZGRpbmctdG9wOiB0b1JlbSgzMik7XG4gICAgYm9yZGVyLXRvcDogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICZfX2JhY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB0b1JlbSg4KTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgzMik7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMik7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIH1cbiAgfVxuXG4gICZfX3JlbGF0ZWQtdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgyNCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNik7XG4gIH1cblxuICAmX19yZWxhdGVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB0b1JlbSgxMCk7XG4gIH1cblxuICAmX19yZWxhdGVkLWxpbmsge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiB0b1JlbSg0KTtcbiAgICBwYWRkaW5nOiB0b1JlbSgxNikgdG9SZW0oMTgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIHZhcigtLXRyYW5zaXRpb24tZnVuY3Rpb24pLFxuICAgICAgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSB2YXIoLS10cmFuc2l0aW9uLWZ1bmN0aW9uKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHRvUmVtKDEwMCkgMWZyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogdG9SZW0oMjApO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuNCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCk7XG4gICAgfVxuICB9XG5cbiAgJl9fcmVsYXRlZC1yZWYge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgfVxuXG4gICZfX3JlbGF0ZWQtY2F0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oNCk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxMCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICB9XG5cbiAgJl9fcmVsYXRlZC1uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIi5jb250YWN0LXBhZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogdG9SZW0oODApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbn1cblxuLmNvbnRhY3Qtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IHRvUmVtKDU2KSAwIHRvUmVtKDgwKTtcblxuICAmX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdG9SZW0oNDApO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMC44NWZyIDEuMTVmcjtcbiAgICAgIGdhcDogdG9SZW0oNDgpO1xuICAgIH1cbiAgfVxuXG4gICZfX2luZm8tdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgyOCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNik7XG4gIH1cblxuICAmX19pbmZvLXRleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1zbGF0ZSkpO1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDI4KTtcbiAgfVxuXG4gICZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHRvUmVtKDE4KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICZfX2xpc3QtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHRvUmVtKDE0KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBpIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogdG9SZW0oNCk7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxNik7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItYWNjZW50KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oNCk7XG4gIH1cblxuICAmX192YWx1ZSB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktODAwKSk7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2Zvcm0td3JhcCB7XG4gICAgcGFkZGluZzogdG9SZW0oMzIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItbGVmdDogdG9SZW0oNCkgc29saWQgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbiAgfVxuXG4gICZfX2Zvcm0tdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udERpc3BsYXk7XG4gICAgZm9udC1zaXplOiB0b1JlbSgyNik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg4KTtcbiAgfVxuXG4gICZfX2Zvcm0tc3ViIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE0KTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcbiAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgyNCk7XG4gIH1cblxuICAmX19maWVsZHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiB0b1JlbSgxNik7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1vYmlsZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG4gIH1cblxuICAmX19maWVsZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdG9SZW0oNik7XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fZmllbGQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLWdyYXktNzAwKSk7XG4gIH1cblxuICAmX19pbnB1dCxcbiAgJl9fdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IHRvUmVtKDEyKSB0b1JlbSgxNCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTUpO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbiAgICBib3JkZXI6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgdmFyKC0tdHJhbnNpdGlvbi1mdW5jdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1jb2xvci1zZWNvbmRhcnkpKTtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0YXJlYSB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICBtaW4taGVpZ2h0OiB0b1JlbSgxNDApO1xuICB9XG59XG4iLCIubGVnYWwge1xuICBwYWRkaW5nLXRvcDogdG9SZW0oNDgpO1xuICBwYWRkaW5nLWJvdHRvbTogdG9SZW0oODApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY29sb3ItYmcpKTtcbiAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTkwMCkpO1xuXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMzYpO1xuICAgIHBhZGRpbmctYm90dG9tOiB0b1JlbSgyMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogdG9SZW0oMykgc29saWQgcmdiKHZhcigtLWNvbG9yLXNlY29uZGFyeSkpO1xuICB9XG5cbiAgJl9fcmVmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oMTApO1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItYWNjZW50KSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RGlzcGxheTtcbiAgICBmb250LXNpemU6IGNsYW1wKHRvUmVtKDMwKSwgNXZ3LCB0b1JlbSg0NCkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTI7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdG9SZW0oOCk7XG4gIH1cblxuICAmX191cGRhdGVkIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDEzKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS01MDApKTtcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2xhdGUpKTtcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogdG9SZW0oMTIpIDAgdG9SZW0oMjApO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgcGFkZGluZy1sZWZ0OiB0b1JlbSgyNCk7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgb2wge1xuICAgICAgbWFyZ2luOiB0b1JlbSgxMikgMCB0b1JlbSgyMCk7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHRvUmVtKDI0KTtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSg4KTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3Itc2Vjb25kYXJ5KSk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogcmdiKHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgyNCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgICBtYXJnaW46IHRvUmVtKDMyKSAwIHRvUmVtKDEyKTtcbiAgICAgIHBhZGRpbmctdG9wOiB0b1JlbSg4KTtcbiAgICAgIGJvcmRlci10b3A6IHRvUmVtKDEpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnREaXNwbGF5O1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxOCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTgwMCkpO1xuICAgICAgbWFyZ2luOiB0b1JlbSgyNCkgMCB0b1JlbSgxMCk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB0b1JlbSgxNik7XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tY29sb3ItZ3JheS05MDApKTtcbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgIHBhZGRpbmc6IHRvUmVtKDIpIHRvUmVtKDYpO1xuICAgICAgZm9udC1zaXplOiB0b1JlbSgxNCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWNvbG9yLXNlY29uZGFyeSksIDAuMSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICAgIH1cbiAgfVxuXG4gICZfX3NlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHRvUmVtKDgpO1xuICB9XG5cbiAgJl9fc2VjdGlvbi0td2FybmluZyB7XG4gICAgbWFyZ2luLXRvcDogdG9SZW0oMjQpO1xuICB9XG5cbiAgJl9fd2FybmluZy1ib3gge1xuICAgIHBhZGRpbmc6IHRvUmVtKDE4KSB0b1JlbSgyMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1jb2xvci1hY2NlbnQpLCAwLjEpO1xuICAgIGJvcmRlcjogdG9SZW0oMSkgc29saWQgcmdiYSh2YXIoLS1jb2xvci1hY2NlbnQpLCAwLjI1KTtcbiAgICBib3JkZXItbGVmdDogdG9SZW0oNCkgc29saWQgcmdiKHZhcigtLWNvbG9yLWFjY2VudCkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgY29sb3I6IHJnYih2YXIoLS1jb2xvci1ncmF5LTgwMCkpO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/