@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html {
  box-sizing: border-box;
  overflow-y: scroll; /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

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

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

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

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

input, select {
  vertical-align: middle;
}

input[type=button], input[type=submit] {
  -webkit-appearance: none;
}

.hover:focus {
  transition: opacity 0.3s ease;
  opacity: 0.7;
}

html,
body {
  overflow-x: clip;
}

html {
  font-family: var(--font-base);
  scroll-behavior: smooth;
  scroll-padding-top: var(--headerHeightSP);
}
html * {
  letter-spacing: 0.03em;
  box-sizing: border-box;
}

body {
  font-family: var(--font-base);
}

input[type=text],
input[type=password],
input[type=tel],
input[type=email],
input[type=number],
input[type=submit],
input[type=button],
input[type=reset],
textarea,
button,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  resize: none;
}

input[type=submit],
input[type=button],
input[type=reset],
button,
label[for] {
  cursor: pointer;
}

::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

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

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

a {
  transition: opacity 0.3s ease-in-out;
}
a:focus {
  opacity: 0.8;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

.main {
  margin-top: var(--headerHeightSP);
}
.main:has(.top) {
  margin-top: 0;
}

.wrapper {
  width: 100vw;
  height: 100%;
}

.container {
  position: relative;
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  z-index: var(--zindex-main);
  padding: 0 var(--side);
}

address {
  font-style: normal;
}

summary {
  cursor: pointer;
  display: block;
  list-style-type: none;
}
summary::-webkit-details-marker {
  display: none;
}

#pagetop {
  position: fixed;
  bottom: 420px;
  right: 16px;
  transition: bottom 0.3s ease-in-out, visibility 0.3s ease-in-out, opacity 0.3s ease-in-out;
  z-index: var(--zindex-main);
}
#pagetop.is_scroll {
  bottom: 20px;
}

#pagetopIcon {
  visibility: hidden;
  opacity: 0;
}
#pagetopIcon.is_scroll {
  visibility: visible;
  opacity: 1;
}

.hamburger {
  width: 30px;
  height: 20px;
}

.hamburger_button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  -webkit-appearance: none;
          appearance: none;
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.buttonLine-top,
.buttonLine-center,
.buttonLine-bottom,
.hamburger_contents {
  transition: opacity 0.5s, transform 0.5s, visibility 0.5s;
}

.hamburger_contents {
  background-image: url("../images/bg-nav.webp");
  background-position: bottom left;
  background-size: cover;
  background-repeat: no-repeat;
  overflow-y: scroll;
  width: 100%;
  max-width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  margin-top: 56px;
}

._a {
  height: calc(100% - 56px);
}

.defaultButtonState .buttonLine-top,
.defaultButtonState .buttonLine-center,
.defaultButtonState .buttonLine-bottom {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #231815;
  position: absolute;
}
.defaultButtonState[aria-expanded=false] .buttonLine-top {
  top: 0;
  left: 0;
  transform: translate(0, 0);
}
.defaultButtonState[aria-expanded=false] .buttonLine-center {
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
.defaultButtonState[aria-expanded=false] .buttonLine-bottom {
  bottom: 0;
  left: 0;
  transform: translate(0, 0);
}
.defaultButtonState[aria-expanded=true] .buttonLine-top,
.defaultButtonState[aria-expanded=true] .buttonLine-center,
.defaultButtonState[aria-expanded=true] .buttonLine-bottom {
  background-color: #231815;
}
.defaultButtonState[aria-expanded=true] .buttonLine-center {
  opacity: 0;
  visibility: hidden;
}
.defaultButtonState[aria-expanded=true] .buttonLine-top {
  top: 50%;
  transform: translateY(-50%) rotate(135deg);
}
.defaultButtonState[aria-expanded=true] .buttonLine-bottom {
  bottom: 50%;
  transform: translateY(50%) rotate(-135deg);
}

.defaultOpenAction.hamburger_contents[aria-hidden=true] {
  transform: translateX(100%);
  opacity: 0;
  visibility: hidden;
}
.defaultOpenAction.hamburger_contents[aria-hidden=false] {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

.addTextOpenAndClose.hamburger_button[aria-expanded=false]::before, .addTextOpenAndClose.hamburger_button[aria-expanded=true]::before {
  display: block;
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  text-transform: uppercase;
  line-height: 1;
}
.addTextOpenAndClose.hamburger_button[aria-expanded=false]::before {
  content: "Open";
}
.addTextOpenAndClose.hamburger_button[aria-expanded=true]::before {
  content: "close";
}

.header {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 10px 30px;
  z-index: 10;
}

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

.nav {
  max-width: 330px;
}
.nav .nav_lead {
  width: 236px;
  margin: 0 auto;
}
.nav .nav_lists {
  margin-top: 16px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
}

.button_lv1 {
  font-size: 0.875rem;
  letter-spacing: 0.01em;
  line-height: 1.5;
  display: block;
  width: 100%;
  border-radius: 999px;
  padding: 16px 20px;
  position: relative;
  font-weight: bold;
}

.button_lv1._white::before,
.button_lv1._green::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background-position: top left;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

.button_lv1._white {
  background-color: #fff;
  border: solid 1px #00815F;
  box-shadow: 6px 6px 0px 0px #00815f;
  color: #00815F;
}
.button_lv1._white::before {
  background-image: url("../images/arrow01.webp");
}

.button_lv1._green {
  border: solid 1px #fff;
  box-shadow: 6px 6px 0px 0px #fff;
  color: #fff;
  background: linear-gradient(90deg, #8ec66a 0%, #00815f 100%);
}
.button_lv1._green::before {
  background-image: url("../images/arrow02.webp");
}

.button_lv1._green._reverse {
  box-shadow: 6px 6px 0px 0px #00815f;
  background: linear-gradient(90deg, #00815f 0%, #8ec66a 100%);
  padding: 8px 20px;
}

.button_lv1._comingSoon {
  pointer-events: none;
  background-color: #C4C5C6;
}

/* ============================== */
/*       fadeAnimationのStyle
/* ============================== */
[data-fade=fadeUp].fadeUp,
[data-fade=fadeLeft].fadeLeft,
[data-fade=fadeRight].fadeRight,
[data-fade=fadeScale].fadeScale {
  transition: transform 0.5s ease-out, opacity 0.5s ease-out;
}

[data-fade=fadeOpacity].fadeOpacity {
  transition: transform 0.5s ease-out, opacity 0.5s ease-out;
}

[data-fade=fadeUp] {
  transform: translateY(60px);
  opacity: 0;
}
[data-fade=fadeUp].fadeUp {
  transform: translateY(0);
  opacity: 1;
}

[data-fade=fadeRight] {
  transform: translateX(-60px);
  opacity: 0;
}
[data-fade=fadeRight].fadeRight {
  transform: translateX(0);
  opacity: 1;
}

[data-fade=fadeLeft] {
  transform: translateX(60px);
  opacity: 0;
}
[data-fade=fadeLeft].fadeLeft {
  transform: translateX(0);
  opacity: 1;
}

[data-fade=fadeOpacity] {
  opacity: 0;
  transform: scale(0.8);
}
[data-fade=fadeOpacity].fadeOpacity {
  opacity: 1;
  transform: scale(1);
}

[data-fade=fadeScale] {
  transform: scale(0);
  opacity: 0;
}
[data-fade=fadeScale].fadeScale {
  animation: fadeScaleAni 1s ease 0s 1 forwards;
}

@keyframes fadeScaleAni {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.1);
    opacity: 1;
  }
  75% {
    transform: scale(0.9);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

._mx-full {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

._dotted {
  border-bottom: dotted 4px #fff;
}

._borderYellow {
  border-bottom: solid 2px #FFEC00;
}

.gradient-underline {
  background: linear-gradient(90deg, #00815f, #8ec66a);
  background-size: 100% 2px;
  background-repeat: no-repeat;
  background-position: 0 100%;
  padding-bottom: 3px;
}

.aside {
  display: none;
}
.aside .aside_illustration {
  padding-right: 60px;
}
.aside .aside_illustration img {
  max-width: 357px;
  margin-left: auto;
  transform: translate(30px, 70px);
}

.decoration {
  display: none;
}

.main {
  background-color: #fff;
}
.main .main_kv {
  background-image: url("../images/bg-top.webp");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 375/555;
}
.main .cleanAi {
  background-image: url("../images/bg.webp");
  background-position: top left;
  background-size: cover;
  background-repeat: no-repeat;
}
.main .cleanAi ._ai {
  position: absolute;
  top: -80px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 375px;
}
.main .cleanAi ._demand {
  position: absolute;
  width: 100%;
  bottom: -75px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px){
  html {
    scroll-padding-top: var(--headerHeightPC);
  }
  .main {
    margin-top: var(--headerHeightPC);
  }
  #pagetop {
    bottom: 130px;
    right: 24px;
  }
  .header {
    display: none;
  }
  .nav {
    margin: 100px 0 0 auto;
  }
  .mainView {
    display: grid;
    grid-template-columns: 1fr 375px;
    width: 100%;
    height: 100vh;
  }
  .aside {
    display: block;
  }
  .aside .aside_inner {
    display: block;
    background: linear-gradient(90deg, #00815f, #8ec66a);
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: calc(100% - 375px);
  }
}
@media screen and (min-width: 1080px){
  .mainView {
    grid-template-columns: 1fr 375px 23%;
  }
  .aside .aside_inner {
    width: calc(77% - 375px);
  }
  .decoration {
    display: block;
  }
  .decoration .decoration_inner {
    background-image: url("../images/bg-decoration.webp");
    background-position: bottom right;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 23%;
  }
}
@media screen and (min-width: 1920px){
  .aside .aside_illustration img {
    max-width: 500px;
  }
}
@media (hover: hover){
  .hover:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
  a:hover {
    opacity: 0.8;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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O0FSMGtCRjtBUWxqQkU7RUFDRTtBUjBrQko7QVF4a0JJO0VBQ0U7RUFDQTtFQUNBO0FSMGtCTjs7QVEvakJBO0VBQ0U7QVJ1a0JGOztBUTlpQkE7RUFDRTtBUm9rQkY7QVFsa0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUm9rQko7QVFqa0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVJta0JKO0FRaGtCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmtrQko7QVEvakJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmlrQko7QUUxckJFO0VDWkY7SUFPSTtFSHVKRjtFRzlFRjtJQUlJO0VIMEpGO0VHbkhGO0lBUUk7SUFDQTtFSHNKRjtFSzdSRjtJQVVJO0VMOFpGO0VNMWFGO0lBSUk7RU5xYkY7RVF0YkY7SUFHSTtJQUNBO0lBQ0E7SUFDQTtFUnlrQkY7RVE1aUJGO0lBSUk7RVIya0JGO0VReGtCQTtJQUdJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RVIwa0JKO0FBN2RGO0FFbkpFO0VNZEY7SUFVSTtFUjBrQkY7RVExaUJBO0lBY0k7RVIya0JKO0VRdGpCRjtJQUlJO0VSd2tCRjtFUXJrQkE7SUFHSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxVQWxHRDtFUnlxQkg7QUFsRkY7QUV2a0JFO0VNaURFO0lBTUk7RVIya0JOO0FBQ0Y7QUVwbUJFO0VBQ0U7SUFRQTtJQUNBO0VGeUZGO0VFbEdFO0lDMEJBO0VIeUpGO0FBaEZGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Nzcy9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zY3NzL2Jhc2UvX3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Njc3MvYmFzZS9fdmFycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zY3NzL2Jhc2UvX2RlZmF1bHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Nzcy9sYXlvdXRzL19oYW1idXJnZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Nzcy9sYXlvdXRzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Nzcy9sYXlvdXRzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Nzcy9sYXlvdXRzL19mYWRlQW5pbWF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Njc3MvcGFnZS9fdG9wLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogXG5odG1sNWRvY3Rvci5jb20gUmVzZXQgU3R5bGVzaGVldFxudjEuNi4xXG5MYXN0IFVwZGF0ZWQ6IDIwMTAtMDktMTdcbkF1dGhvcjogUmljaGFyZCBDbGFyayAtIGh0dHA6Ly9yaWNoY2xhcmtkZXNpZ24uY29tIFxuVHdpdHRlcjogQHJpY2hfY2xhcmtcbiovXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyAvKiBBbGwgYnJvd3NlcnMgd2l0aG91dCBvdmVybGF5aW5nIHNjcm9sbGJhcnMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiBpT1MgOCsgKi9cbn1cblxuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDsgLyogSW5oZXJpdCB0ZXh0LWRlY29yYXRpb24gYW5kIHZlcnRpY2FsIGFsaWduIHRvIDo6YmVmb3JlIGFuZCA6OmFmdGVyIHBzZXVkbyBlbGVtZW50cyAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbn1cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmFiYnIsIGFkZHJlc3MsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHNhbXAsXG5zbWFsbCwgc3Ryb25nLCBzdWIsIHN1cCwgdmFyLFxuYiwgaSxcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbm5hdiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGUsIHEge1xuICBxdW90ZXM6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjb250ZW50OiBub25lO1xufVxuXG5hIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIGNoYW5nZSBjb2xvdXJzIHRvIHN1aXQgeW91ciBuZWVkcyAqL1xuaW5zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOTtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogY2hhbmdlIGNvbG91cnMgdG8gc3VpdCB5b3VyIG5lZWRzICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRlbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG5hYmJyW3RpdGxlXSwgZGZuW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuLyogY2hhbmdlIGJvcmRlciBjb2xvdXIgdG8gc3VpdCB5b3VyIG5lZWRzICovXG5ociB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWFyZ2luOiAxZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuaW5wdXQsIHNlbGVjdCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4uaG92ZXI6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgb3BhY2l0eTogMC43O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmhvdmVyOmhvdmVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbn1cblxuaHRtbCxcbmJvZHkge1xuICBvdmVyZmxvdy14OiBjbGlwO1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYmFzZSk7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICBzY3JvbGwtcGFkZGluZy10b3A6IHZhcigtLWhlYWRlckhlaWdodFNQKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGh0bWwge1xuICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogdmFyKC0taGVhZGVySGVpZ2h0UEMpO1xuICB9XG59XG5odG1sICoge1xuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYmFzZSk7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmlucHV0W3R5cGU9dGVsXSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT1udW1iZXJdLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1yZXNldF0sXG50ZXh0YXJlYSxcbmJ1dHRvbixcbnNlbGVjdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcmVzaXplOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0sXG5pbnB1dFt0eXBlPWJ1dHRvbl0sXG5pbnB1dFt0eXBlPXJlc2V0XSxcbmJ1dHRvbixcbmxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbmlucHV0W3R5cGU9bnVtYmVyXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG5hIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuYTpmb2N1cyB7XG4gIG9wYWNpdHk6IDAuODtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLm1haW4ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1oZWFkZXJIZWlnaHRTUCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0taGVhZGVySGVpZ2h0UEMpO1xuICB9XG59XG4ubWFpbjpoYXMoLnRvcCkge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ud3JhcHBlciB7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXIpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgei1pbmRleDogdmFyKC0temluZGV4LW1haW4pO1xuICBwYWRkaW5nOiAwIHZhcigtLXNpZGUpO1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5zdW1tYXJ5IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNwYWdldG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDQyMHB4O1xuICByaWdodDogMTZweDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMC4zcyBlYXNlLWluLW91dCwgb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbWFpbik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjcGFnZXRvcCB7XG4gICAgYm90dG9tOiAxMzBweDtcbiAgICByaWdodDogMjRweDtcbiAgfVxufVxuI3BhZ2V0b3AuaXNfc2Nyb2xsIHtcbiAgYm90dG9tOiAyMHB4O1xufVxuXG4jcGFnZXRvcEljb24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG4jcGFnZXRvcEljb24uaXNfc2Nyb2xsIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhhbWJ1cmdlciB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbi5oYW1idXJnZXJfYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLmJ1dHRvbkxpbmUtdG9wLFxuLmJ1dHRvbkxpbmUtY2VudGVyLFxuLmJ1dHRvbkxpbmUtYm90dG9tLFxuLmhhbWJ1cmdlcl9jb250ZW50cyB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXMsIHZpc2liaWxpdHkgMC41cztcbn1cblxuLmhhbWJ1cmdlcl9jb250ZW50cyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9iZy1uYXYud2VicFwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogNTZweDtcbn1cblxuLl9hIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1NnB4KTtcbn1cblxuLmRlZmF1bHRCdXR0b25TdGF0ZSAuYnV0dG9uTGluZS10b3AsXG4uZGVmYXVsdEJ1dHRvblN0YXRlIC5idXR0b25MaW5lLWNlbnRlcixcbi5kZWZhdWx0QnV0dG9uU3RhdGUgLmJ1dHRvbkxpbmUtYm90dG9tIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMTgxNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmRlZmF1bHRCdXR0b25TdGF0ZVthcmlhLWV4cGFuZGVkPWZhbHNlXSAuYnV0dG9uTGluZS10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuLmRlZmF1bHRCdXR0b25TdGF0ZVthcmlhLWV4cGFuZGVkPWZhbHNlXSAuYnV0dG9uTGluZS1jZW50ZXIge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG4uZGVmYXVsdEJ1dHRvblN0YXRlW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIC5idXR0b25MaW5lLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG4uZGVmYXVsdEJ1dHRvblN0YXRlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmJ1dHRvbkxpbmUtdG9wLFxuLmRlZmF1bHRCdXR0b25TdGF0ZVthcmlhLWV4cGFuZGVkPXRydWVdIC5idXR0b25MaW5lLWNlbnRlcixcbi5kZWZhdWx0QnV0dG9uU3RhdGVbYXJpYS1leHBhbmRlZD10cnVlXSAuYnV0dG9uTGluZS1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMxODE1O1xufVxuLmRlZmF1bHRCdXR0b25TdGF0ZVthcmlhLWV4cGFuZGVkPXRydWVdIC5idXR0b25MaW5lLWNlbnRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5kZWZhdWx0QnV0dG9uU3RhdGVbYXJpYS1leHBhbmRlZD10cnVlXSAuYnV0dG9uTGluZS10b3Age1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xufVxuLmRlZmF1bHRCdXR0b25TdGF0ZVthcmlhLWV4cGFuZGVkPXRydWVdIC5idXR0b25MaW5lLWJvdHRvbSB7XG4gIGJvdHRvbTogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSByb3RhdGUoLTEzNWRlZyk7XG59XG5cbi5kZWZhdWx0T3BlbkFjdGlvbi5oYW1idXJnZXJfY29udGVudHNbYXJpYS1oaWRkZW49dHJ1ZV0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5kZWZhdWx0T3BlbkFjdGlvbi5oYW1idXJnZXJfY29udGVudHNbYXJpYS1oaWRkZW49ZmFsc2VdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uYWRkVGV4dE9wZW5BbmRDbG9zZS5oYW1idXJnZXJfYnV0dG9uW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdOjpiZWZvcmUsIC5hZGRUZXh0T3BlbkFuZENsb3NlLmhhbWJ1cmdlcl9idXR0b25bYXJpYS1leHBhbmRlZD10cnVlXTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMjBweDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmFkZFRleHRPcGVuQW5kQ2xvc2UuaGFtYnVyZ2VyX2J1dHRvblthcmlhLWV4cGFuZGVkPWZhbHNlXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJPcGVuXCI7XG59XG4uYWRkVGV4dE9wZW5BbmRDbG9zZS5oYW1idXJnZXJfYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiY2xvc2VcIjtcbn1cblxuLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAzMHB4O1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlYWRlcl9pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm5hdiB7XG4gIG1heC13aWR0aDogMzMwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2IHtcbiAgICBtYXJnaW46IDEwMHB4IDAgMCBhdXRvO1xuICB9XG59XG4ubmF2IC5uYXZfbGVhZCB7XG4gIHdpZHRoOiAyMzZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ubmF2IC5uYXZfbGlzdHMge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ2FwOiAyNXB4O1xufVxuXG4uYnV0dG9uX2x2MSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmJ1dHRvbl9sdjEuX3doaXRlOjpiZWZvcmUsXG4uYnV0dG9uX2x2MS5fZ3JlZW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgbGVmdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmJ1dHRvbl9sdjEuX3doaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzAwODE1RjtcbiAgYm94LXNoYWRvdzogNnB4IDZweCAwcHggMHB4ICMwMDgxNWY7XG4gIGNvbG9yOiAjMDA4MTVGO1xufVxuLmJ1dHRvbl9sdjEuX3doaXRlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYXJyb3cwMS53ZWJwXCIpO1xufVxuXG4uYnV0dG9uX2x2MS5fZ3JlZW4ge1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmZmO1xuICBib3gtc2hhZG93OiA2cHggNnB4IDBweCAwcHggI2ZmZjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzhlYzY2YSAwJSwgIzAwODE1ZiAxMDAlKTtcbn1cbi5idXR0b25fbHYxLl9ncmVlbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Fycm93MDIud2VicFwiKTtcbn1cblxuLmJ1dHRvbl9sdjEuX2dyZWVuLl9yZXZlcnNlIHtcbiAgYm94LXNoYWRvdzogNnB4IDZweCAwcHggMHB4ICMwMDgxNWY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzAwODE1ZiAwJSwgIzhlYzY2YSAxMDAlKTtcbiAgcGFkZGluZzogOHB4IDIwcHg7XG59XG5cbi5idXR0b25fbHYxLl9jb21pbmdTb29uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDNEM1QzY7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogICAgICAgZmFkZUFuaW1hdGlvbuOBrlN0eWxlXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbltkYXRhLWZhZGU9ZmFkZVVwXS5mYWRlVXAsXG5bZGF0YS1mYWRlPWZhZGVMZWZ0XS5mYWRlTGVmdCxcbltkYXRhLWZhZGU9ZmFkZVJpZ2h0XS5mYWRlUmlnaHQsXG5bZGF0YS1mYWRlPWZhZGVTY2FsZV0uZmFkZVNjYWxlIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC41cyBlYXNlLW91dDtcbn1cblxuW2RhdGEtZmFkZT1mYWRlT3BhY2l0eV0uZmFkZU9wYWNpdHkge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLW91dCwgb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xufVxuXG5bZGF0YS1mYWRlPWZhZGVVcF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjBweCk7XG4gIG9wYWNpdHk6IDA7XG59XG5bZGF0YS1mYWRlPWZhZGVVcF0uZmFkZVVwIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG5bZGF0YS1mYWRlPWZhZGVSaWdodF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwcHgpO1xuICBvcGFjaXR5OiAwO1xufVxuW2RhdGEtZmFkZT1mYWRlUmlnaHRdLmZhZGVSaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuW2RhdGEtZmFkZT1mYWRlTGVmdF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjBweCk7XG4gIG9wYWNpdHk6IDA7XG59XG5bZGF0YS1mYWRlPWZhZGVMZWZ0XS5mYWRlTGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuW2RhdGEtZmFkZT1mYWRlT3BhY2l0eV0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG59XG5bZGF0YS1mYWRlPWZhZGVPcGFjaXR5XS5mYWRlT3BhY2l0eSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbltkYXRhLWZhZGU9ZmFkZVNjYWxlXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIG9wYWNpdHk6IDA7XG59XG5bZGF0YS1mYWRlPWZhZGVTY2FsZV0uZmFkZVNjYWxlIHtcbiAgYW5pbWF0aW9uOiBmYWRlU2NhbGVBbmkgMXMgZWFzZSAwcyAxIGZvcndhcmRzO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVTY2FsZUFuaSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW5WaWV3IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM3NXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAubWFpblZpZXcge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM3NXB4IDIzJTtcbiAgfVxufVxuXG4uX214LWZ1bGwge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xufVxuXG4uX2RvdHRlZCB7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCA0cHggI2ZmZjtcbn1cblxuLl9ib3JkZXJZZWxsb3cge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI0ZGRUMwMDtcbn1cblxuLmdyYWRpZW50LXVuZGVybGluZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzAwODE1ZiwgIzhlYzY2YSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAycHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDNweDtcbn1cblxuLmFzaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hc2lkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hc2lkZSAuYXNpZGVfaW5uZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzAwODE1ZiwgIzhlYzY2YSk7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNzVweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAuYXNpZGUgLmFzaWRlX2lubmVyIHtcbiAgICB3aWR0aDogY2FsYyg3NyUgLSAzNzVweCk7XG4gIH1cbn1cbi5hc2lkZSAuYXNpZGVfaWxsdXN0cmF0aW9uIHtcbiAgcGFkZGluZy1yaWdodDogNjBweDtcbn1cbi5hc2lkZSAuYXNpZGVfaWxsdXN0cmF0aW9uIGltZyB7XG4gIG1heC13aWR0aDogMzU3cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMHB4LCA3MHB4KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAuYXNpZGUgLmFzaWRlX2lsbHVzdHJhdGlvbiBpbWcge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gIH1cbn1cblxuLmRlY29yYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5kZWNvcmF0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5kZWNvcmF0aW9uIC5kZWNvcmF0aW9uX2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmctZGVjb3JhdGlvbi53ZWJwXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMjMlO1xuICB9XG59XG5cbi5tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5tYWluIC5tYWluX2t2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2JnLXRvcC53ZWJwXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYXNwZWN0LXJhdGlvOiAzNzUvNTU1O1xufVxuLm1haW4gLmNsZWFuQWkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmcud2VicFwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4ubWFpbiAuY2xlYW5BaSAuX2FpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC04MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMzc1cHg7XG59XG4ubWFpbiAuY2xlYW5BaSAuX2RlbWFuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTc1cHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufSIsIi8qIFxyXG5odG1sNWRvY3Rvci5jb20gUmVzZXQgU3R5bGVzaGVldFxyXG52MS42LjFcclxuTGFzdCBVcGRhdGVkOiAyMDEwLTA5LTE3XHJcbkF1dGhvcjogUmljaGFyZCBDbGFyayAtIGh0dHA6Ly9yaWNoY2xhcmtkZXNpZ24uY29tIFxyXG5Ud2l0dGVyOiBAcmljaF9jbGFya1xyXG4qL1xyXG5cclxuaHRtbCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBvdmVyZmxvdy15OiBzY3JvbGw7IC8qIEFsbCBicm93c2VycyB3aXRob3V0IG92ZXJsYXlpbmcgc2Nyb2xsYmFycyAqL1xyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogaU9TIDgrICovXHJcbn1cclxuXHJcbiosXHJcbjo6YmVmb3JlLFxyXG46OmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG46OmJlZm9yZSxcclxuOjphZnRlciB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiBJbmhlcml0IHRleHQtZGVjb3JhdGlvbiBhbmQgdmVydGljYWwgYWxpZ24gdG8gOjpiZWZvcmUgYW5kIDo6YWZ0ZXIgcHNldWRvIGVsZW1lbnRzICovXHJcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XHJcbn1cclxuXHJcbmh0bWwsIGJvZHksIGRpdiwgc3Bhbiwgb2JqZWN0LCBpZnJhbWUsXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcclxuYWJiciwgYWRkcmVzcywgY2l0ZSwgY29kZSxcclxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzYW1wLFxyXG5zbWFsbCwgc3Ryb25nLCBzdWIsIHN1cCwgdmFyLFxyXG5iLCBpLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcclxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXHJcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgXHJcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSxcclxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgYm9yZGVyOjA7XHJcbiAgICBvdXRsaW5lOjA7XHJcbiAgICBmb250LXNpemU6MTAwJTtcclxuICAgIHZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO1xyXG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICBsaW5lLWhlaWdodDoxO1xyXG59XHJcblxyXG5hcnRpY2xlLGFzaWRlLGRldGFpbHMsZmlnY2FwdGlvbixmaWd1cmUsXHJcbmZvb3RlcixoZWFkZXIsaGdyb3VwLG1lbnUsbmF2LHNlY3Rpb24geyBcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG59XHJcblxyXG5uYXYgdWwge1xyXG4gICAgbGlzdC1zdHlsZTpub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlLCBxIHtcclxuICAgIHF1b3Rlczpub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcclxucTpiZWZvcmUsIHE6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGNvbnRlbnQ6bm9uZTtcclxufVxyXG5cclxuYSB7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgIGZvbnQtc2l6ZToxMDAlO1xyXG4gICAgdmVydGljYWwtYWxpZ246YmFzZWxpbmU7XHJcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vKiBjaGFuZ2UgY29sb3VycyB0byBzdWl0IHlvdXIgbmVlZHMgKi9cclxuaW5zIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6I2ZmOTtcclxuICAgIGNvbG9yOiMwMDA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcclxufVxyXG5cclxuLyogY2hhbmdlIGNvbG91cnMgdG8gc3VpdCB5b3VyIG5lZWRzICovXHJcbm1hcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjojZmY5O1xyXG4gICAgY29sb3I6IzAwMDsgXHJcbiAgICBmb250LXN0eWxlOml0YWxpYztcclxuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbn1cclxuXHJcbmRlbCB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuYWJiclt0aXRsZV0sIGRmblt0aXRsZV0ge1xyXG4gICAgYm9yZGVyLWJvdHRvbToxcHggZG90dGVkO1xyXG4gICAgY3Vyc29yOmhlbHA7XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICAgIGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcclxuICAgIGJvcmRlci1zcGFjaW5nOjA7XHJcbn1cclxuXHJcbi8qIGNoYW5nZSBib3JkZXIgY29sb3VyIHRvIHN1aXQgeW91ciBuZWVkcyAqL1xyXG5ociB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgaGVpZ2h0OjFweDtcclxuICAgIGJvcmRlcjowOyAgIFxyXG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgI2NjY2NjYztcclxuICAgIG1hcmdpbjoxZW0gMDtcclxuICAgIHBhZGRpbmc6MDtcclxufVxyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG5pbnB1dCwgc2VsZWN0IHtcclxuICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XG4vLy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8vXG4vLyAgICAgYnJlYWtwb2ludHNcbi8vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovL1xuJGJyZWFrcG9pbnRzOiAoeHM6ICdzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwMHB4KScsXG4gIHNtOiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCknLFxuICBtZDogJ3NjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KScsXG4gIGxnOiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzY2cHgpJyxcbiAgeGw6ICdzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCknLFxuKSAhZGVmYXVsdDtcblxuXG5cblxuXG4vLy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8vXG4vLyAgICAg44Oh44OH44Kj44Ki44Kv44Ko44Oq5oy/5YWlXG4vLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLy9cbkBtaXhpbiBtZWRpYSgkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgI3ttYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuXG4vLy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8vXG4vLyAgICAgcmVt6Zai5pWw77yI44OV44Kp44Oz44OI44K144Kk44K66KiI566X77yJXG4vLy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8vXG5AZnVuY3Rpb24gcmVtKCRzaXplLCAkYmFzZTogMTYpIHtcbiAgQHJldHVybiBtYXRoLmRpdigkc2l6ZSwgJGJhc2UpK3JlbTtcbn1cblxuXG4vLy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8vXG4vLyAgICAgcHjjgpJ2d+OBq+WkieaPm+OBmeOCi1xuLy8vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovL1xuQGZ1bmN0aW9uIHZ3KCRzaXplLCAkdmlld3BvcnQ6IDE5MjApIHtcbiAgJHJhdGU6IGNhbGMoMTAwIC8gJHZpZXdwb3J0KTtcbiAgQHJldHVybiAkcmF0ZSAqICRzaXplICogMXZ3O1xufVxuXG5cbi8vLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLy9cbi8vICAgICDjg5vjg5Djg7xcbi8vLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLy9cbkBtaXhpbiBob3ZlciB7XG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4uaG92ZXIge1xuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTtcbiAgICBvcGFjaXR5OiAuNztcbiAgfVxufVxuXG4iLCJAdXNlICd2YXJzJ2FzICo7XG5cbmh0bWwsXG5ib2R5IHtcbiAgb3ZlcmZsb3cteDogY2xpcDsgLy8g44Gv44G/5Ye644GX5a++562WIHBvc2l0aW9uOnN0aWNreeOBq+W5sua4ieOBl+OBquOBhFxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYmFzZSk7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAvLyDjg5jjg4Pjg4Djg7zjga7pq5jjgZXliIboqK3lrppcbiAgc2Nyb2xsLXBhZGRpbmctdG9wOiB2YXIoLS1oZWFkZXJIZWlnaHRTUCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICBzY3JvbGwtcGFkZGluZy10b3A6IHZhcigtLWhlYWRlckhlaWdodFBDKTtcbiAgfVxuXG4gICoge1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDNlbTtcbiAgICAvLyBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWJhc2UpO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPWVtYWlsXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9c3VibWl0XSxcbmlucHV0W3R5cGU9YnV0dG9uXSxcbmlucHV0W3R5cGU9cmVzZXRdLFxudGV4dGFyZWEsXG5idXR0b24sXG5zZWxlY3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHJlc2l6ZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1yZXNldF0sXG5idXR0b24sXG5sYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG46Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuYSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubWFpbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWhlYWRlckhlaWdodFNQKTtcblxuICBAaW5jbHVkZSBtZWRpYShzbSkge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWhlYWRlckhlaWdodFBDKTtcbiAgfVxuXG4gIC8vIOODiOODg+ODl+ODmuODvOOCuOOBruOBv1xuICAmOmhhcygudG9wKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ud3JhcHBlciB7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXIpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgei1pbmRleDogdmFyKC0temluZGV4LW1haW4pO1xuICBwYWRkaW5nOiAwIHZhcigtLXNpZGUpO1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5kZXRhaWxzIHt9XG5cbnN1bW1hcnkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJjo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jcGFnZXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiA0MjBweDtcbiAgcmlnaHQ6IDE2cHg7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAuM3MgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogdmFyKC0temluZGV4LW1haW4pO1xuXG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgYm90dG9tOiAxMzBweDtcbiAgICByaWdodDogMjRweDtcbiAgfVxuXG4gICYuaXNfc2Nyb2xsIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cblxuI3BhZ2V0b3BJY29uIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuaXNfc2Nyb2xsIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cbi8vICogIEhhbWJ1cmdlciBNZW51IFZhbHVlc1xuLy8gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKiAvL1xuXG4vLyDjg5zjgr/jg7Pjga7jgrXjgqTjgrrvvIjnuKbjg7vmqKrvvIlcbiRidG5fYmVzaWRlX3NpemU6IDMwcHg7XG4kYnRuX3ZlcnRpY2FsX3NpemU6IDIwcHg7XG5cbi8vIOe3muOBruWkquOBlVxuJGJ0bl9saW5lX2hlaWdodDogMnB4O1xuXG4vLyDnt5rjga7oibJcbiRjb2xvci1jbG9zZTogIzIzMTgxNTtcbiRjb2xvci1vcGVuOiAjMjMxODE1O1xuXG4vLyDjg6Hjg4vjg6Xjg7zlhoXjga7og4zmma9cbiRjb250ZW50c19iZzogcmdiYSg1MSwgNTEsIDUxLCAuOCk7XG5cblxuXG4vLyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqIC8vXG4vLyAqICBIYW1idXJnZXIgQmFzZSBMYXlvdXRcbi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cblxuLmhhbWJ1cmdlciB7XG4gIHdpZHRoOiAkYnRuX2Jlc2lkZV9zaXplO1xuICBoZWlnaHQ6ICRidG5fdmVydGljYWxfc2l6ZTtcbn1cblxuLmhhbWJ1cmdlcl9idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4uYnV0dG9uTGluZS10b3AsXG4uYnV0dG9uTGluZS1jZW50ZXIsXG4uYnV0dG9uTGluZS1ib3R0b20sXG4uaGFtYnVyZ2VyX2NvbnRlbnRzIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMsIHRyYW5zZm9ybSAuNXMsIHZpc2liaWxpdHkgLjVzO1xufVxuXG4uaGFtYnVyZ2VyX2NvbnRlbnRzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmctbmF2LndlYnAnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogNTZweDtcbn1cblxuLl9he1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDU2cHgpO1xufVxuXG5cbi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cbi8vICogIEhhbWJ1cmdlciBPcmlnaW5hbCBMYXlvdXRcbi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cblxuLmhhbWJ1cmdlcl9jb250ZW50cy1sYXlvdXQge1xuICAvLyBwYWRkaW5nOiA1MHB4IDIwcHg7XG59XG5cblxuXG4vLyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqIC8vXG4vLyAqICBCdXR0b24gU3RhdGVcbi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cblxuLmRlZmF1bHRCdXR0b25TdGF0ZSB7XG5cbiAgLmJ1dHRvbkxpbmUtdG9wLFxuICAuYnV0dG9uTGluZS1jZW50ZXIsXG4gIC5idXR0b25MaW5lLWJvdHRvbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkYnRuX2xpbmVfaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jbG9zZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAvLyAqIENsb3NlIFN0YXRlICAqIC8vXG4gICZbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcblxuICAgIC5idXR0b25MaW5lLXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgfVxuXG4gICAgLmJ1dHRvbkxpbmUtY2VudGVyIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIH1cblxuICAgIC5idXR0b25MaW5lLWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgfVxuICB9XG5cblxuICAvLyAqIE9wZW4gU3RhdGUgICogLy9cbiAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG5cbiAgICAuYnV0dG9uTGluZS10b3AsXG4gICAgLmJ1dHRvbkxpbmUtY2VudGVyLFxuICAgIC5idXR0b25MaW5lLWJvdHRvbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itb3BlbjtcbiAgICB9XG5cbiAgICAuYnV0dG9uTGluZS1jZW50ZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYnV0dG9uTGluZS10b3Age1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gICAgfVxuXG4gICAgLmJ1dHRvbkxpbmUtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSkgcm90YXRlKC0xMzVkZWcpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKiAvL1xuLy8gKiAgQ29udGVudHMgQWN0aW9uXG4vLyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqIC8vXG5cbi5kZWZhdWx0T3BlbkFjdGlvbiB7XG5cbiAgLy8gKiBDbG9zZSBBY3Rpb24gKiAvL1xuICAmLmhhbWJ1cmdlcl9jb250ZW50c1thcmlhLWhpZGRlbj1cInRydWVcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vICogT3BlbiBBY3Rpb24gKiAvL1xuICAmLmhhbWJ1cmdlcl9jb250ZW50c1thcmlhLWhpZGRlbj1cImZhbHNlXCJdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cblxuLy8gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKiAvL1xuLy8gKiAgQWRkIFRleHRcbi8vICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICogLy9cblxuLmFkZFRleHRPcGVuQW5kQ2xvc2Uge1xuXG4gICYuaGFtYnVyZ2VyX2J1dHRvblthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl06OmJlZm9yZSxcbiAgJi5oYW1idXJnZXJfYnV0dG9uW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC8vICogQ2xvc2UgVGV4dCAqIC8vXG4gICYuaGFtYnVyZ2VyX2J1dHRvblthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl06OmJlZm9yZSB7XG4gICAgY29udGVudDogJ09wZW4nO1xuICB9XG5cblxuICAvLyAqIE9wZW4gVGV4dCAqIC8vXG4gICYuaGFtYnVyZ2VyX2J1dHRvblthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnY2xvc2UnO1xuICB9XG59XG4iLCJAdXNlICcuLi9iYXNlL3ZhcnMnIGFzICo7XG5cbi5oZWFkZXJfd3JhcHt9XG5cbi5oZWFkZXJ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAzMHB4O1xuICB6LWluZGV4OiAxMDtcblxuICBAaW5jbHVkZSBtZWRpYShzbSl7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyX2lubmVye1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4iLCJAdXNlICcuLi9iYXNlL3ZhcnMnIGFzICo7XG5cbi5uYXZ7XG4gIG1heC13aWR0aDogMzMwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoc20pe1xuICAgIG1hcmdpbjogMTAwcHggMCAwIGF1dG87XG4gIH1cblxuICAubmF2X2xlYWR7XG4gICAgd2lkdGg6IDIzNnB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLm5hdl9saXN0c3tcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiAyNXB4O1xuICB9XG59XG5cbi5idXR0b25fbHYxe1xuICBmb250LXNpemU6IHJlbSgxNCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4uYnV0dG9uX2x2MS5fd2hpdGU6OmJlZm9yZSxcbi5idXR0b25fbHYxLl9ncmVlbjo6YmVmb3Jle1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uYnV0dG9uX2x2MS5fd2hpdGV7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogc29saWQgMXB4ICMwMDgxNUY7XG4gIGJveC1zaGFkb3c6IDZweCA2cHggMHB4IDBweCAjMDA4MTVmO1xuICBjb2xvcjogIzAwODE1RjtcblxuICAmOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYXJyb3cwMS53ZWJwJyk7XG4gIH1cbn1cblxuLmJ1dHRvbl9sdjEuX2dyZWVue1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmZmO1xuICBib3gtc2hhZG93OiA2cHggNnB4IDBweCAwcHggI2ZmZjtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzhlYzY2YSAwJSwgIzAwODE1ZiAxMDAlKTtcblxuICAmOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYXJyb3cwMi53ZWJwJyk7XG4gIH1cbn1cblxuLmJ1dHRvbl9sdjEuX2dyZWVuLl9yZXZlcnNle1xuICBib3gtc2hhZG93OiA2cHggNnB4IDBweCAwcHggIzAwODE1ZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDA4MTVmIDAlLCAjOGVjNjZhIDEwMCUpO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbn1cblxuLmJ1dHRvbl9sdjEuX2NvbWluZ1Nvb257XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzRDNUM2O1xufVxuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogICAgICAgZmFkZUFuaW1hdGlvbuOBrlN0eWxlXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbltkYXRhLWZhZGU9XCJmYWRlVXBcIl0uZmFkZVVwLFxuW2RhdGEtZmFkZT1cImZhZGVMZWZ0XCJdLmZhZGVMZWZ0LFxuW2RhdGEtZmFkZT1cImZhZGVSaWdodFwiXS5mYWRlUmlnaHQsXG5bZGF0YS1mYWRlPVwiZmFkZVNjYWxlXCJdLmZhZGVTY2FsZSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZS1vdXQsIG9wYWNpdHkgLjVzIGVhc2Utb3V0O1xufVxuXG5bZGF0YS1mYWRlPVwiZmFkZU9wYWNpdHlcIl0uZmFkZU9wYWNpdHkge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2Utb3V0LCBvcGFjaXR5IC41cyBlYXNlLW91dDtcbn1cblxuW2RhdGEtZmFkZT1cImZhZGVVcFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MHB4KTtcbiAgb3BhY2l0eTogMDtcblxuICAmLmZhZGVVcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuW2RhdGEtZmFkZT1cImZhZGVSaWdodFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjBweCk7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5mYWRlUmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbltkYXRhLWZhZGU9XCJmYWRlTGVmdFwiXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MHB4KTtcbiAgb3BhY2l0eTogMDtcblxuICAmLmZhZGVMZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbltkYXRhLWZhZGU9XCJmYWRlT3BhY2l0eVwiXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcblxuICAmLmZhZGVPcGFjaXR5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuW2RhdGEtZmFkZT1cImZhZGVTY2FsZVwiXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5mYWRlU2NhbGUge1xuICAgIGFuaW1hdGlvbjogZmFkZVNjYWxlQW5pIDFzIGVhc2UgMHMgMSBmb3J3YXJkcztcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVTY2FsZUFuaSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwiQHVzZSAnLi4vYmFzZS92YXJzJ2FzICo7XG5cblxuJHcgOiAyMyU7XG5cbi5tYWluVmlldyB7XG5cbiAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM3NXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShtZCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM3NXB4ICR3O1xuICB9XG59XG5cbi5fbXgtZnVsbCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG59XG5cbi5fZG90dGVkIHtcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDRweCAjZmZmO1xufVxuXG4uX2JvcmRlclllbGxvdyB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjRkZFQzAwO1xufVxuXG4uZ3JhZGllbnQtdW5kZXJsaW5lIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDA4MTVmLCAjOGVjNjZhKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDJweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xufVxuXG4uYXNpZGUge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuYXNpZGVfaW5uZXIge1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDA4MTVmLCAjOGVjNjZhKTtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM3NXB4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShtZCl7XG4gICAgICB3aWR0aDogY2FsYyg3NyUgLSAzNzVweCk7XG4gICAgfVxuICB9XG5cbiAgLmFzaWRlX2lsbHVzdHJhdGlvbntcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuXG4gICAgaW1ne1xuICAgICAgbWF4LXdpZHRoOiAzNTdweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzBweCwgNzBweCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKHhsKXtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbi5kZWNvcmF0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtZWRpYShtZCl7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZGVjb3JhdGlvbl9pbm5lcntcblxuICAgIEBpbmNsdWRlIG1lZGlhKG1kKSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iZy1kZWNvcmF0aW9uLndlYnAnKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6ICR3OztcbiAgICB9XG4gIH1cblxufVxuXG5cbi5tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAubWFpbl9rdiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmctdG9wLndlYnAnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYXNwZWN0LXJhdGlvOiAzNzUgLyA1NTU7XG4gIH1cblxuICAuY2xlYW5BaSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmcud2VicCcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC5jbGVhbkFpIC5fYWkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC04MHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgfVxuXG4gIC5jbGVhbkFpIC5fZGVtYW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm90dG9tOiAtNzVweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/