html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*------------------------------------------------------------
	Media
------------------------------------------------------------*/
/*------------------------------------------------------------
	Flex Box
------------------------------------------------------------*/
:root {
  --font-pri: "Inter", sans-serif;
  --font-sec: "Be Vietnam Pro", sans-serif;
  --font-third: "Spoqa Han Sans Neo", sans-serif;
  --font-title: "Unbounded", sans-serif;
  --header-index: 99;
  --header-height: 9.6rem; }
  @media screen and (max-width: 767px) {
    :root {
      --header-height: 8rem; } }
  @media screen and (max-width: 576px) {
    :root {
      --header-height: 7rem; } }

* {
  box-sizing: border-box; }

html {
  font-size: 10px;
  scroll-behavior: smooth; }
  html ::-webkit-scrollbar {
    width: 0.4rem;
    height: 0.4rem; }
  html ::-webkit-scrollbar-thumb {
    border-radius: 1rem;
    background: rgba(51, 51, 51, 0.8); }

body {
  line-height: 130%;
  font-weight: 400;
  font-size: 1.6rem;
  color: #082823;
  overflow: hidden auto;
  font-family: var(--font-pri);
  letter-spacing: calc(16px * (-4 / 100)); }
  body.is-language {
    font-family: var(--font-third); }
  body.admin-bar .header {
    top: 3.2rem; }
    @media screen and (max-width: 782px) {
      body.admin-bar .header {
        top: 4.6rem; } }
  body .mona-empty {
    color: #333;
    font-weight: 600; }
  body .grecaptcha-badge {
    display: none !important; }

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

button,
select {
  border: none;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none; }

button {
  padding: 0;
  cursor: pointer;
  background-color: transparent; }

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.container {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0 1.6rem;
  max-width: 124.8rem; }

.no-scroll,
.no-scroll-popup {
  overflow: hidden;
  touch-action: none;
  overscroll-behavior: none;
  -webkit-overflow-scrolling: none; }

iframe {
  vertical-align: middle; }

img {
  height: auto;
  display: block;
  max-width: 100%;
  user-select: none; }

.tabBtn {
  cursor: pointer; }

.tabPanel {
  display: none; }
  .tabPanel.open {
    display: block; }

.gItem {
  cursor: pointer; }

.hide-sitename {
  width: 0;
  height: 0;
  opacity: 0;
  visibility: visible; }

.section {
  scroll-margin-top: 10rem; }

.overlay,
.aside-overlay {
  inset: 0;
  opacity: 0;
  width: 100%;
  z-index: 100;
  height: 100dvh;
  position: fixed;
  visibility: hidden;
  transition: 0.4s ease-in-out;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.6); }
  .overlay.is-active,
  .aside-overlay.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; }

.row {
  --rg: 3.2rem;
  --cg: 3.2rem;
  display: flex;
  flex-wrap: wrap;
  margin: 0 calc(var(--cg) / 2 * -1) calc(var(--rg) * -1); }

.col {
  width: 100%;
  margin-bottom: var(--rg);
  padding: 0 calc(var(--cg) / 2); }
  .col-11 {
    width: calc(11 / 12 * 100%); }
  .col-10 {
    width: calc(10 / 12 * 100%); }
  .col-9 {
    width: calc(9 / 12 * 100%); }
  .col-8 {
    width: calc(8 / 12 * 100%); }
  .col-7 {
    width: calc(7 / 12 * 100%); }
  .col-6 {
    width: 50%; }
  .col-5 {
    width: calc(5 / 12 * 100%); }
  .col-4 {
    width: calc(4 / 12 * 100%); }
  .col-3 {
    width: calc(3 / 12 * 100%); }
  .col-2 {
    width: calc(2 / 12 * 100%); }
  .col-1 {
    width: calc(1 / 12 * 100%); }

.flex {
  display: flex;
  flex-direction: column; }
  .flex-2 {
    gap: 0.2rem; }
  .flex-4 {
    gap: 0.4rem; }
  .flex-6 {
    gap: 0.6rem; }
  .flex-8 {
    gap: 0.8rem; }
  .flex-10 {
    gap: 1rem; }
  .flex-12 {
    gap: 1.2rem; }
  .flex-14 {
    gap: 1.4rem; }
  .flex-16 {
    gap: 1.6rem; }
  .flex-18 {
    gap: 1.8rem; }
  .flex-20 {
    gap: 2rem; }
  .flex-22 {
    gap: 2.2rem; }
  .flex-24 {
    gap: 2.4rem; }
  .flex-26 {
    gap: 2.6rem; }
  .flex-28 {
    gap: 2.8rem; }
  .flex-30 {
    gap: 3rem; }
  .flex-32 {
    gap: 3.2rem; }
  .flex-34 {
    gap: 3.4rem; }
  .flex-36 {
    gap: 3.6rem; }
  .flex-40 {
    gap: 4rem; }
  .flex-48 {
    gap: 4.8rem; }
  .flex-50 {
    gap: 5rem; }
  .flex-56 {
    gap: 5.6rem; }
  .flex-60 {
    gap: 6rem; }
  .flex-64 {
    gap: 6.4rem; }
  .flex-68 {
    gap: 6.8rem; }
  .flex-80 {
    gap: 8rem; }
  .flex-100 {
    gap: 10rem; }
  .flex-120 {
    gap: 12rem; }
  @media screen and (max-width: 992px) {
    .flex-48 {
      gap: 3.2rem; }
    .flex-50 {
      gap: 3.2rem; }
    .flex-56 {
      gap: 3.2rem; }
    .flex-60 {
      gap: 3.2rem; }
    .flex-64 {
      gap: 3.2rem; }
    .flex-68 {
      gap: 3.2rem; }
    .flex-80 {
      gap: 3.2rem; }
    .flex-100 {
      gap: 3.2rem; }
    .flex-120 {
      gap: 3.2rem; } }
  @media screen and (max-width: 576px) {
    .flex-48 {
      gap: 2.4rem; }
    .flex-50 {
      gap: 2.4rem; }
    .flex-56 {
      gap: 2.4rem; }
    .flex-60 {
      gap: 2.4rem; }
    .flex-64 {
      gap: 2.4rem; }
    .flex-68 {
      gap: 2.4rem; }
    .flex-80 {
      gap: 2.4rem; }
    .flex-100 {
      gap: 2.4rem; }
    .flex-120 {
      gap: 2.4rem; } }

.title-64 {
  font-size: 6.4rem;
  letter-spacing: calc(64px * (-4 / 100));
  line-height: 1.2; }
  @media only screen and (max-width: 1200px) {
    .title-64 {
      font-size: 3.9rem; } }
  @media only screen and (max-width: 800px) {
    .title-64 {
      font-size: 2.9rem; } }
  @media screen and (max-width: 640.98px) {
    .title-64 br {
      display: none; } }

.title-48 {
  font-size: 4.8rem;
  letter-spacing: calc(48px * (-4 / 100));
  line-height: 1.1; }
  @media only screen and (max-width: 1200px) {
    .title-48 {
      font-size: 4.3rem; } }
  @media only screen and (max-width: 800px) {
    .title-48 {
      font-size: 3.3rem; } }

.title-40 {
  font-size: 4rem;
  letter-spacing: calc(40px * (-4 / 100));
  line-height: 1.2; }
  @media only screen and (max-width: 1200px) {
    .title-40 {
      font-size: 3.5rem; } }
  @media only screen and (max-width: 800px) {
    .title-40 {
      font-size: 2.7rem; } }

.title-36 {
  font-size: 3.6rem;
  letter-spacing: calc(36px * (-4 / 100));
  line-height: 1.2; }
  @media only screen and (max-width: 1200px) {
    .title-36 {
      font-size: 3.1rem; } }
  @media only screen and (max-width: 800px) {
    .title-36 {
      font-size: 2.6rem; } }

.title-32 {
  font-size: 3.2rem;
  letter-spacing: calc(32px * (-4 / 100));
  line-height: 1.2; }
  @media only screen and (max-width: 1200px) {
    .title-32 {
      font-size: 2.7rem; } }
  @media only screen and (max-width: 800px) {
    .title-32 {
      font-size: 2.2rem; } }

.title-28 {
  font-size: 2.8rem; }
  @media only screen and (max-width: 1200px) {
    .title-28 {
      font-size: 2.4rem; } }
  @media only screen and (max-width: 800px) {
    .title-28 {
      font-size: 2.1rem; } }

.title-24 {
  font-size: 2.4rem;
  letter-spacing: calc(24px * (-4 / 100));
  line-height: 1.3; }
  @media only screen and (max-width: 1200px) {
    .title-24 {
      font-size: 2rem; } }
  @media only screen and (max-width: 800px) {
    .title-24 {
      font-size: 1.7rem; } }

.title-desc {
  margin-top: 1.2rem;
  color: #667085;
  font-size: 1.6rem;
  line-height: 1.3;
  letter-spacing: calc(16px * (-4 / 100)); }
  @media only screen and (max-width: 800px) {
    .title-desc {
      font-size: 1.4rem; } }
  .title-desc strong,
  .title-desc b {
    font-weight: 7000; }
  .title-desc:has(img) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.2rem;
    margin-top: 0;
    color: #fff;
    font-weight: 600;
    margin-right: auto;
    margin-left: auto;
    width: fit-content; }
    .title-desc:has(img) img {
      flex-shrink: 0;
      width: 3.2rem;
      height: auto; }

.text-20 {
  font-size: 2rem; }
  @media only screen and (max-width: 1200px) {
    .text-20 {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    .text-20 {
      font-size: 1.6rem; } }

.text-18 {
  font-size: 1.8rem;
  letter-spacing: calc(18px * (-4 / 100)); }
  @media only screen and (max-width: 1200px) {
    .text-18 {
      font-size: 1.6rem; } }
  @media only screen and (max-width: 800px) {
    .text-18 {
      font-size: 1.5rem; } }

.text-16 {
  font-size: 1.6rem; }
  @media only screen and (max-width: 800px) {
    .text-16 {
      font-size: 1.4rem; } }

.text-14 {
  font-size: 1.4rem; }

.text-12 {
  font-size: 1.2rem; }

.f-pri {
  font-family: var(--font-pri); }

.f-tt {
  font-family: var(--font-title); }

.f-desc {
  font-family: var(--font-desc); }

.fs-i {
  font-style: italic; }

.t-cap {
  text-transform: capitalize; }

.t-up {
  text-transform: uppercase; }

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

.fw-b {
  font-weight: 700; }

.fw-sb {
  font-weight: 600; }

.fw-m {
  font-weight: 500; }

.fw-n {
  font-weight: 400; }

.fw-t {
  font-weight: 300; }

.title__head {
  text-align: center; }

.py-50 {
  padding-top: 5rem;
  padding-bottom: 5rem; }
  @media screen and (max-width: 991.98px) {
    .py-50 {
      padding-top: 4rem;
      padding-bottom: 4rem; } }
  @media screen and (max-width: 575.98px) {
    .py-50 {
      padding-top: 3rem;
      padding-bottom: 3rem; } }

.py-60 {
  padding-top: 6rem;
  padding-bottom: 6rem; }
  @media screen and (max-width: 991.98px) {
    .py-60 {
      padding-top: 4rem;
      padding-bottom: 4rem; } }
  @media screen and (max-width: 575.98px) {
    .py-60 {
      padding-top: 3rem;
      padding-bottom: 3rem; } }

.py-100 {
  padding-top: 10rem;
  padding-bottom: 10rem; }
  @media screen and (max-width: 991.98px) {
    .py-100 {
      padding-top: 8rem;
      padding-bottom: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .py-100 {
      padding-top: 6rem;
      padding-bottom: 6rem; } }

.py-120 {
  padding-top: 12rem;
  padding-bottom: 12rem; }
  @media screen and (max-width: 991.98px) {
    .py-120 {
      padding-top: 8rem;
      padding-bottom: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .py-120 {
      padding-top: 6rem;
      padding-bottom: 6rem; } }

.pt-100 {
  padding-top: 10rem; }
  @media screen and (max-width: 991.98px) {
    .pt-100 {
      padding-top: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .pt-100 {
      padding-top: 6rem; } }

.pb-100 {
  padding-bottom: 10rem; }
  @media screen and (max-width: 991.98px) {
    .pb-100 {
      padding-bottom: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .pb-100 {
      padding-bottom: 6rem; } }

.pt-120 {
  padding-top: 12rem; }
  @media screen and (max-width: 991.98px) {
    .pt-120 {
      padding-top: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .pt-120 {
      padding-top: 6rem; } }

.pb-120 {
  padding-bottom: 12rem; }
  @media screen and (max-width: 991.98px) {
    .pb-120 {
      padding-bottom: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .pb-120 {
      padding-bottom: 6rem; } }

.breadcrumb {
  margin-bottom: 2rem; }
  .breadcrumb-list {
    flex-wrap: nowrap;
    display: flex;
    align-items: center;
    justify-content: center; }
  .breadcrumb-item {
    color: #667085;
    line-height: 1.3;
    font-size: 1.6rem;
    letter-spacing: calc(16px * (-4 / 100));
    white-space: nowrap;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 800px) {
      .breadcrumb-item {
        font-size: 1.4rem; } }
    @media screen and (min-width: 1201px) {
      .breadcrumb-item:not(.is-current):hover {
        color: #59a15f; } }
    .breadcrumb-item:not(:first-child)::before {
      content: "";
      flex-shrink: 0;
      margin: 0 1.2rem;
      user-select: none;
      width: 1.2rem;
      height: 1.2rem;
      display: inline-block;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("../../assets/images/icons/icon-chevron.svg");
      margin-top: 0.2rem; }
      @media screen and (max-width: 767px) {
        .breadcrumb-item:not(:first-child)::before {
          margin: 0 0.8rem; } }
    .breadcrumb-item.is-current {
      font-weight: 500;
      color: #082823; }
    .breadcrumb-item:last-child {
      cursor: default;
      white-space: normal; }
      .breadcrumb-item:last-child > * {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-clamp: 1;
        -webkit-line-clamp: 1; }
    @media screen and (max-width: 1200px) {
      .breadcrumb-item .text-16 {
        font-size: 1.4rem; } }
    @media screen and (max-width: 767px) {
      .breadcrumb-item .text-16 {
        font-size: 1.2rem; } }

.container .breadcrumb .container {
  padding: 0; }

.move-top {
  opacity: 0;
  z-index: 98;
  right: 3.2rem;
  bottom: 3.2rem;
  cursor: pointer;
  position: fixed;
  visibility: hidden;
  transition: 0.4s ease-in-out;
  transform: translateX(100%); }
  @media screen and (max-width: 991px) {
    .move-top {
      right: 1.2rem;
      bottom: 1.2rem; } }
  .move-top.is-active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0); }
  .move-top-icon {
    gap: 1rem;
    flex-direction: column;
    display: flex;
    flex-wrap: wrap; }
  .move-top-social {
    gap: 1rem;
    display: flex;
    flex-direction: column; }
    .move-top-social a {
      overflow: hidden;
      position: relative;
      border-radius: 50%;
      transition: 0.4s ease-in-out;
      width: 4.8rem;
      height: 4.8rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      background-color: #a9d433;
      border: 0.1rem solid #a9d433; }
      @media screen and (min-width: 1201px) {
        .move-top-social a:hover {
          transform: scale(1.1); } }
      .move-top-social a img {
        object-fit: contain; }
    .move-top-social.scrolltop a {
      background-color: white; }
      .move-top-social.scrolltop a img {
        transform: rotate(90deg);
        filter: brightness(0) saturate(100%) invert(67%) sepia(98%) saturate(327%) hue-rotate(29deg) brightness(97%) contrast(93%); }

.header {
  top: 0;
  left: 0;
  width: 100%;
  position: fixed;
  padding: 1.6rem 0;
  transition: 0.4s ease-in-out;
  background-color: white;
  height: var(--header-height);
  z-index: var(--header-index); }
  .header > .container {
    max-width: 169.6rem; }
  .header .custom-logo-link {
    flex-shrink: 0;
    max-width: 27.4rem; }
    @media screen and (max-width: 767px) {
      .header .custom-logo-link {
        max-width: 20.6rem; } }
    @media screen and (max-width: 576px) {
      .header .custom-logo-link {
        max-width: 16.25rem; } }
  .header.is-fixed {
    box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16); }
    @media screen and (min-width: 1201px) {
      .header.is-fixed.is-fixed {
        background-color: white; } }
  .header.is-hidden {
    transform: translateY(calc(-1 * var(--header-height))); }
  .header-wrap {
    gap: 2.4rem;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1366px) {
      .header-wrap {
        gap: 1.6rem; } }
  @media screen and (min-width: 1201px) {
    .header-nav {
      margin: 0 auto; } }
  @media screen and (max-width: 1200px) {
    .header-nav {
      top: 0;
      right: 0;
      bottom: 0;
      width: 32rem;
      display: flex;
      height: 100dvh;
      position: fixed;
      box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16);
      transition: 0.4s ease-in-out;
      overflow: hidden auto;
      flex-direction: column;
      background-color: white;
      transform: translateX(100%);
      z-index: calc(var(--header-index) + 3); }
      .header-nav.is-active {
        transform: translateX(0); } }
  @media screen and (max-width: 576px) {
    .header-nav {
      width: 30rem; } }
  .header-nav .menu {
    display: flex; }
    @media screen and (min-width: 1201px) {
      .header-nav .menu {
        gap: 4rem;
        align-items: center; } }
  @media screen and (min-width: 1201px) and (max-width: 1366px) {
    .header-nav .menu {
      gap: 3.2rem; } }
    @media screen and (max-width: 1200px) {
      .header-nav .menu {
        flex-direction: column; } }
    .header-nav .menu-dropdown {
      gap: 0.4rem;
      position: relative;
      display: flex;
      align-items: center; }
      .header-nav .menu-dropdown img {
        flex-shrink: 0;
        transition: 0.4s ease-in-out;
        width: 1.6rem;
        height: 1.6rem; }
    @media screen and (min-width: 1201px) {
      .header-nav .menu-item:hover > .menu-link {
        color: #59a15f; }
      .header-nav .menu-item:hover img {
        transform: rotate(180deg);
        filter: brightness(0) saturate(100%) invert(55%) sepia(12%) saturate(1415%) hue-rotate(75deg) brightness(98%) contrast(93%); }
      .header-nav .menu-item:hover > .child {
        opacity: 1;
        pointer-events: auto; } }
    @media screen and (max-width: 1200px) {
      .header-nav .menu-item {
        padding: 1.2rem;
        flex-wrap: wrap; } }
    .header-nav .menu-item.is-active > img {
      transform: rotate(180deg); }
    .header-nav .menu-link {
      line-height: 130%;
      transition: 0.4s ease-in-out;
      letter-spacing: -0.064rem; }
      @media screen and (max-width: 1200px) {
        .header-nav .menu-link {
          display: block;
          font-weight: 500;
          width: calc(100% - 2rem); } }
    @media screen and (max-width: 1200px) {
      .header-nav .menu > .menu-item {
        border-bottom: 0.1rem solid #d0d0d0; } }
    .header-nav .menu .current-menu-item > .menu-link {
      font-weight: 700;
      color: #59a15f; }
  .header-info {
    padding: 1.2rem;
    margin-top: auto;
    background-color: #082823; }
    @media screen and (min-width: 1201px) {
      .header-info {
        display: none; } }
    .header-info > .title-60 {
      font-size: 2.4rem;
      color: #a9d433;
      line-height: normal; }
      @media screen and (max-width: 576px) {
        .header-info > .title-60 {
          font-size: 2rem; } }
    .header-info .footer-address .address {
      row-gap: 0.8rem; }
  .header-action {
    gap: 2.4rem;
    flex-shrink: 0;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1366px) {
      .header-action {
        gap: 1.6rem; } }
    @media screen and (max-width: 1200px) {
      .header-action {
        margin-left: auto; } }
    @media screen and (max-width: 1200px) {
      .header-action > .btn {
        display: none; } }
  .header-lang .language {
    position: relative; }
    .header-lang .language:hover .language-head::after {
      transform: rotate(180deg); }
    .header-lang .language:hover .language-child {
      opacity: 1; }
    .header-lang .language-head {
      gap: 0.4rem;
      position: relative;
      display: flex;
      align-items: center; }
      .header-lang .language-head:after {
        content: "";
        transition: 0.4s ease-in-out;
        width: 1.4rem;
        height: 1.4rem;
        display: inline-block;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        background-image: url("../../assets/images/header/icon-arrow.svg"); }
      .header-lang .language-head > img {
        flex-shrink: 0;
        border-radius: 50%;
        object-fit: contain;
        width: 2.4rem;
        height: 2.4rem; }
      .header-lang .language-head .text-16 {
        line-height: 130%;
        color: #082823;
        letter-spacing: -0.064rem; }
    .header-lang .language-child {
      left: 50%;
      top: 100%;
      z-index: 5;
      opacity: 0;
      box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16);
      min-width: 5rem;
      overflow: hidden;
      width: max-content;
      position: absolute;
      transition: 0.4s ease-in-out;
      border-radius: 0.6rem;
      background-color: white;
      transform: translateX(-50%);
      border: 0.1rem solid white; }
      .header-lang .language-child-link {
        display: block;
        padding: 0.4rem;
        font-weight: 600;
        font-size: 1.4rem;
        color: #082823;
        transition: 0.4s ease-in-out; }
        @media screen and (min-width: 1201px) {
          .header-lang .language-child-link:hover {
            color: white;
            background-color: #082823; } }
  @media screen and (min-width: 577px) {
    .header-search {
      position: relative; } }
  .header-search button,
  .header-search .search {
    flex-shrink: 0;
    cursor: pointer;
    user-select: none;
    padding: 0.6rem;
    margin: -0.6rem;
    border-radius: 50%;
    transition: 0.4s ease-in-out; }
    .header-search button:hover,
    .header-search .search:hover {
      background-color: #59a15f; }
      .header-search button:hover img,
      .header-search .search:hover img {
        filter: brightness(0) invert(1); }
    .header-search button img,
    .header-search .search img {
      object-fit: cover;
      transition: 0.4s ease-in-out;
      width: 2.4rem;
      height: 2.4rem; }
  .header-search.is-active .search {
    background-color: #59a15f; }
    .header-search.is-active .search img {
      filter: brightness(0) invert(1); }
  .header-search.is-active .header-search-menu {
    opacity: 1;
    pointer-events: auto; }
  .header-search-menu {
    opacity: 0;
    width: 100%;
    position: absolute;
    transition: 0.4s ease-in-out;
    pointer-events: none;
    top: calc(100% + 0.8rem); }
    @media screen and (min-width: 577px) {
      .header-search-menu {
        right: 0;
        min-width: 32rem; } }
    @media screen and (max-width: 576px) {
      .header-search-menu {
        left: 50%;
        top: calc(100% - 0.8rem);
        width: calc(100% - 3.2rem);
        transform: translateX(-50%); } }
    .header-search-menu form .form-label {
      gap: 1.2rem;
      border-radius: 4rem;
      transition: 0.4s ease-in-out;
      flex-direction: unset;
      background-color: white;
      border: 0.1rem solid transparent;
      padding: 1.2rem 1.6rem 1.2rem 2.4rem;
      box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16); }
      @media screen and (max-width: 1200px) {
        .header-search-menu form .form-label {
          border-color: #d0d0d0; } }
      .header-search-menu form .form-label:hover {
        border-color: #59a15f; }
      .header-search-menu form .form-label:has(input:focus) {
        border-color: #59a15f; }
    .header-search-menu form input {
      border: 0;
      padding: 0;
      height: auto;
      background-color: transparent; }

@media screen and (min-width: 1201px) {
  .child {
    left: 50%;
    top: 100%;
    z-index: 5;
    opacity: 0;
    box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16);
    overflow: hidden;
    min-width: 15rem;
    width: max-content;
    position: absolute;
    transition: 0.4s ease-in-out;
    pointer-events: none;
    border-radius: 0.8rem;
    background-color: white;
    transform: translateX(-50%); } }

@media screen and (max-width: 1200px) {
  .child {
    width: 100%;
    margin-top: 1.2rem;
    border-left: 0.1rem solid rgba(8, 40, 35, 0.4); } }

.child .menu-item {
  font-weight: 500;
  transition: 0.4s ease-in-out; }
  @media screen and (min-width: 1201px) {
    .child .menu-item {
      padding: 0.8rem; }
      .child .menu-item:hover {
        background-color: #59a15f; }
        .child .menu-item:hover > .menu-link {
          color: white; } }

.menu-close-icon {
  padding: 1.2rem;
  border-bottom: 0.1rem solid #d0d0d0; }
  @media screen and (min-width: 1201px) {
    .menu-close-icon {
      display: none; } }
  .menu-close-icon img {
    margin-left: auto;
    width: 2.4rem;
    height: 2.4rem; }

@media screen and (min-width: 1201px) {
  .menu-bar {
    display: none; } }

.menu-bar .menu-span span {
  width: 2.4rem;
  height: 0.2rem;
  display: block;
  user-select: none;
  margin-top: 0.4rem;
  transition: 0.4s ease-in-out;
  border-radius: 0.5rem;
  background-color: #082823; }
  .menu-bar .menu-span span:nth-child(1) {
    margin-top: 0; }

.footer {
  padding-top: 8rem;
  isolation: isolate;
  position: relative; }
  @media screen and (max-width: 1200px) {
    .footer {
      padding-top: 6rem; } }
  .footer::before {
    content: "";
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    position: absolute;
    pointer-events: none;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    background-image: url("../../assets/images/footer/footer-bg.jpg"); }
  .footer.active .footer-heading .social-link {
    width: 4.8rem;
    height: 4.8rem; }
  @media screen and (max-width: 850px) {
    .footer-col {
      width: 100%; } }
  .footer-heading {
    gap: 2.4rem;
    flex-wrap: wrap;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .footer-heading > .title-60 {
      font-size: 6rem;
      color: #a9d433;
      line-height: normal;
      letter-spacing: -0.24rem; }
      @media only screen and (max-width: 1200px) {
        .footer-heading > .title-60 {
          font-size: 3.5rem; } }
      @media only screen and (max-width: 800px) {
        .footer-heading > .title-60 {
          font-size: 2.5rem; } }
    .footer-heading .social {
      gap: 0.8rem;
      user-select: none;
      display: flex;
      align-items: center; }
      .footer-heading .social .text-16 {
        color: white;
        letter-spacing: -0.064rem; }
      .footer-heading .social-list {
        gap: 0.8rem;
        display: flex;
        flex-wrap: wrap; }
      .footer-heading .social-link {
        display: block;
        border-radius: 50%;
        transition: 0.4s ease-in-out;
        width: 3.6rem;
        height: 3.6rem;
        border: 0.1rem solid transparent; }
        @media screen and (min-width: 1201px) {
          .footer-heading .social-link:hover {
            transform: scale(1.1);
            border-color: #59a15f; } }
        @media screen and (max-width: 1200px) {
          .footer-heading .social-link {
            width: 3.2rem;
            height: 3.2rem; } }
        .footer-heading .social-link img {
          width: 100%;
          height: 100%;
          object-fit: contain; }
  @media screen and (min-width: 851px) {
    .footer-address {
      max-width: 41.4rem; } }
  @media screen and (max-width: 991px) {
    .footer-address .address {
      row-gap: 2rem; } }
  .footer-address .address-box {
    gap: 1.2rem;
    display: flex;
    flex-direction: column; }
    .footer-address .address-box > * {
      line-height: 130%; }
    .footer-address .address-box .text-14 {
      font-weight: 600;
      letter-spacing: -0.056rem;
      color: rgba(255, 255, 255, 0.5); }
    .footer-address .address-box .text-16 {
      color: white;
      transition: 0.4s ease-in-out;
      letter-spacing: -0.064rem; }
      @media screen and (min-width: 1201px) {
        .footer-address .address-box .text-16:hover {
          color: #a9d433; } }
  .footer-address .address .is-full .address-box {
    flex-direction: unset; }
  .footer-group {
    --letter-spacing: 3.2rem;
    display: flex;
    flex-wrap: wrap;
    row-gap: var(--letter-spacing);
    margin: 0 calc(-1 * var(--letter-spacing)); }
    @media screen and (max-width: 1200px) {
      .footer-group {
        --letter-spacing: 1.2rem; } }
  .footer-box {
    width: calc(100% / 2);
    padding: 0 var(--letter-spacing); }
    .footer-box > .text-20 {
      color: #59a15f;
      letter-spacing: -0.08rem; }
    .footer-box .menu-link {
      color: white;
      line-height: 130%;
      transition: 0.4s ease-in-out;
      letter-spacing: -0.064rem; }
      @media screen and (min-width: 1201px) {
        .footer-box .menu-link:hover {
          color: #a9d433; } }
      @media screen and (max-width: 576px) {
        .footer-box .menu-link {
          font-size: 1.4rem; } }
  .footer-copyright {
    flex-wrap: wrap;
    padding: 2.4rem 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (min-width: 1201px) {
      .footer-copyright {
        margin-top: 4rem; } }
    @media screen and (max-width: 767px) {
      .footer-copyright {
        gap: 1rem;
        flex-direction: column; } }
    .footer-copyright::before {
      content: "";
      top: 0;
      left: 50%;
      width: 100vw;
      height: 0.1rem;
      position: absolute;
      transform: translateX(-50%);
      background-color: rgba(255, 255, 255, 0.1); }
    .footer-copyright > .text-16 {
      font-weight: 400;
      line-height: 140%;
      letter-spacing: -0.064rem;
      color: rgba(255, 255, 255, 0.7); }
      .footer-copyright > .text-16 a {
        font-weight: 700;
        color: #59a15f;
        transition: 0.4s ease-in-out; }
        @media screen and (min-width: 1201px) {
          .footer-copyright > .text-16 a:hover {
            color: #a9d433; } }
    .footer-copyright ul {
      gap: 10rem;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 1200px) {
        .footer-copyright ul {
          gap: 4.8rem; } }
      @media screen and (max-width: 767px) {
        .footer-copyright ul {
          gap: 2rem; } }
      .footer-copyright ul li a {
        line-height: 120%;
        transition: 0.4s ease-in-out;
        letter-spacing: -0.064rem;
        color: rgba(255, 255, 255, 0.7); }
        @media screen and (min-width: 1201px) {
          .footer-copyright ul li a:hover {
            color: #a9d433; } }
        @media screen and (max-width: 576px) {
          .footer-copyright ul li a {
            font-size: 1.4rem; } }

.btn {
  z-index: 3;
  flex-shrink: 0;
  cursor: pointer;
  font-weight: 700;
  overflow: hidden;
  column-gap: 1rem;
  user-select: none;
  font-size: 1.6rem;
  line-height: 130%;
  text-align: center;
  position: relative;
  width: fit-content;
  color: #082823;
  transition: 0.4s ease-in-out;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-radius: 10rem;
  letter-spacing: -0.064rem;
  font-family: var(--font-pri);
  background-color: #a9d433;
  border: 0.1rem solid transparent;
  padding: 0.4rem 0.4rem 0.4rem 2.4rem; }
  @media screen and (min-width: 1201px) {
    .btn:hover {
      border-color: #59a15f; }
      .btn:hover::after {
        left: 0;
        width: 100%; } }
  .btn::after {
    content: "";
    top: 0;
    right: 0;
    width: 0;
    z-index: -1;
    height: 100%;
    position: absolute;
    transition: 0.4s ease-in-out;
    background-color: #59a15f; }
  .btn.mx-auto {
    margin: 0 auto; }
  .btn.w-100 {
    width: 100%; }
  .btn span {
    line-height: inherit; }
  .btn img {
    width: 4rem;
    height: 4rem;
    transition: 0.4s ease-in-out; }
  .btn .wpcf7-spinner {
    top: 50%;
    left: 50%;
    margin: 0 auto;
    position: absolute;
    transform: translate(-50%, -50%); }
  .btn--border {
    border-radius: 10rem;
    background: transparent;
    color: #082823;
    font-weight: 700;
    border-color: #082823;
    padding: 1.3rem 2.4rem; }

form .form-wrap {
  gap: 3.2rem;
  display: flex;
  flex-direction: column; }
  @media screen and (max-width: 767px) {
    form .form-wrap {
      row-gap: 2.4rem; } }

form .form-group {
  flex-wrap: wrap;
  gap: 2.4rem 1.6rem;
  display: flex;
  align-items: center; }

form .form-box {
  width: calc(100% / 2 - 0.8rem); }
  @media screen and (max-width: 767px) {
    form .form-box {
      width: 100%; } }

form .form-label {
  width: 100%;
  display: flex;
  row-gap: 0.4rem;
  flex-direction: column; }

form .form-text {
  font-weight: 500;
  color: black;
  letter-spacing: -0.064rem; }
  form .form-text sup {
    color: #d92d20; }
  form .form-text span {
    color: #98a2b3;
    font-size: 1.2rem; }

form .form-select {
  position: relative; }
  form .form-select::before {
    z-index: 1;
    content: "";
    top: 50%;
    right: 1.6rem;
    position: absolute;
    width: 1.6rem;
    height: 1.6rem;
    transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top;
    background-image: url("../../assets/images/header/icon-arrow.svg"); }

form input {
  height: 4.8rem; }

form textarea {
  resize: none;
  height: 10rem; }

form select {
  padding: 1.6rem 4.8rem 1.6rem 1.6rem; }

form input,
form textarea {
  padding: 1.6rem; }
  form input:hover, form input:focus,
  form textarea:hover,
  form textarea:focus {
    color: #082823;
    border-color: #082823; }
  form input::placeholder,
  form textarea::placeholder {
    color: #98a2b3; }

form input,
form select,
form textarea {
  outline: 0;
  width: 100%;
  font-size: 1.6rem;
  transition: 0.4s ease-in-out;
  border-radius: 0.8rem;
  background-color: #f2f4f7;
  font-family: var(--font-pri);
  border: 0.1rem solid transparent; }

.g-recaptcha-wrap {
  padding: 0 !important; }

.wpcf7-form-control-wrap {
  width: 100%;
  display: block; }

.wpcf7-not-valid-tip {
  right: 0;
  z-index: 4;
  color: white;
  bottom: -2.2rem;
  padding: 0.4rem;
  font-size: 1.2rem;
  width: fit-content;
  position: absolute;
  border-radius: 0.5rem;
  background-color: red; }
  .wpcf7-not-valid-tip::before {
    content: "";
    width: 0;
    height: 0;
    bottom: 100%;
    right: 1.6rem;
    position: absolute;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    border-bottom: 0.5rem solid #ec1f26; }

.wpcf7-response-output {
  text-align: center;
  margin: 2rem 0 0 0 !important; }
  @media screen and (max-width: 1200px) {
    .wpcf7-response-output {
      font-size: 1.4rem !important;
      margin: 1.2rem 0 0 0 !important; } }

.select2-results {
  box-shadow: 1rem 1rem 4rem 0 rgba(40, 105, 240, 0.16);
  overflow: hidden;
  background-color: white;
  border-radius: 0 !important;
  border: 0.1rem solid white; }

.select2-container .select2-dropdown {
  border: 0;
  background-color: transparent; }

.select2-container--default
.select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #59a15f; }

.custom-input-file {
  display: flex;
  flex-wrap: wrap; }
  .custom-input-file .input-side {
    width: 100%;
    max-width: 35.3rem;
    flex-shrink: 0;
    position: relative; }
  .custom-input-file .file-name {
    color: var(10, #101212);
    text-align: center;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: -0.32px; }
    @media only screen and (max-width: 800px) {
      .custom-input-file .file-name {
        font-size: 1.4rem; } }
  .custom-input-file input {
    width: 0.1px !important;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1; }
  .custom-input-file label {
    border-radius: 0.8rem;
    border: 0.1rem dashed #a3a3a3;
    background-color: #fff;
    padding: 1.6rem;
    width: 100%;
    min-height: 8.5rem;
    color: #101212;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: calc(16px * (-4 / 100));
    cursor: pointer;
    transition: background-color 0.4s, color 0.4s, border-color 0.4s;
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis; }
    @media only screen and (max-width: 800px) {
      .custom-input-file label {
        font-size: 1.4rem; } }
    @media screen and (min-width: 1200px) {
      .custom-input-file label:hover, .custom-input-file label:focus-visible {
        border-color: #a9d433; } }
    @media screen and (max-width: 576px) {
      .custom-input-file label {
        padding: 1rem 1.2rem; } }
    .custom-input-file label .text-main {
      margin-top: 1.6rem;
      text-align: center; }
      @media screen and (max-width: 576px) {
        .custom-input-file label .text-main {
          margin-top: 0.8rem; } }
    .custom-input-file label .text-sup {
      text-align: center;
      color: #a1abab;
      font-size: 1.4rem;
      letter-spacing: calc(14px * (-4 / 100));
      line-height: 1.3;
      margin-top: 0.8rem;
      font-weight: 400; }
    .custom-input-file label p {
      overflow: hidden;
      text-overflow: ellipsis; }
    .custom-input-file label img {
      display: block;
      width: 3.2rem;
      height: 3.2rem;
      object-fit: contain;
      margin: 0 auto; }
      @media screen and (max-width: 576px) {
        .custom-input-file label img {
          width: 2.4rem;
          height: 2.4rem; } }
  .custom-input-file.is-drag label {
    border-color: #59a15f; }

.service {
  padding-block: 6rem; }
  .service .title-64 span {
    color: #59a15f; }
  .service .title__head {
    max-width: 92.2rem;
    margin-right: auto;
    margin-left: auto; }

.service__grid {
  display: flex;
  flex-direction: column;
  row-gap: 0.8rem;
  margin-top: 4rem; }

.service__card {
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: white;
  position: relative;
  transition: transform 0.4s ease;
  border-radius: 2.4rem;
  overflow: hidden;
  color: #fff; }
  .service__card-img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .service__card-img::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(8, 40, 35, 0.6);
      z-index: 1; }
  .service__card-inner {
    position: relative;
    z-index: 2;
    max-width: 46rem;
    margin-right: auto;
    margin-left: auto; }
    .service__card-inner .btn--border {
      color: #fff;
      border-color: #fff; }
      @media screen and (min-width: 1201px) {
        .service__card-inner .btn--border:hover {
          border-color: #59a15f; } }
  .service__card-content {
    width: 54%;
    height: 100%;
    z-index: 1;
    display: flex;
    align-items: center;
    padding: 5.4rem;
    position: relative; }
    .service__card-content::after {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      z-index: 1;
      opacity: 0.6;
      mask: linear-gradient(to right, white 0%, white 62%, white 100%);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px); }
    @media screen and (max-width: 991.98px) {
      .service__card-content {
        padding: 4rem 2.4rem; } }
    @media screen and (max-width: 767.98px) {
      .service__card-content {
        width: 74%; } }
    @media screen and (max-width: 575.98px) {
      .service__card-content {
        width: 100%;
        padding: 4rem 1.6rem; } }
  .service__card-list {
    margin: 2.4rem 0;
    list-style: none; }
    .service__card-list li {
      margin-top: 1.6rem;
      position: relative;
      padding-left: 2.5rem;
      font-size: 1.4rem;
      line-height: 1.3;
      letter-spacing: calc(14px * (-4 / 100)); }
      .service__card-list li::before {
        content: "";
        position: absolute;
        left: 0;
        width: 1.8rem;
        height: 1.8rem;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        background-image: url("../images/service/check.svg"); }
      .service__card-list li:first-child {
        margin-top: 0; }
  .service__card:nth-child(even) .service__card-content {
    margin-left: auto; }
    .service__card:nth-child(even) .service__card-content::after {
      transform: rotate(-180deg); }

.completed__timeline {
  position: relative;
  margin-top: 4rem; }
  .completed__timeline::after {
    position: absolute;
    content: "";
    height: 1px;
    width: 100%;
    left: 0;
    bottom: 8px;
    background: rgba(255, 255, 255, 0.2); }
  .completed__timeline .swiper-slide {
    padding: 0 1.6rem;
    width: calc(100% / 7);
    min-width: 17.6rem; }
    .completed__timeline .swiper-slide.swiper-slide-active .completed__timeline-item {
      font-weight: 700;
      font-size: 1.8rem;
      letter-spacing: calc(18px * (-4 / 100));
      color: #fff; }
      @media only screen and (max-width: 1200px) {
        .completed__timeline .swiper-slide.swiper-slide-active .completed__timeline-item {
          font-size: 1.6rem; } }
      @media only screen and (max-width: 800px) {
        .completed__timeline .swiper-slide.swiper-slide-active .completed__timeline-item {
          font-size: 1.5rem; } }
      .completed__timeline .swiper-slide.swiper-slide-active .completed__timeline-item::after {
        background: #a9d433; }
    .completed__timeline .swiper-slide.swiper-slide-active .completed__timeline-img {
      opacity: 1; }
    @media screen and (max-width: 767.98px) {
      .completed__timeline .swiper-slide {
        padding: 0 0.8rem;
        min-width: 15rem; } }
  .completed__timeline-item {
    display: flex;
    cursor: pointer;
    flex-direction: column;
    row-gap: 1.2rem;
    align-items: center;
    justify-content: end;
    color: rgba(255, 255, 255, 0.5);
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: calc(14px * (-4 / 100));
    transition: 0.4s ease-in-out;
    position: relative;
    padding-bottom: 2.8rem; }
    .completed__timeline-item::after {
      position: absolute;
      content: "";
      width: 1.6rem;
      height: 1.6rem;
      border-radius: 50%;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      background: #2b6732;
      transition: 0.4s ease-in-out; }
    .completed__timeline-item p {
      min-height: 4.2rem;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      overflow: hidden;
      line-clamp: 2;
      -webkit-line-clamp: 2;
      align-content: center; }
  .completed__timeline-img {
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #a9d433;
    opacity: 0;
    flex-shrink: 0;
    transition: 0.4s ease-in-out; }
    .completed__timeline-img picture {
      width: 8rem;
      height: 8rem;
      display: flex;
      align-items: center;
      justify-content: center; }
    .completed__timeline-img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }

.completed {
  position: relative;
  background: #082823;
  color: #fff; }
  .completed .title__head {
    row-gap: 0.4rem;
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    text-align: center;
    max-width: 84rem;
    margin-right: auto;
    margin-left: auto; }
  .completed .title-64 {
    text-transform: capitalize; }
    .completed .title-64 span {
      color: #a9d433; }
  .completed .title-desc {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.2rem;
    margin-top: 0;
    color: #fff;
    font-weight: 600; }
    .completed .title-desc img {
      flex-shrink: 0;
      width: 3.2rem;
      height: auto; }
  .completed .breadcrumb-item {
    color: rgba(255, 255, 255, 0.5); }
    .completed .breadcrumb-item.is-current {
      color: #fff; }
    .completed .breadcrumb-item:not(:first-child)::before {
      filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%) hue-rotate(78deg) brightness(105%) contrast(101%); }
  .completed + .project {
    position: relative;
    z-index: 1;
    background: #fff; }
    @media screen and (min-width: 1201px) {
      .completed + .project {
        border-radius: 16rem 16rem 0 0;
        box-shadow: 0 -2rem 4rem 0 rgba(0, 0, 0, 0.15); } }

.completed__wrap {
  position: relative;
  margin-top: 6rem; }
  .completed__wrap .swiper-navigation .next,
  .completed__wrap .swiper-navigation .prev {
    cursor: pointer;
    z-index: 1;
    display: flex;
    align-items: center;
    transition: 0.4s ease-in-out;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    width: 4rem;
    height: 4rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    --space: 5.2rem; }
    .completed__wrap .swiper-navigation .next img,
    .completed__wrap .swiper-navigation .prev img {
      filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%) hue-rotate(78deg) brightness(105%) contrast(101%); }
    @media screen and (max-width: 1536.98px) {
      .completed__wrap .swiper-navigation .next,
      .completed__wrap .swiper-navigation .prev {
        --space: 2.2rem; } }
    @media screen and (max-width: 1199.98px) {
      .completed__wrap .swiper-navigation .next,
      .completed__wrap .swiper-navigation .prev {
        --space: 1rem; } }
    @media screen and (min-width: 1201px) {
      .completed__wrap .swiper-navigation .next:hover,
      .completed__wrap .swiper-navigation .prev:hover {
        background-color: #59a15f; }
        .completed__wrap .swiper-navigation .next:hover img,
        .completed__wrap .swiper-navigation .prev:hover img {
          filter: brightness(0) invert(1); } }
  .completed__wrap .swiper-navigation .next {
    right: calc(-1 * var(--space)); }
  .completed__wrap .swiper-navigation .prev {
    left: calc(-1 * var(--space)); }
    .completed__wrap .swiper-navigation .prev img {
      transform: rotate(-180deg); }
  @media screen and (max-width: 767.98px) {
    .completed__wrap .swiper-navigation {
      display: none; } }
  @media screen and (min-width: 768px) {
    .completed__wrap .swiper-pagination {
      display: none; } }
  .completed__wrap .swiper-pagination-bullet {
    background: #fff; }
    .completed__wrap .swiper-pagination-bullet-active {
      background: #a9d433; }
  @media screen and (max-width: 767.98px) {
    .completed__wrap {
      padding-bottom: 6rem; } }

.completed__desc {
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  margin-top: 2rem; }
  .completed__desc strong,
  .completed__desc b {
    font-weight: 700; }

.completed__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  --col-gap: 6rem;
  row-gap: 4rem;
  column-gap: var(--col-gap); }
  @media screen and (max-width: 1536.98px) {
    .completed__item {
      --col-gap: 4rem; } }
  @media screen and (max-width: 1199.98px) {
    .completed__item {
      --col-gap: 1.6rem; } }

.completed__img {
  width: 52%; }
  .completed__img .swiper-slide {
    width: 100%;
    padding: 4rem; }
    @media screen and (min-width: 1201px) {
      .completed__img .swiper-slide.swiper-slide-active .completed__img-item {
        transform: rotate(-4deg); } }
    .completed__img .swiper-slide.swiper-slide-active .completed__img-item::before {
      opacity: 0;
      transition-delay: 0s; }
    @media screen and (max-width: 1199.98px) {
      .completed__img .swiper-slide {
        padding: 0 2rem; } }
  .completed__img-item {
    width: 100%;
    position: relative;
    padding-top: calc(520 / 600 * 100%);
    border-radius: 2.4rem;
    overflow: hidden;
    transition: 0.4s ease-in-out; }
    @media screen and (min-width: 1201px) {
      .completed__img-item:hover img {
        transform: translate(-50%, -50%) scale(1.05); } }
    .completed__img-item::before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: rgba(8, 40, 35, 0.8);
      opacity: 1;
      z-index: 2;
      transition: 0.8s;
      transition-delay: 0.2s; }
    .completed__img-item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      top: 50%;
      left: 50%;
      transition: 0.4s ease-in-out;
      transform: translate(-50%, -50%); }
  @media screen and (max-width: 767.98px) {
    .completed__img {
      width: 100%; } }

.completed__content {
  flex: 1; }
  .completed__content .service__card-list {
    margin: 4rem 0; }
    .completed__content .service__card-list li {
      font-size: 1.6rem;
      letter-spacing: calc(16px * (-4 / 100));
      line-height: 1.3;
      display: flex;
      gap: 0.8rem; }
      @media only screen and (max-width: 800px) {
        .completed__content .service__card-list li {
          font-size: 1.4rem; } }
      .completed__content .service__card-list li strong {
        font-weight: 600; }
    @media screen and (max-width: 575.98px) {
      .completed__content .service__card-list {
        margin: 2.4rem 0; } }

.banner {
  height: calc(100vh - calc(1 * var(--header-height))); }
  @media screen and (min-width: 1201px) {
    .banner {
      position: sticky;
      top: var(--header-height); } }
  @media screen and (max-width: 1200px) {
    .banner {
      height: auto;
      position: relative; } }
  .banner-bg {
    inset: 0;
    z-index: -1;
    position: absolute; }
    .banner-bg::before {
      content: "";
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      user-select: none;
      position: absolute;
      pointer-events: none;
      background: linear-gradient(180deg, rgba(8, 40, 35, 0) 0%, #082823 85.75%); }
    .banner-bg img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .banner-position {
    z-index: 5; }
    @media screen and (min-width: 1201px) {
      .banner-position {
        inset: 0;
        position: absolute; } }
    @media screen and (max-width: 1200px) {
      .banner-position {
        position: relative;
        padding: 40rem 0 10rem; } }
    @media screen and (max-width: 576px) {
      .banner-position {
        padding: 20rem 0 5rem; } }
  @media screen and (min-width: 1201px) {
    .banner-block {
      padding: 6rem 0; } }
  .banner-content {
    z-index: 5;
    width: 100%;
    margin: 0 auto;
    max-width: 100rem;
    text-align: center;
    position: relative; }
    .banner-content > * {
      color: white; }
    .banner-content > .text-16 {
      line-height: 160%;
      letter-spacing: -0.064rem;
      color: rgba(255, 255, 255, 0.7); }
    .banner-content .breadcrumb {
      margin: 0; }
      .banner-content .breadcrumb-item {
        color: rgba(255, 255, 255, 0.5); }
        .banner-content .breadcrumb-item:not(:first-child)::before {
          filter: brightness(0) invert(1); }
        .banner-content .breadcrumb-item.is-current {
          color: white; }
  @media screen and (min-width: 1201px) {
    .banner-block {
      height: 100%;
      align-items: flex-end; } }
  .banner-block:has(.count) {
    gap: 3.2rem;
    display: flex; }
    @media screen and (max-width: 1024px) {
      .banner-block:has(.count) {
        gap: 2.4rem;
        flex-wrap: wrap; } }
    .banner-block:has(.count) .banner-content {
      text-align: left; }
    .banner-block:has(.count) .breadcrumb-list {
      justify-content: flex-start; }
  .banner-block .count {
    width: 33.2rem;
    flex-shrink: 0;
    text-align: center;
    height: fit-content;
    padding: 4.8rem 4rem;
    border-radius: 2.4rem;
    background-color: #59a15f; }
    @media screen and (max-width: 1024px) {
      .banner-block .count {
        row-gap: 0.8rem;
        padding: 2.4rem; } }
    @media screen and (max-width: 576px) {
      .banner-block .count {
        padding: 1.6rem; } }
    .banner-block .count-heading {
      gap: 0.4rem;
      display: flex;
      text-align: center;
      align-items: flex-start;
      justify-content: center; }
      .banner-block .count-heading > * {
        font-weight: 700;
        letter-spacing: -0.256rem; }
      .banner-block .count-heading span:first-child {
        color: white;
        line-height: normal;
        font-family: var(--font-title); }
      .banner-block .count-heading span:last-child {
        line-height: 1;
        font-size: 4rem;
        color: #e3eba0; }
        @media screen and (max-width: 1200px) {
          .banner-block .count-heading span:last-child {
            font-size: 3.2rem; } }
        @media screen and (max-width: 767px) {
          .banner-block .count-heading span:last-child {
            font-size: 2.4rem; } }
    .banner-block .count-number {
      font-size: 6.4rem; }
      @media only screen and (max-width: 1200px) {
        .banner-block .count-number {
          font-size: 3.9rem; } }
      @media only screen and (max-width: 800px) {
        .banner-block .count-number {
          font-size: 2.9rem; } }
    .banner-block .count-content .text-20 {
      color: white;
      line-height: 130%;
      letter-spacing: -0.08rem;
      text-transform: capitalize; }

.banner__tag .service__card-list {
  margin-top: 2rem;
  margin-bottom: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  justify-content: center; }
  .banner__tag .service__card-list li {
    padding: 0.8rem 1.6rem;
    border-radius: 0.4rem;
    width: fit-content;
    background: #2b6732;
    color: #fff;
    margin-top: 0;
    position: relative;
    padding-left: 4rem;
    font-size: 1.8rem;
    line-height: 1.3;
    letter-spacing: calc(14px * (-4 / 100));
    display: flex;
    gap: 0.8rem; }
    @media only screen and (max-width: 1200px) {
      .banner__tag .service__card-list li {
        font-size: 1.6rem; } }
    @media only screen and (max-width: 800px) {
      .banner__tag .service__card-list li {
        font-size: 1.5rem; } }
    .banner__tag .service__card-list li::before {
      content: "";
      position: absolute;
      left: 1.6rem;
      width: 1.8rem;
      height: 1.8rem;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("../images/service/check.svg"); }
    .banner__tag .service__card-list li:first-child {
      margin-top: 0; }

.timeline__slider {
  position: relative;
  margin-top: 6rem; }
  .timeline__slider::before {
    content: "";
    position: absolute;
    top: 50px;
    left: 0;
    right: 0;
    height: 1px;
    background: rgba(8, 40, 35, 0.2);
    z-index: 0; }
  .timeline__slider .swiper {
    overflow: visible;
    position: relative; }
  .timeline__slider .swiper-slide {
    --pad: 3.2rem;
    width: calc(28rem + var(--pad));
    padding: 0 calc(var(--pad) / 2); }
    .timeline__slider .swiper-slide:nth-child(4n + 1) {
      --card-color: #59a15f; }
    .timeline__slider .swiper-slide:nth-child(4n + 2) {
      --card-color: #082823; }
    .timeline__slider .swiper-slide:nth-child(4n + 3) {
      --card-color: #a9d433; }
      .timeline__slider .swiper-slide:nth-child(4n + 3) .timeline__number {
        color: #082823; }
      .timeline__slider .swiper-slide:nth-child(4n + 3) .timeline__icon img {
        filter: brightness(0) saturate(100%) invert(10%) sepia(33%) saturate(993%) hue-rotate(119deg) brightness(97%) contrast(95%); }
    .timeline__slider .swiper-slide:nth-child(4n + 4) {
      --card-color: #2b6732; }
    @media screen and (max-width: 1199.98px) {
      .timeline__slider .swiper-slide {
        --pad: 2.4rem; } }
    @media screen and (max-width: 991.98px) {
      .timeline__slider .swiper-slide {
        --pad: 1.6rem; } }
  @media screen and (max-width: 1299.98px) {
    .timeline__slider:has(.swiper-pagination-bullet) {
      padding-bottom: 6rem; } }
  @media screen and (min-width: 1300px) {
    .timeline__slider .swiper-pagination {
      display: none; } }
  .timeline__slider .swiper-pagination-bullet-active {
    background: #59a15f; }

.timeline__step {
  position: relative; }

.timeline__number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 10rem;
  height: 10rem;
  margin-right: auto;
  margin-left: auto;
  background: var(--card-color);
  color: white;
  font-size: 3.2rem;
  letter-spacing: calc(32px * (-4 / 100));
  font-weight: 700;
  border-radius: 50%;
  margin-bottom: 4rem;
  transition: all 0.4s ease; }
  @media only screen and (max-width: 1200px) {
    .timeline__number {
      font-size: 2.7rem; } }
  @media only screen and (max-width: 800px) {
    .timeline__number {
      font-size: 2.2rem; } }

.timeline__card {
  background: var(--card-color);
  color: white;
  padding: 3.2rem;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  transition: transform 0.4s ease;
  row-gap: 3.2rem; }

.timeline__icon img {
  width: 4.8rem;
  height: 4.8rem; }

.timeline__desc {
  font-size: 1.6rem;
  letter-spacing: calc(16px * (-4 / 100));
  line-height: 1.6;
  opacity: 0.7;
  color: #fff; }
  @media only screen and (max-width: 800px) {
    .timeline__desc {
      font-size: 1.4rem; } }

.timeline__content {
  display: flex;
  flex-direction: column;
  row-gap: 2.4rem; }

.offer {
  z-index: 5;
  --radius: 16rem;
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  color: #fff;
  background: #082823;
  position: relative; }
  .offer::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    background-image: var(--img);
    opacity: 0.2;
    pointer-events: none; }
  .offer .title-desc {
    color: #fff; }
  @media screen and (max-width: 991.98px) {
    .offer {
      --radius: 12rem; } }
  @media screen and (max-width: 767.98px) {
    .offer {
      --radius: 8rem; } }
  @media screen and (max-width: 575.98px) {
    .offer {
      --radius: 4rem; } }

.offer__list {
  display: flex;
  flex-direction: column;
  margin-top: 6rem; }
  @media screen and (max-width: 575.98px) {
    .offer__list {
      margin-top: 4rem; } }

.offer__item {
  display: flex;
  gap: 1.6rem;
  padding: 6rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  justify-content: space-between; }
  @media screen and (max-width: 1199.98px) {
    .offer__item {
      padding: 4rem 0; } }
  @media screen and (max-width: 575.98px) {
    .offer__item {
      padding: 2.4rem 0; } }
  @media screen and (max-width: 991.98px) {
    .offer__item {
      flex-direction: column; } }
  .offer__item:first-child {
    border: 0; }
  .offer__item-head {
    display: flex;
    gap: 6rem;
    max-width: 59.2rem; }
    @media screen and (max-width: 1199.98px) {
      .offer__item-head {
        gap: 2.4rem; } }
    @media screen and (max-width: 991.98px) {
      .offer__item-head {
        gap: 1.6rem;
        max-width: 100%; } }
  .offer__item-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-1rem); }
    .offer__item-icon img {
      width: 4.8rem;
      height: 4.8rem;
      filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(5%) hue-rotate(142deg) brightness(103%) contrast(101%); }
    @media screen and (max-width: 1200px) {
      .offer__item-icon img {
        width: 3.2rem;
        height: 3.2rem; } }
  .offer__item-content {
    max-width: 48.8rem;
    flex: 1; }
    .offer__item-content .mona-content {
      color: #fff;
      opacity: 0.7;
      letter-spacing: calc(16px * (-4 / 100));
      font-size: 1.6rem;
      line-height: 1.6; }
      @media only screen and (max-width: 800px) {
        .offer__item-content .mona-content {
          font-size: 1.4rem; } }
    @media screen and (max-width: 991.98px) {
      .offer__item-content {
        max-width: 100%; } }

.benefits {
  overflow: hidden;
  position: relative;
  background-color: white; }
  .benefits::before {
    position: absolute;
    top: 0;
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(169, 212, 51, 0.1) 37%, rgba(169, 212, 51, 0.2) 100%); }
    @media screen and (max-width: 991.98px) {
      .benefits::before {
        top: 8rem; } }
    @media screen and (max-width: 575.98px) {
      .benefits::before {
        top: 6rem; } }
  .benefits:has(+ .offer) {
    padding-bottom: 24rem; }
    @media screen and (max-width: 991.98px) {
      .benefits:has(+ .offer) {
        padding-bottom: 20rem; } }
    @media screen and (max-width: 575.98px) {
      .benefits:has(+ .offer) {
        padding-bottom: 18rem; } }
    @media screen and (min-width: 1201px) {
      .benefits:has(+ .offer) {
        border-radius: 16rem 16rem 0 0;
        box-shadow: 0 -2rem 4rem 0 rgba(0, 0, 0, 0.15); } }
  .benefits + .offer {
    margin-top: -12rem; }

.advantage {
  z-index: 1;
  overflow: hidden;
  position: relative;
  background-color: white; }
  @media screen and (min-width: 1201px) {
    .advantage {
      overflow: visible; }
      .advantage::before {
        content: "";
        position: absolute;
        top: -100%;
        left: 0;
        background: white;
        width: 100%;
        height: 100%;
        z-index: -2; } }
  .advantage .title-desc {
    max-width: 80rem;
    margin-right: auto;
    margin-left: auto; }
  .advantage .title-64 span {
    color: #59a15f; }

.advantage__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.2rem;
  margin-top: 6rem; }
  @media screen and (max-width: 1199.98px) {
    .advantage__grid {
      gap: 2.4rem; } }
  @media screen and (max-width: 991.98px) {
    .advantage__grid {
      gap: 1.6rem; } }
  @media screen and (max-width: 767.98px) {
    .advantage__grid {
      grid-template-columns: 1fr; } }
  @media screen and (max-width: 575.98px) {
    .advantage__grid {
      margin-top: 4rem; } }

.advantage__card {
  padding: 4rem;
  color: #1a1a1a;
  transition: transform 0.4s ease;
  background: var(--color);
  border-radius: 2.4rem;
  overflow: hidden;
  color: #fff;
  display: flex;
  flex-direction: column;
  row-gap: 2rem; }
  @media screen and (max-width: 1199.98px) {
    .advantage__card {
      padding: 3.2rem; } }
  @media screen and (max-width: 991.98px) {
    .advantage__card {
      padding: 2.4rem 1.6rem; } }
  .advantage__card:nth-child(4n + 1) {
    --color: #59a15f; }
  .advantage__card:nth-child(4n + 2) {
    --color: #082823; }
  .advantage__card:nth-child(4n + 3) {
    --color: #a9d433;
    color: #082823; }
    .advantage__card:nth-child(4n + 3) .text-18 {
      color: #2b6732; }
  .advantage__card:nth-child(4n + 4) {
    --color: #2b6732; }
  .advantage__card .text-18 {
    line-height: 1.3;
    color: #a9d433; }

.advantage__desc {
  opacity: 0.7;
  line-height: 1.6; }
  .advantage__desc strong,
  .advantage__desc b {
    font-weight: 700; }

.advantage__img {
  max-width: 14rem;
  border-radius: 1.6rem;
  overflow: hidden; }
  .advantage__img img {
    width: 100%;
    height: auto; }

.cta {
  position: relative; }
  .cta__inner {
    position: relative;
    z-index: 1;
    color: #fff; }
    .cta__inner .btn {
      margin-right: auto;
      margin-left: auto;
      margin-top: 2rem; }
    .cta__inner .title-desc {
      color: #fff; }

.cta__img {
  position: absolute;
  inset: 0;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: fixed; }

.p-servicedt .banner-block .count {
  background: #a9d433; }

.p-servicedt .banner-block .count-heading span:first-child,
.p-servicedt .banner-block .count-content .text-20 {
  color: #082823; }

.p-servicedt .banner-block .count-heading span:last-child {
  color: #59a15f; }

.p-servicedt .benefits {
  z-index: 5; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZWR0LmNzcyIsInNvdXJjZXMiOlsic2VydmljZWR0LnNjc3MiLCJfY29yZS9fcmVzZXQuc2NzcyIsIl9jb3JlL19taXhpbi5zY3NzIiwiX2NvcmUvX3ZhcmlhYmxlLnNjc3MiLCJfY29yZS9fZm9udC5zY3NzIiwiX2NvcmUvX2Jhc2Uuc2NzcyIsIl9jb3JlL19mbGV4LnNjc3MiLCJfbW9kdWxlcy9fdGl0bGUuc2NzcyIsIl9tb2R1bGVzL19icmVhZGNydW1iLnNjc3MiLCJfbW9kdWxlcy9fc2Nyb2xsLXRvcC5zY3NzIiwiX2NvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiX2NvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiX2xheW91dHMvX2J0bi5zY3NzIiwiX2xheW91dHMvX2Zvcm0uc2NzcyIsIl9sYXlvdXRzL19jb21wbGV0ZWQuc2NzcyIsIl9wYWdlcy9fc2VydmljZS5zY3NzIiwiX2xheW91dHMvX2Jhbm5lci5zY3NzIiwiX2xheW91dHMvX3RpbWVsaW5lLnNjc3MiLCJfbGF5b3V0cy9fb2ZmZXIuc2NzcyIsIl9sYXlvdXRzL19iZW5lZml0cy5zY3NzIiwiX3BhZ2VzL19zZXJ2aWNlZHQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3JlXG5AaW1wb3J0IFwiX2NvcmUvcmVzZXRcIjtcbkBpbXBvcnQgXCJfY29yZS9taXhpblwiO1xuQGltcG9ydCBcIl9jb3JlL3ZhcmlhYmxlXCI7XG5AaW1wb3J0IFwiX2NvcmUvZm9udFwiO1xuQGltcG9ydCBcIl9jb3JlL2Jhc2VcIjtcbkBpbXBvcnQgXCJfY29yZS9mbGV4XCI7XG4vLyBAaW1wb3J0IFwiX2NvcmUvbW9uYVwiO1xuXG4vLyBNb2R1bGVzXG4vLyBAaW1wb3J0IFwiX21vZHVsZXMvYWxsXCI7XG5AaW1wb3J0IFwiX21vZHVsZXMvdGl0bGVcIjtcbi8vIEBpbXBvcnQgXCJfbW9kdWxlcy9hbmltYXRpb25cIjtcbi8vIEBpbXBvcnQgXCJfbW9kdWxlcy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiX21vZHVsZXMvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL3Njcm9sbC10b3BcIjtcblxuLy8gQ29tcG9uZW50XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvaGVhZGVyXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvZm9vdGVyXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIl9sYXlvdXRzL2J0blwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL2Zvcm1cIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9jb21wbGV0ZWRcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9iYW5uZXJcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy90aW1lbGluZVwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL29mZmVyXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvYmVuZWZpdHNcIjtcblxuLy8gUGFnZVxuQGltcG9ydCBcIl9wYWdlcy9zZXJ2aWNlZHRcIjtcbiIsImh0bWwsXHJcbmJvZHksXHJcbmRpdixcclxuc3BhbixcclxuYXBwbGV0LFxyXG5vYmplY3QsXHJcbmlmcmFtZSxcclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNixcclxucCxcclxuYmxvY2txdW90ZSxcclxucHJlLFxyXG5hLFxyXG5hYmJyLFxyXG5hY3JvbnltLFxyXG5hZGRyZXNzLFxyXG5iaWcsXHJcbmNpdGUsXHJcbmNvZGUsXHJcbmRlbCxcclxuZGZuLFxyXG5lbSxcclxuaW1nLFxyXG5pbnMsXHJcbmtiZCxcclxucSxcclxucyxcclxuc2FtcCxcclxuc21hbGwsXHJcbnN0cmlrZSxcclxuc3Ryb25nLFxyXG5zdWIsXHJcbnN1cCxcclxudHQsXHJcbnZhcixcclxuYixcclxudSxcclxuaSxcclxuY2VudGVyLFxyXG5kbCxcclxuZHQsXHJcbmRkLFxyXG5vbCxcclxudWwsXHJcbmxpLFxyXG5maWVsZHNldCxcclxuZm9ybSxcclxubGFiZWwsXHJcbmxlZ2VuZCxcclxudGFibGUsXHJcbmNhcHRpb24sXHJcbnRib2R5LFxyXG50Zm9vdCxcclxudGhlYWQsXHJcbnRyLFxyXG50aCxcclxudGQsXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5jYW52YXMsXHJcbmRldGFpbHMsXHJcbmVtYmVkLFxyXG5maWd1cmUsXHJcbmZpZ2NhcHRpb24sXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1lbnUsXHJcbm5hdixcclxub3V0cHV0LFxyXG5ydWJ5LFxyXG5zZWN0aW9uLFxyXG5zdW1tYXJ5LFxyXG50aW1lLFxyXG5tYXJrLFxyXG5hdWRpbyxcclxudmlkZW8ge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICAgIGZvbnQ6IGluaGVyaXQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1lbnUsXHJcbm5hdixcclxuc2VjdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxub2wsXHJcbnVsIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbmJsb2NrcXVvdGUsXHJcbnEge1xyXG4gICAgcXVvdGVzOiBub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlOmJlZm9yZSxcclxuYmxvY2txdW90ZTphZnRlcixcclxucTpiZWZvcmUsXHJcbnE6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGNvbnRlbnQ6IG5vbmU7XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgICBib3JkZXItc3BhY2luZzogMDtcclxufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0TWVkaWFcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuQG1peGluIG1heCgkcG9pbnQpIHtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkcG9pbnQpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1pbigkcG9pbnQpIHtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkcG9pbnQpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRGbGV4IEJveFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5AbWl4aW4gZmxleCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWNlbnRlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuQG1peGluIGZsZXgtaWNlbnRlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1qY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1qYmV0d2VlbiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbkBtaXhpbiBiZ0ltYWdlKCRwb3NpdGlvbjogY2VudGVyLCAkc2l6ZTogY292ZXIsICRyZXBlYXQ6IG5vLXJlcGVhdCkge1xyXG4gIGJhY2tncm91bmQtc2l6ZTogJHNpemU7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6ICRyZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHBvc2l0aW9uO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkczogMC40cykge1xyXG4gIHRyYW5zaXRpb246ICRzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG5AbWl4aW4gYm94KCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XHJcbiAgd2lkdGg6ICR3aWR0aDtcclxuICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiBpbWdDb3ZlciB7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBpbWdDb250YWluIHtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG5AbWl4aW4gbGluZUNsYW1wKCRsaW5lOiAyLCAkZGlzcGxheTogdHJ1ZSkge1xyXG4gIEBpZiAkZGlzcGxheSB7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgbGluZS1jbGFtcDogJGxpbmU7XHJcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiAkbGluZTtcclxufVxyXG5cclxuQG1peGluIHNoYWRvdyB7XHJcbiAgYm94LXNoYWRvdzogMXJlbSAxcmVtIDRyZW0gMCByZ2JhKDQwLCAxMDUsIDI0MCwgMC4xNik7XHJcbn1cclxuXHJcbkBtaXhpbiBwb3NDZW50ZXIge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBtYXJnaW4oJG1hcmdpbjEsICRtYXJnaW4yOiAkbWFyZ2luMSkge1xyXG4gIG1hcmdpbjogJG1hcmdpbjEgMHJlbSAkbWFyZ2luMjtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KDk5MnB4KSB7XHJcbiAgICBtYXJnaW46IDZyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgbWFyZ2luOiA0cmVtIDByZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcGFkZGluZygkcGFkZGluZzEsICRwYWRkaW5nMjogJHBhZGRpbmcxKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmcxIDByZW0gJHBhZGRpbmcyO1xyXG5cclxuICBAaW5jbHVkZSBtYXgoOTkycHgpIHtcclxuICAgIHBhZGRpbmc6IDhyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgcGFkZGluZzogNnJlbSAwcmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGxldHRlclNwYWNpbmcoJGZ6OiAxNnB4LCAkcGVyY2VudDogNCkge1xyXG4gIGxldHRlci1zcGFjaW5nOiBjYWxjKCN7JGZ6fSAqICgjeyRwZXJjZW50fSAvIDEwMCkpO1xyXG59XHJcbiIsIjpyb290IHtcclxuICAtLWZvbnQtcHJpOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XHJcbiAgLS1mb250LXNlYzogXCJCZSBWaWV0bmFtIFByb1wiLCBzYW5zLXNlcmlmO1xyXG4gIC0tZm9udC10aGlyZDogXCJTcG9xYSBIYW4gU2FucyBOZW9cIiwgc2Fucy1zZXJpZjtcclxuICAtLWZvbnQtdGl0bGU6IFwiVW5ib3VuZGVkXCIsIHNhbnMtc2VyaWY7XHJcblxyXG4gIC0taGVhZGVyLWluZGV4OiA5OTtcclxuICAtLWhlYWRlci1oZWlnaHQ6IDkuNnJlbTtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XHJcbiAgICAtLWhlYWRlci1oZWlnaHQ6IDhyZW07XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgIC0taGVhZGVyLWhlaWdodDogN3JlbTtcclxuICB9XHJcbn1cclxuXHJcbiRjb2xvci1wcmk6ICM1OWExNWY7XHJcbiRjb2xvci1zZWM6ICNhOWQ0MzM7XHJcbiRjb2xvci10ZXh0OiAjMDgyODIzO1xyXG4kY29sb3ItYmc6ICNmMGYwZjA7XHJcblxyXG4kY29sb3ItYmxhY2s6IGJsYWNrO1xyXG4kY29sb3Itd2hpdGU6IHdoaXRlO1xyXG4iLCJAbWl4aW4gZnotMjAwIHtcbiAgZm9udC1zaXplOiAyMHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMTVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxMHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotOTAge1xuICBmb250LXNpemU6IDlyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTcyIHtcbiAgZm9udC1zaXplOiA3LjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02NSB7XG4gIGZvbnQtc2l6ZTogNi41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNjQge1xuICBmb250LXNpemU6IDYuNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02MCB7XG4gIGZvbnQtc2l6ZTogNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NiB7XG4gIGZvbnQtc2l6ZTogNS42cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1LjFyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NSB7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01MCB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00OCB7XG4gIGZvbnQtc2l6ZTogNC44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjNyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjNyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQ1IHtcbiAgZm9udC1zaXplOiA0LjVyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00MiB7XG4gIGZvbnQtc2l6ZTogNC4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQwIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTM4IHtcbiAgZm9udC1zaXplOiAzLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzYge1xuICBmb250LXNpemU6IDMuNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNSB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNCB7XG4gIGZvbnQtc2l6ZTogMy40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjlyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTMyIHtcbiAgZm9udC1zaXplOiAzLjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzAge1xuICBmb250LXNpemU6IDNyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjkge1xuICBmb250LXNpemU6IDIuOXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yOCB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTI2IHtcbiAgZm9udC1zaXplOiAyLjZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjUge1xuICBmb250LXNpemU6IDIuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yNCB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMiB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0xOSB7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTE4IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMTYge1xuICBmb250LXNpemU6IDEuNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTE1IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbkBtaXhpbiBmei0xNCB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG5AbWl4aW4gZnotMTMge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuQG1peGluIGZ6LTEyIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5cbkBtaXhpbiBmei0xMSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuXG5AbWl4aW4gZnotMTAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtaXhpbiBmei05IHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4iLCIqIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5odG1sIHtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcblxyXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgd2lkdGg6IDAuNHJlbTtcclxuICAgIGhlaWdodDogMC40cmVtO1xyXG4gIH1cclxuXHJcbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgjMzMzLCAwLjgpO1xyXG4gIH1cclxufVxyXG5cclxuYm9keSB7XHJcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxuICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaSk7XHJcbiAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZygxNnB4LCAtNCk7XHJcblxyXG4gICYuaXMtbGFuZ3VhZ2V7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC10aGlyZCk7XHJcbiAgfVxyXG5cclxuICAmLmFkbWluLWJhciB7XHJcbiAgICAuaGVhZGVyIHtcclxuICAgICAgdG9wOiAzLjJyZW07XHJcblxyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODJweCkge1xyXG4gICAgICAgIHRvcDogNC42cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubW9uYS1lbXB0eSB7XHJcbiAgICBjb2xvcjogIzMzMztcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgfVxyXG5cclxuICAuZ3JlY2FwdGNoYS1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5hIHtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbmJ1dHRvbixcclxuc2VsZWN0IHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG5idXR0b24ge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG5pbnB1dCxcclxudGV4dGFyZWEge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIHBhZGRpbmc6IDAgMS42cmVtO1xyXG4gIG1heC13aWR0aDogMTI0LjhyZW07XHJcbn1cclxuXHJcbi5uby1zY3JvbGwsXHJcbi5uby1zY3JvbGwtcG9wdXAge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IG5vbmU7XHJcbn1cclxuXHJcbmlmcmFtZSB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuaW1nIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4udGFiQnRuIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi50YWJQYW5lbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgJi5vcGVuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLmdJdGVtIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5oaWRlLXNpdGVuYW1lIHtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG59XHJcblxyXG4uc2VjdGlvbiB7XHJcbiAgLy8gVOG7sSDEkeG7mW5nIGPEg24gY2jhu4luaCBzYXUga2hpIGN14buZblxyXG4gIHNjcm9sbC1tYXJnaW4tdG9wOiAxMHJlbTtcclxufVxyXG5cclxuLm92ZXJsYXksXHJcbi5hc2lkZS1vdmVybGF5IHtcclxuICBpbnNldDogMDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICBoZWlnaHQ6IDEwMGR2aDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cclxuICAmLmlzLWFjdGl2ZSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIucm93IHtcclxuICAtLXJnOiAzLjJyZW07XHJcbiAgLS1jZzogMy4ycmVtO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIG1hcmdpbjogMCBjYWxjKHZhcigtLWNnKSAvIDIgKiAtMSkgY2FsYyh2YXIoLS1yZykgKiAtMSk7XHJcbn1cclxuXHJcbi5jb2wge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXJnKTtcclxuICBwYWRkaW5nOiAwIGNhbGModmFyKC0tY2cpIC8gMik7XHJcblxyXG4gICYtMTEge1xyXG4gICAgd2lkdGg6IGNhbGMoMTEgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgJi0xMCB7XHJcbiAgICB3aWR0aDogY2FsYygxMCAvIDEyICogMTAwJSk7XHJcbiAgfVxyXG5cclxuICAmLTkge1xyXG4gICAgd2lkdGg6IGNhbGMoOSAvIDEyICogMTAwJSk7XHJcbiAgfVxyXG5cclxuICAmLTgge1xyXG4gICAgd2lkdGg6IGNhbGMoOCAvIDEyICogMTAwJSk7XHJcbiAgfVxyXG5cclxuICAmLTcge1xyXG4gICAgd2lkdGg6IGNhbGMoNyAvIDEyICogMTAwJSk7XHJcbiAgfVxyXG5cclxuICAmLTYge1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICB9XHJcblxyXG4gICYtNSB7XHJcbiAgICB3aWR0aDogY2FsYyg1IC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtNCB7XHJcbiAgICB3aWR0aDogY2FsYyg0IC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtMyB7XHJcbiAgICB3aWR0aDogY2FsYygzIC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtMiB7XHJcbiAgICB3aWR0aDogY2FsYygyIC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtMSB7XHJcbiAgICB3aWR0aDogY2FsYygxIC8gMTIgKiAxMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbi8vLSBGTEVYXHJcbiRmbGV4LWRlZmF1bHRzOiAoXHJcbiAgMjogMC4ycmVtLFxyXG4gIDQ6IDAuNHJlbSxcclxuICA2OiAwLjZyZW0sXHJcbiAgODogMC44cmVtLFxyXG4gIDEwOiAxcmVtLFxyXG4gIDEyOiAxLjJyZW0sXHJcbiAgMTQ6IDEuNHJlbSxcclxuICAxNjogMS42cmVtLFxyXG4gIDE4OiAxLjhyZW0sXHJcbiAgMjA6IDJyZW0sXHJcbiAgMjI6IDIuMnJlbSxcclxuICAyNDogMi40cmVtLFxyXG4gIDI2OiAyLjZyZW0sXHJcbiAgMjg6IDIuOHJlbSxcclxuICAzMDogM3JlbSxcclxuICAzMjogMy4ycmVtLFxyXG4gIDM0OiAzLjRyZW0sXHJcbiAgMzY6IDMuNnJlbSxcclxuICA0MDogNHJlbSxcclxuICA0ODogNC44cmVtLFxyXG4gIDUwOiA1cmVtLFxyXG4gIDU2OiA1LjZyZW0sXHJcbiAgNjA6IDZyZW0sXHJcbiAgNjQ6IDYuNHJlbSxcclxuICA2ODogNi44cmVtLFxyXG4gIDgwOiA4cmVtLFxyXG4gIDEwMDogMTByZW0sXHJcbiAgMTIwOiAxMnJlbVxyXG4pO1xyXG5cclxuLy8tIEZVTkNUSU9OOiBs4buNYyBmbGV4ID49ICRtaW5cclxuQGZ1bmN0aW9uIGZpbHRlci1mbGV4KCRtYXAsICRtaW4pIHtcclxuICAkcmVzdWx0OiAoKTtcclxuICBAZWFjaCAka2V5LCAkdmFsIGluICRtYXAge1xyXG4gICAgQGlmICRrZXkgPj0gJG1pbiB7XHJcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAka2V5LCBjb21tYSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEByZXR1cm4gJHJlc3VsdDtcclxufVxyXG5cclxuLy8tIEJSRUFLUE9JTlRTXHJcbiR0YWJsZXRCcmVha3BvaW50czogZmlsdGVyLWZsZXgoJGZsZXgtZGVmYXVsdHMsIDQ4KTtcclxuJG1vYmlsZUJyZWFrcG9pbnRzOiBmaWx0ZXItZmxleCgkZmxleC1kZWZhdWx0cywgNDgpO1xyXG5cclxuLmZsZXgge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgLy8gYmFzZSBjbGFzc2VzXHJcbiAgQGVhY2ggJGZsZXhOdW1iZXIsICRnYXAgaW4gJGZsZXgtZGVmYXVsdHMge1xyXG4gICAgJi0jeyRmbGV4TnVtYmVyfSB7XHJcbiAgICAgIGdhcDogJGdhcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHRhYmxldCA8PSA5OTJweFxyXG4gIEBpbmNsdWRlIG1heCg5OTJweCkge1xyXG4gICAgQGVhY2ggJGZsZXhOdW1iZXIgaW4gJHRhYmxldEJyZWFrcG9pbnRzIHtcclxuICAgICAgJi0jeyRmbGV4TnVtYmVyfSB7XHJcbiAgICAgICAgZ2FwOiAzLjJyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIG1vYmlsZSA8PSA1NzZweFxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgQGVhY2ggJGZsZXhOdW1iZXIgaW4gJG1vYmlsZUJyZWFrcG9pbnRzIHtcclxuICAgICAgJi0jeyRmbGV4TnVtYmVyfSB7XHJcbiAgICAgICAgZ2FwOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gVElUTEUgREVGQVVMVFNcbi50aXRsZSB7XG4gICYtNjQge1xuICAgIEBpbmNsdWRlIGZ6LTY0O1xuICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoNjRweCwgLTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgQGluY2x1ZGUgbWF4KDY0MC45OHB4KSB7XG4gICAgICBiciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi00OCB7XG4gICAgQGluY2x1ZGUgZnotNDg7XG4gICAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZyg0OHB4LCAtNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgfVxuXG4gICYtNDAge1xuICAgIEBpbmNsdWRlIGZ6LTQwO1xuICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoNDBweCwgLTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAmLTM2IHtcbiAgICBAaW5jbHVkZSBmei0zNjtcbiAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDM2cHgsIC00KTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgJi0zMiB7XG4gICAgQGluY2x1ZGUgZnotMzI7XG4gICAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZygzMnB4LCAtNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxuXG4gICYtMjgge1xuICAgIEBpbmNsdWRlIGZ6LTI4O1xuICB9XG5cbiAgJi0yNCB7XG4gICAgQGluY2x1ZGUgZnotMjQ7XG4gICAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZygyNHB4LCAtNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxuXG4gICYtZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgIGNvbG9yOiAjNjY3MDg1O1xuICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZygxNnB4LCAtNCk7XG5cbiAgICBzdHJvbmcsXG4gICAgYiB7XG4gICAgICBmb250LXdlaWdodDogNzAwMDtcbiAgICB9XG4gICAgJjpoYXMoaW1nKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogMC4ycmVtO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgaW1nIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHdpZHRoOiAzLjJyZW07XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVEVYVCBERUZBVUxUU1xuLnRleHQge1xuICAmLTIwIHtcbiAgICBAaW5jbHVkZSBmei0yMDtcbiAgfVxuXG4gICYtMTgge1xuICAgIEBpbmNsdWRlIGZ6LTE4O1xuICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoMThweCwgLTQpO1xuICB9XG5cbiAgJi0xNiB7XG4gICAgQGluY2x1ZGUgZnotMTY7XG4gIH1cblxuICAmLTE0IHtcbiAgICBAaW5jbHVkZSBmei0xNDtcbiAgfVxuXG4gICYtMTIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG5cbi8vLSBPdGhlclxuLmYge1xuICAmLXByaSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgfVxuXG4gICYtdHQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRpdGxlKTtcbiAgfVxuXG4gICYtZGVzYyB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGVzYyk7XG4gIH1cbn1cblxuLmZzLWkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi50IHtcbiAgJi1jYXAge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG5cbiAgJi11cCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gICYtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmZ3IHtcbiAgJi1iIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgJi1zYiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gICYtbSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gICYtbiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gICYtdCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxufVxuXG4udGl0bGVfX2hlYWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5weS01MCB7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbiAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWF4KDU3NS45OHB4KSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIH1cbn1cblxuLnB5LTYwIHtcbiAgcGFkZGluZy10b3A6IDZyZW07XG4gIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuLnB5LTEwMCB7XG4gIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgfVxufVxuLnB5LTEyMCB7XG4gIHBhZGRpbmctdG9wOiAxMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEycmVtO1xuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgfVxufVxuXG4ucHQtMTAwIHtcbiAgcGFkZGluZy10b3A6IDEwcmVtO1xuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgfVxufVxuXG4ucGItMTAwIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgfVxufVxuLnB0LTEyMCB7XG4gIHBhZGRpbmctdG9wOiAxMnJlbTtcbiAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgcGFkZGluZy10b3A6IDhyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWF4KDU3NS45OHB4KSB7XG4gICAgcGFkZGluZy10b3A6IDZyZW07XG4gIH1cbn1cbi5wYi0xMjAge1xuICBwYWRkaW5nLWJvdHRvbTogMTJyZW07XG4gIEBpbmNsdWRlIG1heCg5OTEuOThweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA4cmVtO1xuICB9XG4gIEBpbmNsdWRlIG1heCg1NzUuOThweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICYtbGlzdCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgJi1pdGVtIHtcbiAgICBjb2xvcjogIzY2NzA4NTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoMTZweCwgLTQpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOm5vdCguaXMtY3VycmVudCk6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luOiAwIDEuMnJlbTtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGluY2x1ZGUgYmdJbWFnZShjZW50ZXIsIGNvbnRhaW4pO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltYWdlcy9pY29ucy9pY29uLWNoZXZyb24uc3ZnXCIpO1xuICAgICAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIG1hcmdpbjogMCAwLjhyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1jdXJyZW50IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzA4MjgyMztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgICAgLy8gLnRleHQtMTYge1xuICAgICAgLy8gICBAaW5jbHVkZSBsaW5lQ2xhbXAoMSk7XG4gICAgICAvLyB9XG4gICAgICAmID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIGxpbmVDbGFtcCgxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC0xNiB7XG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uY29udGFpbmVyIHtcbiAgLmJyZWFkY3J1bWIge1xuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tb3ZlLXRvcCB7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDk4O1xuICByaWdodDogMy4ycmVtO1xuICBib3R0b206IDMuMnJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXG4gIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgIHJpZ2h0OiAxLjJyZW07XG4gICAgYm90dG9tOiAxLjJyZW07XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gICYtaWNvbiB7XG4gICAgZ2FwOiAxcmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gICYtc29jaWFsIHtcbiAgICBnYXA6IDFyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgYSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIEBpbmNsdWRlIGJveCg0LjhyZW0pO1xuICAgICAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgJGNvbG9yLXNlYztcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNjcm9sbHRvcCB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoNjclKSBzZXBpYSg5OCUpIHNhdHVyYXRlKDMyNyUpIGh1ZS1yb3RhdGUoMjlkZWcpIGJyaWdodG5lc3MoOTclKVxuICAgICAgICAgICAgY29udHJhc3QoOTMlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmhlYWRlciB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZzogMS42cmVtIDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBoZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICB6LWluZGV4OiB2YXIoLS1oZWFkZXItaW5kZXgpO1xuXG4gID4gLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNjkuNnJlbTtcbiAgfVxuXG4gIC5jdXN0b20tbG9nby1saW5rIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXgtd2lkdGg6IDI3LjRyZW07XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIG1heC13aWR0aDogMjAuNnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIG1heC13aWR0aDogMTYuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgJi5pcy1maXhlZCB7XG4gICAgQGluY2x1ZGUgc2hhZG93O1xuXG4gICAgJi5pcy1maXhlZCB7XG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaXMtaGlkZGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMSAqIHZhcigtLWhlYWRlci1oZWlnaHQpKSk7XG4gIH1cblxuICAmLXdyYXAge1xuICAgIGdhcDogMi40cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1heCgxMzY2cHgpIHtcbiAgICAgIGdhcDogMS42cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtbmF2IHtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAzMnJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBvdmVyZmxvdzogaGlkZGVuIGF1dG87XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB6LWluZGV4OiBjYWxjKHZhcigtLWhlYWRlci1pbmRleCkgKyAzKTtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICB3aWR0aDogMzByZW07XG4gICAgfVxuXG4gICAgLm1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICBnYXA6IDRyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDEzNjZweCkge1xuICAgICAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cblxuICAgICAgJi1kcm9wZG93biB7XG4gICAgICAgIGdhcDogMC40cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgPiAubWVudS1saW5rIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoNTUlKSBzZXBpYSgxMiUpIHNhdHVyYXRlKDE0MTUlKSBodWUtcm90YXRlKDc1ZGVnKVxuICAgICAgICAgICAgICAgIGJyaWdodG5lc3MoOTglKSBjb250cmFzdCg5MyUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5jaGlsZCB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtbGluayB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDY0cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IC5tZW51LWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNkMGQwZDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgICAgICAgPiAubWVudS1saW5rIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbmZvIHtcbiAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgsIDQwLCAzNSwgMSk7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgID4gLnRpdGxlLTYwIHtcbiAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItYWRkcmVzcyAuYWRkcmVzcyB7XG4gICAgICByb3ctZ2FwOiAwLjhyZW07XG4gICAgfVxuICB9XG5cbiAgJi1hY3Rpb24ge1xuICAgIGdhcDogMi40cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1heCgxMzY2cHgpIHtcbiAgICAgIGdhcDogMS42cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1sYW5nIHtcbiAgICAubGFuZ3VhZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmxhbmd1YWdlLWhlYWQ6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhbmd1YWdlLWNoaWxkIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtaGVhZCB7XG4gICAgICAgIGdhcDogMC40cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDEuNHJlbSk7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJnSW1hZ2UoY2VudGVyLCBjb250YWluKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1hZ2VzL2hlYWRlci9pY29uLWFycm93LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICBAaW5jbHVkZSBib3goMi40cmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LTE2IHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2NHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLWNoaWxkIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgICAgbWluLXdpZHRoOiA1cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC42cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCB3aGl0ZTtcblxuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDAuNHJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1zZWFyY2gge1xuICAgIEBpbmNsdWRlIG1pbig1NzdweCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5zZWFyY2gge1xuICAgICAgLy8gQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgLy8gICBkaXNwbGF5OiBub25lO1xuICAgICAgLy8gfVxuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICAuc2VhcmNoIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgIC8vIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIHBhZGRpbmc6IDAuNnJlbTtcbiAgICAgIG1hcmdpbjogLTAuNnJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gfVxuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLnNlYXJjaCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5oZWFkZXItc2VhcmNoLW1lbnUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLW1lbnUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyAwLjhyZW0pO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oNTc3cHgpIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1pbi13aWR0aDogMzJyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogY2FsYygxMDAlIC0gMC44cmVtKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMuMnJlbSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIH1cblxuICAgICAgLy8gQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgLy8gICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAvLyAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZDBkMGQwO1xuICAgICAgLy8gfVxuXG4gICAgICBmb3JtIHtcbiAgICAgICAgLmZvcm0tbGFiZWwge1xuICAgICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRyZW07XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogdW5zZXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgcGFkZGluZzogMS4ycmVtIDEuNnJlbSAxLjJyZW0gMi40cmVtO1xuXG4gICAgICAgICAgLy8gQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkMGQwZDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpoYXMoaW5wdXQ6Zm9jdXMpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNoaWxkIHtcbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi13aWR0aDogMTVyZW07XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cblxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgIGJvcmRlci1sZWZ0OiAwLjFyZW0gc29saWQgcmdiYSg4LCA0MCwgMzUsIDAuNCk7XG4gIH1cblxuICAubWVudS1pdGVtIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBwYWRkaW5nOiAwLjhyZW07XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgID4gLm1lbnUtbGluayB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1lbnUtY2xvc2UtaWNvbiB7XG4gIHBhZGRpbmc6IDEuMnJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNkMGQwZDA7XG5cbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1lbnUtYmFyIHtcbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubWVudS1zcGFuIHtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICBoZWlnaHQ6IDAuMnJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAwLjRyZW07XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRleHQ7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5mb290ZXIge1xuICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgQGluY2x1ZGUgYmdJbWFnZSh0b3AsIGNvdmVyKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1hZ2VzL2Zvb3Rlci9mb290ZXItYmcuanBnXCIpO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIC5mb290ZXItaGVhZGluZyAuc29jaWFsLWxpbmsge1xuICAgICAgQGluY2x1ZGUgYm94KDQuOHJlbSk7XG4gICAgfVxuICB9XG5cbiAgJi1jb2wge1xuICAgIEBpbmNsdWRlIG1heCg4NTBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi1oZWFkaW5nIHtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgID4gLnRpdGxlLTYwIHtcbiAgICAgIEBpbmNsdWRlIGZ6LTYwO1xuICAgICAgY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjI0cmVtO1xuICAgIH1cblxuICAgIC5zb2NpYWwge1xuICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgLnRleHQtMTYge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNjRyZW07XG4gICAgICB9XG5cbiAgICAgICYtbGlzdCB7XG4gICAgICAgIGdhcDogMC44cmVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgfVxuXG4gICAgICAmLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBAaW5jbHVkZSBib3goMy42cmVtKTtcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWFkZHJlc3Mge1xuICAgIEBpbmNsdWRlIG1pbig4NTFweCkge1xuICAgICAgbWF4LXdpZHRoOiA0MS40cmVtO1xuICAgIH1cblxuICAgIC5hZGRyZXNzIHtcbiAgICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgICByb3ctZ2FwOiAycmVtO1xuICAgICAgfVxuXG4gICAgICAmLWJveCB7XG4gICAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xNCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDU2cmVtO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xNiB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2NHJlbTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmlzLWZ1bGwge1xuICAgICAgICAuYWRkcmVzcy1ib3gge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZ3JvdXAge1xuICAgIC0tbGV0dGVyLXNwYWNpbmc6IDMuMnJlbTtcblxuICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgcm93LWdhcDogdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xuICAgIG1hcmdpbjogMCBjYWxjKC0xICogdmFyKC0tbGV0dGVyLXNwYWNpbmcpKTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIC0tbGV0dGVyLXNwYWNpbmc6IDEuMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLWJveCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xuXG4gICAgPiAudGV4dC0yMCB7XG4gICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wOHJlbTtcbiAgICB9XG5cbiAgICAubWVudSB7XG4gICAgICAmLWxpbmsge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDY0cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1jb3B5cmlnaHQge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nOiAyLjRyZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICBnYXA6IDFyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgaGVpZ2h0OiAwLjFyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgfVxuXG4gICAgPiAudGV4dC0xNiB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDY0cmVtO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2VjO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGdhcDogMTByZW07XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZ2FwOiA0LjhyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBnYXA6IDJyZW07XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDY0cmVtO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5idG4ge1xuICB6LWluZGV4OiAzO1xuICBmbGV4LXNocmluazogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNzAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2x1bW4tZ2FwOiAxcmVtO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2NHJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYztcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDIuNHJlbTtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuICB9XG5cbiAgJi5teC1hdXRvIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gICYudy0xMDAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGJveCg0cmVtKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICB9XG5cbiAgLndwY2Y3LXNwaW5uZXIge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICAmLS1ib3JkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMDgyODIzO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDgyODIzO1xuICAgIHBhZGRpbmc6IDEuM3JlbSAyLjRyZW07XG4gIH1cbn1cbiIsImZvcm0ge1xuICAuZm9ybS13cmFwIHtcbiAgICBnYXA6IDMuMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1ncm91cCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMi40cmVtIDEuNnJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gIH1cblxuICAuZm9ybS1ib3gge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMC44cmVtKTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcm93LWdhcDogMC40cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAuZm9ybS10ZXh0IHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2NHJlbTtcblxuICAgIHN1cCB7XG4gICAgICBjb2xvcjogI2Q5MmQyMDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAjOThhMmIzO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAxLjZyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSBib3goMS42cmVtKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIEBpbmNsdWRlIGJnSW1hZ2UodG9wLCBjb250YWluKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWFnZXMvaGVhZGVyL2ljb24tYXJyb3cuc3ZnXCIpO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0IHtcbiAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMHJlbTtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgcGFkZGluZzogMS42cmVtIDQuOHJlbSAxLjZyZW0gMS42cmVtO1xuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICBwYWRkaW5nOiAxLjZyZW07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItdGV4dDtcbiAgICB9XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogIzk4YTJiMztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgb3V0bGluZTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY3O1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaSk7XG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLmctcmVjYXB0Y2hhLXdyYXAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICByaWdodDogMDtcbiAgei1pbmRleDogNDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3R0b206IC0yLjJyZW07XG4gIHBhZGRpbmc6IDAuNHJlbTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICByaWdodDogMS42cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItbGVmdDogMC41cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMC41cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDAuNXJlbSBzb2xpZCAjZWMxZjI2O1xuICB9XG59XG5cbi53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMnJlbSAwIDAgMCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMS4ycmVtIDAgMCAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNlbGVjdDItcmVzdWx0cyB7XG4gIEBpbmNsdWRlIHNoYWRvdztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgd2hpdGU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFxuICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcbn1cbi5jdXN0b20taW5wdXQtZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICAuaW5wdXQtc2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzNS4zcmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5maWxlLW5hbWUge1xuICAgIGNvbG9yOiB2YXIoLS0wMTAsICMxMDEyMTIpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBmei0xNjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjMycHg7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDAuMXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAwLjFweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgbGFiZWwge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBib3JkZXI6IDAuMXJlbSBkYXNoZWQgI2EzYTNhMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA4LjVyZW07XG4gICAgY29sb3I6ICMxMDEyMTI7XG4gICAgQGluY2x1ZGUgZnotMTY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoMTZweCwgLTQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMsIGNvbG9yIDAuNHMsIGJvcmRlci1jb2xvciAwLjRzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgIEBpbmNsdWRlIG1pbigxMjAwcHgpIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDEuMnJlbTtcbiAgICB9XG4gICAgLnRleHQtbWFpbiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRleHQtc3VwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjYTFhYmFiO1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE0cHgsIC00KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgd2lkdGg6IDMuMnJlbTtcbiAgICAgIGhlaWdodDogMy4ycmVtO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmlzLWRyYWcgbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uL19wYWdlcy9zZXJ2aWNlXCI7XG4uY29tcGxldGVkX190aW1lbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiA4cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgjZmZmZmZmLCAwLjIpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIC8vIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAvLyBwYWRkaW5nOiAwIDNyZW07XG4gICAgcGFkZGluZzogMCAxLjZyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDcpO1xuICAgIG1pbi13aWR0aDogMTcuNnJlbTtcbiAgICAmLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICAgLmNvbXBsZXRlZF9fdGltZWxpbmUtaXRlbSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE4cHgsIC00KTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjYTlkNDMzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29tcGxldGVkX190aW1lbGluZS1pbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoNzY3Ljk4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xuICAgICAgbWluLXdpZHRoOiAxNXJlbTtcbiAgICB9XG4gIH1cbiAgJi1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIGNvbG9yOiByZ2JhKCNmZmZmZmYsIDAuNSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgQGluY2x1ZGUgbGV0dGVyU3BhY2luZygxNHB4LCAtNCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDIuOHJlbTtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDEuNnJlbTtcbiAgICAgIGhlaWdodDogMS42cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYmFja2dyb3VuZDogIzJiNjczMjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtaW4taGVpZ2h0OiA0LjJyZW07XG4gICAgICBAaW5jbHVkZSBsaW5lQ2xhbXAoMik7XG4gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG4gICYtaW1nIHtcbiAgICB3aWR0aDogOHJlbTtcbiAgICBoZWlnaHQ6IDhyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAycHggc29saWQgI2E5ZDQzMztcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgcGljdHVyZSB7XG4gICAgICB3aWR0aDogOHJlbTtcbiAgICAgIGhlaWdodDogOHJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxufVxuLmNvbXBsZXRlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzA4MjgyMztcbiAgY29sb3I6ICNmZmY7XG5cbiAgLnRpdGxlX19oZWFkIHtcbiAgICByb3ctZ2FwOiAwLjRyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA4NHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLnRpdGxlLTY0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAjYTlkNDMzO1xuICAgIH1cbiAgfVxuICAudGl0bGUtZGVzYyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAuMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgaW1nIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgd2lkdGg6IDMuMnJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgY29sb3I6IHJnYmEoI2ZmZmZmZiwgMC41KTtcbiAgICAmLmlzLWN1cnJlbnQge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6OmJlZm9yZSB7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDEwMCUpIHNlcGlhKDEwMCUpIHNhdHVyYXRlKDElKSBodWUtcm90YXRlKDc4ZGVnKSBicmlnaHRuZXNzKDEwNSUpXG4gICAgICAgIGNvbnRyYXN0KDEwMSUpO1xuICAgIH1cbiAgfVxuICAmOmhhcygrIC5wcm9qZWN0KSB7XG4gICAgLy8gcGFkZGluZy1ib3R0b206IDI0cmVtO1xuICB9XG4gICYgKyAucHJvamVjdCB7XG4gICAgLy8gbWFyZ2luLXRvcDogLTE1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTZyZW0gMTZyZW0gMCAwO1xuICAgICAgYm94LXNoYWRvdzogMCAtMnJlbSA0cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICB9XG4gIH1cbn1cbi5jb21wbGV0ZWRfX3dyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDZyZW07XG4gIC5zd2lwZXItbmF2aWdhdGlvbiB7XG4gICAgLm5leHQsXG4gICAgLnByZXYge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgjZmZmZmZmLCAwLjIpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgd2lkdGg6IDRyZW07XG4gICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGltZyB7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMTAwJSkgc2VwaWEoMTAwJSkgc2F0dXJhdGUoMSUpIGh1ZS1yb3RhdGUoNzhkZWcpIGJyaWdodG5lc3MoMTA1JSlcbiAgICAgICAgICBjb250cmFzdCgxMDElKTtcbiAgICAgIH1cbiAgICAgIC0tc3BhY2U6IDUuMnJlbTtcbiAgICAgIEBpbmNsdWRlIG1heCgxNTM2Ljk4cHgpIHtcbiAgICAgICAgLS1zcGFjZTogMi4ycmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWF4KDExOTkuOThweCkge1xuICAgICAgICAtLXNwYWNlOiAxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5uZXh0IHtcbiAgICAgIHJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2UpKTtcbiAgICB9XG4gICAgLnByZXYge1xuICAgICAgbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNlKSk7XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDc2Ny45OHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIG1pbig3NjhweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi1idWxsZXQge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICYtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2E5ZDQzMztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWF4KDc2Ny45OHB4KSB7XG4gICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gIH1cbn1cbi5jb21wbGV0ZWRfX2Rlc2Mge1xuICBjb2xvcjogcmdiYSgjZmZmZmZmLCAwLjcpO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgQGluY2x1ZGUgbGluZUNsYW1wKDQpO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuLmNvbXBsZXRlZF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLS1jb2wtZ2FwOiA2cmVtO1xuICByb3ctZ2FwOiA0cmVtO1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1jb2wtZ2FwKTtcbiAgQGluY2x1ZGUgbWF4KDE1MzYuOThweCkge1xuICAgIC0tY29sLWdhcDogNHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoMTE5OS45OHB4KSB7XG4gICAgLS1jb2wtZ2FwOiAxLjZyZW07XG4gIH1cbn1cbi5jb21wbGV0ZWRfX2ltZyB7XG4gIHdpZHRoOiA1MiU7XG5cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNHJlbTtcbiAgICAmLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICAgLmNvbXBsZXRlZF9faW1nLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTRkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heCgxMTk5Ljk4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgICB9XG4gIH1cbiAgJi1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoNTIwIC8gNjAwICogMTAwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogMi40cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzA4MjgyMywgMC44KTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgdHJhbnNpdGlvbjogMC44cztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1heCg3NjcuOThweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uY29tcGxldGVkX19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgLnNlcnZpY2VfX2NhcmQtbGlzdCB7XG4gICAgbWFyZ2luOiA0cmVtIDA7XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgZnotMTY7XG4gICAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE2cHgsIC00KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICAgIG1hcmdpbjogMi40cmVtIDA7XG4gICAgfVxuICB9XG59XG4iLCIuc2VydmljZSB7XG4gIHBhZGRpbmctYmxvY2s6IDZyZW07XG4gIC50aXRsZS02NCB7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogIzU5YTE1ZjtcbiAgICB9XG4gIH1cbiAgLnRpdGxlX19oZWFkIHtcbiAgICBtYXgtd2lkdGg6IDkyLjJyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG4uc2VydmljZV9fZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHJvdy1nYXA6IDAuOHJlbTtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbn1cblxuLnNlcnZpY2VfX2NhcmQge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlO1xuICAvLyBtaW4taGVpZ2h0OiBjYWxjKDEwMHZ3ICogKDQwMCAvIDEyMTYpKTtcbiAgYm9yZGVyLXJhZGl1czogMi40cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZjtcbiAgJi1pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBAaW5jbHVkZSBiZ0ltYWdlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCMwODI4MjMsIDAuNik7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAvLyAmID4gaW1nIHtcbiAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgLy8gfVxuICB9XG4gICYtaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1heC13aWR0aDogNDZyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIC5idG4tLWJvcmRlciB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtY29udGVudCB7XG4gICAgd2lkdGg6IDU0JTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDUuNHJlbTtcbiAgICAvLyBsZWZ0OiAwO1xuICAgIC8vIHRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAvLyAgIDkwZGVnLFxuICAgICAgLy8gICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLFxuICAgICAgLy8gICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpIDYyJSxcbiAgICAgIC8vICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KSAxMDAlXG4gICAgICAvLyApO1xuICAgICAgbWFzazogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICB0byByaWdodCxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSxcbiAgICAgICAgcmdiKDI1NSwgMjU1LCAyNTUpIDYyJSxcbiAgICAgICAgcmdiKDI1NSwgMjU1LCAyNTUpIDEwMCVcbiAgICAgICk7XG4gICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgICBwYWRkaW5nOiA0cmVtIDIuNHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDc2Ny45OHB4KSB7XG4gICAgICB3aWR0aDogNzQlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogNHJlbSAxLjZyZW07XG4gICAgfVxuICB9XG5cbiAgJi1saXN0IHtcbiAgICBtYXJnaW46IDIuNHJlbSAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgICBAaW5jbHVkZSBmei0xNDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE0cHgsIC00KTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEuOHJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIEBpbmNsdWRlIGJnSW1hZ2UoY2VudGVyLCBjb250YWluKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3NlcnZpY2UvY2hlY2suc3ZnXCIpO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAuc2VydmljZV9fY2FyZC1jb250ZW50IHtcbiAgICAgIC8vIGxlZnQ6IHVuc2V0O1xuICAgICAgLy8gcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYmFubmVyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gY2FsYygxICogdmFyKC0taGVhZGVyLWhlaWdodCkpKTtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAmLWJnIHtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDgsIDQwLCAzNSwgMCkgMCUsICMwODI4MjMgODUuNzUlKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAmLXBvc2l0aW9uIHtcbiAgICB6LWluZGV4OiA1O1xuICAgIC8vIHBhZGRpbmc6IDUzcmVtIDAgMTVyZW07XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBpbnNldDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiA0MHJlbSAwIDEwcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgcGFkZGluZzogMjByZW0gMCA1cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtYmxvY2sge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIHBhZGRpbmc6IDZyZW0gMDtcbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDByZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgID4gKiB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgPiAudGV4dC0xNiB7XG4gICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNjRyZW07XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIH1cblxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOjpiZWZvcmUge1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWN1cnJlbnQge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtYmxvY2sge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmOmhhcyguY291bnQpIHtcbiAgICAgIGdhcDogMy4ycmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgICBnYXA6IDIuNHJlbTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgfVxuXG4gICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAuYnJlYWRjcnVtYi1saXN0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb3VudCB7XG4gICAgICB3aWR0aDogMzMuMnJlbTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgIHBhZGRpbmc6IDQuOHJlbSA0cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMi40cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgICByb3ctZ2FwOiAwLjhyZW07XG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgIH1cblxuICAgICAgJi1oZWFkaW5nIHtcbiAgICAgICAgZ2FwOiAwLjRyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMjU2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjZTNlYmEwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtbnVtYmVyIHtcbiAgICAgICAgQGluY2x1ZGUgZnotNjQ7XG4gICAgICB9XG5cbiAgICAgICYtY29udGVudCB7XG4gICAgICAgIC50ZXh0LTIwIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA4cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYmFubmVyX190YWcge1xuICAuc2VydmljZV9fY2FyZC1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDEuNnJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwLjhyZW0gMS42cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgYmFja2dyb3VuZDogIzJiNjczMjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIEBpbmNsdWRlIGxldHRlclNwYWNpbmcoMTRweCwgLTQpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMC44cmVtO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxLjZyZW07XG4gICAgICAgIHdpZHRoOiAxLjhyZW07XG4gICAgICAgIGhlaWdodDogMS44cmVtO1xuICAgICAgICBAaW5jbHVkZSBiZ0ltYWdlKGNlbnRlciwgY29udGFpbik7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zZXJ2aWNlL2NoZWNrLnN2Z1wiKTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnRpbWVsaW5lX19zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDZyZW07XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgjMDgyODIzLCAwLjIpO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgLnN3aXBlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIC0tcGFkOiAzLjJyZW07XG4gICAgd2lkdGg6IGNhbGMoMjhyZW0gKyB2YXIoLS1wYWQpKTtcbiAgICBwYWRkaW5nOiAwIGNhbGModmFyKC0tcGFkKSAvIDIpO1xuICAgICY6bnRoLWNoaWxkKDRuICsgMSkge1xuICAgICAgLS1jYXJkLWNvbG9yOiAjNTlhMTVmO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0biArIDIpIHtcbiAgICAgIC0tY2FyZC1jb2xvcjogIzA4MjgyMztcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoNG4gKyAzKSB7XG4gICAgICAtLWNhcmQtY29sb3I6ICNhOWQ0MzM7XG4gICAgICAudGltZWxpbmVfX251bWJlciB7XG4gICAgICAgIGNvbG9yOiAjMDgyODIzO1xuICAgICAgfVxuICAgICAgLnRpbWVsaW5lX19pY29uIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDEwJSkgc2VwaWEoMzMlKVxuICAgICAgICAgICAgc2F0dXJhdGUoOTkzJSkgaHVlLXJvdGF0ZSgxMTlkZWcpIGJyaWdodG5lc3MoOTclKSBjb250cmFzdCg5NSUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDRuICsgNCkge1xuICAgICAgLS1jYXJkLWNvbG9yOiAjMmI2NzMyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoMTE5OS45OHB4KSB7XG4gICAgICAtLXBhZDogMi40cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICAgIC0tcGFkOiAxLjZyZW07XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1heCgxMjk5Ljk4cHgpIHtcbiAgICAmOmhhcyguc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIG1pbigxMzAwcHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpO1xuICB9XG59XG5cbi50aW1lbGluZV9fc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xuICAvLyB6LWluZGV4OiAyO1xufVxuXG4udGltZWxpbmVfX251bWJlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTByZW07XG4gIGhlaWdodDogMTByZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGJhY2tncm91bmQ6IHZhcigtLWNhcmQtY29sb3IpO1xuICBjb2xvcjogd2hpdGU7XG4gIEBpbmNsdWRlIGZ6LTMyO1xuICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDMycHgsIC00KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAvLyBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlO1xuICAvLyB6LWluZGV4OiAzO1xufVxuXG4udGltZWxpbmVfX2NhcmQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jYXJkLWNvbG9yKTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAzLjJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcbiAgLy8gYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbiAgLy8gaGVpZ2h0OiAzMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZTtcbiAgcm93LWdhcDogMy4ycmVtO1xuICAvLyAmOmhvdmVyIHtcbiAgLy8gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAvLyB9XG59XG4udGltZWxpbmVfX2ljb24ge1xuICBpbWcge1xuICAgIHdpZHRoOiA0LjhyZW07XG4gICAgaGVpZ2h0OiA0LjhyZW07XG4gIH1cbn1cbi50aW1lbGluZV9fZGVzYyB7XG4gIEBpbmNsdWRlIGZ6LTE2O1xuICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE2cHgsIC00KTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgb3BhY2l0eTogMC43O1xuICBjb2xvcjogI2ZmZjtcbn1cbi50aW1lbGluZV9fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHJvdy1nYXA6IDIuNHJlbTtcbn1cbiIsIi8vID09PT09PT09PT09PSBvZmZlciA9PT09PT09PT09XG4ub2ZmZXIge1xuICB6LWluZGV4OiA1O1xuICAtLXJhZGl1czogMTZyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gQGluY2x1ZGUgYmdJbWFnZTtcbiAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3NlcnZpY2Uvb2ZmZXJfYmcuanBnXCIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAvLyBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzA4MjgyMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBiZ0ltYWdlO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taW1nKTtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gei1pbmRleDogLTE7XG4gIH1cbiAgLnRpdGxlLWRlc2Mge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIEBpbmNsdWRlIG1heCg5OTEuOThweCkge1xuICAgIC0tcmFkaXVzOiAxMnJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNzY3Ljk4cHgpIHtcbiAgICAtLXJhZGl1czogOHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICAtLXJhZGl1czogNHJlbTtcbiAgfVxufVxuXG4ub2ZmZXJfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tdG9wOiA2cmVtO1xuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICB9XG59XG5cbi5vZmZlcl9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMS42cmVtO1xuICBwYWRkaW5nOiA2cmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCNmZmYsIDAuMik7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgQGluY2x1ZGUgbWF4KDExOTkuOThweCkge1xuICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgfVxuICBAaW5jbHVkZSBtYXgoNTc1Ljk4cHgpIHtcbiAgICBwYWRkaW5nOiAyLjRyZW0gMDtcbiAgfVxuICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuICAmLWhlYWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA2cmVtO1xuICAgIG1heC13aWR0aDogNTkuMnJlbTtcbiAgICBAaW5jbHVkZSBtYXgoMTE5OS45OHB4KSB7XG4gICAgICBnYXA6IDIuNHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgICBnYXA6IDEuNnJlbTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgJi1pY29uIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcmVtKTtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDQuOHJlbTtcbiAgICAgIGhlaWdodDogNC44cmVtO1xuICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIHNhdHVyYXRlKDEwMCUpIGludmVydCgxMDAlKSBzZXBpYSgwJSkgc2F0dXJhdGUoNSUpXG4gICAgICAgIGh1ZS1yb3RhdGUoMTQyZGVnKSBicmlnaHRuZXNzKDEwMyUpIGNvbnRyYXN0KDEwMSUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMy4ycmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNDguOHJlbTtcbiAgICBmbGV4OiAxO1xuICAgIC5tb25hLWNvbnRlbnQge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICBAaW5jbHVkZSBsZXR0ZXJTcGFjaW5nKDE2cHgsIC00KTtcbiAgICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCIuYmVuZWZpdHMge1xuICAvLyB6LWluZGV4OiA1O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvLyBAaW5jbHVkZSBiZ0ltYWdlKGNlbnRlciB0b3AsIGNvdmVyKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAxODBkZWcsXG4gICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLFxuICAgICAgcmdiYSgxNjksIDIxMiwgNTEsIDAuMSkgMzclLFxuICAgICAgcmdiYSgxNjksIDIxMiwgNTEsIDAuMikgMTAwJVxuICAgICk7XG4gICAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgICB0b3A6IDhyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1heCg1NzUuOThweCkge1xuICAgICAgdG9wOiA2cmVtO1xuICAgIH1cbiAgfVxuICAmOmhhcygrIC5vZmZlcikge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHJlbTtcbiAgICBAaW5jbHVkZSBtYXgoOTkxLjk4cHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWF4KDU3NS45OHB4KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgLy8gbWFyZ2luLXRvcDogLTE1cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTZyZW0gMTZyZW0gMCAwO1xuICAgICAgYm94LXNoYWRvdzogMCAtMnJlbSA0cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICB9XG4gIH1cbiAgJiArIC5vZmZlciB7XG4gICAgbWFyZ2luLXRvcDogLTEycmVtO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgLy8gcGFkZGluZy1ib3R0b206IDI1cmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PSBhZHZhbnRhZ2VzID09PT09PT09XG4uYWR2YW50YWdlIHtcbiAgei1pbmRleDogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIC8vIG1hcmdpbi10b3A6IC0xNXJlbTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogLTI7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWRlc2Mge1xuICAgIG1heC13aWR0aDogODByZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC50aXRsZS02NCB7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogIzU5YTE1ZjtcbiAgICB9XG4gIH1cbn1cbi5hZHZhbnRhZ2VfX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBnYXA6IDMuMnJlbTtcbiAgbWFyZ2luLXRvcDogNnJlbTtcbiAgQGluY2x1ZGUgbWF4KDExOTkuOThweCkge1xuICAgIGdhcDogMi40cmVtO1xuICB9XG4gIEBpbmNsdWRlIG1heCg5OTEuOThweCkge1xuICAgIGdhcDogMS42cmVtO1xuICB9XG4gIEBpbmNsdWRlIG1heCg3NjcuOThweCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIEBpbmNsdWRlIG1heCg1NzUuOThweCkge1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gIH1cbn1cblxuLmFkdmFudGFnZV9fY2FyZCB7XG4gIHBhZGRpbmc6IDRyZW07XG4gIGNvbG9yOiAjMWExYTFhO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDIuNHJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHJvdy1nYXA6IDJyZW07XG4gIEBpbmNsdWRlIG1heCgxMTk5Ljk4cHgpIHtcbiAgICBwYWRkaW5nOiAzLjJyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWF4KDk5MS45OHB4KSB7XG4gICAgcGFkZGluZzogMi40cmVtIDEuNnJlbTtcbiAgfVxuICAmOm50aC1jaGlsZCg0biArIDEpIHtcbiAgICAtLWNvbG9yOiAjNTlhMTVmO1xuICB9XG4gICY6bnRoLWNoaWxkKDRuICsgMikge1xuICAgIC0tY29sb3I6ICMwODI4MjM7XG4gIH1cbiAgJjpudGgtY2hpbGQoNG4gKyAzKSB7XG4gICAgLS1jb2xvcjogI2E5ZDQzMztcbiAgICBjb2xvcjogIzA4MjgyMztcbiAgICAudGV4dC0xOCB7XG4gICAgICBjb2xvcjogIzJiNjczMjtcbiAgICB9XG4gIH1cbiAgJjpudGgtY2hpbGQoNG4gKyA0KSB7XG4gICAgLS1jb2xvcjogIzJiNjczMjtcbiAgfVxuICAudGV4dC0xOCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBjb2xvcjogI2E5ZDQzMztcbiAgfVxufVxuLmFkdmFudGFnZV9fZGVzYyB7XG4gIG9wYWNpdHk6IDAuNztcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG4uYWR2YW50YWdlX19pbWcge1xuICBtYXgtd2lkdGg6IDE0cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjZyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4vLyA9PT09PT09PT09PT0gY3RhIHNlY3Rpb24gPT09PT09XG4uY3RhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuICAgIC50aXRsZS1kZXNjIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuLmN0YV9faW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBAaW5jbHVkZSBiZ0ltYWdlO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuXG4vLyA9PT09PT09PT09PT09PT1cbi5wLXNlcnZpY2VkdCB7XG4gIC5iYW5uZXItYmxvY2sgLmNvdW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjYTlkNDMzO1xuICB9XG4gIC5iYW5uZXItYmxvY2sgLmNvdW50LWhlYWRpbmcgc3BhbjpmaXJzdC1jaGlsZCxcbiAgLmJhbm5lci1ibG9jayAuY291bnQtY29udGVudCAudGV4dC0yMCB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICB9XG4gIC5iYW5uZXItYmxvY2sgLmNvdW50LWhlYWRpbmcgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgfVxuICAuYmVuZWZpdHN7XG4gICAgei1pbmRleDogNTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBLEFBQUEsSUFBSTtBQUNKLElBQUk7QUFDSixHQUFHO0FBQ0gsSUFBSTtBQUNKLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFD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 */
