/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, 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, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

article, aside, figure, footer, header, nav, section, details, summary {
  display: block;
}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  box-sizing: border-box;
}

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

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%;
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
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;
}

del {
  text-decoration: line-through;
}

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

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre; /* CSS2 */
  white-space: pre-wrap; /* CSS 2.1 */
  white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word; /* IE */
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

.ie7 input[type=checkbox] {
  vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font: 99% sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible;
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before, .clearfix:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

:root {
  --header-height: 11rem;
}
@media screen and (max-width: 1050px) {
  :root {
    --header-height: 7.2rem;
  }
}
@media screen and (max-width: 768px) {
  :root {
    --header-height: 5.6rem;
  }
}

html {
  font-size: 62.5%;
}
html.navOpened {
  overflow: hidden;
}
html.navOpened .header__bg {
  opacity: 1;
  visibility: visible;
}

body {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}

a {
  transition: opacity 0.2s cubic-bezier(0.65, 0, 0.35, 1);
}
a:hover {
  opacity: 0.5;
}

button {
  cursor: pointer;
  transition: opacity 0.2s cubic-bezier(0.65, 0, 0.35, 1);
}
button:hover {
  opacity: 0.5;
}

.container {
  margin: 0 auto;
  max-width: 1440px;
  padding-left: 70px;
  padding-right: 70px;
  width: 100%;
}
@media screen and (max-width: 1050px) {
  .container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 768px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.main {
  display: block;
  padding-bottom: 286px;
  padding-top: var(--header-height);
}
@media screen and (max-width: 768px) {
  .main {
    padding-bottom: 100px;
  }
}

.descList {
  display: grid;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .descList {
    gap: 10px;
  }
}
.descList__item {
  border-top: 1px solid #b7b7b7;
  display: grid;
  grid-template-columns: minmax(12.8rem, 27.3789649416%) minmax(0, 1fr);
}
@media screen and (max-width: 768px) {
  .descList__item {
    border-top: none;
    grid-template-columns: minmax(0, 1fr);
  }
}
.descList__item:where(:last-of-type) {
  border-bottom: 1px solid #b7b7b7;
}
@media screen and (max-width: 768px) {
  .descList__item:where(:last-of-type) {
    border-bottom: none;
  }
}
.descList__term {
  -webkit-align-items: center;
          align-items: center;
  background: rgba(88, 76, 58, 0.1);
  display: grid;
  font-weight: 700;
  padding: 16px 1em;
  word-break: keep-all;
}
@media screen and (max-width: 768px) {
  .descList__term {
    padding: 10px 16px;
  }
}
.descList__termText {
  font-weight: inherit;
}
.descList__desc {
  -webkit-align-items: center;
          align-items: center;
  display: grid;
  padding: 16px 0.625em;
}
@media screen and (max-width: 768px) {
  .descList__desc {
    padding: 16px 16px;
  }
}
.descList__descText {
  font-weight: inherit;
}
.descList__descText:not(:last-child) {
  margin-bottom: 1.25em;
}

.footer {
  display: grid;
  gap: 13px;
  grid-template-columns: minmax(0, 1fr);
  padding-bottom: 20px;
}
.footer::before {
  aspect-ratio: 1440/414;
  background: url(../images/img_footer.svg) no-repeat center/cover;
  content: "";
  display: block;
  height: auto;
  width: 100%;
}
.footer__container {
  max-width: unset;
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1050px) {
  .footer__container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 768px) {
  .footer__container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.footer__copyright {
  color: #999;
  line-height: 1.25;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .footer__copyright {
    font-size: 1.2rem;
  }
}
.footer__copyrightText {
  font-size: inherit;
}
.footer__copyrightLink {
  color: inherit;
  text-decoration: none;
}

.gNav {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 1050px) {
  .gNav {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .gNav {
    background: #fff;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: var(--header-height);
    transition-duration: 0.3s;
    transition-property: visibility, opacity;
    transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
    visibility: hidden;
    z-index: 99;
  }
}
.gNav__outer {
  -webkit-align-items: center;
          align-items: center;
  display: -webkit-flex;
  display: flex;
  gap: 26px;
}
@media screen and (max-width: 1050px) {
  .gNav__outer {
    gap: 16px;
  }
}
@media screen and (max-width: 768px) {
  .gNav__outer {
    display: block;
    padding: 64px 48px;
  }
}
.gNav__list {
  -webkit-align-items: center;
          align-items: center;
  display: -webkit-flex;
  display: flex;
  gap: 26px;
}
@media screen and (max-width: 1050px) {
  .gNav__list {
    gap: 16px;
  }
}
@media screen and (max-width: 768px) {
  .gNav__list {
    display: grid;
    margin-bottom: 48px;
  }
}
.gNav__list_type_sns {
  display: -webkit-flex;
  display: flex;
  margin-bottom: 0;
}
.gNav__item {
  display: grid;
  place-items: center flex-start;
}
.gNav__link {
  -webkit-align-items: center;
          align-items: center;
  color: inherit;
  display: grid;
  text-decoration: none;
}
.gNav__snsLogo {
  aspect-ratio: 1;
  height: auto;
  width: 1.75em;
}
.gNav.navOpened {
  opacity: 1;
  visibility: visible;
}

.header {
  -webkit-align-items: center;
          align-items: center;
  background: #fff;
  display: grid;
  gap: 0 24px;
  grid-template-columns: repeat(2, auto);
  height: var(--header-height);
  -webkit-justify-content: space-between;
          justify-content: space-between;
  padding: 0 50px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}
@media screen and (max-width: 1050px) {
  .header {
    padding: 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .header {
    padding: 0 20px;
  }
}
.header__logo {
  width: 245px;
}
@media screen and (max-width: 1050px) {
  .header__logo {
    width: 144px;
  }
}
@media screen and (max-width: 768px) {
  .header__logo {
    width: 100px;
  }
}
.header__logoLink {
  color: inherit;
  display: block;
  text-decoration: none;
  width: 100%;
}
.header__logoImg {
  display: block;
}
.header__button {
  display: none;
}
@media screen and (max-width: 768px) {
  .header__button {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    aspect-ratio: 32/20;
    background: transparent;
    border: none;
    display: grid;
    gap: 6px;
    height: auto;
    padding: 0;
    transition-duration: 0.3s;
    transition-property: gap, opacity;
    transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
    width: 32px;
  }
}
@media screen and (max-width: 768px) {
  .header__button::before {
    -webkit-align-self: flex-end;
            align-self: flex-end;
    background: #000;
    content: "";
    height: 1px;
    transition-duration: inherit;
    transition-property: translate, rotate;
    transition-timing-function: inherit;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .header__button::after {
    -webkit-align-self: flex-start;
            align-self: flex-start;
    background: #000;
    content: "";
    height: 1px;
    transition-duration: inherit;
    transition-property: translate, rotate;
    transition-timing-function: inherit;
    width: 100%;
  }
}
.header__button.navOpened {
  gap: 0px;
}
.header__button.navOpened::before {
  rotate: 30deg;
  translate: 0 50%;
}
.header__button.navOpened::after {
  rotate: -30deg;
  translate: 0 -50%;
}
.header__bg {
  display: none;
}
@media screen and (max-width: 768px) {
  .header__bg {
    background: rgba(0, 0, 0, 0.45);
    bottom: 0;
    display: block;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: var(--header-height);
    transition-duration: 0.3s;
    transition-property: opacity, visibility;
    transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
    visibility: hidden;
    z-index: 98;
  }
}
.topMv {
  display: grid;
  margin-bottom: 93px;
  place-items: center;
}
@media screen and (max-width: 1050px) {
  .topMv {
    margin-bottom: 72px;
  }
}
@media screen and (max-width: 768px) {
  .topMv {
    margin-bottom: 48px;
  }
}
.topMv::before {
  aspect-ratio: 1440/959;
  background: url(../images/img_mv.jpg) no-repeat center/cover;
  content: "";
  display: block;
  height: auto;
  width: 100%;
}

.topCompany {
  scroll-margin-top: var(--header-height);
}
.topCompany__title {
  font-size: 3.2rem;
  line-height: 1.25;
  margin-bottom: 97px;
  text-align: center;
}
@media screen and (max-width: 1050px) {
  .topCompany__title {
    margin-bottom: 64px;
  }
}
@media screen and (max-width: 768px) {
  .topCompany__title {
    font-size: 2.4rem;
    margin-bottom: 40px;
  }
}
.topCompany__inner {
  display: grid;
  gap: 5.3846153846%;
  grid-template-columns: 48.5384615385% minmax(0, 1fr);
}
@media screen and (max-width: 1200px) {
  .topCompany__inner {
    gap: 32px;
  }
}
@media screen and (max-width: 1050px) {
  .topCompany__inner {
    gap: 32px;
    grid-template-columns: minmax(0, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .topCompany__inner {
    gap: 24px;
  }
}
.topCompany__inner::before {
  aspect-ratio: 631/420;
  background: url(../images/img_topCompany_01.jpg) no-repeat center/cover;
  content: "";
  height: auto;
  width: 100%;
}
.u_d_n {
  display: none;
}
.u_d_b {
  display: block;
}
.u_d_f {
  display: -webkit-flex;
  display: flex;
}
.u_d_i {
  display: inline;
}
@media screen and (max-width: 768px) {
  .u_sp_d_n {
    display: none;
  }
  .u_sp_d_b {
    display: block;
  }
  .u_sp_d_f {
    display: -webkit-flex;
    display: flex;
  }
  .u_sp_d_i {
    display: inline;
  }
}
@media screen and (max-width: 480px) {
  .u_spm_d_n {
    display: none;
  }
  .u_spm_d_b {
    display: block;
  }
  .u_spm_d_f {
    display: -webkit-flex;
    display: flex;
  }
  .u_spm_d_i {
    display: inline;
  }
}
@media screen and (max-width: 1400px) {
  .u_pc_d_n {
    display: none;
  }
  .u_pc_d_b {
    display: block;
  }
  .u_pc_d_f {
    display: -webkit-flex;
    display: flex;
  }
  .u_pc_d_i {
    display: inline;
  }
}
.u_ta_l {
  text-align: left;
}
.u_ta_c {
  text-align: center;
}
.u_ta_r {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .u_sp_ta_l {
    text-align: left;
  }
  .u_sp_ta_c {
    text-align: center;
  }
  .u_sp_ta_r {
    text-align: right;
  }
}
@media screen and (max-width: 1400px) {
  .u_pc_ta_l {
    text-align: left;
  }
  .u_pc_ta_c {
    text-align: center;
  }
  .u_pc_ta_r {
    text-align: right;
  }
}
.u_jc_fs {
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
}
.u_jc_c {
  -webkit-justify-content: center;
          justify-content: center;
}
.u_jc_fe {
  -webkit-justify-content: flex-end;
          justify-content: flex-end;
}
.u_jc_sb {
  -webkit-justify-content: space-between;
          justify-content: space-between;
}
.u_jc_sa {
  -webkit-justify-content: space-around;
          justify-content: space-around;
}
@media screen and (max-width: 768px) {
  .u_sp_jc_fs {
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
  }
  .u_sp_jc_c {
    -webkit-justify-content: center;
            justify-content: center;
  }
  .u_sp_jc_fe {
    -webkit-justify-content: flex-end;
            justify-content: flex-end;
  }
  .u_sp_jc_sb {
    -webkit-justify-content: space-between;
            justify-content: space-between;
  }
  .u_sp_jc_sa {
    -webkit-justify-content: space-around;
            justify-content: space-around;
  }
}
@media screen and (max-width: 1400px) {
  .u_pc_jc_fs {
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
  }
  .u_pc_jc_c {
    -webkit-justify-content: center;
            justify-content: center;
  }
  .u_pc_jc_fe {
    -webkit-justify-content: flex-end;
            justify-content: flex-end;
  }
  .u_pc_jc_sb {
    -webkit-justify-content: space-between;
            justify-content: space-between;
  }
  .u_pc_jc_sa {
    -webkit-justify-content: space-around;
            justify-content: space-around;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIn5odG1sNS1yZXNldCIsInN0eWxlLmNzcyIsIl9iYXNlLnNjc3MiLCJnbG9iYWwvX21peGluLnNjc3MiLCJnbG9iYWwvX2Z1bmN0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fZGVzY0xpc3Quc2NzcyIsInBhcnRzL19mb290ZXIuc2NzcyIsInBhcnRzL19oZWFkZXIuc2NzcyIsInBhZ2VzL19pbmRleC5zY3NzIiwiX3V0aWxpdHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O2dGQUFBO0FBV0E7Z0ZBQUE7QUFHQTtFQUNDLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtFQUNBLHdCQUFBO0VBQ0EsdUJBQUE7QUNERDs7QURJQTtFQUF3RSxjQUFBO0FDQXhFOztBREVBO3dGQUFBO0FBRUE7RUFDQyxzQkFBQTtBQ0NEOztBREVBOzs7RUFHQyxtQkFBQTtBQ0NEOztBREVBLG9GQUFBO0FBRUEsaURBQUE7QUFDQSxzSEFBQTtBQUNBOzs7RUFFTyxlQUFBO0FDQ1A7O0FEQ0E7Ozs7Ozs7O0NBQUE7QUFVQSx1REFBQTtBQUNBO0VBQU0sa0JBQUE7QUNFTjs7QURBQTs7MkRBQUE7QUFHQTtFQUFJLGdCQUFBO0FDSUo7O0FERkE7RUFBZSxZQUFBO0FDTWY7O0FESkE7Ozs7RUFHUyxXQUFBO0VBQWEsYUFBQTtBQ1N0Qjs7QURQQTtFQUFHLFNBQUE7RUFBVyxVQUFBO0VBQVksZUFBQTtFQUFpQix3QkFBQTtFQUEwQix1QkFBQTtBQ2VyRTs7QURiQTtFQUFLLDZCQUFBO0FDaUJMOztBRGZBO0VBQXlCLDhCQUFBO0VBQWdDLFlBQUE7QUNvQnpEOztBRGxCQSxvREFBQTtBQUNBO0VBQU8seUJBQUE7RUFBMkIsaUJBQUE7QUN1QmxDOztBRHRCQTtFQUFJLGlCQUFBO0VBQW1CLHNCQUFBO0FDMkJ2Qjs7QUQxQkE7RUFBSSxtQkFBQTtFQUFxQixtQkFBQTtBQytCekI7O0FEN0JBO0VBQUksY0FBQTtFQUFnQixX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QmxCO0VRenVCTTtJQUFZLGlCQUFBO0VSNHVCbEI7QUFDRjtBUTF1Qkk7RUFBVSxtQ0FBQTtVQUFBLDJCQUFBO0FSNnVCZDtBUTV1Qkk7RUFBUywrQkFBQTtVQUFBLHVCQUFBO0FSK3VCYjtBUTl1Qkk7RUFBVSxpQ0FBQTtVQUFBLHlCQUFBO0FSaXZCZDtBUWh2Qkk7RUFBVSxzQ0FBQTtVQUFBLDhCQUFBO0FSbXZCZDtBUWx2Qkk7RUFBVSxxQ0FBQTtVQUFBLDZCQUFBO0FScXZCZDtBRXJ4QkM7RU1rQ087SUFBYSxtQ0FBQTtZQUFBLDJCQUFBO0VSdXZCbkI7RVF0dkJNO0lBQVksK0JBQUE7WUFBQSx1QkFBQTtFUnl2QmxCO0VReHZCTTtJQUFhLGlDQUFBO1lBQUEseUJBQUE7RVIydkJuQjtFUTF2Qk07SUFBYSxzQ0FBQTtZQUFBLDhCQUFBO0VSNnZCbkI7RVE1dkJNO0lBQWEscUNBQUE7WUFBQSw2QkFBQTtFUit2Qm5CO0FBQ0Y7QUV0eUJDO0VNeUNPO0lBQWEsbUNBQUE7WUFBQSwyQkFBQTtFUml3Qm5CO0VRaHdCTTtJQUFZLCtCQUFBO1lBQUEsdUJBQUE7RVJtd0JsQjtFUWx3Qk07SUFBYSxpQ0FBQTtZQUFBLHlCQUFBO0VScXdCbkI7RVFwd0JNO0lBQWEsc0NBQUE7WUFBQSw4QkFBQTtFUnV3Qm5CO0VRdHdCTTtJQUFhLHFDQUFBO1lBQUEsNkJBQUE7RVJ5d0JuQjtBQUNGIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5cdEhUTUw1IFJlc2V0IDo6IHN0eWxlLmNzc1xuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFdlIGhhdmUgbGVhcm5lZCBtdWNoIGZyb20vYmVlbiBpbnNwaXJlZCBieS90YWtlbiBjb2RlIHdoZXJlIG9mZmVyZWQgZnJvbTpcblxuXHRFcmljIE1leWVyXHRcdFx0XHRcdDo6IGh0dHA6Ly9tZXllcndlYi5jb21cblx0SFRNTDUgRG9jdG9yXHRcdFx0XHQ6OiBodHRwOi8vaHRtbDVkb2N0b3IuY29tXG5cdGFuZCB0aGUgSFRNTDUgQm9pbGVycGxhdGVcdDo6IGh0dHA6Ly9odG1sNWJvaWxlcnBsYXRlLmNvbVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogTGV0J3MgZGVmYXVsdCB0aGlzIHB1cHB5IG91dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmh0bWwsIGJvZHksIGJvZHkgZGl2LCBzcGFuLCBvYmplY3QsIGlmcmFtZSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLCBhYmJyLCBhZGRyZXNzLCBjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHNhbXAsIHNtYWxsLCBzdHJvbmcsIHN1Yiwgc3VwLCB2YXIsIGIsIGksIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLCB0YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIG1lbnUsIG5hdiwgc2VjdGlvbiwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvLCBkZXRhaWxzLCBzdW1tYXJ5IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIG5hdiwgc2VjdGlvbiwgZGV0YWlscywgc3VtbWFyeSB7ZGlzcGxheTogYmxvY2s7fVxuXG4vKiBIYW5kbGUgYm94LXNpemluZyB3aGlsZSBiZXR0ZXIgYWRkcmVzc2luZyBjaGlsZCBlbGVtZW50czpcbiAgIGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG5odG1sIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qIGNvbnNpZGVyIHJlc2V0dGluZyB0aGUgZGVmYXVsdCBjdXJzb3I6IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL211cnRhdWdoLzUyNDcxNTQgKi9cblxuLyogUmVzcG9uc2l2ZSBpbWFnZXMgYW5kIG90aGVyIGVtYmVkZGVkIG9iamVjdHMgKi9cbi8qIGlmIHlvdSBkb24ndCBoYXZlIGZ1bGwgY29udHJvbCBvdmVyIGBpbWdgIHRhZ3MgKGlmIHlvdSBoYXZlIHRvIG92ZXJjb21lIGF0dHJpYnV0ZXMpLCBjb25zaWRlciBhZGRpbmcgaGVpZ2h0OiBhdXRvICovXG5pbWcsXG5vYmplY3QsXG5lbWJlZCB7bWF4LXdpZHRoOiAxMDAlO31cblxuLypcbiAgIE5vdGU6IGtlZXBpbmcgSU1HIGhlcmUgd2lsbCBjYXVzZSBwcm9ibGVtcyBpZiB5b3UncmUgdXNpbmcgZm9yZWdyb3VuZCBpbWFnZXMgYXMgc3ByaXRlcy5cblx0SW4gZmFjdCwgaXQgKndpbGwqIGNhdXNlIHByb2JsZW1zIHdpdGggR29vZ2xlIE1hcHMnIGNvbnRyb2xzIGF0IHNtYWxsIHNpemUuXG5cdElmIHRoaXMgaXMgdGhlIGNhc2UgZm9yIHlvdSwgdHJ5IHVuY29tbWVudGluZyB0aGUgZm9sbG93aW5nOlxuXG4jbWFwIGltZyB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xufVxuKi9cblxuLyogZm9yY2UgYSB2ZXJ0aWNhbCBzY3JvbGxiYXIgdG8gcHJldmVudCBhIGp1bXB5IHBhZ2UgKi9cbmh0bWwge292ZXJmbG93LXk6IHNjcm9sbDt9XG5cbi8qIHdlIHVzZSBhIGxvdCBvZiBVTHMgdGhhdCBhcmVuJ3QgYnVsbGV0ZWQuXG5cdHlvdSdsbCBoYXZlIHRvIHJlc3RvcmUgdGhlIGJ1bGxldHMgd2l0aGluIGNvbnRlbnQsXG5cdHdoaWNoIGlzIGZpbmUgYmVjYXVzZSB0aGV5J3JlIHByb2JhYmx5IGN1c3RvbWl6ZWQgYW55d2F5ICovXG51bCB7bGlzdC1zdHlsZTogbm9uZTt9XG5cbmJsb2NrcXVvdGUsIHEge3F1b3Rlczogbm9uZTt9XG5cbmJsb2NrcXVvdGU6YmVmb3JlLFxuYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLFxucTphZnRlciB7Y29udGVudDogJyc7IGNvbnRlbnQ6IG5vbmU7fVxuXG5hIHttYXJnaW46IDA7IHBhZGRpbmc6IDA7IGZvbnQtc2l6ZTogMTAwJTsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDt9XG5cbmRlbCB7dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7fVxuXG5hYmJyW3RpdGxlXSwgZGZuW3RpdGxlXSB7Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMDAwOyBjdXJzb3I6IGhlbHA7fVxuXG4vKiB0YWJsZXMgc3RpbGwgbmVlZCBjZWxsc3BhY2luZz1cIjBcIiBpbiB0aGUgbWFya3VwICovXG50YWJsZSB7Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgYm9yZGVyLXNwYWNpbmc6IDA7fVxudGgge2ZvbnQtd2VpZ2h0OiBib2xkOyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO31cbnRkIHtmb250LXdlaWdodDogbm9ybWFsOyB2ZXJ0aWNhbC1hbGlnbjogdG9wO31cblxuaHIge2Rpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDFweDsgYm9yZGVyOiAwOyBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYzsgbWFyZ2luOiAxZW0gMDsgcGFkZGluZzogMDt9XG5cbmlucHV0LCBzZWxlY3Qge3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7fVxuXG5wcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7IC8qIENTUzIgKi9cbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7IC8qIENTUyAyLjEgKi9cbiAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7IC8qIENTUyAzIChhbmQgMi4xIGFzIHdlbGwsIGFjdHVhbGx5KSAqL1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgLyogSUUgKi9cbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHt2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207fVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHt2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO31cbi5pZTcgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHt2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7fVxuLmllNiBpbnB1dCB7dmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO31cblxuc2VsZWN0LCBpbnB1dCwgdGV4dGFyZWEge2ZvbnQ6IDk5JSBzYW5zLXNlcmlmO31cblxudGFibGUge2ZvbnQtc2l6ZTogaW5oZXJpdDsgZm9udDogMTAwJTt9XG5cbnNtYWxsIHtmb250LXNpemU6IDg1JTt9XG5cbnN0cm9uZyB7Zm9udC13ZWlnaHQ6IGJvbGQ7fVxuXG50ZCwgdGQgaW1nIHt2ZXJ0aWNhbC1hbGlnbjogdG9wO31cblxuLyogTWFrZSBzdXJlIHN1cCBhbmQgc3ViIGRvbid0IG1lc3Mgd2l0aCB5b3VyIGxpbmUtaGVpZ2h0cyBodHRwOi8vZ2lzdC5naXRodWIuY29tLzQxMzkzMCAqL1xuc3ViLCBzdXAge2ZvbnQtc2l6ZTogNzUlOyBsaW5lLWhlaWdodDogMDsgcG9zaXRpb246IHJlbGF0aXZlO31cbnN1cCB7dG9wOiAtMC41ZW07fVxuc3ViIHtib3R0b206IC0wLjI1ZW07fVxuXG4vKiBzdGFuZGFyZGl6ZSBhbnkgbW9ub3NwYWNlZCBlbGVtZW50cyAqL1xucHJlLCBjb2RlLCBrYmQsIHNhbXAge2ZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNhbnMtc2VyaWY7fVxuXG4vKiBoYW5kIGN1cnNvciBvbiBjbGlja2FibGUgZWxlbWVudHMgKi9cbi5jbGlja2FibGUsXG5sYWJlbCxcbmlucHV0W3R5cGU9YnV0dG9uXSxcbmlucHV0W3R5cGU9c3VibWl0XSxcbmlucHV0W3R5cGU9ZmlsZV0sXG5idXR0b24ge2N1cnNvcjogcG9pbnRlcjt9XG5cbi8qIFdlYmtpdCBicm93c2VycyBhZGQgYSAycHggbWFyZ2luIG91dHNpZGUgdGhlIGNocm9tZSBvZiBmb3JtIGVsZW1lbnRzICovXG5idXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHttYXJnaW46IDA7fVxuXG4vKiBtYWtlIGJ1dHRvbnMgcGxheSBuaWNlIGluIElFICovXG5idXR0b24sXG5pbnB1dFt0eXBlPWJ1dHRvbl0ge3dpZHRoOiBhdXRvOyBvdmVyZmxvdzogdmlzaWJsZTt9XG5cbi8qIHNjYWxlIGltYWdlcyBpbiBJRTcgbW9yZSBhdHRyYWN0aXZlbHkgKi9cbi5pZTcgaW1nIHstbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO31cblxuLyogcHJldmVudCBCRyBpbWFnZSBmbGlja2VyIHVwb24gaG92ZXJcbiAgIChjb21tZW50ZWQgb3V0IGFzIHVzYWdlIGlzIHJhcmUsIGFuZCB0aGUgZmlsdGVyIHN5bnRheCBtZXNzZXMgd2l0aCBzb21lIHByZS1wcm9jZXNzb3JzKVxuLmllNiBodG1sIHtmaWx0ZXI6IGV4cHJlc3Npb24oZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJCYWNrZ3JvdW5kSW1hZ2VDYWNoZVwiLCBmYWxzZSwgdHJ1ZSkpO31cbiovXG5cbi8qIGxldCdzIGNsZWFyIHNvbWUgZmxvYXRzICovXG4uY2xlYXJmaXg6YmVmb3JlLCAuY2xlYXJmaXg6YWZ0ZXIgeyBjb250ZW50OiBcIlxcMDAyMFwiOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAwOyBvdmVyZmxvdzogaGlkZGVuOyB9XG4uY2xlYXJmaXg6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuLmNsZWFyZml4IHsgem9vbTogMTsgfVxuIiwiLypcblx0SFRNTDUgUmVzZXQgOjogc3R5bGUuY3NzXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0V2UgaGF2ZSBsZWFybmVkIG11Y2ggZnJvbS9iZWVuIGluc3BpcmVkIGJ5L3Rha2VuIGNvZGUgd2hlcmUgb2ZmZXJlZCBmcm9tOlxuXG5cdEVyaWMgTWV5ZXJcdFx0XHRcdFx0OjogaHR0cDovL21leWVyd2ViLmNvbVxuXHRIVE1MNSBEb2N0b3JcdFx0XHRcdDo6IGh0dHA6Ly9odG1sNWRvY3Rvci5jb21cblx0YW5kIHRoZSBIVE1MNSBCb2lsZXJwbGF0ZVx0OjogaHR0cDovL2h0bWw1Ym9pbGVycGxhdGUuY29tXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogTGV0J3MgZGVmYXVsdCB0aGlzIHB1cHB5IG91dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5odG1sLCBib2R5LCBib2R5IGRpdiwgc3Bhbiwgb2JqZWN0LCBpZnJhbWUsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSwgYWJiciwgYWRkcmVzcywgY2l0ZSwgY29kZSwgZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzYW1wLCBzbWFsbCwgc3Ryb25nLCBzdWIsIHN1cCwgdmFyLCBiLCBpLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBtZW51LCBuYXYsIHNlY3Rpb24sIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbywgZGV0YWlscywgc3VtbWFyeSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbmFydGljbGUsIGFzaWRlLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBuYXYsIHNlY3Rpb24sIGRldGFpbHMsIHN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogSGFuZGxlIGJveC1zaXppbmcgd2hpbGUgYmV0dGVyIGFkZHJlc3NpbmcgY2hpbGQgZWxlbWVudHM6XG4gICBodHRwOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlLyAqL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4vKiBjb25zaWRlciByZXNldHRpbmcgdGhlIGRlZmF1bHQgY3Vyc29yOiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9tdXJ0YXVnaC81MjQ3MTU0ICovXG4vKiBSZXNwb25zaXZlIGltYWdlcyBhbmQgb3RoZXIgZW1iZWRkZWQgb2JqZWN0cyAqL1xuLyogaWYgeW91IGRvbid0IGhhdmUgZnVsbCBjb250cm9sIG92ZXIgYGltZ2AgdGFncyAoaWYgeW91IGhhdmUgdG8gb3ZlcmNvbWUgYXR0cmlidXRlcyksIGNvbnNpZGVyIGFkZGluZyBoZWlnaHQ6IGF1dG8gKi9cbmltZyxcbm9iamVjdCxcbmVtYmVkIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICAgTm90ZToga2VlcGluZyBJTUcgaGVyZSB3aWxsIGNhdXNlIHByb2JsZW1zIGlmIHlvdSdyZSB1c2luZyBmb3JlZ3JvdW5kIGltYWdlcyBhcyBzcHJpdGVzLlxuXHRJbiBmYWN0LCBpdCAqd2lsbCogY2F1c2UgcHJvYmxlbXMgd2l0aCBHb29nbGUgTWFwcycgY29udHJvbHMgYXQgc21hbGwgc2l6ZS5cblx0SWYgdGhpcyBpcyB0aGUgY2FzZSBmb3IgeW91LCB0cnkgdW5jb21tZW50aW5nIHRoZSBmb2xsb3dpbmc6XG5cbiNtYXAgaW1nIHtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG59XG4qL1xuLyogZm9yY2UgYSB2ZXJ0aWNhbCBzY3JvbGxiYXIgdG8gcHJldmVudCBhIGp1bXB5IHBhZ2UgKi9cbmh0bWwge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi8qIHdlIHVzZSBhIGxvdCBvZiBVTHMgdGhhdCBhcmVuJ3QgYnVsbGV0ZWQuXG5cdHlvdSdsbCBoYXZlIHRvIHJlc3RvcmUgdGhlIGJ1bGxldHMgd2l0aGluIGNvbnRlbnQsXG5cdHdoaWNoIGlzIGZpbmUgYmVjYXVzZSB0aGV5J3JlIHByb2JhYmx5IGN1c3RvbWl6ZWQgYW55d2F5ICovXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGUsIHEge1xuICBxdW90ZXM6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGU6YmVmb3JlLFxuYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLFxucTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbmEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuZGVsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbmFiYnJbdGl0bGVdLCBkZm5bdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMDAwO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi8qIHRhYmxlcyBzdGlsbCBuZWVkIGNlbGxzcGFjaW5nPVwiMFwiIGluIHRoZSBtYXJrdXAgKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbnRkIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuaHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmlucHV0LCBzZWxlY3Qge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5wcmUge1xuICB3aGl0ZS1zcGFjZTogcHJlOyAvKiBDU1MyICovXG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsgLyogQ1NTIDIuMSAqL1xuICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7IC8qIENTUyAzIChhbmQgMi4xIGFzIHdlbGwsIGFjdHVhbGx5KSAqL1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IC8qIElFICovXG59XG5cbmlucHV0W3R5cGU9cmFkaW9dIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5pZTcgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5pZTYgaW5wdXQge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG59XG5cbnNlbGVjdCwgaW5wdXQsIHRleHRhcmVhIHtcbiAgZm9udDogOTklIHNhbnMtc2VyaWY7XG59XG5cbnRhYmxlIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250OiAxMDAlO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODUlO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGQsIHRkIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIE1ha2Ugc3VyZSBzdXAgYW5kIHN1YiBkb24ndCBtZXNzIHdpdGggeW91ciBsaW5lLWhlaWdodHMgaHR0cDovL2dpc3QuZ2l0aHViLmNvbS80MTM5MzAgKi9cbnN1Yiwgc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIHN0YW5kYXJkaXplIGFueSBtb25vc3BhY2VkIGVsZW1lbnRzICovXG5wcmUsIGNvZGUsIGtiZCwgc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNhbnMtc2VyaWY7XG59XG5cbi8qIGhhbmQgY3Vyc29yIG9uIGNsaWNrYWJsZSBlbGVtZW50cyAqL1xuLmNsaWNrYWJsZSxcbmxhYmVsLFxuaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1maWxlXSxcbmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogV2Via2l0IGJyb3dzZXJzIGFkZCBhIDJweCBtYXJnaW4gb3V0c2lkZSB0aGUgY2hyb21lIG9mIGZvcm0gZWxlbWVudHMgKi9cbmJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIG1ha2UgYnV0dG9ucyBwbGF5IG5pY2UgaW4gSUUgKi9cbmJ1dHRvbixcbmlucHV0W3R5cGU9YnV0dG9uXSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyogc2NhbGUgaW1hZ2VzIGluIElFNyBtb3JlIGF0dHJhY3RpdmVseSAqL1xuLmllNyBpbWcge1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG4vKiBwcmV2ZW50IEJHIGltYWdlIGZsaWNrZXIgdXBvbiBob3ZlclxuICAgKGNvbW1lbnRlZCBvdXQgYXMgdXNhZ2UgaXMgcmFyZSwgYW5kIHRoZSBmaWx0ZXIgc3ludGF4IG1lc3NlcyB3aXRoIHNvbWUgcHJlLXByb2Nlc3NvcnMpXG4uaWU2IGh0bWwge2ZpbHRlcjogZXhwcmVzc2lvbihkb2N1bWVudC5leGVjQ29tbWFuZChcIkJhY2tncm91bmRJbWFnZUNhY2hlXCIsIGZhbHNlLCB0cnVlKSk7fVxuKi9cbi8qIGxldCdzIGNsZWFyIHNvbWUgZmxvYXRzICovXG4uY2xlYXJmaXg6YmVmb3JlLCAuY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5jbGVhcmZpeCB7XG4gIHpvb206IDE7XG59XG5cbjpyb290IHtcbiAgLS1oZWFkZXItaGVpZ2h0OiAxMXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICA6cm9vdCB7XG4gICAgLS1oZWFkZXItaGVpZ2h0OiA3LjJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWhlYWRlci1oZWlnaHQ6IDUuNnJlbTtcbiAgfVxufVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiA2Mi41JTtcbn1cbmh0bWwubmF2T3BlbmVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmh0bWwubmF2T3BlbmVkIC5oZWFkZXJfX2JnIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuYm9keSB7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LWZhbWlseTogXCJOb3RvIFNhbnMgSlBcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBib2R5IHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuXG5hIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjY1LCAwLCAwLjM1LCAxKTtcbn1cbmE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjY1LCAwLCAwLjM1LCAxKTtcbn1cbmJ1dHRvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuLm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDI4NnB4O1xuICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICB9XG59XG5cbi5kZXNjTGlzdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmRlc2NMaXN0IHtcbiAgICBnYXA6IDEwcHg7XG4gIH1cbn1cbi5kZXNjTGlzdF9faXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYjdiN2I3O1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMi44cmVtLCAyNy4zNzg5NjQ5NDE2JSkgbWlubWF4KDAsIDFmcik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZGVzY0xpc3RfX2l0ZW0ge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgfVxufVxuLmRlc2NMaXN0X19pdGVtOndoZXJlKDpsYXN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiN2I3Yjc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZGVzY0xpc3RfX2l0ZW06d2hlcmUoOmxhc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cbi5kZXNjTGlzdF9fdGVybSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoODgsIDc2LCA1OCwgMC4xKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMTZweCAxZW07XG4gIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmRlc2NMaXN0X190ZXJtIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIH1cbn1cbi5kZXNjTGlzdF9fdGVybVRleHQge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cbi5kZXNjTGlzdF9fZGVzYyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBhZGRpbmc6IDE2cHggMC42MjVlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5kZXNjTGlzdF9fZGVzYyB7XG4gICAgcGFkZGluZzogMTZweCAxNnB4O1xuICB9XG59XG4uZGVzY0xpc3RfX2Rlc2NUZXh0IHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG4uZGVzY0xpc3RfX2Rlc2NUZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG59XG5cbi5mb290ZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDEzcHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLmZvb3Rlcjo6YmVmb3JlIHtcbiAgYXNwZWN0LXJhdGlvOiAxNDQwLzQxNDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pbWdfZm9vdGVyLnN2Zykgbm8tcmVwZWF0IGNlbnRlci9jb3ZlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4uZm9vdGVyX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHVuc2V0O1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDUwcHgpIHtcbiAgLmZvb3Rlcl9fY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlcl9fY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxufVxuLmZvb3Rlcl9fY29weXJpZ2h0IHtcbiAgY29sb3I6ICM5OTk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX2NvcHlyaWdodCB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbi5mb290ZXJfX2NvcHlyaWdodFRleHQge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4uZm9vdGVyX19jb3B5cmlnaHRMaW5rIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmdOYXYge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuZ05hdiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5nTmF2IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHZpc2liaWxpdHksIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY1LCAwLCAwLjM1LCAxKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogOTk7XG4gIH1cbn1cbi5nTmF2X19vdXRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMjZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuZ05hdl9fb3V0ZXIge1xuICAgIGdhcDogMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmdOYXZfX291dGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA2NHB4IDQ4cHg7XG4gIH1cbn1cbi5nTmF2X19saXN0IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAyNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG4gIC5nTmF2X19saXN0IHtcbiAgICBnYXA6IDE2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5nTmF2X19saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gIH1cbn1cbi5nTmF2X19saXN0X3R5cGVfc25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5nTmF2X19pdGVtIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlciBmbGV4LXN0YXJ0O1xufVxuLmdOYXZfX2xpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmdOYXZfX3Nuc0xvZ28ge1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEuNzVlbTtcbn1cbi5nTmF2Lm5hdk9wZW5lZCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAgMjRweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgYXV0byk7XG4gIGhlaWdodDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCA1MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwIDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxufVxuLmhlYWRlcl9fbG9nbyB7XG4gIHdpZHRoOiAyNDVweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAuaGVhZGVyX19sb2dvIHtcbiAgICB3aWR0aDogMTQ0cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfX2xvZ28ge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgfVxufVxuLmhlYWRlcl9fbG9nb0xpbmsge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyX19sb2dvSW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGVhZGVyX19idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlcl9fYnV0dG9uIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGFzcGVjdC1yYXRpbzogMzIvMjA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiA2cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBnYXAsIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY1LCAwLCAwLjM1LCAxKTtcbiAgICB3aWR0aDogMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlcl9fYnV0dG9uOjpiZWZvcmUge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zbGF0ZSwgcm90YXRlO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19idXR0b246OmFmdGVyIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zbGF0ZSwgcm90YXRlO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uaGVhZGVyX19idXR0b24ubmF2T3BlbmVkIHtcbiAgZ2FwOiAwcHg7XG59XG4uaGVhZGVyX19idXR0b24ubmF2T3BlbmVkOjpiZWZvcmUge1xuICByb3RhdGU6IDMwZGVnO1xuICB0cmFuc2xhdGU6IDAgNTAlO1xufVxuLmhlYWRlcl9fYnV0dG9uLm5hdk9wZW5lZDo6YWZ0ZXIge1xuICByb3RhdGU6IC0zMGRlZztcbiAgdHJhbnNsYXRlOiAwIC01MCU7XG59XG4uaGVhZGVyX19iZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19iZyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdmlzaWJpbGl0eTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjUsIDAsIDAuMzUsIDEpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB6LWluZGV4OiA5ODtcbiAgfVxufVxuLnRvcE12IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWFyZ2luLWJvdHRvbTogOTNweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAudG9wTXYge1xuICAgIG1hcmdpbi1ib3R0b206IDcycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC50b3BNdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgfVxufVxuLnRvcE12OjpiZWZvcmUge1xuICBhc3BlY3QtcmF0aW86IDE0NDAvOTU5O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ltZ19tdi5qcGcpIG5vLXJlcGVhdCBjZW50ZXIvY292ZXI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udG9wQ29tcGFueSB7XG4gIHNjcm9sbC1tYXJnaW4tdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbn1cbi50b3BDb21wYW55X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMy4ycmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogOTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG4gIC50b3BDb21wYW55X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjRweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnRvcENvbXBhbnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG4udG9wQ29tcGFueV9faW5uZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDUuMzg0NjE1Mzg0NiU7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDguNTM4NDYxNTM4NSUgbWlubWF4KDAsIDFmcik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRvcENvbXBhbnlfX2lubmVyIHtcbiAgICBnYXA6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAudG9wQ29tcGFueV9faW5uZXIge1xuICAgIGdhcDogMzJweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudG9wQ29tcGFueV9faW5uZXIge1xuICAgIGdhcDogMjRweDtcbiAgfVxufVxuLnRvcENvbXBhbnlfX2lubmVyOjpiZWZvcmUge1xuICBhc3BlY3QtcmF0aW86IDYzMS80MjA7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaW1nX3RvcENvbXBhbnlfMDEuanBnKSBuby1yZXBlYXQgY2VudGVyL2NvdmVyO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLnVfZF9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51X2RfYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnVfZF9mIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi51X2RfaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC51X3NwX2RfbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudV9zcF9kX2Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC51X3NwX2RfZiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAudV9zcF9kX2kge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLnVfc3BtX2RfbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudV9zcG1fZF9iIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAudV9zcG1fZF9mIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC51X3NwbV9kX2kge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC51X3BjX2RfbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudV9wY19kX2Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC51X3BjX2RfZiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAudV9wY19kX2kge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuLnVfdGFfbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udV90YV9jIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVfdGFfciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnVfc3BfdGFfbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAudV9zcF90YV9jIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnVfc3BfdGFfciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAudV9wY190YV9sIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC51X3BjX3RhX2Mge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAudV9wY190YV9yIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuLnVfamNfZnMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4udV9qY19jIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4udV9qY19mZSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4udV9qY19zYiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi51X2pjX3NhIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudV9zcF9qY19mcyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC51X3NwX2pjX2Mge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC51X3NwX2pjX2ZlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIC51X3NwX2pjX3NiIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLnVfc3BfamNfc2Ege1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgLnVfcGNfamNfZnMge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAudV9wY19qY19jIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAudV9wY19qY19mZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuICAudV9wY19qY19zYiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC51X3BjX2pjX3NhIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgfVxufSIsIkB1c2UgJ2dsb2JhbCcgYXMgKjtcblxuOnJvb3Qge1xuICAgIC0taGVhZGVyLWhlaWdodDogMTFyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYSAoXCJ0YWJcIikge1xuICAgICAgICAtLWhlYWRlci1oZWlnaHQ6IDcuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgIC0taGVhZGVyLWhlaWdodDogNS42cmVtO1xuICAgIH1cbn1cblxuaHRtbCB7XG4gICAgZm9udC1zaXplOiA2Mi41JTtcblxuICAgICYubmF2T3BlbmVkIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICZfX2JnIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkge1xuICAgIGNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWphO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG59XG5cbmEge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAkZWFzaW5nLWRlZmF1bHQ7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG59XG5cbmJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAkZWFzaW5nLWRlZmF1bHQ7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG59XG5cbi5jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogMTQ0MHB4O1xuICAgIHBhZGRpbmctbGVmdDogNzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEgKFwidGFiXCIpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBtYWluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5tYWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMjg2cHg7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgfVxufSIsIkBjaGFyc2V0ICd1dGYtOCc7XG4kcmVzcG9uc2l2ZTogKFxuXHRcInNlXCI6IFwic2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjFweClcIixcblx0XCJzcG1cIjogXCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KVwiLFxuXHRcInNwXCI6IFwic2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweClcIixcblx0XCJ0YWJcIjogXCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweClcIixcblx0XCJsdFwiOiBcInNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KVwiLFxuXHRcInBjXCI6IFwic2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpXCIsXG5cdFwiNGtcIjogXCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI1NjBweClcIixcbikgIWRlZmF1bHQ7XG5AbWl4aW4gbWVkaWEoJGJyZWFrcG9pbnQ6IHNwKSB7XG5cdEBtZWRpYSAje21hcC1nZXQoJHJlc3BvbnNpdmUsICRicmVha3BvaW50KX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG4iLCJAY2hhcnNldCAndXRmLTgnO1xuQHVzZSBcInNhc3M6bWFwXCI7XG5cbi8vIGNvbG9yXG4kY29sb3ItZGVmYXVsdDogIzAwMDtcbi8vICRjb2xvci1wcmltYXJ5OiAjMzcyNDhiO1xuXG4vLyBmb250XG4kZm9udC1mYW1pbHktamE6IFwiTm90byBTYW5zIEpQXCIsIHNhbnMtc2VyaWY7XG5cbi8vIGVhc2luZ1xuJGVhc2luZy1jdWJpYy1iZXppZXI6IChcbiAgICBcImVhc2VJblNpbmVcIjogY3ViaWMtYmV6aWVyKDAuMTIsIDAsIDAuMzksIDApLFxuICAgIFwiZWFzZU91dFNpbmVcIjogY3ViaWMtYmV6aWVyKDAuNjEsIDEsIDAuODgsIDEpLFxuICAgIFwiZWFzZUluT3V0U2luZVwiOiBjdWJpYy1iZXppZXIoMC4zNywgMCwgMC42MywgMSksXG4gICAgXCJlYXNlSW5RdWFkXCI6IGN1YmljLWJlemllcigwLjExLCAwLCAwLjUsIDApLFxuICAgIFwiZWFzZU91dFF1YWRcIjogY3ViaWMtYmV6aWVyKDAuNSwgMSwgMC44OSwgMSksXG4gICAgXCJlYXNlSW5PdXRRdWFkXCI6IGN1YmljLWJlemllcigwLjQ1LCAwLCAwLjU1LCAxKSxcbiAgICBcImVhc2VJbkN1YmljXCI6IGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKSxcbiAgICBcImVhc2VPdXRDdWJpY1wiOiBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSksXG4gICAgXCJlYXNlSW5PdXRDdWJpY1wiOiBjdWJpYy1iZXppZXIoMC42NSwgMCwgMC4zNSwgMSksXG4gICAgXCJlYXNlSW5RdWFydFwiOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjc1LCAwKSxcbiAgICBcImVhc2VPdXRRdWFydFwiOiBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKSxcbiAgICBcImVhc2VJbk91dFF1YXJ0XCI6IGN1YmljLWJlemllcigwLjc2LCAwLCAwLjI0LCAxKSxcbiAgICBcImVhc2VJblF1aW50XCI6IGN1YmljLWJlemllcigwLjY0LCAwLCAwLjc4LCAwKSxcbiAgICBcImVhc2VPdXRRdWludFwiOiBjdWJpYy1iZXppZXIoMC4yMiwgMSwgMC4zNiwgMSksXG4gICAgXCJlYXNlSW5PdXRRdWludFwiOiBjdWJpYy1iZXppZXIoMC44MywgMCwgMC4xNywgMSksXG4gICAgXCJlYXNlSW5FeHBvXCI6IGN1YmljLWJlemllcigwLjcsIDAsIDAuODQsIDApLFxuICAgIFwiZWFzZU91dEV4cG9cIjogY3ViaWMtYmV6aWVyKDAuMTYsIDEsIDAuMywgMSksXG4gICAgXCJlYXNlSW5PdXRFeHBvXCI6IGN1YmljLWJlemllcigwLjg3LCAwLCAwLjEzLCAxKSxcbiAgICBcImVhc2VJbkNpcmNcIjogY3ViaWMtYmV6aWVyKDAuNTUsIDAsIDEsIDAuNDUpLFxuICAgIFwiZWFzZU91dENpcmNcIjogY3ViaWMtYmV6aWVyKDAsIDAuNTUsIDAuNDUsIDEpLFxuICAgIFwiZWFzZUluT3V0Q2lyY1wiOiBjdWJpYy1iZXppZXIoMC44NSwgMCwgMC4xNSwgMSksXG4gICAgXCJlYXNlSW5CYWNrXCI6IGN1YmljLWJlemllcigwLjM2LCAwLCAwLjY2LCAtMC41NiksXG4gICAgXCJlYXNlT3V0QmFja1wiOiBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSksXG4gICAgXCJlYXNlSW5PdXRCYWNrXCI6IGN1YmljLWJlemllcigwLjY4LCAtMC42LCAwLjMyLCAxLjYpLFxuKTtcbiRlYXNpbmctZGVmYXVsdDogbWFwLmdldCgkZWFzaW5nLWN1YmljLWJlemllciwgXCJlYXNlSW5PdXRDdWJpY1wiKTtcbiIsIkB1c2UgJy4uL2dsb2JhbCcgYXMgKjtcblxuLmRlc2NMaXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDIwIC8gMTYpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYjdiN2I3O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMi44cmVtLCBjYWxjKDE2NCAvIDU5OSAqIDEwMCUpKSBtaW5tYXgoMCwgMWZyKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6d2hlcmUoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiN2I3Yjc7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGVybSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzU4NGMzYSwgMC4xKTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZzogMTZweCAxZW07XG4gICAgICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Rlcm1UZXh0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJl9fZGVzYyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggY2FsYygxMCAvIDE2ICogMWVtKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZXNjVGV4dCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwIC8gMTYgKiAxZW0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnLi4vZ2xvYmFsJyBhcyAqO1xuXG4uZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMTNweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNDQwIC8gNDE0O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ltZ19mb290ZXIuc3ZnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoXCJ0YWJcIikge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb3B5cmlnaHQge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjAgLyAxNik7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29weXJpZ2h0VGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmX19jb3B5cmlnaHRMaW5rIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59IiwiQHVzZSAnLi4vZ2xvYmFsJyBhcyAqO1xuXG4uZ05hdiB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgIEBpbmNsdWRlIG1lZGlhIChcInRhYlwiKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjNzO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB2aXNpYmlsaXR5LCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2luZy1kZWZhdWx0O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgIH1cblxuICAgICZfX291dGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAyNnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhIChcInRhYlwiKSB7XG4gICAgICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDY0cHggNDhweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDI2cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKFwidGFiXCIpIHtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl90eXBlX3NucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyIGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fc25zTG9nbyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogY2FsYygyOCAvIDE2ICogMWVtKTtcbiAgICB9XG5cbiAgICAmLm5hdk9wZW5lZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG4uaGVhZGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAgMjRweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBhdXRvKTtcbiAgICBoZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwIDUwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSAoXCJ0YWJcIikge1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIHdpZHRoOiAyNDVweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoXCJ0YWJcIikge1xuICAgICAgICAgICAgd2lkdGg6IDE0NHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbG9nb0xpbmsge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fbG9nb0ltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMzIgLyAyMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdhcDogNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGdhcCwgb3BhY2l0eTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZWFzaW5nLWRlZmF1bHQ7XG4gICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNsYXRlLCByb3RhdGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2xhdGUsIHJvdGF0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmF2T3BlbmVkIHtcbiAgICAgICAgICAgIGdhcDogMHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHJvdGF0ZTogMzBkZWc7XG4gICAgICAgICAgICAgICAgdHJhbnNsYXRlOiAwIDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHJvdGF0ZTogLTMwZGVnO1xuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZTogMCAtNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjQ1KTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuM3M7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB2aXNpYmlsaXR5O1xuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRlYXNpbmctZGVmYXVsdDsgICAgXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB6LWluZGV4OiA5ODtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX25hdiB7fVxufVxuIiwiQHVzZSAnLi4vZ2xvYmFsJyBhcyAqO1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBpbmRleFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4udG9wTXYge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogOTNweDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEgKFwidGFiXCIpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzJweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNDQwIC8gOTU5O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ltZ19tdi5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4udG9wQ29tcGFueSB7XG4gICAgc2Nyb2xsLW1hcmdpbi10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuXG4gICAgJl9fY29udGFpbmVyIHt9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOTdweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhIChcInRhYlwiKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IGNhbGMoNzAgLyAxMzAwICogMTAwJSk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogY2FsYyg2MzEgLyAxMzAwICogMTAwJSkgbWlubWF4KDAsIDFmcik7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKFwibHRcIikge1xuICAgICAgICAgICAgZ2FwOiAzMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEgKFwidGFiXCIpIHtcbiAgICAgICAgICAgIGdhcDogMzJweDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSAoKSB7XG4gICAgICAgICAgICBnYXA6IDI0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA2MzEgLyA0MjA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ltZ190b3BDb21wYW55XzAxLmpwZykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzY0xpc3Qge31cbn1cblxuLnRvcCB7fVxuIiwiQHVzZSAnZ2xvYmFsJyBhcyAqO1xuLnUge1xuICAgICZfZF9uIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICZfZF9iIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAmX2RfZiB7IGRpc3BsYXk6IGZsZXg7IH1cbiAgICAmX2RfaSB7IGRpc3BsYXk6IGlubGluZTsgfVxuICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgJl9zcF9kX24geyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICZfc3BfZF9iIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgJl9zcF9kX2YgeyBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAgICZfc3BfZF9pIHsgZGlzcGxheTogaW5saW5lOyB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhIChcInNwbVwiKSB7XG4gICAgICAgICZfc3BtX2RfbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgJl9zcG1fZF9iIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgJl9zcG1fZF9mIHsgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAmX3NwbV9kX2kgeyBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoXCJwY1wiKSB7XG4gICAgICAgICZfcGNfZF9uIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAmX3BjX2RfYiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICZfcGNfZF9mIHsgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAmX3BjX2RfaSB7IGRpc3BsYXk6IGlubGluZTsgfVxuICAgIH1cblxuICAgICZfdGFfbCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAmX3RhX2MgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAmX3RhX3IgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBpbmNsdWRlIG1lZGlhICgpIHtcbiAgICAgICAgJl9zcF90YV9sIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICAmX3NwX3RhX2MgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgJl9zcF90YV9yIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoXCJwY1wiKSB7XG4gICAgICAgICZfcGNfdGFfbCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgJl9wY190YV9jIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgICZfcGNfdGFfciB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgfVxuXG4gICAgJl9qY19mcyB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgICZfamNfYyB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgJl9qY19mZSB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAmX2pjX3NiIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgJl9qY19zYSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gICAgQGluY2x1ZGUgbWVkaWEgKCkge1xuICAgICAgICAmX3NwX2pjX2ZzIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgICZfc3BfamNfYyB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgICZfc3BfamNfZmUgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgICAgICZfc3BfamNfc2IgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgICAgJl9zcF9qY19zYSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwicGNcIikge1xuICAgICAgICAmX3BjX2pjX2ZzIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgICZfcGNfamNfYyB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgICZfcGNfamNfZmUgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgICAgICZfcGNfamNfc2IgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgICAgJl9wY19qY19zYSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gICAgfVxufVxuIl19 */
