@charset "UTF-8";
/* ---------------------------------------------------------
 *	リセット
 *---------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Comfortaa:wght@400;600&family=Noto+Sans+JP:wght@400;700&display=swap");
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  overflow: auto;
  height: 100%;
  overflow-y: scroll;
  font-size: 62.5%;
}

body {
  height: 100%;
  color: #583b1e;
  font-size: 3.8vw;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.8;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
}

@media only screen and (max-width: 668px) {
  body {
    font-size: 4vw;
  }
}

@media only screen and (min-width: 769px) {
  body {
    font-size: 20px;
  }
}

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

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, figure {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

em {
  font-style: normal;
}

li {
  list-style: none;
}

table, iframe {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
  font-size: 100%;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: top;
}

svg {
  max-width: 100%;
}

a {
  color: #583b1e;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none;
}

a:visited {
  color: #583b1e;
}

a:hover {
  color: #583b1e;
  text-decoration: none;
}

a:active {
  color: #583b1e;
}

a.js-telLink {
  color: #583b1e;
  text-decoration: none;
  pointer-events: none;
}

a[href^="tel:"] {
  cursor: default;
  text-decoration: none;
}

select,
input,
textarea,
button {
  font-family: inherit;
  font-size: inherit;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="number"],
textarea {
  padding: 8px 10px;
  border: 1px solid #ccc;
}

input[type="text"]::-webkit-input-placeholder, input[type="search"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder, input[type="url"]::-webkit-input-placeholder, input[type="email"]::-webkit-input-placeholder, input[type="password"]::-webkit-input-placeholder, input[type="number"]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #ccc;
}

input[type="text"]::-moz-placeholder, input[type="search"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="url"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="password"]::-moz-placeholder, input[type="number"]::-moz-placeholder, textarea::-moz-placeholder {
  color: #ccc;
}

input[type="text"]:-ms-input-placeholder, input[type="search"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="url"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="password"]:-ms-input-placeholder, input[type="number"]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #ccc;
}

input[type="text"]::-ms-input-placeholder, input[type="search"]::-ms-input-placeholder, input[type="tel"]::-ms-input-placeholder, input[type="url"]::-ms-input-placeholder, input[type="email"]::-ms-input-placeholder, input[type="password"]::-ms-input-placeholder, input[type="number"]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #ccc;
}

input[type="text"]::placeholder,
input[type="search"]::placeholder,
input[type="tel"]::placeholder,
input[type="url"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder {
  color: #ccc;
}

input[type="text"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
textarea:focus {
  background-color: #ffeeee;
}

input[type="radio"],
input[type="checkbox"] {
  margin-right: 5px;
}

select {
  padding: 8px 5px;
  border: 1px solid #ccc;
}

label {
  cursor: pointer;
}

::-moz-selection {
  color: #fff;
  background-color: #ff6f6f;
}

::selection {
  color: #fff;
  background-color: #ff6f6f;
}

::-moz-selection {
  color: #fff;
  background-color: #ff6f6f;
}

/* onmediaquery.js設定用
 *-------------------------------------------------- */
html {
  font-family: pc;
}

@media only screen and (max-width: 1100px) {
  html {
    font-family: "minipc";
  }
}

@media only screen and (max-width: 768px) {
  html {
    font-family: "tablet";
  }
}

@media only screen and (max-width: 668px) {
  html {
    font-family: "phablet";
  }
}

/* ---------------------------------------------------------
 *	iconfont
 *---------------------------------------------------------- */
@font-face {
  font-family: "icons";
  src: url("../font/fontello.woff2") format("woff2"), url("../font/fontello.woff") format("woff");
  font-display: block;
}

/* ---------------------------------------------------------
 *	googlefont
 *---------------------------------------------------------- */
/* notoSansJP/Comfortaa */
/* ---------------------------------------------------------
 * ■使用例
 * 【引数なし】
 * デフォルトは$keyにeaseが入ります。
 * .elements {
 * 		transition: all .5s ease();
 * }
 * 【引数あり】
 * .elements {
 * 		transition: all .5s ease(InCubic);
 * }
----------------------------------------------------------*/
/* ---------------------------------------------------------
 *	ヘッダー
 *---------------------------------------------------------- */
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 2;
  -webkit-transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

#header.is-mounted {
  opacity: 1;
}

#header .header-wrap {
  background-color: #77bef2;
  padding: 4vw 18vw 4vw 4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

#header .header-wrap > * {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}

#header .header-btn {
  margin-left: 4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#header .header-btn li a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: justify;
      align-content: space-between;
  border: 2px solid #583b1e;
  text-align: center;
  height: 100%;
  position: relative;
  z-index: 0;
}

#header .header-btn li a::before {
  position: absolute;
  bottom: 0;
  right: 0;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  z-index: 1;
}

#header .header-btn li a span {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  font-size: 3.6vw;
  line-height: 1.2;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
  text-justify: inter-character;
  font-weight: 700;
}

#header .header-btn li.is-web a {
  background-color: #fedc5e;
  padding: 1vw 2vw;
}

#header .header-btn li.is-web a::before {
  border-color: transparent transparent #583b1e transparent;
}

#header .header-btn li.is-mail {
  margin-left: 2vw;
}

#header .header-btn li.is-mail a {
  background-color: #fff;
}

#header .header-btn li.is-mail a::before {
  -webkit-transition: all .3s;
  transition: all .3s;
  border-color: transparent transparent #b1d797 transparent;
}

#header .header-btn li.is-mail a span:first-of-type {
  padding: .5vw 2vw;
}

#header .header-btn li.is-mail a span:last-of-type {
  padding: .5vw 2vw .5vw 9vw;
  position: relative;
  background-color: #583b1e;
  color: #fedc5e;
}

#header .header-btn li.is-mail a span:last-of-type:before {
  content: "\e804";
  position: absolute;
  top: 0.4vw;
  left: 2.5vw;
  color: #fedc5e;
  font-family: 'icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-size: 5vw;
  line-height: 1;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-transform: none;
  text-decoration: none;
}

@media only screen and (min-width: 769px) {
  #header .header-wrap {
    width: 100%;
    padding: 15px 90px 15px 30px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #header .header-logo {
    max-width: 200px;
  }
  #header .header-btn {
    position: relative;
    margin-left: 0;
    margin-right: 20px;
    -ms-flex-preferred-size: 270px;
        flex-basis: 270px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #header .header-btn li a {
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  #header .header-btn li a br {
    display: none;
  }
  #header .header-btn li a span {
    font-size: 1.6rem;
  }
  #header .header-btn li a.is-hover {
    background-color: #583b1e;
    color: #fff;
  }
  #header .header-btn li.is-web {
    margin-left: 0;
  }
  #header .header-btn li.is-web a {
    padding: 10px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  #header .header-btn li.is-web a span {
    font-size: 2.0rem;
  }
  #header .header-btn li.is-mail {
    margin-left: 20px;
    -ms-flex-preferred-size: 120px;
        flex-basis: 120px;
  }
  #header .header-btn li.is-mail a span {
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  #header .header-btn li.is-mail a span:first-of-type {
    padding: 5px 20px;
  }
  #header .header-btn li.is-mail a span:last-of-type {
    padding: 5px 20px 5px 40px;
  }
  #header .header-btn li.is-mail a span:last-of-type::before {
    font-size: 1.6rem;
    -webkit-transition: all .3s;
    transition: all .3s;
    left: 20px;
  }
  #header .header-btn li.is-mail a.is-hover::before {
    border-color: transparent transparent #fff transparent;
  }
  #header .header-btn li.is-mail a.is-hover span:last-of-type {
    color: #fff;
  }
  #header .header-btn li.is-mail a.is-hover span:last-of-type::before {
    color: #fff;
  }
}

/* ---------------------------------------------------------
 *	ヘッダーメニュー
 *---------------------------------------------------------- */
#globalNav {
  height: 100Vh;
  padding: 16vw 4vw 6vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#globalNav ul {
  height: 100%;
  width: 100%;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

#globalNav ul li + li {
  margin-top: 3vw;
}

#globalNav ul li a {
  font-size: 4.2vw;
  font-weight: 700;
}

#globalNav ul li a span {
  display: block;
  font-family: "Comfortaa", cursive;
  letter-spacing: 1vw;
  font-size: 2.4vw;
  opacity: .8;
  line-height: 1;
}

#globalNav ul li.is-btn {
  margin-top: 4vw;
}

#globalNav ul li.is-btn a {
  display: block;
  background-color: #583b1e;
  color: #fff;
  height: 100%;
  padding: 7px 10px;
  text-align: center;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#globalNav ul li.is-btn.is-hover {
  opacity: .8;
}

@media only screen and (min-width: 769px) {
  #globalNav {
    padding: 90px 20px 20px;
  }
  #globalNav ul {
    overflow-y: auto;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  #globalNav ul li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
  #globalNav ul li + li {
    margin-top: 0;
  }
  #globalNav ul li:nth-of-type(n+3) {
    margin-top: 30px;
  }
  #globalNav ul li a {
    font-size: 24px;
  }
  #globalNav ul li a span {
    font-size: 14px;
    letter-spacing: 6px;
  }
  #globalNav ul li.is-btn {
    margin-top: 30px;
  }
  #globalNav ul li.is-btn a {
    padding: 7px 20px;
    display: inline-block;
  }
}

#floatingMenu {
  display: none;
  z-index: 4;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.95);
  width: 100vw;
  height: 100vh;
}

#floatingMenu.is-show {
  display: block;
  -webkit-animation: showFloatingMenu .5s ease-in-out both;
          animation: showFloatingMenu .5s ease-in-out both;
}

/* ---------------------------------------------------------
 *	ヘッダーボタン
 *---------------------------------------------------------- */
#btnMenu {
  display: block;
  position: absolute;
  top: 50%;
  right: 4vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 3;
}

#btnMenu p {
  position: relative;
  width: 10vw;
  height: 10vw;
  cursor: pointer;
  color: #583b1e;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#btnMenu p .icoMenu {
  position: absolute;
  bottom: 50%;
  margin-bottom: 0.2vw;
  left: 50%;
  margin-left: -5vw;
  bottom: 50%;
  left: 50%;
}

#btnMenu p .icoMenuInner,
#btnMenu p .icoMenuInner:before,
#btnMenu p .icoMenuInner:after {
  display: block;
  content: '';
  position: absolute;
  width: 10vw;
  height: 0.4vw;
  border-radius: 0;
  background: #583b1e;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

#btnMenu p .icoMenuInner:before {
  top: -3.6vw;
}

#btnMenu p .icoMenuInner:after {
  bottom: -3.6vw;
}

#btnMenu p.is-active .icoMenuInner {
  background-color: transparent;
}

#btnMenu p.is-active .icoMenuInner:before,
#btnMenu p.is-active .icoMenuInner:after {
  top: 0;
  bottom: 0;
  background: #fff;
}

#btnMenu p.is-active .icoMenuInner:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

#btnMenu p.is-active .icoMenuInner:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

@media only screen and (min-width: 769px) {
  #btnMenu {
    right: 45px;
  }
  #btnMenu p {
    position: relative;
    width: 40px;
    height: 40px;
    cursor: pointer;
    color: #583b1e;
  }
  #btnMenu p .icoMenu {
    position: absolute;
    bottom: 50%;
    margin-bottom: 1px;
    left: 50%;
    margin-left: -20px;
    bottom: 50%;
    left: 50%;
  }
  #btnMenu p .icoMenuInner,
  #btnMenu p .icoMenuInner:before,
  #btnMenu p .icoMenuInner:after {
    display: block;
    content: '';
    position: absolute;
    width: 40px;
    height: 2px;
    border-radius: 0;
    background: #583b1e;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  #btnMenu p .icoMenuInner:before {
    top: -14px;
  }
  #btnMenu p .icoMenuInner:after {
    bottom: -14px;
  }
  #btnMenu p.is-active .icoMenuInner {
    background-color: transparent;
  }
  #btnMenu p.is-active .icoMenuInner:before,
  #btnMenu p.is-active .icoMenuInner:after {
    top: 0;
    bottom: 0;
    background: #fff;
  }
  #btnMenu p.is-active .icoMenuInner:before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #btnMenu p.is-active .icoMenuInner:after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

#btnfloatingMenuClose {
  position: fixed;
  top: 4vw;
  right: 4vw;
  -webkit-transition: all .2s ease-out;
  transition: all .2s ease-out;
}

#btnfloatingMenuClose p {
  width: 10vw;
  height: 10vw;
  cursor: pointer;
  position: relative;
}

#btnfloatingMenuClose p:before, #btnfloatingMenuClose p:after {
  position: absolute;
  top: 50%;
  right: 50%;
  bottom: 50%;
  left: 50%;
  margin-top: 2.8vw;
  margin-bottom: 2.8vw;
  margin-top: -0.2vw;
  margin-bottom: -0.2vw;
  margin-right: -5vw;
  margin-left: -5vw;
}

#btnfloatingMenuClose p:before {
  content: "";
  display: block;
  width: 10vw;
  height: 0.4vw;
  background-color: #583b1e;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

#btnfloatingMenuClose p:after {
  content: "";
  display: block;
  width: 10vw;
  height: 0.4vw;
  background-color: #583b1e;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

@media only screen and (min-width: 769px) {
  #btnfloatingMenuClose {
    top: 20px;
    right: 40px;
  }
  #btnfloatingMenuClose p {
    width: 40px;
    height: 40px;
    cursor: pointer;
    position: relative;
  }
  #btnfloatingMenuClose p:before, #btnfloatingMenuClose p:after {
    position: absolute;
    top: 50%;
    right: 50%;
    bottom: 50%;
    left: 50%;
    margin-top: 17px;
    margin-bottom: 17px;
    margin-top: -1px;
    margin-bottom: -1px;
    margin-right: -20px;
    margin-left: -20px;
  }
  #btnfloatingMenuClose p:before {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    background-color: #583b1e;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #btnfloatingMenuClose p:after {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    background-color: #583b1e;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

@-webkit-keyframes showFloatingMenu {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  1% {
    display: block;
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes showFloatingMenu {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  1% {
    display: block;
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

/* ---------------------------------------------------------
 *	大枠
 *---------------------------------------------------------- */
#contents {
  overflow: hidden;
}

/* ---------------------------------------------------------
 *	メイン枠
 *---------------------------------------------------------- */
/* ---------------------------------------------------------
 *	フッター
 *---------------------------------------------------------- */
#footer {
  background-color: #fff;
  padding-top: 20vw;
  position: relative;
}

#footer .footer-inner {
  margin-left: 4vw;
  margin-right: 4vw;
}

#footer .footer-logo {
  margin-top: -30vw;
  max-width: 40vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

#footer .footer-pic {
  margin-top: 6vw;
}

#footer .footer-address {
  margin-top: 6vw;
  line-height: 1.4;
}

#footer .footer-tel {
  margin-top: 6vw;
  text-align: center;
}

#footer .footer-tel a {
  padding-left: 10vw;
  position: relative;
  font-size: 9vw;
  font-family: "Comfortaa", cursive;
}

#footer .footer-tel a:before {
  content: "\e801";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  color: #583b1e;
  font-family: 'icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-size: 8vw;
  line-height: 1;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-transform: none;
  text-decoration: none;
}

#footer .footer-link {
  text-align: center;
}

#footer .footer-link a {
  padding: 1vw 3vw;
  display: inline-block;
  background-color: #583b1e;
  font-size: 3.6vw;
  color: #fff;
  font-family: "Comfortaa", cursive;
}

#footer .footer-time {
  margin-top: 6vw;
  width: 100%;
}

#footer .footer-time tr {
  border-bottom: 1px dashed #583b1e;
}

#footer .footer-time tr th, #footer .footer-time tr td {
  font-size: 3.6vw;
  padding: 1vw;
}

#footer .footer-time tr th {
  text-align: left;
  width: 30vw;
  white-space: nowrap;
  letter-spacing: 0.5vw;
  font-weight: normal;
}

#footer .footer-time tr td {
  text-align: center;
}

#footer .footer-time thead th span {
  padding-left: 8vw;
  position: relative;
}

#footer .footer-time thead th span:before {
  content: "\e800";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  color: #583b1e;
  font-family: 'icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-size: 6vw;
  line-height: 1;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-transform: none;
  text-decoration: none;
}

#footer .footer-att {
  margin-top: 2vw;
  text-align: right;
  line-height: 1.4;
  font-size: 3.6vw;
}

#footer .footer-thum {
  margin-top: 10vw;
  margin-left: -4vw;
  margin-right: -4vw;
}

#footer .footer-gmap {
  margin-left: -4vw;
  margin-right: -4vw;
  height: 0;
  overflow: hidden;
  padding-bottom: 86.25%;
  position: relative;
}

#footer .footer-gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

#footer .footer-copy {
  margin-left: -4vw;
  margin-right: -4vw;
  background-color: #77bef2;
  color: #fff;
  text-align: center;
  padding: 4vw 2vw;
  font-size: 3.2vw;
}

@media only screen and (min-width: 769px) {
  #footer {
    padding-top: 100px;
  }
  #footer .footer-inner {
    margin-left: 0;
    margin-right: 0;
  }
  #footer .footer-logo {
    margin-top: -200px;
    max-width: 300px;
  }
  #footer .footer-pic, #footer .footer-address {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  #footer .footer-address {
    margin-top: 40px;
  }
  #footer .footer-tel {
    margin-top: 60px;
  }
  #footer .footer-tel a {
    padding-left: 50px;
    font-size: 5rem;
  }
  #footer .footer-tel a::before {
    font-size: 5rem;
  }
  #footer .footer-link a {
    padding: 10px 20px;
    font-size: 2rem;
  }
  #footer .footer-blk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
  #footer .footer-cont {
    -ms-flex-preferred-size: 48%;
        flex-basis: 48%;
  }
  #footer .footer-time {
    margin-top: 60px;
  }
  #footer .footer-time tr th, #footer .footer-time tr td {
    font-size: 2rem;
    padding: 10px;
  }
  #footer .footer-time tr th {
    width: 80px;
    letter-spacing: 2px;
  }
  #footer .footer-time thead th span {
    padding-left: 20px;
  }
  #footer .footer-time thead th span::before {
    font-size: 2rem;
  }
  #footer .footer-att {
    margin-top: 20px;
    font-size: 2rem;
  }
  #footer .footer-thum {
    margin-top: 100px;
    margin-left: 0;
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #footer .footer-thum > * {
    -ms-flex-preferred-size: calc(100%/3);
        flex-basis: calc(100%/3);
  }
  #footer .footer-gmap {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 36.25%;
  }
  #footer .footer-copy {
    margin-left: 0;
    margin-right: 0;
    padding: 20px 10px;
    font-size: 1.4rem;
  }
}

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #CCC;
}

.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  filter: alpha(opacity=65);
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
  filter: alpha(opacity=100);
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  filter: alpha(opacity=65);
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
  filter: alpha(opacity=100);
}

.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}

.mfp-arrow:after, .mfp-arrow .mfp-a {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}

.mfp-arrow:before, .mfp-arrow .mfp-b {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
  border-right: 17px solid #FFF;
  margin-left: 31px;
}

.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}

.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
  border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
   *   * Remove all paddings around the image on small screen */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}

.mfp-ie7 .mfp-img {
  padding: 0;
}

.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px;
}

.mfp-ie7 .mfp-container {
  padding: 0;
}

.mfp-ie7 .mfp-content {
  padding-top: 44px;
}

.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("/img/loading.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: 0;
  z-index: 1;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: 0;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  padding-bottom: 18vw;
}

@media only screen and (min-width: 769px) {
  .slick-dotted.slick-slider {
    padding-bottom: 60px;
  }
}

.slick-dots {
  position: absolute;
  bottom: 20px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 10px;
}

.slick-dots li {
  margin: 0 5px;
  display: inline-block;
  vertical-align: top;
  width: 16px;
  height: 16px;
}

.slick-dots li button {
  vertical-align: top;
  border: none;
  width: 16px;
  height: 16px;
  padding: 0;
  -webkit-transition: all .5s;
  transition: all .5s;
  background-color: #583b1e;
  border-radius: 10px;
  font-size: 0;
  cursor: pointer;
}

.slick-dots li.slick-active button {
  background-color: #b1d797;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  outline: none;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNzcy9iYXNlLmNzcyIsIl9iYXNlL19yZXNldC5zYXNzIiwiX2Jhc2UvX3dlYmZvbnQuc2FzcyIsIl9iYXNlL192YXJpYWJsZS5zYXNzIiwiX3Rvb2wvbWl4aW4vX3V0aWxpdHkuc2NzcyIsIl90b29sL19lYXNpbmcuc2NzcyIsIl9sYXlvdXQvX2hlYWRlci5zYXNzIiwiX3Rvb2wvbWl4aW4vX2ljb24uc2NzcyIsIl9sYXlvdXQvX2NvbnRlbnRzLnNhc3MiLCJfbGF5b3V0L19mb290ZXIuc2FzcyIsIl9wbHVnaW4vX21hZ25pZmljLXBvcHVwLnNhc3MiLCJfcGx1Z2luL19zbGljay10aGVtZS5zYXNzIiwiX3BsdWdpbi9fc2xpY2suc2FzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7OzhEREM4RDtBRVU5RCw0SEFBWTtBRFJaOzs7RUFHRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0FEQ3hCOztBQ0NBO0VBQ0UsY0FBYztFQUNkLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZ0JBQWdCO0FERWxCOztBQ0FBO0VBQ0UsWUFBWTtFQUlaLGNFR3FCO0VGRnJCLGdCRVplO0VGYWYsdUNFcEI4QztFRnFCOUMsZ0JFWGU7RUZZZixxQkFBcUI7RUFDckIsOEJBQThCO0FEQWhDOztBSVNFO0VIbkJGO0lBWUksY0FBYztFREdoQjtBQUNGOztBSUhFO0VIYkY7SUFjSSxlQUFlO0VET2pCO0FBQ0Y7O0FDTkE7RUFDRSxjQUFjO0FEU2hCOztBQ1BBO0VBQ0UsU0FBUztFQUNULFVBQVU7QURVWjs7QUNSQTtFQUNFLGVBQWU7RUFDZixtQkFBbUI7QURXckI7O0FDVEE7RUFDRSxrQkFBa0I7QURZcEI7O0FDVkE7RUFDRSxnQkFBZ0I7QURhbEI7O0FDWEE7RUFDRSx5QkFBeUI7RUFDekIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixlQUFlO0FEY2pCOztBQ1pBO0VBQ0UsZUFBZTtFQUNmLFlBQVk7RUFDWixTQUFTO0VBQ1QsbUJBQW1CO0FEZXJCOztBQ2JBO0VBQ0UsZUFBZTtBRGdCakI7O0FDZEE7RUFDRSxjRXpDcUI7RUYwQ3JCLGFBQWE7RUFDYiw2Q0FBNkM7RUFDN0MscUJBQXFCO0FEaUJ2Qjs7QUNyQkE7RUFPSSxjRS9DbUI7QUhpRXZCOztBQ3pCQTtFQVVJLGNFbERtQjtFRm1EbkIscUJBQXFCO0FEbUJ6Qjs7QUM5QkE7RUFjSSxjRXREbUI7QUgwRXZCOztBQ2xDQTtFQWlCSSxjRXpEbUI7RUYwRG5CLHFCQUFxQjtFQUNyQixvQkFBb0I7QURxQnhCOztBQ25CQTtFQUNFLGVBQWU7RUFDZixxQkFBcUI7QURzQnZCOztBQ3BCQTs7OztFQUlFLG9CQUFvQjtFQUNwQixrQkFBa0I7QUR1QnBCOztBQ3JCQTs7Ozs7Ozs7RUFRRSxpQkFBaUI7RUFDakIsc0JBQXNCO0FEd0J4Qjs7QUNqQ0E7RUFXSSxXQUFXO0FEaUNmOztBQzVDQTtFQVdJLFdBQVc7QURpQ2Y7O0FDNUNBO0VBV0ksV0FBVztBRGlDZjs7QUM1Q0E7RUFXSSxXQUFXO0FEaUNmOztBQzVDQTs7Ozs7Ozs7RUFXSSxXQUFXO0FEaUNmOztBQzVDQTs7Ozs7Ozs7RUFjSSx5QkFBeUI7QUR5QzdCOztBQ3ZDQTs7RUFFRSxpQkFBaUI7QUQwQ25COztBQ3hDQTtFQUNFLGdCQUFnQjtFQUNoQixzQkFBc0I7QUQyQ3hCOztBQ3pDQTtFQUNFLGVBQWU7QUQ0Q2pCOztBQzFDQztFQUNDLFdFcEZ1QjtFRnFGdkIseUJFcEZ3QjtBSGlJMUI7O0FDL0NDO0VBQ0MsV0VwRnVCO0VGcUZ2Qix5QkVwRndCO0FIaUkxQjs7QUMzQ0M7RUFDQyxXRXhGdUI7RUZ5RnZCLHlCRXhGd0I7QUhzSTFCOztBQzVDQTtzREQrQ3NEO0FDN0N0RDtFQUNFLGVBQWU7QUQrQ2pCOztBSWxKRTtFSHVHRTtJQUNFLHFCRTFEbUI7RUh5R3ZCO0FBQ0Y7O0FJeEpFO0VIdUdFO0lBQ0UscUJFMUR5QztFSCtHN0M7QUFDRjs7QUk5SkU7RUh1R0U7SUFDRSxzQkUxRDJEO0VIcUgvRDtBQUNGOztBRXJNQTs7OERGeU04RDtBRXRNOUQ7RUFDQyxv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QTJCO0VBQzNCLHlCQUF5QjtFQUV6QixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLHdDQUF3QztBWjRsRDFDOztBWTFsREE7RUFDRSxrQkFBa0I7RUFHbEIsY0FBYztFQUNkLFNBQVM7RUFDVCxVQUFVO0FaMmxEWjs7QVlqbURBO0VBU0ksYUFBYTtBWjRsRGpCOztBWXJtREE7RUFZSSxlQUFlO0VBQ2YsWUFBWTtBWjZsRGhCOztBWTNsREE7O0VBRUUsdUNBQXVDO0VBSXZDLCtCQUErQjtBWjhsRGpDOztBWTVsREE7RUFDRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixjQUFjO0FaK2xEaEI7O0FZbm1EQTtFQVFJLFdBQVc7RUFDWCxjQUFjO0FaK2xEbEI7O0FZeG1EQTtFQVlJLFdBQVc7QVpnbURmOztBWTlsREU7RUFDRSxrQkFBa0I7QVppbUR0Qjs7QVkvbERBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixlQUFlO0VBR2YsYUFBYTtFQVdiLGFBQWE7QVpzbERmOztBQUVBO0VZaG1ESSxZQUFZO0Faa21EaEI7O0FZM21EQTtFQVlJLGNBQWM7QVptbURsQjs7QVkvbURBO0VBZUksYUFBYTtBWm9tRGpCOztBWW5uREE7RUFvQkksb0JBQW9CO0FabW1EeEI7O0FZam1ERTtFQUNFLGNBQWM7QVpvbURsQjs7QVlsbURFO0VBQ0Usa0JBQWtCO0FacW1EdEI7O0FZbm1ERTtFQUNFLGNBQWM7RUFDZCxZQUFZO0VBQ1osNkJBQTZCO0Fac21EakM7O0FZcG1EQTtFQUNFLGFBQWE7QVp1bURmIiwiZmlsZSI6ImNzcy9iYXNlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcdOODquOCu+ODg+ODiFxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q29tZm9ydGFhOndnaHRANDAwOzYwMCZmYW1pbHk9Tm90bytTYW5zK0pQOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXBcIik7XG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgZm9udC1zaXplOiA2Mi41JTtcbn1cblxuYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICM1ODNiMWU7XG4gIGZvbnQtc2l6ZTogMy44dnc7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2FucyBKUFwiLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS44O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjhweCkge1xuICBib2R5IHtcbiAgICBmb250LXNpemU6IDR2dztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIG1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keSwgZGl2LCBkbCwgZHQsIGRkLCB1bCwgb2wsIGxpLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwcmUsIGNvZGUsIGZvcm0sIGZpZWxkc2V0LCBsZWdlbmQsIGlucHV0LCB0ZXh0YXJlYSwgcCwgYmxvY2txdW90ZSwgdGgsIHRkLCBmaWd1cmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5saSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbnRhYmxlLCBpZnJhbWUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnN2ZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuYSB7XG4gIGNvbG9yOiAjNTgzYjFlO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTp2aXNpdGVkIHtcbiAgY29sb3I6ICM1ODNiMWU7XG59XG5cbmE6aG92ZXIge1xuICBjb2xvcjogIzU4M2IxZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOmFjdGl2ZSB7XG4gIGNvbG9yOiAjNTgzYjFlO1xufVxuXG5hLmpzLXRlbExpbmsge1xuICBjb2xvcjogIzU4M2IxZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuYVtocmVmXj1cInRlbDpcIl0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuc2VsZWN0LFxuaW5wdXQsXG50ZXh0YXJlYSxcbmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbnRleHRhcmVhIHtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRlbFwiXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwidXJsXCJdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjYztcbn1cblxuaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlZWVlO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuc2VsZWN0IHtcbiAgcGFkZGluZzogOHB4IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxubGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjZmNmY7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNmY2Zjtcbn1cblxuLyogb25tZWRpYXF1ZXJ5Lmpz6Kit5a6a55SoXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHBjO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xuICBodG1sIHtcbiAgICBmb250LWZhbWlseTogXCJtaW5pcGNcIjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGh0bWwge1xuICAgIGZvbnQtZmFtaWx5OiBcInRhYmxldFwiO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY4cHgpIHtcbiAgaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IFwicGhhYmxldFwiO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcdGljb25mb250XG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJpY29uc1wiO1xuICBzcmM6IHVybChcIi9mb250L2ZvbnRlbGxvLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvZm9udC9mb250ZWxsby53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcdGdvb2dsZWZvbnRcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogbm90b1NhbnNKUC9Db21mb3J0YWEgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICog4pag5L2/55So5L6LXG4gKiDjgJDlvJXmlbDjgarjgZfjgJFcbiAqIOODh+ODleOCqeODq+ODiOOBryRrZXnjgatlYXNl44GM5YWl44KK44G+44GZ44CCXG4gKiAuZWxlbWVudHMge1xuICogXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZSgpO1xuICogfVxuICog44CQ5byV5pWw44GC44KK44CRXG4gKiAuZWxlbWVudHMge1xuICogXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZShJbkN1YmljKTtcbiAqIH1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx044OY44OD44OA44O8XG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xufVxuXG4jaGVhZGVyLmlzLW1vdW50ZWQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jaGVhZGVyIC5oZWFkZXItd3JhcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmJkNTE7XG4gIHBhZGRpbmc6IDR2dyAxOHZ3IDR2dyA0dnc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuI2hlYWRlciAuaGVhZGVyLXdyYXAgPiAqIHtcbiAgZmxleC1iYXNpczogNTAlO1xufVxuXG4jaGVhZGVyIC5oZWFkZXItYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IDR2dztcbiAgZGlzcGxheTogZmxleDtcbn1cblxuI2hlYWRlciAuaGVhZGVyLWJ0biBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlcjogMnB4IHNvbGlkICM1ODNiMWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkgYTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMTBweCAxMHB4O1xuICB6LWluZGV4OiAxO1xufVxuXG4jaGVhZGVyIC5oZWFkZXItYnRuIGxpIGEgc3BhbiB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMy42dnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIHRleHQtYWxpZ24tbGFzdDoganVzdGlmeTtcbiAgdGV4dC1qdXN0aWZ5OiBpbnRlci1jaGFyYWN0ZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtd2ViIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTVjZmViO1xuICBwYWRkaW5nOiAxdncgMnZ3O1xufVxuXG4jaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLXdlYiBhOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM1ODNiMWUgdHJhbnNwYXJlbnQ7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCB7XG4gIG1hcmdpbi1sZWZ0OiAydnc7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuI2hlYWRlciAuaGVhZGVyLWJ0biBsaS5pcy1tYWlsIGE6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmYmQ1MSB0cmFuc3BhcmVudDtcbn1cblxuI2hlYWRlciAuaGVhZGVyLWJ0biBsaS5pcy1tYWlsIGEgc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZzogLjV2dyAydnc7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCBhIHNwYW46bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZzogLjV2dyAydncgLjV2dyA5dnc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4M2IxZTtcbiAgY29sb3I6ICNmZmJkNTE7XG59XG5cbiNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCBhIHNwYW46bGFzdC1vZi10eXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlODA0XCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjR2dztcbiAgbGVmdDogMi41dnc7XG4gIGNvbG9yOiAjZmZiZDUxO1xuICBmb250LWZhbWlseTogJ2ljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiA1dnc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBzcGVhazogbm9uZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2hlYWRlciAuaGVhZGVyLXdyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDE1cHggOTBweCAxNXB4IDMwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWxvZ28ge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBmbGV4LWJhc2lzOiAyNzBweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWJ0biBsaSBhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICB9XG4gICNoZWFkZXIgLmhlYWRlci1idG4gbGkgYSBiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpIGEgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWJ0biBsaSBhLmlzLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgzYjFlO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gICNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtd2ViIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLXdlYiBhIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLXdlYiBhIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMi4wcmVtO1xuICB9XG4gICNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgZmxleC1iYXNpczogMTIwcHg7XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWJ0biBsaS5pcy1tYWlsIGEgc3BhbiB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLW1haWwgYSBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICB9XG4gICNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCBhIHNwYW46bGFzdC1vZi10eXBlIHtcbiAgICBwYWRkaW5nOiA1cHggMjBweCA1cHggNDBweDtcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLW1haWwgYSBzcGFuOmxhc3Qtb2YtdHlwZTo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgIGxlZnQ6IDIwcHg7XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyLWJ0biBsaS5pcy1tYWlsIGEuaXMtaG92ZXI6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmIHRyYW5zcGFyZW50O1xuICB9XG4gICNoZWFkZXIgLmhlYWRlci1idG4gbGkuaXMtbWFpbCBhLmlzLWhvdmVyIHNwYW46bGFzdC1vZi10eXBlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXItYnRuIGxpLmlzLW1haWwgYS5pcy1ob3ZlciBzcGFuOmxhc3Qtb2YtdHlwZTo6YmVmb3JlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg5jjg4Pjg4Djg7zjg6Hjg4vjg6Xjg7xcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2dsb2JhbE5hdiB7XG4gIGhlaWdodDogMTAwVmg7XG4gIHBhZGRpbmc6IDE2dncgNHZ3IDZ2dztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuI2dsb2JhbE5hdiB1bCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4jZ2xvYmFsTmF2IHVsIGxpICsgbGkge1xuICBtYXJnaW4tdG9wOiAzdnc7XG59XG5cbiNnbG9iYWxOYXYgdWwgbGkgYSB7XG4gIGZvbnQtc2l6ZTogNC4ydnc7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbiNnbG9iYWxOYXYgdWwgbGkgYSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkNvbWZvcnRhYVwiLCBjdXJzaXZlO1xuICBsZXR0ZXItc3BhY2luZzogMXZ3O1xuICBmb250LXNpemU6IDIuNHZ3O1xuICBvcGFjaXR5OiAuODtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiNnbG9iYWxOYXYgdWwgbGkuaXMtYnRuIHtcbiAgbWFyZ2luLXRvcDogNHZ3O1xufVxuXG4jZ2xvYmFsTmF2IHVsIGxpLmlzLWJ0biBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODNiMWU7XG4gIGNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDdweCAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG59XG5cbiNnbG9iYWxOYXYgdWwgbGkuaXMtYnRuLmlzLWhvdmVyIHtcbiAgb3BhY2l0eTogLjg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2dsb2JhbE5hdiB7XG4gICAgcGFkZGluZzogOTBweCAyMHB4IDIwcHg7XG4gIH1cbiAgI2dsb2JhbE5hdiB1bCB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDgwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgI2dsb2JhbE5hdiB1bCBsaSB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG4gICNnbG9iYWxOYXYgdWwgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAjZ2xvYmFsTmF2IHVsIGxpOm50aC1vZi10eXBlKG4rMykge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbiAgI2dsb2JhbE5hdiB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgI2dsb2JhbE5hdiB1bCBsaSBhIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogNnB4O1xuICB9XG4gICNnbG9iYWxOYXYgdWwgbGkuaXMtYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG4gICNnbG9iYWxOYXYgdWwgbGkuaXMtYnRuIGEge1xuICAgIHBhZGRpbmc6IDdweCAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4jZmxvYXRpbmdNZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogNDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cblxuI2Zsb2F0aW5nTWVudS5pcy1zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGFuaW1hdGlvbjogc2hvd0Zsb2F0aW5nTWVudSAuNXMgZWFzZS1pbi1vdXQgYm90aDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx044OY44OD44OA44O844Oc44K/44OzXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNidG5NZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA0dnc7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMztcbn1cblxuI2J0bk1lbnUgcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwdnc7XG4gIGhlaWdodDogMTB2dztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzU4M2IxZTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcztcbn1cblxuI2J0bk1lbnUgcCAuaWNvTWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1MCU7XG4gIG1hcmdpbi1ib3R0b206IDAuMnZ3O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXZ3O1xuICBib3R0b206IDUwJTtcbiAgbGVmdDogNTAlO1xufVxuXG4jYnRuTWVudSBwIC5pY29NZW51SW5uZXIsXG4jYnRuTWVudSBwIC5pY29NZW51SW5uZXI6YmVmb3JlLFxuI2J0bk1lbnUgcCAuaWNvTWVudUlubmVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMHZ3O1xuICBoZWlnaHQ6IDAuNHZ3O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjNTgzYjFlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuI2J0bk1lbnUgcCAuaWNvTWVudUlubmVyOmJlZm9yZSB7XG4gIHRvcDogLTMuNnZ3O1xufVxuXG4jYnRuTWVudSBwIC5pY29NZW51SW5uZXI6YWZ0ZXIge1xuICBib3R0b206IC0zLjZ2dztcbn1cblxuI2J0bk1lbnUgcC5pcy1hY3RpdmUgLmljb01lbnVJbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jYnRuTWVudSBwLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmJlZm9yZSxcbiNidG5NZW51IHAuaXMtYWN0aXZlIC5pY29NZW51SW5uZXI6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuI2J0bk1lbnUgcC5pcy1hY3RpdmUgLmljb01lbnVJbm5lcjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbiNidG5NZW51IHAuaXMtYWN0aXZlIC5pY29NZW51SW5uZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICNidG5NZW51IHtcbiAgICByaWdodDogNDVweDtcbiAgfVxuICAjYnRuTWVudSBwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzU4M2IxZTtcbiAgfVxuICAjYnRuTWVudSBwIC5pY29NZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgYm90dG9tOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gICNidG5NZW51IHAgLmljb01lbnVJbm5lcixcbiAgI2J0bk1lbnUgcCAuaWNvTWVudUlubmVyOmJlZm9yZSxcbiAgI2J0bk1lbnUgcCAuaWNvTWVudUlubmVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiAjNTgzYjFlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB9XG4gICNidG5NZW51IHAgLmljb01lbnVJbm5lcjpiZWZvcmUge1xuICAgIHRvcDogLTE0cHg7XG4gIH1cbiAgI2J0bk1lbnUgcCAuaWNvTWVudUlubmVyOmFmdGVyIHtcbiAgICBib3R0b206IC0xNHB4O1xuICB9XG4gICNidG5NZW51IHAuaXMtYWN0aXZlIC5pY29NZW51SW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICNidG5NZW51IHAuaXMtYWN0aXZlIC5pY29NZW51SW5uZXI6YmVmb3JlLFxuICAjYnRuTWVudSBwLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cbiAgI2J0bk1lbnUgcC5pcy1hY3RpdmUgLmljb01lbnVJbm5lcjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAjYnRuTWVudSBwLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbiNidG5mbG9hdGluZ01lbnVDbG9zZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA0dnc7XG4gIHJpZ2h0OiA0dnc7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG59XG5cbiNidG5mbG9hdGluZ01lbnVDbG9zZSBwIHtcbiAgd2lkdGg6IDEwdnc7XG4gIGhlaWdodDogMTB2dztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNidG5mbG9hdGluZ01lbnVDbG9zZSBwOmJlZm9yZSwgI2J0bmZsb2F0aW5nTWVudUNsb3NlIHA6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNTAlO1xuICBib3R0b206IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAyLjh2dztcbiAgbWFyZ2luLWJvdHRvbTogMi44dnc7XG4gIG1hcmdpbi10b3A6IC0wLjJ2dztcbiAgbWFyZ2luLWJvdHRvbTogLTAuMnZ3O1xuICBtYXJnaW4tcmlnaHQ6IC01dnc7XG4gIG1hcmdpbi1sZWZ0OiAtNXZ3O1xufVxuXG4jYnRuZmxvYXRpbmdNZW51Q2xvc2UgcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwdnc7XG4gIGhlaWdodDogMC40dnc7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODNiMWU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuI2J0bmZsb2F0aW5nTWVudUNsb3NlIHA6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwdnc7XG4gIGhlaWdodDogMC40dnc7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODNiMWU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2J0bmZsb2F0aW5nTWVudUNsb3NlIHtcbiAgICB0b3A6IDIwcHg7XG4gICAgcmlnaHQ6IDQwcHg7XG4gIH1cbiAgI2J0bmZsb2F0aW5nTWVudUNsb3NlIHAge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gICNidG5mbG9hdGluZ01lbnVDbG9zZSBwOmJlZm9yZSwgI2J0bmZsb2F0aW5nTWVudUNsb3NlIHA6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIGJvdHRvbTogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAxN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICB9XG4gICNidG5mbG9hdGluZ01lbnVDbG9zZSBwOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgzYjFlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAjYnRuZmxvYXRpbmdNZW51Q2xvc2UgcDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgzYjFlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzaG93RmxvYXRpbmdNZW51IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuICAxJSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcdOWkp+aeoFxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jY29udGVudHMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg6HjgqTjg7PmnqBcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx044OV44OD44K/44O8XG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNmb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nLXRvcDogMjB2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZm9vdGVyIC5mb290ZXItaW5uZXIge1xuICBtYXJnaW4tbGVmdDogNHZ3O1xuICBtYXJnaW4tcmlnaHQ6IDR2dztcbn1cblxuI2Zvb3RlciAuZm9vdGVyLWxvZ28ge1xuICBtYXJnaW4tdG9wOiAtMzB2dztcbiAgbWF4LXdpZHRoOiA0MHZ3O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci1waWMge1xuICBtYXJnaW4tdG9wOiA2dnc7XG59XG5cbiNmb290ZXIgLmZvb3Rlci1hZGRyZXNzIHtcbiAgbWFyZ2luLXRvcDogNnZ3O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4jZm9vdGVyIC5mb290ZXItdGVsIHtcbiAgbWFyZ2luLXRvcDogNnZ3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNmb290ZXIgLmZvb3Rlci10ZWwgYSB7XG4gIHBhZGRpbmctbGVmdDogMTB2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDl2dztcbiAgZm9udC1mYW1pbHk6IFwiQ29tZm9ydGFhXCIsIGN1cnNpdmU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci10ZWwgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTgwMVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiAjNTgzYjFlO1xuICBmb250LWZhbWlseTogJ2ljb25zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiA4dnc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBzcGVhazogbm9uZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci1saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jZm9vdGVyIC5mb290ZXItbGluayBhIHtcbiAgcGFkZGluZzogMXZ3IDN2dztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgzYjFlO1xuICBmb250LXNpemU6IDMuNnZ3O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiQ29tZm9ydGFhXCIsIGN1cnNpdmU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci10aW1lIHtcbiAgbWFyZ2luLXRvcDogNnZ3O1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2Zvb3RlciAuZm9vdGVyLXRpbWUgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICM1ODNiMWU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci10aW1lIHRyIHRoLCAjZm9vdGVyIC5mb290ZXItdGltZSB0ciB0ZCB7XG4gIGZvbnQtc2l6ZTogMy42dnc7XG4gIHBhZGRpbmc6IDF2dztcbn1cblxuI2Zvb3RlciAuZm9vdGVyLXRpbWUgdHIgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMzB2dztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXZ3O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4jZm9vdGVyIC5mb290ZXItdGltZSB0ciB0ZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2Zvb3RlciAuZm9vdGVyLXRpbWUgdGhlYWQgdGggc3BhbiB7XG4gIHBhZGRpbmctbGVmdDogOHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNmb290ZXIgLmZvb3Rlci10aW1lIHRoZWFkIHRoIHNwYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU4MDBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiAwO1xuICBjb2xvcjogIzU4M2IxZTtcbiAgZm9udC1mYW1pbHk6ICdpY29ucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogNnZ3O1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3BlYWs6IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jZm9vdGVyIC5mb290ZXItYXR0IHtcbiAgbWFyZ2luLXRvcDogMnZ3O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAzLjZ2dztcbn1cblxuI2Zvb3RlciAuZm9vdGVyLXRodW0ge1xuICBtYXJnaW4tdG9wOiAxMHZ3O1xuICBtYXJnaW4tbGVmdDogLTR2dztcbiAgbWFyZ2luLXJpZ2h0OiAtNHZ3O1xufVxuXG4jZm9vdGVyIC5mb290ZXItZ21hcCB7XG4gIG1hcmdpbi1sZWZ0OiAtNHZ3O1xuICBtYXJnaW4tcmlnaHQ6IC00dnc7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDg2LjI1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZm9vdGVyIC5mb290ZXItZ21hcCBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2Zvb3RlciAuZm9vdGVyLWNvcHkge1xuICBtYXJnaW4tbGVmdDogLTR2dztcbiAgbWFyZ2luLXJpZ2h0OiAtNHZ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgzYjFlO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA0dncgMnZ3O1xuICBmb250LXNpemU6IDMuMnZ3O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICNmb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItaW5uZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogLTIwMHB4O1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLXBpYywgI2Zvb3RlciAuZm9vdGVyLWFkZHJlc3Mge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci1hZGRyZXNzIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10ZWwge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLXRlbCBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10ZWwgYTo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLWxpbmsgYSB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItYmxrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItY29udCB7XG4gICAgZmxleC1iYXNpczogNDglO1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10aW1lIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10aW1lIHRyIHRoLCAjZm9vdGVyIC5mb290ZXItdGltZSB0ciB0ZCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLXRpbWUgdHIgdGgge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLXRpbWUgdGhlYWQgdGggc3BhbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10aW1lIHRoZWFkIHRoIHNwYW46OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci1hdHQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gICNmb290ZXIgLmZvb3Rlci10aHVtIHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItdGh1bSA+ICoge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJS8zKTtcbiAgfVxuICAjZm9vdGVyIC5mb290ZXItZ21hcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAzNi4yNSU7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyLWNvcHkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbn1cblxuLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gIG9wYWNpdHk6IDAuODtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTgwKTtcbn1cblxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZnAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZnAtYWxpZ24tdG9wIC5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMTA0NTtcbn1cblxuLm1mcC1pbmxpbmUtaG9sZGVyIC5tZnAtY29udGVudCwgLm1mcC1hamF4LWhvbGRlciAubWZwLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4ubWZwLWFqYXgtY3VyIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLm1mcC16b29tLW91dC1jdXIsIC5tZnAtem9vbS1vdXQtY3VyIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgY3Vyc29yOiB6b29tLW91dDtcbn1cblxuLm1mcC16b29tIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLm1mcC1hdXRvLWN1cnNvciAubWZwLWNvbnRlbnQge1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZnAtY2xvc2UsIC5tZnAtYXJyb3csIC5tZnAtcHJlbG9hZGVyLCAubWZwLWNvdW50ZXIge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLm1mcC1sb2FkaW5nLm1mcC1maWd1cmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWZwLWhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tZnAtcHJlbG9hZGVyIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0wLjhlbTtcbiAgbGVmdDogOHB4O1xuICByaWdodDogOHB4O1xuICB6LWluZGV4OiAxMDQ0O1xufVxuXG4ubWZwLXByZWxvYWRlciBhIHtcbiAgY29sb3I6ICNDQ0M7XG59XG5cbi5tZnAtcHJlbG9hZGVyIGE6aG92ZXIge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1mcC1zLWVycm9yIC5tZnAtY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJ1dHRvbi5tZnAtY2xvc2UsIGJ1dHRvbi5tZnAtYXJyb3cge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiAxMDQ2O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLm1mcC1jbG9zZSB7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwLjY1O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjUpO1xuICBwYWRkaW5nOiAwIDAgMThweCAxMHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTtcbn1cblxuLm1mcC1jbG9zZTpob3ZlciwgLm1mcC1jbG9zZTpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG4ubWZwLWNsb3NlOmFjdGl2ZSB7XG4gIHRvcDogMXB4O1xufVxuXG4ubWZwLWNsb3NlLWJ0bi1pbiAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2UsIC5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICNGRkY7XG4gIHJpZ2h0OiAtNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1mcC1jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI0NDQztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1mcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTY1KTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTU1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA5MHB4O1xuICBoZWlnaHQ6IDExMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5tZnAtYXJyb3c6YWN0aXZlIHtcbiAgbWFyZ2luLXRvcDogLTU0cHg7XG59XG5cbi5tZnAtYXJyb3c6aG92ZXIsIC5tZnAtYXJyb3c6Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuLm1mcC1hcnJvdzpiZWZvcmUsIC5tZnAtYXJyb3c6YWZ0ZXIsIC5tZnAtYXJyb3cgLm1mcC1iLCAubWZwLWFycm93IC5tZnAtYSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIG1hcmdpbi1sZWZ0OiAzNXB4O1xuICBib3JkZXI6IG1lZGl1bSBpbnNldCB0cmFuc3BhcmVudDtcbn1cblxuLm1mcC1hcnJvdzphZnRlciwgLm1mcC1hcnJvdyAubWZwLWEge1xuICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxM3B4O1xuICB0b3A6IDhweDtcbn1cblxuLm1mcC1hcnJvdzpiZWZvcmUsIC5tZnAtYXJyb3cgLm1mcC1iIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMjFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMjFweDtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4ubWZwLWFycm93LWxlZnQge1xuICBsZWZ0OiAwO1xufVxuXG4ubWZwLWFycm93LWxlZnQ6YWZ0ZXIsIC5tZnAtYXJyb3ctbGVmdCAubWZwLWEge1xuICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDMxcHg7XG59XG5cbi5tZnAtYXJyb3ctbGVmdDpiZWZvcmUsIC5tZnAtYXJyb3ctbGVmdCAubWZwLWIge1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgYm9yZGVyLXJpZ2h0OiAyN3B4IHNvbGlkICMzRjNGM0Y7XG59XG5cbi5tZnAtYXJyb3ctcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLm1mcC1hcnJvdy1yaWdodDphZnRlciwgLm1mcC1hcnJvdy1yaWdodCAubWZwLWEge1xuICBib3JkZXItbGVmdDogMTdweCBzb2xpZCAjRkZGO1xuICBtYXJnaW4tbGVmdDogMzlweDtcbn1cblxuLm1mcC1hcnJvdy1yaWdodDpiZWZvcmUsIC5tZnAtYXJyb3ctcmlnaHQgLm1mcC1iIHtcbiAgYm9yZGVyLWxlZnQ6IDI3cHggc29saWQgIzNGM0YzRjtcbn1cblxuLm1mcC1pZnJhbWUtaG9sZGVyIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDkwMHB4O1xufVxuXG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gIHRvcDogLTQwcHg7XG59XG5cbi5tZnAtaWZyYW1lLXNjYWxlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG5cbi5tZnAtaWZyYW1lLXNjYWxlciBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4vKiBNYWluIGltYWdlIGluIHBvcHVwICovXG5pbWcubWZwLWltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogNDBweCAwIDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cbi5tZnAtZmlndXJlIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5tZnAtZmlndXJlOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0MHB4O1xuICBib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuXG4ubWZwLWZpZ3VyZSBzbWFsbCB7XG4gIGNvbG9yOiAjQkRCREJEO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbn1cblxuLm1mcC1maWd1cmUgZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubWZwLWJvdHRvbS1iYXIge1xuICBtYXJnaW4tdG9wOiAtMzZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZnAtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICNGM0YzRjM7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZy1yaWdodDogMzZweDtcbn1cblxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubWZwLWdhbGxlcnkgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1maWd1cmUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpLCBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiAzMDBweCkge1xuICAvKipcbiAgICogICAqIFJlbW92ZSBhbGwgcGFkZGluZ3MgYXJvdW5kIHRoZSBpbWFnZSBvbiBzbWFsbCBzY3JlZW4gKi9cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtaW1hZ2UtaG9sZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgaW1nLm1mcC1pbWcge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlOmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZSBzbWFsbCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtYm90dG9tLWJhciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiBhdXRvO1xuICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyOmVtcHR5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNvdW50ZXIge1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY2xvc2Uge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubWZwLWFycm93IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgfVxuICAubWZwLWFycm93LWxlZnQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICB9XG4gIC5tZnAtYXJyb3ctcmlnaHQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuICB9XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gIH1cbn1cblxuLm1mcC1pZTcgLm1mcC1pbWcge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWZwLWllNyAubWZwLWJvdHRvbS1iYXIge1xuICB3aWR0aDogNjAwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zMDBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuXG4ubWZwLWllNyAubWZwLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tZnAtaWU3IC5tZnAtY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiA0NHB4O1xufVxuXG4ubWZwLWllNyAubWZwLWNsb3NlIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi9pbWcvbG9hZGluZy5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qIEFycm93cyAqL1xuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbi5zbGljay1uZXh0OmhvdmVyLFxuLnNsaWNrLW5leHQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbi5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbi5zbGljay1uZXh0OmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSxcbi5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMjU7XG59XG5cbi5zbGljay1wcmV2OmJlZm9yZSxcbi5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbn1cblxuW2Rpcj1cInJ0bFwiXSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMjVweDtcbn1cblxuLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpBcIjtcbn1cblxuW2Rpcj1cInJ0bFwiXSAuc2xpY2stcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGklwiO1xufVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1uZXh0IHtcbiAgbGVmdDogLTI1cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGklwiO1xufVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaQXCI7XG59XG5cbi8qIERvdHMgKi9cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDE4dnc7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDIwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTBweDtcbn1cblxuLnNsaWNrLWRvdHMgbGkge1xuICBtYXJnaW46IDAgNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG59XG5cbi5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC41cztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4M2IxZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZm9udC1zaXplOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZDUxO1xufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBvdXRsaW5lOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg6rjgrvjg4Pjg4hcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgZm9udC1zaXplOiA2Mi41JTsgfVxuXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZUJhY2tncm91bmRDb2xvclxuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skcGF0aH0vYmcucG5nKVxuICAvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTAlIDBcbiAgY29sb3I6ICRiYXNlVGV4dENvbG9yO1xuICBmb250LXNpemU6ICRmb250U2l6ZU07XG4gIGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseVNhbnNTZXJpZjtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lSGVpZ2h0TTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKHBoYWJsZXQpIHtcbiAgICBmb250LXNpemU6IDR2dzsgfVxuICBAaW5jbHVkZSBtZWRpYShtaW4sIDc2OXB4KSB7XG4gICAgZm9udC1zaXplOiAyMHB4OyB9IH1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBtYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYm9keSwgZGl2LCBkbCwgZHQsIGRkLCB1bCwgb2wsIGxpLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwcmUsIGNvZGUsIGZvcm0sIGZpZWxkc2V0LCBsZWdlbmQsIGlucHV0LCB0ZXh0YXJlYSwgcCwgYmxvY2txdW90ZSwgdGgsIHRkLCBmaWd1cmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5lbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5saSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxudGFibGUsaWZyYW1lIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmEge1xuICBjb2xvcjogJGxpbmtDb2xvcjtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGxpbmtDb2xvcl92aXNpdGVkOyB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rQ29sb3JfaG92ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlua0NvbG9yX2FjdGl2ZTsgfVxuXG4gICYuanMtdGVsTGluayB7XG4gICAgY29sb3I6ICRiYXNlVGV4dENvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfSB9XG5cbmFbaHJlZl49XCJ0ZWw6XCJdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuc2VsZWN0LFxuaW5wdXQsXG50ZXh0YXJlYSxcbmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxudGV4dGFyZWEge1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2NjOyB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZWVlZTsgfSB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbnNlbGVjdCB7XG4gIHBhZGRpbmc6IDhweCA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IH1cblxubGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuIDo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICRzZWxlY3Rpb25UZXh0Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3Rpb25CZ0NvbG9yOyB9XG5cbiA6Oi1tb3otc2VsZWN0aW9uIHtcbiAgY29sb3I6ICRzZWxlY3Rpb25UZXh0Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3Rpb25CZ0NvbG9yOyB9XG5cbi8qIG9ubWVkaWFxdWVyeS5qc+ioreWumueUqFxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBwYzsgfVxuXG5AZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRNYXAge1xuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGtleTsgfSB9IH1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx0aWNvbmZvbnRcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBcImljb25zXCI7XG5cdHNyYzogdXJsKFwiL2ZvbnQvZm9udGVsbG8ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi9mb250L2ZvbnRlbGxvLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcblx0Zm9udC1kaXNwbGF5OiBibG9jazsgfVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx0Z29vZ2xlZm9udFxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBub3RvU2Fuc0pQL0NvbWZvcnRhYSAqL1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q29tZm9ydGFhOndnaHRANDAwOzYwMCZmYW1pbHk9Tm90bytTYW5zK0pQOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcbiIsIkBjaGFyc2V0ICd1dGYtOCc7XG5cbi8vIGZvbnQtZmFtaWx5XG4kZm9udEZhbWlseVNhbnNTZXJpZjogJ05vdG8gU2FucyBKUCcsIHNhbnMtc2VyaWY7XG4kZm9udEZhbWlseUNvbWZvcnRhYTogJ0NvbWZvcnRhYScsIGN1cnNpdmU7XG4kcGF0aDogJy9pbWcnO1xuXG4vLyDjg5Xjgqnjg7Pjg4jjgrXjgqTjgrpcbiRmb250U2l6ZTJTOiAzcmVtO1xuJGZvbnRTaXplUzogMy40dnc7XG4kZm9udFNpemVNOiAzLjh2dztcblxuLy8g6KGM6ZaTXG4kbGluZUhlaWdodE06IDEuODtcblxuXG4vLyDjgq3jg7zjgqvjg6njg7xcbiRrZXlDb2xvcjogIzU4M2IxZTtcblxuLy8gc2VjdGlvbiBNYXJnaW5cbiRzZWN0aW9uTWFyZ2luOiAyMHZ3O1xuJHNlY3Rpb25NYXJnaW5QQzogMjAwcHg7XG5cbi8vIOaomea6luODhuOCreOCueODiOOCq+ODqeODvFxuJGJhc2VUZXh0Q29sb3I6ICM1ODNiMWU7XG5cbi8vIOaomea6luODnOODvOODgOODvOOCq+ODqeODvFxuJGJhc2VCb3JkZXJDb2xvcjogIzU4M2IxZTtcblxuLy8g5qiZ5rqW44Ki44Kk44Kz44Oz44Kr44Op44O8XG4kYmFzZUljb25Db2xvcjogI2UwZTBlMDtcbiRpY29uQ29sb3IwMjogI2NmY2ZjZjtcblxuLy8g5qiZ5rqW44Oq44Oz44Kv44Kr44Op44O8XG4kbGlua0NvbG9yOiAkYmFzZVRleHRDb2xvcjtcbiRsaW5rQ29sb3JfdmlzaXRlZDogJGJhc2VUZXh0Q29sb3I7XG4kbGlua0NvbG9yX2hvdmVyOiAkYmFzZVRleHRDb2xvcjtcbiRsaW5rQ29sb3JfYWN0aXZlOiAkYmFzZVRleHRDb2xvcjtcblxuLy/jg4bjgq3jgrnjg4jpgbjmip7mmYLjga7jg4/jgqTjg6njgqTjg4jjgqvjg6njg7xcbiRzZWxlY3Rpb25UZXh0Q29sb3I6ICNmZmY7XG4kc2VsZWN0aW9uQmdDb2xvcjogI2ZmNmY2ZjtcblxuLy8g44Oa44O844K46IOM5pmv6ImyXG4kYmFzZUJhY2tncm91bmRDb2xvcjogI0ZERkRGRDtcblxuXG4vLyDjgrnjg4bjg7zjgr/jgrnjgqvjg6njg7xcbiRzdGF0dXNDb2xvck1hcDogKGZyb3plbjogIzAyNjJiNCwgY29vbDogIzNhNTg5YSwgbm9ybWFsOiAjOTk5KTtcblxuLy8g44Kr44OG44K044Oq44Kr44Op44O8XG4vLyAkY2F0Q29sb3JNYXA6IChcbi8vIFx0bWl4aW46IFx0XHRcdFx0IzI2YzZkYSxcbi8vIFx0bW9kdWxlOiBcdFx0XHQjYWI0N2JjLFxuLy8gXHRlbWJlZCA6IFx0XHRcdCMyNmE2OWEsXG4vLyBcdHBhZ2UgIDogXHRcdFx0I2FkMTQ1Nyxcbi8vIFx0ZWZmZWN0OiBcdFx0XHQjMzk0OWFiLFxuLy8gXHRqc1RpcHM6IFx0XHRcdCNmYjhjMDBcbi8vICk7XG5cbi8vIFNOU+OCq+ODqeODvFxuLy8gJHNuc0NvbG9yTWFwOiAoXG4vLyBcdGZhY2Vib29rICA6IFx0XHQjM2E1ODlhLFxuLy8gXHR0d2l0dGVyICAgOiBcdFx0IzAwYWFmMCxcbi8vIFx0Z29vZ2xlcGx1czogXHRcdCNkZDRiMzksXG4vLyBcdGxpbmUgICAgICA6XHRcdFx0IzAwYzMwMFxuLy8gKTtcblxuLy/jgrDjg6rjg4Pjg4noqK3lrppcbiRjb2x1bW5XaWR0aDogNzBweDtcbiRndXR0ZXJXaWR0aDogMzBweDtcbiRjb2x1bW5zOiAxMjtcbiR0b3RhbFdpZHRoOiAxMDAlO1xuXG4vLyDjg5rjg7zjgrjjga7mqKrluYVcbiRiYXNlV2lkdGg6IDExMDBweDtcbiRtYWluV2lkdGg6IDgwMHB4O1xuJG5hdldpZHRoOiAyODBweDtcbiRzcE5hdkhlaWdodDogNjBweDtcblxuLy8g44OW44Os44Kk44Kv44Od44Kk44Oz44OIXG4kYnJlYWtwb2ludE1hcDogKCdtaW5pcGMnOiAkYmFzZVdpZHRoLCAndGFibGV0JzogNzY4cHgsICdwaGFibGV0JzogNjY4cHgpO1xuXG4vLyB6LWluZGV4XG4kekluZGV4OiBjb250ZW50LGhlYWRlcixidG5NZW51LGZsb2F0aW5nTWVudSxidG5EcmF3ZXJNZW51Q2xvc2U7XG5cbi8vIOOCouOCpOOCs+ODs+ODleOCqeODs+ODiFxuJGZvbnRNYXA6IChjbG9jazonZTgwMCcsIHBob25lOidlODAxJywgZG93bi1kaXI6J2U4MDInLCByaWdodC1kaXI6J2U4MDMnLCBtYWlsOidlODA0Jyk7XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8g44Oh44OH44Kj44Ki44Kv44Ko44Oq55So44Gu44Of44OD44Kv44K544Kk44OzXHJcbi8vIEBpbmNsdWRlIG1lZGlhKHBjIG9yIHRhYmxldCBvciBwaGFibGV0IG9yIHNwIG9yIG1pbiBvciBtYXgsIOaoquW5he+8iOWIneacn+WApOOBr251bGzvvIkpO1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gY2xlYXJmaXhcclxuLy8gQGluY2x1ZGUgY2xlYXJmaXg7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyB0cmFuc2l0aW9uXHJcbi8vIEBpbmNsdWRlIHRyYW5zaXRpb24o44OX44Ot44OR44OG44KjLCDlpInljJbnp5LmlbAsIOOCpOODvOOCuOODs+OCsCwg5aSJ5YyW6ZaL5aeL56eS5pWwKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOeUu+WDj+OBq+ODnuOCpuOCueOCquODvOODkOODvOOBl+OBn+OCiemAj+aYjuW6puOCkuWkieOBiOOCi1xyXG4vLyBAaW5jbHVkZSBpbWdPcGFjaXR5KOWkieWMluOBmeOCi+enkuaVsCwg6YCP5piO5bqmKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOODmuODvOOCuOOBruW3puWPs+OBruODnuODvOOCuOODs+OCkua2iOOBmVxyXG4vLyBAaW5jbHVkZSBoaWRkZW5QYWdlR3V0dGVyKOKXj+KXj3B4KTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyDjg6Hjg4fjgqPjgqLjgq/jgqjjg6rnlKjjga7jg5/jg4Pjgq/jgrnjgqTjg7NcclxuLy8gQGluY2x1ZGUgbWVkaWEobWluaXBjIG9yIHBoYWJsZXQgb3Igc3Agb3IgbWluIG9yIG1heCwg5qiq5bmF77yI5Yid5pyf5YCk44GvbnVsbO+8iSk7XHJcbkBtaXhpbiBtZWRpYShcclxuXHQkYnJlYWtwb2ludCxcclxuXHQkd2lkdGg6IG51bGxcclxuXHQpIHtcclxuXHRAaWYgJGJyZWFrcG9pbnQgPT0gbWF4IHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoKSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBtaW4ge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkd2lkdGgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdCRicmVha3BvaW50OiBtYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCk7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8gY2xlYXJmaXhcclxuLy8gQGluY2x1ZGUgY2xlYXJmaXg7XHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcblx0JjphZnRlciB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRjbGVhcjogYm90aDtcclxuXHR9XHJcbn1cclxuXHJcbi8vIHRyYW5zaXRpb25cclxuLy8gQGluY2x1ZGUgdHJhbnNpdGlvbijjg5fjg63jg5Hjg4bjgqMsIOWkieWMluenkuaVsCwg44Kk44O844K444Oz44KwLCDlpInljJbplovlp4vnp5LmlbApO1xyXG5AbWl4aW4gdHJhbnNpdGlvbihcclxuXHQkcHJvcGVydHk6IGFsbCxcclxuXHQkZHVyYXRpb246IC4ycyxcclxuXHQkdGltaW5nICA6IGVhc2Utb3V0LFxyXG5cdCRkZWxheSAgIDogbnVsbFxyXG5cdCkge1xyXG5cdHRyYW5zaXRpb246ICRwcm9wZXJ0eSAkZHVyYXRpb24gJHRpbWluZyAkZGVsYXk7XHJcbn1cclxuXHJcbi8vIOeUu+WDj+OBq+ODnuOCpuOCueOCquODvOODkOODvOOBl+OBn+OCiemAj+aYjuW6puOCkuWkieOBiOOCi1xyXG4vLyBAaW5jbHVkZSBpbWdPcGFjaXR5O1xyXG5AbWl4aW4gaW1nT3BhY2l0eShcclxuXHQkdGltZSAgIDogLjVzLFxyXG5cdCRvcGFjaXR5OiAuN1xyXG5cdCkge1xyXG5cdGltZyB7XHJcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlLW91dDtcclxuXHR9XHJcblx0Ji5pcy1ob3ZlciB7XHJcblx0XHRpbWcge1xyXG5cdFx0XHRvcGFjaXR5OiAkb3BhY2l0eTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIOODmuODvOOCuOOBruW3puWPs+OBruODnuODvOOCuOODs+OCkua2iOOBmVxyXG4vLyBAaW5jbHVkZSBoaWRkZW5QYWdlR3V0dGVyKOKXj+KXj3B4KTtcclxuQG1peGluIGhpZGRlblBhZ2VHdXR0ZXIoJHNpemUpIHtcclxuXHRtYXJnaW4tcmlnaHQ6IC0kc2l6ZTtcclxuXHRtYXJnaW4tbGVmdDogLSRzaXplO1xyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICog4pag5L2/55So5L6LXG4gKiDjgJDlvJXmlbDjgarjgZfjgJFcbiAqIOODh+ODleOCqeODq+ODiOOBryRrZXnjgatlYXNl44GM5YWl44KK44G+44GZ44CCXG4gKiAuZWxlbWVudHMge1xuICogXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZSgpO1xuICogfVxuICog44CQ5byV5pWw44GC44KK44CRXG4gKiAuZWxlbWVudHMge1xuICogXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZShJbkN1YmljKTtcbiAqIH1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJGVhc2U6IChcblx0ZWFzZSAgICAgIDogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSksXG5cdGxpbmVhciAgICA6IGN1YmljLWJlemllcigwLCAwLCAxLCAxKSxcblx0SW4gICAgICAgIDogY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDEsIDEpLFxuXHRPdXQgICAgICAgOiBjdWJpYy1iZXppZXIoMCwgMCwgMC41OCwgMSksXG5cdEluT3V0ICAgICA6IGN1YmljLWJlemllcigwLjQyLCAwLCAwLjU4LCAxKSxcblxuXHRJblNpbmUgICAgOiBjdWJpYy1iZXppZXIoMC40NywgMCwgMC43NDUsIDAuNzE1KSxcblx0T3V0U2luZSAgIDogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSksXG5cdEluT3V0U2luZSA6IGN1YmljLWJlemllcigwLjQ0NSwgMC4wNSwgMC41NSwgMC45NSksXG5cdEluUXVhZCAgICA6IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41MyksXG5cdE91dFF1YWQgICA6IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KSxcblx0SW5PdXRRdWFkIDogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpLFxuXG5cdEluQ3ViaWMgICAgOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcblx0T3V0Q3ViaWMgICA6IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuXHRJbk91dEN1YmljIDogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuXHRJblF1YXJ0ICAgIDogY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMiksXG5cdE91dFF1YXJ0ICAgOiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpLFxuXHRJbk91dFF1YXJ0IDogY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSxcblxuXHRJblF1aW50ICAgIDogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNiksXG5cdE91dFF1aW50ICAgOiBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSksXG5cdEluT3V0UXVpbnQgOiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSksXG5cdEluRXhwbyAgICAgOiBjdWJpYy1iZXppZXIoMC45NSwgMC4wNSwgMC43OTUsIDAuMDM1KSxcblx0T3V0RXhwbyAgICA6IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSxcblx0SW5PdXRFeHBvICA6IGN1YmljLWJlemllcigxLCAwLCAwLCAxKSxcblxuXHRJbkNpcmMgICAgIDogY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuXHRPdXRDaXJjICAgIDogY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSksXG5cdEluT3V0Q2lyYyAgOiBjdWJpYy1iZXppZXIoMC43ODUsIDAuMTM1LCAwLjE1LCAwLjg2KSxcblx0SW5CYWNrICAgICA6IGN1YmljLWJlemllcigwLjYsIC0wLjI4LCAwLjczNSwgMC4wNDUpLFxuXHRPdXRCYWNrICAgIDogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpLFxuXHRJbk91dEJhY2sgIDogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSlcbik7XG5cbkBmdW5jdGlvbiBlYXNlKCRrZXk6IGVhc2UpIHtcblx0QGlmIG1hcC1oYXMta2V5KCRlYXNlLCAka2V5KSB7XG5cdFx0QHJldHVybiBtYXAtZ2V0KCRlYXNlLCAka2V5KTtcblx0fVxuXHRAcmV0dXJuIG51bGw7XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG5AaW1wb3J0IFwiLi4vX3Rvb2wvZWFzaW5nXCI7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg5jjg4Pjg4Djg7xcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwdnc7XG4gIHotaW5kZXg6IGluZGV4KCR6SW5kZXgsIGhlYWRlcik7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZShPdXRRdWFydCk7XG4gIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTBweClcbiAgLy8gb3BhY2l0eTogMFxuICAmLmlzLW1vdW50ZWQge1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKVxuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmhlYWRlci13cmFwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZDUxO1xuICAgIHBhZGRpbmc6IDR2dyAxOHZ3IDR2dyA0dnc7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlclxuICAgID4qIHtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTsgfSB9XG4gIC5oZWFkZXItYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogNHZ3O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlclxuICAgIGxpIHtcbiAgICAgIGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGtleUNvbG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMTBweCAxMHB4O1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gfSAgICAgICAgICAvLyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRrZXlDb2xvciB0cmFuc3BhcmVudFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy42dnc7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDoganVzdGlmeTtcbiAgICAgICAgICB0ZXh0LWp1c3RpZnk6IGludGVyLWNoYXJhY3RlcjtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwOyB9IH1cbiAgICAgICYuaXMtd2ViIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1Y2ZlYjtcbiAgICAgICAgICBwYWRkaW5nOiAxdncgMnZ3O1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRrZXlDb2xvciB0cmFuc3BhcmVudDsgfSB9IH1cbiAgICAgICYuaXMtbWFpbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAydnc7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmJkNTEgdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IC41dncgMnZ3OyB9XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IC41dncgMnZ3IC41dncgOXZ3O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBpY29uRm9udEFic29sdXRlKGJlZm9yZSwgbWFpbCwgMC40dncsIG51bGwsIG51bGwsIDIuNXZ3LCA1dncsICNmZmJkNTEpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5Q29sb3I7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZiZDUxOyB9IH0gfSB9IH0gfVxuICAvLyArbWVkaWEobWF4LCA0ODBweClcbiAgLy8uaGVhZGVyLWJ0blxuICAvLyAgbWFyZ2luLWxlZnQ6IDBcbiAgLy8gIHBvc2l0aW9uOiBmaXhlZFxuICAvLyAgYm90dG9tOiAwXG4gIC8vICBsZWZ0OiAwXG4gIC8vICB3aWR0aDogMTAwJVxuICAvLyAgPmxpXG4gIC8vICAgIHdpZHRoOiA1MCVcbiAgLy8gICAgYSBzcGFuXG4gIC8vICAgICAgZm9udC1zaXplOiA1LjR2d1xuICAvLyAgICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyXG4gIC8vICAgICAgYnJcbiAgLy8gICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgLy8gICAgJi5pcy13ZWIgYVxuICAvLyAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbiAgLy8gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXJcbiAgLy8gICAgJi5pcy1tYWlsIGEgc3BhblxuICAvLyAgICAgIHBhZGRpbmc6IC41dncgMnZ3IC41dncgNXZ3XG4gIC8vICAgICAgJjpsYXN0LW9mLXR5cGU6YmVmb3JlXG4gIC8vICAgICAgICB0b3A6IDEuMnZ3XG4gIC8vICAgICAgICBsZWZ0OiAxMy41dndcbiAgQGluY2x1ZGUgbWVkaWEobWluLCA3NjlweCkge1xuICAgIC5oZWFkZXItd3JhcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDE1cHggOTBweCAxNXB4IDMwcHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmhlYWRlci1sb2dvIHtcbiAgICAgIG1heC13aWR0aDogMjAwcHg7IH1cbiAgICAuaGVhZGVyLWJ0biB7XG4gICAgICAvLyBtYXgtd2lkdGg6IDIyMHB4XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIGZsZXgtYmFzaXM6IDI3MHB4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbGkge1xuICAgICAgICBhIHtcbiAgICAgICAgICAvLyBwYWRkaW5nOiAxMHB4XG4gICAgICAgICAgLy8gZm9udC1zaXplOiAxOHB4XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTsgfVxuICAgICAgICAgICYuaXMtaG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGtleUNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAgICAgICAmLmlzLXdlYiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIuMHJlbTsgfSB9IH1cbiAgICAgICAgJi5pcy1tYWlsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMjBweDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyMHB4OyB9XG4gICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMjBweCA1cHggNDBweDtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICAgICAgICAgICAgbGVmdDogMjBweDsgfSB9IH1cbiAgICAgICAgICAgICYuaXMtaG92ZXIge1xuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAgICAgICBzcGFuOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9IH0gfSB9IH0gfSB9IH0gfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg5jjg4Pjg4Djg7zjg6Hjg4vjg6Xjg7xcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2dsb2JhbE5hdiB7XG4gIGhlaWdodDogMTAwVmg7XG4gIHBhZGRpbmc6IDE2dncgNHZ3IDZ2dztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdWwge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIGxpIHtcbiAgICAgICYgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDN2dzsgfVxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC4ydnc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseUNvbWZvcnRhYTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXZ3O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi40dnc7XG4gICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH0gfVxuICAgICAgJi5pcy1idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiA0dnc7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC8vIGJvcmRlcjogMnB4IHNvbGlkICRrZXlDb2xvclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlDb2xvcjtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogN3B4IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7IH1cbiAgICAgICAgJi5pcy1ob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjg7IH0gfSB9IH1cbiAgQGluY2x1ZGUgbWVkaWEobWluLCA3NjlweCkge1xuICAgIHBhZGRpbmc6IDkwcHggMjBweCAyMHB4O1xuICAgIHVsIHtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgbGkge1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAmOm50aC1vZi10eXBlKG4rMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDZweDsgfSB9XG4gICAgICAgICYuaXMtYnRuIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogN3B4IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfSB9IH0gfSB9XG4jZmxvYXRpbmdNZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogaW5kZXgoJHpJbmRleCwgZmxvYXRpbmdNZW51KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjk1KTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICAmLmlzLXNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGFuaW1hdGlvbjogc2hvd0Zsb2F0aW5nTWVudSAuNXMgZWFzZS1pbi1vdXQgYm90aDsgfVxuICBAaW5jbHVkZSBtZWRpYShtaW4sIDc2OXB4KTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg5jjg4Pjg4Djg7zjg5zjgr/jg7NcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2J0bk1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDR2dztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiBpbmRleCgkekluZGV4LCBidG5NZW51KTtcbiAgcCB7XG4gICAgLy8gK2ljb01lbnUo5aSW5p6g44Gu5bmFLCDlpJbmnqDjga7pq5jjgZUsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg57ea44Gu5bmFLCDnt5rjga7pq5jjgZUsIOinkuS4uCwg57ea44Gu6ImyLCDnt5rjga7plpPpmpQsIOODqeODmeODq+aWh+iogCk7XG4gICAgQGluY2x1ZGUgaWNvTWVudSgxMHZ3LCAxMHZ3LCBudWxsLCBudWxsLCA1MCUsIDUwJSwgMTB2dywgLjR2dywgMCwgJGtleUNvbG9yLCAzLjZ2dywgbnVsbCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zczsgfVxuICBAaW5jbHVkZSBtZWRpYShtaW4sIDc2OXB4KSB7XG4gICAgcmlnaHQ6IDQ1cHg7XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBpY29NZW51KDQwcHgsIDQwcHgsIG51bGwsIG51bGwsIDUwJSwgNTAlLCA0MHB4LCAycHgsIDAsICRrZXlDb2xvciwgMTRweCwgbnVsbCk7IH0gfSB9XG5cbiNidG5mbG9hdGluZ01lbnVDbG9zZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA0dnc7XG4gIHJpZ2h0OiA0dnc7XG4gIC8vIGRpc3BsYXk6IG5vbmVcbiAgLy8gb3BhY2l0eTogMFxuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICB6LWluZGV4OiBpbmRleCgkekluZGV4LCBidG5mbG9hdGluZ01lbnVDbG9zZSk7XG4gIC8vICYuaXMtc2hvd1xuICAvL2Rpc3BsYXk6IGJsb2NrXG4gIC8vb3BhY2l0eTogMVxuICAvL2FuaW1hdGlvbjogZmFkZUluIC4yc1xuICBwIHtcbiAgICB3aWR0aDogMTB2dztcbiAgICBoZWlnaHQ6IDEwdnc7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8vIEBpbmNsdWRlIGljb1N5bWJvbChjcm9zcywgbnVsbCwgNTAlLCA1MCUsIG51bGwsIDQwcHgsIDFweCwgJGtleUNvbG9yKVxuICAgIEBpbmNsdWRlIGljb1N5bWJvbChjcm9zcywgNTAlLCA1MCUsIDUwJSwgNTAlLCAxMHZ3LCAuNHZ3LCAka2V5Q29sb3IpOyB9XG4gIEBpbmNsdWRlIG1lZGlhKG1pbiwgNzY5cHgpIHtcbiAgICB0b3A6IDIwcHg7XG4gICAgcmlnaHQ6IDQwcHg7XG4gICAgcCB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC8vIEBpbmNsdWRlIGljb1N5bWJvbChjcm9zcywgbnVsbCwgNTAlLCA1MCUsIG51bGwsIDQwcHgsIDFweCwgJGtleUNvbG9yKVxuICAgICAgQGluY2x1ZGUgaWNvU3ltYm9sKGNyb3NzLCA1MCUsIDUwJSwgNTAlLCA1MCUsIDQwcHgsIDJweCwgJGtleUNvbG9yKTsgfSB9IH1cblxuQGtleWZyYW1lcyBzaG93RmxvYXRpbmdNZW51IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguOTUpOyB9XG4gIDElIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ1NT44Gu44G/44Gn44Ki44Kk44Kz44Oz44KS5YaN54++44GZ44KLbWl4aW7jgafjgZnjgIJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOefouWNsO+8iD7vvIlcclxuLy8gQGluY2x1ZGUgaWNvQXJyb3coYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOWkp+OBjeOBlSwg57ea44Gu5bmFLCDoibIsIOS4ii00NWRlZyBvciDlj7M0NWRlZyBvciDkuIsxMzVkZWcgb3Ig5bemLTEzNWRlZyk7XHJcbi8vICtpY29BcnJvdyhiZWZvcmUgb3IgYWZ0ZXIsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg5aSn44GN44GVLCDnt5rjga7luYUsIOiJsiwg5LiKLTQ1ZGVnIG9yIOWPszQ1ZGVnIG9yIOS4izEzNWRlZyBvciDlt6YtMTM1ZGVnKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOS4ieinkuW9ou+8iOKWtu+8iVxyXG4vLyBAaW5jbHVkZSBpY29UcmlhbmdsZTAxKGJlZm9yZSBvciBhZnRlciwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCB0b3Agb3IgcmlnaHQgb3IgYm90dG9tIG9yIGxlZnQsIOW5hSwg6auY44GVLCDoibIpO1xyXG4vLyAraWNvVHJpYW5nbGUwMShiZWZvcmUgb3IgYWZ0ZXIsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwgdG9wIG9yIHJpZ2h0IG9yIGJvdHRvbSBvciBsZWZ0LCDluYUsIOmrmOOBlSwg6ImyKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOebtOinkuS4ieinkuW9olxyXG4vLyBAaW5jbHVkZSBpY29UcmlhbmdsZTAyKGJlZm9yZSBvciBhZnRlciwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCB0b3BMZWZ0IG9yIHRvcFJpZ2h0IG9yIGJvdHRvbUxlZnQgb3IgYm90dG9tUmlnaHQsIOW5hSwg6auY44GVLCDoibIpO1xyXG4vLyAraWNvVHJpYW5nbGUwMihiZWZvcmUgb3IgYWZ0ZXIsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwgdG9wTGVmdCBvciB0b3BSaWdodCBvciBib3R0b21MZWZ0IG9yIGJvdHRvbVJpZ2h0LCDluYUsIOmrmOOBlSwg6ImyKTtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIOS4uO+8iOKXj++8iVxyXG4vLyBAaW5jbHVkZSBpY29DaXJjbGUoYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOWkp+OBjeOBlSwg6ImyKTtcclxuLy8gK2ljb0NpcmNsZShiZWZvcmUgb3IgYWZ0ZXIsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg5aSn44GN44GVLCDoibIpO1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8g44OX44Op44K577yI77yL77yJ44CB44Oe44Kk44OK44K577yI77yN77yJ44CB44OQ44OE77yI4pyV77yJXHJcbi8vIEBpbmNsdWRlIGljb1N5bWJvbChwbHVzIG9yIG1pbnVzIG9yIGNyb3NzLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOWkp+OBjeOBlSwg57ea44Gu5bmFLCDoibIpO1xyXG4vLyAraWNvU3ltYm9sKHBsdXMgb3IgbWludXMgb3IgY3Jvc3MsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg5aSn44GN44GVLCDnt5rjga7luYUsIOiJsik7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyDjg6Hjg4vjg6Xjg7zvvIjkuInvvIlcclxuLy8gQGluY2x1ZGUgaWNvTWVudSjlpJbmnqDjga7luYUsIOWkluaeoOOBrumrmOOBlSwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCDnt5rjga7luYUsIOe3muOBrumrmOOBlSwg6KeS5Li4LCDnt5rjga7oibIsIOe3muOBrumWk+malCwg44Op44OZ44Or5paH6KiAKTtcclxuLy8gK2ljb01lbnUo5aSW5p6g44Gu5bmFLCDlpJbmnqDjga7pq5jjgZUsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg57ea44Gu5bmFLCDnt5rjga7pq5jjgZUsIOinkuS4uCwg57ea44Gu6ImyLCDnt5rjga7plpPpmpQsIOODqeODmeODq+aWh+iogCk7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyDnlLvlg4/jgafjgqLjgqTjgrPjg7PmjL/lhaVcclxuLy8gQGluY2x1ZGUgaWNvSW1hZ2UoYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOW5hSwg6auY44GVLCBcIuODkeOCuVwiKTtcclxuLy8gK2ljb0ltYWdlKGJlZm9yZSBvciBhZnRlciwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCDluYUsIOmrmOOBlSwgXCLjg5HjgrlcIik7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyDjgqLjgqTjgrPjg7Pjg5Xjgqnjg7Pjg4jjgqTjg7Pjg6njgqTjg7PphY3nva5cclxuLy8gQGluY2x1ZGUgaWNvbkZvbnRJbmxpbmUoYmVmb3JlIG9yIGFmdGVyLCDjg5Xjgqnjg7Pjg4jlkI0sIOOCteOCpOOCuiwg6ImyLCDlt6blj7Pjg57jg7zjgrjjg7MpO1xyXG4vLyAraWNvbkZvbnRJbmxpbmUoYmVmb3JlIG9yIGFmdGVyLCDjg5Xjgqnjg7Pjg4jlkI0sIOOCteOCpOOCuiwg6ImyLCDlt6blj7Pjg57jg7zjgrjjg7MpO1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8g44Ki44Kk44Kz44Oz44OV44Kp44Oz44OI57W25a++6YWN572uXHJcbi8vIEBpbmNsdWRlIGljb25Gb250QWJzb2x1dGUoYmVmb3JlIG9yIGFmdGVyLCDjg5Xjgqnjg7Pjg4jlkI0sIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg44K144Kk44K6LCDoibIpO1xyXG4vLyAraWNvbkZvbnRBYnNvbHV0ZShiZWZvcmUgb3IgYWZ0ZXIsIOODleOCqeODs+ODiOWQjSwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCDjgrXjgqTjgrosIOiJsik7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIOefouWNsO+8iD7vvIlcclxuLy8gQGluY2x1ZGUgaWNvQXJyb3coYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOWkp+OBjeOBlSwg57ea44Gu5bmFLCDoibIsIOS4ii00NWRlZyBvciDlj7M0NWRlZyBvciDkuIsxMzVkZWcgb3Ig5bemLTEzNWRlZyk7XHJcbkBtaXhpbiBpY29BcnJvdyhcclxuXHQkYmVmb3JlLW9yLWFmdGVyLFxyXG5cdCR0b3A6IG51bGwsXHJcblx0JHJpZ2h0OiBudWxsLFxyXG5cdCRib3R0b206IG51bGwsXHJcblx0JGxlZnQ6IG51bGwsXHJcblx0JGFycm93U2l6ZTogMTRweCxcclxuXHQkYXJyb3dXaWR0aDogMXB4LFxyXG5cdCRhcnJvd0NvbG9yOiAjOTk5LFxyXG5cdCRhcnJvd0RlZzogNDVkZWdcclxuXHQpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0JjojeyRiZWZvcmUtb3ItYWZ0ZXJ9IHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogJHRvcDtcclxuXHRcdHJpZ2h0OiAkcmlnaHQ7XHJcblx0XHRib3R0b206ICRib3R0b207XHJcblx0XHRsZWZ0OiAkbGVmdDtcclxuXHRcdHdpZHRoOiAkYXJyb3dTaXplO1xyXG5cdFx0aGVpZ2h0OiAkYXJyb3dTaXplO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRAaWYgJGFycm93RGVnID09IC00NWRlZyBvciAkYXJyb3dEZWcgPT0gMTM1ZGVnIHtcclxuXHRcdFx0QGlmICRyaWdodCA9PSA1MCUge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogJGFycm93U2l6ZSAvIDIgKigtMSk7XHJcblx0XHRcdH1cclxuXHRcdFx0QGlmICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6ICRhcnJvd1NpemUgLyAyICooLTEpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAaWYgJGFycm93RGVnID09IC00NWRlZyB7XHJcblx0XHRcdEBpZiAkdG9wID09IDUwJSB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogKCRhcnJvd1NpemUgLyAyKSAvMiAqKC0xKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaWYgJGJvdHRvbSA9PSA1MCUge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206ICgoJGFycm93U2l6ZSAvIDIpIC8yICsgKCRhcnJvd1NpemUgLyAyKSkgKigtMSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBpZiAkYXJyb3dEZWcgPT0gMTM1ZGVnIHtcclxuXHRcdFx0QGlmICR0b3AgPT0gNTAlIHtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAoKCRhcnJvd1NpemUgLyAyKSAvMiArICgkYXJyb3dTaXplIC8gMikpICooLTEpO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpZiAkYm90dG9tID09IDUwJSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogKCRhcnJvd1NpemUgLyAyKSAvMiAqKC0xKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QGlmICRhcnJvd0RlZyA9PSA0NWRlZyBvciAkYXJyb3dEZWcgPT0gLTEzNWRlZyB7XHJcblx0XHRcdEBpZiAkdG9wID09IDUwJSB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogJGFycm93U2l6ZSAvIDIgKigtMSk7XHJcblx0XHRcdH1cclxuXHRcdFx0QGlmICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAkYXJyb3dTaXplIC8gMiAqKC0xKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QGlmICRhcnJvd0RlZyA9PSA0NWRlZyB7XHJcblx0XHRcdEBpZiAkcmlnaHQgPT0gNTAlIHtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICgkYXJyb3dTaXplIC8gMikgLzIgLSAoJGFycm93U2l6ZSAvIDIpO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpZiAkbGVmdCA9PSA1MCUge1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAoKCRhcnJvd1NpemUgLyAyKSAvMiArICgkYXJyb3dTaXplIC8gMikpICooLTEpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAaWYgJGFycm93RGVnID09IC0xMzVkZWcge1xyXG5cdFx0XHRAaWYgJHJpZ2h0ID09IDUwJSB7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAoKCRhcnJvd1NpemUgLyAyKSAvMiArICgkYXJyb3dTaXplIC8gMikpICogKC0xKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaWYgJGxlZnQgPT0gNTAlIHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogKCRhcnJvd1NpemUgLyAyKSAvMiAtICgkYXJyb3dTaXplIC8gMik7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGJvcmRlci10b3A6IHNvbGlkICRhcnJvd1dpZHRoICRhcnJvd0NvbG9yO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBzb2xpZCAkYXJyb3dXaWR0aCAkYXJyb3dDb2xvcjtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKCRhcnJvd0RlZyk7XHJcblx0fVxyXG59XHJcblxyXG4vLyDkuInop5LlvaLvvIjilrbvvIlcclxuLy8gQGluY2x1ZGUgaWNvVHJpYW5nbGUwMShiZWZvcmUgb3IgYWZ0ZXIsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwgdG9wIG9yIHJpZ2h0IG9yIGJvdHRvbSBvciBsZWZ0LCDluYUsIOmrmOOBlSwg6ImyKTtcclxuQG1peGluIGljb1RyaWFuZ2xlMDEgKFxyXG5cdCRiZWZvcmUtb3ItYWZ0ZXIsXHJcblx0JHRvcDogbnVsbCxcclxuXHQkcmlnaHQ6IG51bGwsXHJcblx0JGJvdHRvbTogbnVsbCxcclxuXHQkbGVmdDogbnVsbCxcclxuXHQkZGlyZWN0aW9uOiBudWxsLFxyXG5cdCR3aWR0aDogNTBweCxcclxuXHQkaGVpZ2h0OiA1MHB4LFxyXG5cdCRjb2xvcjogIzk5OVxyXG5cdCkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQmOiN7JGJlZm9yZS1vci1hZnRlcn0ge1xyXG5cdFx0Y29udGVudDogXCJcIjtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0d2lkdGg6ICR3aWR0aDtcclxuXHRcdGhlaWdodDogJGhlaWdodDtcclxuXHRcdEBpZiAkdG9wID09IDUwJSBvciAkYm90dG9tID09IDUwJSBvciAkcmlnaHQgPT0gNTAlIG9yICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdH1cclxuXHRcdEBpZiAkdG9wID09IDUwJSBvciAkYm90dG9tID09IDUwJSB7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdHRvcDogJHRvcDtcclxuXHRcdFx0Ym90dG9tOiAkYm90dG9tO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRyaWdodCA9PSA1MCUgb3IgJGxlZnQgPT0gNTAlIHtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0cmlnaHQ6ICRyaWdodDtcclxuXHRcdFx0bGVmdDogJGxlZnQ7XHJcblx0XHR9XHJcblx0XHRAaWYgJGRpcmVjdGlvbiA9PSB0b3Age1xyXG5cdFx0XHRiYWNrZ3JvdW5kOlxyXG5cdFx0XHRsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCByZ2JhKDI1NSwyNTUsMjU1LDApIDUwJSwgJGNvbG9yIDUwLjUlKSBuby1yZXBlYXQgdG9wIGxlZnQvNTAlIDEwMCUsXHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gbGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwwKSA1MCUsICRjb2xvciA1MC41JSkgbm8tcmVwZWF0IHRvcCByaWdodC81MCUgMTAwJTtcclxuXHRcdH1cclxuXHRcdEBpZiAkZGlyZWN0aW9uID09IGJvdHRvbSB7XHJcblx0XHRcdGJhY2tncm91bmQ6XHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNTAlLCAkY29sb3IgNTAuNSUpIG5vLXJlcGVhdCB0b3AgbGVmdC81MCUgMTAwJSxcclxuXHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIHRvcCBsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDApIDUwJSwgJGNvbG9yIDUwLjUlKSBuby1yZXBlYXQgdG9wIHJpZ2h0LzUwJSAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOlxyXG5cdFx0XHRsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIGxlZnQsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNTAlLCAkY29sb3IgNTAuNSUpIG5vLXJlcGVhdCB0b3AgbGVmdC8xMDAlIDUwJSxcclxuXHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIHRvcCBsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDApIDUwJSwgJGNvbG9yIDUwLjUlKSBuby1yZXBlYXQgYm90dG9tIHJpZ2h0LzEwMCUgNTAlO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XHJcblx0XHRcdGJhY2tncm91bmQ6XHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNTAlLCAkY29sb3IgNTAuNSUpIG5vLXJlcGVhdCBib3R0b20gbGVmdC8xMDAlIDUwJSxcclxuXHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgcmdiYSgyNTUsMjU1LDI1NSwwKSA1MCUsICRjb2xvciA1MC41JSkgbm8tcmVwZWF0IHRvcCByaWdodC8xMDAlIDUwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIOebtOinkuS4ieinkuW9olxyXG4vLyBAaW5jbHVkZSBpY29UcmlhbmdsZTAyKGJlZm9yZSBvciBhZnRlciwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCB0b3BMZWZ0IG9yIHRvcFJpZ2h0IG9yIGJvdHRvbUxlZnQgb3IgYm90dG9tUmlnaHQsIOW5hSwg6auY44GVLCDoibIpO1xyXG5AbWl4aW4gaWNvVHJpYW5nbGUwMiAoXHJcblx0JGJlZm9yZS1vci1hZnRlcixcclxuXHQkdG9wOiBudWxsLFxyXG5cdCRyaWdodDogbnVsbCxcclxuXHQkYm90dG9tOiBudWxsLFxyXG5cdCRsZWZ0OiBudWxsLFxyXG5cdCRkaXJlY3Rpb246IG51bGwsXHJcblx0JHdpZHRoOiA1MHB4LFxyXG5cdCRoZWlnaHQ6IDUwcHgsXHJcblx0JGNvbG9yOiAjOTk5XHJcblx0KSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCY6I3skYmVmb3JlLW9yLWFmdGVyfSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6ICR0b3A7XHJcblx0XHRyaWdodDogJHJpZ2h0O1xyXG5cdFx0Ym90dG9tOiAkYm90dG9tO1xyXG5cdFx0bGVmdDogJGxlZnQ7XHJcblx0XHR3aWR0aDogJHdpZHRoO1xyXG5cdFx0aGVpZ2h0OiAkaGVpZ2h0O1xyXG5cdFx0QGlmICR0b3AgPT0gNTAlIG9yICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdH1cclxuXHRcdEBpZiAkcmlnaHQgPT0gNTAlIG9yICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHR9XHJcblx0XHRAaWYgJGRpcmVjdGlvbiA9PSB0b3BSaWdodCB7XHJcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNTAlLCAkY29sb3IgNTAuNSUpIG5vLXJlcGVhdCB0b3AgbGVmdC8xMDAlIDEwMCU7XHJcblx0XHR9XHJcblx0XHRAaWYgJGRpcmVjdGlvbiA9PSB0b3BMZWZ0IHtcclxuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCBsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDApIDUwJSwgJGNvbG9yIDUwLjUlKSBuby1yZXBlYXQgdG9wIGxlZnQvMTAwJSAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRkaXJlY3Rpb24gPT0gYm90dG9tUmlnaHQge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCByZ2JhKDI1NSwyNTUsMjU1LDApIDUwJSwgJGNvbG9yIDUwLjUlKSBuby1yZXBlYXQgdG9wIGxlZnQvMTAwJSAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRkaXJlY3Rpb24gPT0gYm90dG9tTGVmdCB7XHJcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gbGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwwKSA1MCUsICRjb2xvciA1MC41JSkgbm8tcmVwZWF0IHRvcCBsZWZ0LzEwMCUgMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIOS4uO+8iOKXj++8iVxyXG4vLyBAaW5jbHVkZSBpY29DaXJjbGUoYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOWkp+OBjeOBlSwg6ImyKTtcclxuQG1peGluIGljb0NpcmNsZShcclxuXHQkYmVmb3JlLW9yLWFmdGVyLFxyXG5cdCR0b3A6IG51bGwsXHJcblx0JHJpZ2h0OiBudWxsLFxyXG5cdCRib3R0b206IG51bGwsXHJcblx0JGxlZnQ6IG51bGwsXHJcblx0JGNpcmNsZVNpemU6IDE4cHgsXHJcblx0JGNpcmNsZUNvbG9yOiAjOTk5XHJcblx0KSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCY6I3skYmVmb3JlLW9yLWFmdGVyfSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6ICR0b3A7XHJcblx0XHRyaWdodDogJHJpZ2h0O1xyXG5cdFx0Ym90dG9tOiAkYm90dG9tO1xyXG5cdFx0bGVmdDogJGxlZnQ7XHJcblx0XHR3aWR0aDogJGNpcmNsZVNpemU7XHJcblx0XHRoZWlnaHQ6ICRjaXJjbGVTaXplO1xyXG5cdFx0QGlmICR0b3AgPT0gNTAlIG9yICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdH1cclxuXHRcdEBpZiAkcmlnaHQgPT0gNTAlIG9yICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHR9XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2lyY2xlQ29sb3I7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0fVxyXG59XHJcblxyXG4vLyDjg5fjg6njgrnvvIjvvIvvvInjgIHjg57jgqTjg4rjgrnvvIjvvI3vvInjgIHjg5Djg4TvvIjinJXvvIlcclxuLy8gQGluY2x1ZGUgaWNvU3ltYm9sKHBsdXMgb3IgbWludXMgb3IgY3Jvc3MsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg5aSn44GN44GVLCDnt5rjga7luYUsIOiJsik7XHJcbkBtaXhpbiBpY29TeW1ib2woXHJcblx0JHBsdXMtb3ItbWludXMtb3ItY3Jvc3MsXHJcblx0JHRvcDogbnVsbCxcclxuXHQkcmlnaHQ6IG51bGwsXHJcblx0JGJvdHRvbTogbnVsbCxcclxuXHQkbGVmdDogbnVsbCxcclxuXHQkc2l6ZTogNDBweCxcclxuXHQkYm9yZGVyV2lkdGg6IDVweCxcclxuXHQkY29sb3I6ICM5OTlcclxuXHQpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0JjpiZWZvcmUsXHJcblx0JjphZnRlciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6ICR0b3A7XHJcblx0XHRyaWdodDogJHJpZ2h0O1xyXG5cdFx0Ym90dG9tOiAkYm90dG9tO1xyXG5cdFx0bGVmdDogJGxlZnQ7XHJcblx0XHRAaWYgJHBsdXMtb3ItbWludXMtb3ItY3Jvc3MgPT0gcGx1cyB7XHJcblx0XHRcdG1hcmdpbi10b3A6ICgkc2l6ZSAvIDIpIC0gKCRib3JkZXJXaWR0aCAvIDIpO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAoJHNpemUgLyAyKSAtICgkYm9yZGVyV2lkdGggLyAyKTtcclxuXHRcdH1cclxuXHRcdEBpZiAkcGx1cy1vci1taW51cy1vci1jcm9zcyA9PSBjcm9zcyB7XHJcblx0XHRcdG1hcmdpbi10b3A6ICgkc2l6ZSAvIDIpIC0gKCRib3JkZXJXaWR0aCAvIDIpIC0gMjtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogKCRzaXplIC8gMikgLSAoJGJvcmRlcldpZHRoIC8gMikgLSAyO1xyXG5cdFx0fVxyXG5cdFx0QGlmICR0b3AgPT0gNTAlIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogLSgkYm9yZGVyV2lkdGggLyAyKTtcclxuXHRcdH1cclxuXHRcdEBpZiAkYm90dG9tID09IDUwJSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IC0oJGJvcmRlcldpZHRoIC8gMik7XHJcblx0XHR9XHJcblx0XHRAaWYgJHJpZ2h0ID09IDUwJSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogLSgkc2l6ZSAvIDIpO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRzaXplIC8gMik7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBpZiAkcGx1cy1vci1taW51cy1vci1jcm9zcyA9PSBtaW51cyB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHdpZHRoOiAkc2l6ZTtcclxuXHRcdFx0aGVpZ2h0OiAkYm9yZGVyV2lkdGg7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHRcdH1cclxuXHR9IEBlbHNlIHtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHdpZHRoOiAkc2l6ZTtcclxuXHRcdFx0aGVpZ2h0OiAkYm9yZGVyV2lkdGg7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHRcdFx0QGlmICRwbHVzLW9yLW1pbnVzLW9yLWNyb3NzID09IHBsdXMge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaWYgJHBsdXMtb3ItbWludXMtb3ItY3Jvc3MgPT0gY3Jvc3Mge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR3aWR0aDogJHNpemU7XHJcblx0XHRcdGhlaWdodDogJGJvcmRlcldpZHRoO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcblx0XHRcdEBpZiAkcGx1cy1vci1taW51cy1vci1jcm9zcyA9PSBjcm9zcyB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8g44Oh44OL44Ol44O877yI5LiJ77yJXHJcbi8vIEBpbmNsdWRlIGljb01lbnUo5aSW5p6g44Gu5bmFLCDlpJbmnqDjga7pq5jjgZUsIHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwg57ea44Gu5bmFLCDnt5rjga7pq5jjgZUsIOinkuS4uCwg57ea44Gu6ImyLCDnt5rjga7plpPpmpQsIOODqeODmeODq+aWh+iogCk7XHJcbkBtaXhpbiBpY29NZW51KFxyXG5cdCRvdXRlckJveFdpZHRoOiA0NHB4LFxyXG5cdCRvdXRlckJveEhlaWdodDogNDRweCxcclxuXHQkdG9wOiBudWxsLFxyXG5cdCRyaWdodDogbnVsbCxcclxuXHQkYm90dG9tOiBudWxsLFxyXG5cdCRsZWZ0OiBudWxsLFxyXG5cdCRib3JkZXJXaWR0aDogMjhweCxcclxuXHQkYm9yZGVySGVpZ2h0OiAycHgsXHJcblx0JGJvcmRlclJhZGl1czogMnB4LFxyXG5cdCRib3JkZXJDb2xvcjogI2ZmZixcclxuXHQkYm9yZGVyU3BhY2U6IDhweCxcclxuXHQkbGFiZWw6IG51bGxcclxuXHQpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6ICRvdXRlckJveFdpZHRoO1xyXG5cdGhlaWdodDogJG91dGVyQm94SGVpZ2h0O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogJGJvcmRlckNvbG9yO1xyXG5cdC5pY29NZW51IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdEBpZiAkdG9wID09IDUwJSB7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAkYm9yZGVySGVpZ2h0IC8yICooLTEpO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0Ym90dG9tOiA1MCU7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206ICRib3JkZXJIZWlnaHQgLzI7XHJcblx0XHR9XHJcblx0XHRAaWYgJHJpZ2h0ID09IDUwJSB7XHJcblx0XHRcdHJpZ2h0OiA1MCU7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogJGJvcmRlcldpZHRoIC8yO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6ICRib3JkZXJXaWR0aCAvMiAqKC0xKTtcclxuXHRcdH1cclxuXHRcdEBpZiAkdG9wICE9IDUwJSBvciAkcmlnaHQgIT0gNTAlIG9yICRib3R0b20gIT0gNTAlIG9yICRyaWdodCAhPSA1MCUge1xyXG5cdFx0XHR0b3A6ICR0b3A7XHJcblx0XHRcdHJpZ2h0OiAkcmlnaHQ7XHJcblx0XHRcdGJvdHRvbTogJGJvdHRvbTtcclxuXHRcdFx0bGVmdDogJGxlZnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5pY29NZW51SW5uZXIsXHJcblx0Lmljb01lbnVJbm5lcjpiZWZvcmUsXHJcblx0Lmljb01lbnVJbm5lcjphZnRlciB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0d2lkdGg6ICRib3JkZXJXaWR0aDtcclxuXHRcdGhlaWdodDogJGJvcmRlckhlaWdodDtcclxuXHRcdGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYm9yZGVyQ29sb3I7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHR9XHJcblx0Lmljb01lbnVJbm5lcjpiZWZvcmUge1xyXG5cdFx0dG9wOiAkYm9yZGVyU3BhY2UgKiAtMTtcclxuXHR9XHJcblx0Lmljb01lbnVJbm5lcjphZnRlciB7XHJcblx0XHRib3R0b206ICRib3JkZXJTcGFjZSAqIC0xO1xyXG5cdH1cclxuXHRAaWYgJGxhYmVsIHtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDogJGxhYmVsO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQvLyDjgq/jg6rjg4Pjgq/jgZfjgZ/mmYLjgavinJXjgavlpInmm7RcclxuXHQmLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuXHQmLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmJlZm9yZSxcclxuXHQmLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmFmdGVyIHtcclxuXHRcdHRvcDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdC8vIGNvbG9yOiAjZmZmO1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHR9XHJcblx0Ji5pcy1hY3RpdmUgLmljb01lbnVJbm5lcjpiZWZvcmUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdH1cclxuXHQmLmlzLWFjdGl2ZSAuaWNvTWVudUlubmVyOmFmdGVyIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0fVxyXG59XHJcblxyXG4vLyDnlLvlg4/jgafjgqLjgqTjgrPjg7PmjL/lhaVcclxuLy8gQGluY2x1ZGUgaWNvSW1hZ2UoYmVmb3JlIG9yIGFmdGVyLCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIOW5hSwg6auY44GVLCBcIuODkeOCuVwiKTtcclxuQG1peGluIGljb0ltYWdlKFxyXG5cdCRiZWZvcmUtb3ItYWZ0ZXIsXHJcblx0JHRvcDogbnVsbCxcclxuXHQkcmlnaHQ6IG51bGwsXHJcblx0JGJvdHRvbTogbnVsbCxcclxuXHQkbGVmdDogbnVsbCxcclxuXHQkaW1nU2l6ZVc6IG51bGwsXHJcblx0JGltZ1NpemVIOiBudWxsLFxyXG5cdCRpbWdQYXRoOiBudWxsXHJcblx0KSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCY6I3skYmVmb3JlLW9yLWFmdGVyfSB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6ICR0b3A7XHJcblx0XHRyaWdodDogJHJpZ2h0O1xyXG5cdFx0Ym90dG9tOiAkYm90dG9tO1xyXG5cdFx0bGVmdDogJGxlZnQ7XHJcblx0XHR3aWR0aDogJGltZ1NpemVXO1xyXG5cdFx0aGVpZ2h0OiAkaW1nU2l6ZUg7XHJcblx0XHRAaWYgJHRvcCA9PSA1MCUge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAtKCRpbWdTaXplSCAvIDIpO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogLSgkaW1nU2l6ZUggLyAyKTtcclxuXHRcdH1cclxuXHRcdEBpZiAkcmlnaHQgPT0gNTAlIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAtKCRpbWdTaXplVyAvIDIpO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAtKCRpbWdTaXplVyAvIDIpO1xyXG5cdFx0fVxyXG5cdFx0YmFja2dyb3VuZDogdXJsKCRpbWdQYXRoKSBuby1yZXBlYXQgMCAwO1xyXG5cdFx0YmFja2dyb3VuZC1zaXplOiAkaW1nU2l6ZVcgJGltZ1NpemVIO1xyXG5cdH1cclxufVxyXG5cclxuLy8g44Ki44Kk44Kz44Oz44OV44Kp44Oz44OI44Kk44Oz44Op44Kk44Oz6YWN572uXHJcbi8vIEBpbmNsdWRlIGljb25Gb250SW5saW5lKGJlZm9yZSBvciBhZnRlciwg44OV44Kp44Oz44OI5ZCNLCDjgrXjgqTjgrosIOiJsiwg5bem5Y+z44Oe44O844K444OzKTtcclxuQG1peGluIGljb25Gb250SW5saW5lKFxyXG5cdCRiZWZvcmUtb3ItYWZ0ZXIsXHJcblx0JGZvbnROYW1lLFxyXG5cdCRmb250U2l6ZTogbnVsbCxcclxuXHQkY29sb3I6IG51bGwsXHJcblx0JGhvcml6b250YWxNYXJnaW46IDRweFxyXG5cdCkge1xyXG5cdCY6I3skYmVmb3JlLW9yLWFmdGVyfSB7XHJcblx0XHQvLyBjb250ZW50OiBtYXAtZ2V0KCRmb250TWFwLCAkZm9udE5hbWUpO1xyXG5cdFx0Y29udGVudDogdW5xdW90ZSgnXFxcIlxcXFwnKSArIHVucXVvdGUobWFwLWdldCgkZm9udE1hcCwgJGZvbnROYW1lKSkgKyB1bnF1b3RlKCdcXFwiJyk7XHJcblx0XHRAaWYgJGJlZm9yZS1vci1hZnRlciA9PSBiZWZvcmUge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6ICRob3Jpem9udGFsTWFyZ2luO1xyXG5cdFx0fVxyXG5cdFx0QGlmICRiZWZvcmUtb3ItYWZ0ZXIgPT0gYWZ0ZXIge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogJGhvcml6b250YWxNYXJnaW47XHJcblx0XHR9XHJcblx0XHRjb2xvcjogJGNvbG9yO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdpY29ucyc7XHJcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0XHRmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRmb250LXNpemU6ICRmb250U2l6ZTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0c3BlYWs6IG5vbmU7XHJcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0fVxyXG59XHJcblxyXG4vLyDjgqLjgqTjgrPjg7Pjg5Xjgqnjg7Pjg4jntbblr77phY3nva5cclxuLy8gQGluY2x1ZGUgaWNvbkZvbnRBYnNvbHV0ZShiZWZvcmUgb3IgYWZ0ZXIsIOODleOCqeODs+ODiOWQjSwgdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCDjgrXjgqTjgrosIOiJsik7XHJcbkBtaXhpbiBpY29uRm9udEFic29sdXRlKFxyXG5cdCRiZWZvcmUtb3ItYWZ0ZXIsXHJcblx0JGZvbnROYW1lLFxyXG5cdCR0b3A6IG51bGwsXHJcblx0JHJpZ2h0OiBudWxsLFxyXG5cdCRib3R0b206IG51bGwsXHJcblx0JGxlZnQ6IG51bGwsXHJcblx0JGZvbnRTaXplOiBudWxsLFxyXG5cdCRjb2xvcjogbnVsbFxyXG5cdCkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQmOiN7JGJlZm9yZS1vci1hZnRlcn0ge1xyXG5cdFx0Ly8gY29udGVudDogbWFwLWdldCgkZm9udE1hcCwgJGZvbnROYW1lKTtcclxuXHRcdGNvbnRlbnQ6IHVucXVvdGUoJ1xcXCJcXFxcJykgKyB1bnF1b3RlKG1hcC1nZXQoJGZvbnRNYXAsICRmb250TmFtZSkpICsgdW5xdW90ZSgnXFxcIicpO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0QGlmICR0b3AgPT0gNTAlIG9yICRib3R0b20gPT0gNTAlIHtcclxuXHRcdFx0QGlmICRyaWdodCA9PSA1MCUgb3IgJGxlZnQgPT0gNTAlIHtcclxuXHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0XHRcdH1cclxuXHRcdFx0QGVsc2Uge1xyXG5cdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0QGVsc2Uge1xyXG5cdFx0XHR0b3A6ICR0b3A7XHJcblx0XHRcdGJvdHRvbTogJGJvdHRvbTtcclxuXHRcdH1cclxuXHRcdEBpZiAkcmlnaHQgPT0gNTAlIG9yICRsZWZ0ID09IDUwJSB7XHJcblx0XHRcdEBpZiAkdG9wID09IDUwJSBvciAkYm90dG9tID09IDUwJSB7XHJcblx0XHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBlbHNlIHtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRAZWxzZSB7XHJcblx0XHRcdHJpZ2h0OiAkcmlnaHQ7XHJcblx0XHRcdGxlZnQ6ICRsZWZ0O1xyXG5cdFx0fVxyXG5cdFx0Y29sb3I6ICRjb2xvcjtcclxuXHRcdGZvbnQtZmFtaWx5OiAnaWNvbnMnO1xyXG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG5cdFx0Zm9udC12YXJpYW50OiBub3JtYWw7XHJcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udFNpemU7XHJcblx0XHRsaW5lLWhlaWdodDogMTtcclxuXHRcdHNwZWFrOiBub25lO1xyXG5cdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcblx0XHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcbi8vIOOCouOCpOOCs+ODs+ODleOCqeODs+ODiOWkieabtFxyXG4vLyBAaW5jbHVkZSBpY29uRm9udENoYW5nZSjjg5Xjgqnjg7Pjg4jlkI0pO1xyXG5AbWl4aW4gaWNvbkZvbnRDaGFuZ2UoXHJcblx0JGZvbnROYW1lXHJcblx0KSB7XHJcblx0XHRjb250ZW50OiB1bnF1b3RlKCdcXFwiXFxcXCcpICsgdW5xdW90ZShtYXAtZ2V0KCRmb250TWFwLCAkZm9udE5hbWUpKSArIHVucXVvdGUoJ1xcXCInKTtcclxufSIsIkBjaGFyc2V0IFwidXRmLThcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKlx05aSn5p6gXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNjb250ZW50cyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIG1lZGlhKHRhYmxldCk7XG4gIEBpbmNsdWRlIG1lZGlhKHBoYWJsZXQpOyB9XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqXHTjg6HjgqTjg7PmnqBcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI21haW4ge1xuXG4gIEBpbmNsdWRlIG1lZGlhKHRhYmxldCk7XG4gIEBpbmNsdWRlIG1lZGlhKHBoYWJsZXQpOyB9XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICpcdOODleODg+OCv+ODvFxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jZm9vdGVyIHtcbiAgLy8gbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW5cbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZy10b3A6ICRzZWN0aW9uTWFyZ2luO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5mb290ZXItaW5uZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA0dnc7XG4gICAgbWFyZ2luLXJpZ2h0OiA0dnc7IH1cbiAgLmZvb3Rlci1sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAtMzB2dztcbiAgICBtYXgtd2lkdGg6IDQwdnc7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9vdGVyLXBpYyB7XG4gICAgbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW4qLjM7IH1cbiAgLmZvb3Rlci1hZGRyZXNzIHtcbiAgICBtYXJnaW4tdG9wOiAkc2VjdGlvbk1hcmdpbiouMztcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gIC5mb290ZXItdGVsIHtcbiAgICBtYXJnaW4tdG9wOiAkc2VjdGlvbk1hcmdpbiouMztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwdnc7XG4gICAgICBAaW5jbHVkZSBpY29uRm9udEFic29sdXRlKGJlZm9yZSwgcGhvbmUsIDUwJSwgbnVsbCwgNTAlLCAwLCA4dncsICRrZXlDb2xvcik7XG4gICAgICBmb250LXNpemU6IDl2dztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseUNvbWZvcnRhYTsgfSB9XG4gIC5mb290ZXItbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGEge1xuICAgICAgcGFkZGluZzogMXZ3IDN2dztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlDb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMy42dnc7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZhbWlseUNvbWZvcnRhYTsgfSB9XG4gIC5mb290ZXItdGltZSB7XG4gICAgbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW4qLjM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gdGFibGUtbGF5b3V0OiBmaXhlZFxuICAgIHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGtleUNvbG9yO1xuICAgICAgdGgsdGQge1xuICAgICAgICBmb250LXNpemU6IDMuNnZ3O1xuICAgICAgICBwYWRkaW5nOiAxdnc7IH1cbiAgICAgIHRoIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMwdnc7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjV2dztcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgdGQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIHRoZWFkIHtcbiAgICAgIHRoIHNwYW4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDh2dztcbiAgICAgICAgQGluY2x1ZGUgaWNvbkZvbnRBYnNvbHV0ZShiZWZvcmUsIGNsb2NrLCA1MCUsIG51bGwsIDUwJSwgMCwgNnZ3LCAka2V5Q29sb3IpOyB9IH0gfVxuICAuZm9vdGVyLWF0dCB7XG4gICAgbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW4qLjE7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBmb250LXNpemU6IDMuNnZ3OyB9XG4gIC5mb290ZXItdGh1bSB7XG4gICAgbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW4qLjU7XG4gICAgbWFyZ2luLWxlZnQ6IC00dnc7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNHZ3OyB9XG4gIC5mb290ZXItZ21hcCB7XG4gICAgbWFyZ2luLWxlZnQ6IC00dnc7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNHZ3O1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiA4Ni4yNSU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGlmcmFtZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuZm9vdGVyLWNvcHkge1xuICAgIG1hcmdpbi1sZWZ0OiAtNHZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTR2dztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5Q29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDR2dyAydnc7XG4gICAgZm9udC1zaXplOiAzLjJ2dzsgfVxuICBAaW5jbHVkZSBtZWRpYShtaW4sIDc2OXB4KSB7XG4gICAgcGFkZGluZy10b3A6ICRzZWN0aW9uTWFyZ2luUEMqLjU7XG4gICAgLmZvb3Rlci1pbm5lciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5mb290ZXItbG9nbyB7XG4gICAgICBtYXJnaW4tdG9wOiAtJHNlY3Rpb25NYXJnaW5QQztcbiAgICAgIG1heC13aWR0aDogMzAwcHg7IH1cbiAgICAuZm9vdGVyLXBpYywuZm9vdGVyLWFkZHJlc3Mge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLmZvb3Rlci1hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAuZm9vdGVyLXRlbCB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2VjdGlvbk1hcmdpblBDKi4zO1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTsgfSB9IH1cbiAgICAuZm9vdGVyLWxpbmsge1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgICAuZm9vdGVyLWJsayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIC5mb290ZXItY29udCB7XG4gICAgICBmbGV4LWJhc2lzOiA0OCU7IH1cbiAgICAuZm9vdGVyLXRpbWUge1xuICAgICAgbWFyZ2luLXRvcDogJHNlY3Rpb25NYXJnaW5QQyouMztcbiAgICAgIHRyIHtcbiAgICAgICAgdGgsdGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4OyB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4OyB9IH1cbiAgICAgIHRoZWFkIHtcbiAgICAgICAgdGggc3BhbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfSB9IH1cbiAgICAuZm9vdGVyLWF0dCB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2VjdGlvbk1hcmdpblBDKi4xO1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9XG4gICAgLmZvb3Rlci10aHVtIHtcbiAgICAgIG1hcmdpbi10b3A6ICRzZWN0aW9uTWFyZ2luUEMqLjU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICA+KiB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJS8zKTsgfSB9XG4gICAgLmZvb3Rlci1nbWFwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDM2LjI1JTsgfVxuICAgIC5mb290ZXItY29weSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9IH0gfVxuIiwiLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gIG9wYWNpdHk6IDAuODtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gODApOyB9XG5cbi5tZnAtd3JhcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTA0MztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5tZnAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4ubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZnAtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMTA0NTsgfVxuXG4ubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50LCAubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1mcC1hamF4LWN1ciB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7IH1cblxuLm1mcC16b29tLW91dC1jdXIsIC5tZnAtem9vbS1vdXQtY3VyIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgY3Vyc29yOiB6b29tLW91dDsgfVxuXG4ubWZwLXpvb20ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgY3Vyc29yOiB6b29tLWluOyB9XG5cbi5tZnAtYXV0by1jdXJzb3IgLm1mcC1jb250ZW50IHtcbiAgY3Vyc29yOiBhdXRvOyB9XG5cbi5tZnAtY2xvc2UsIC5tZnAtYXJyb3csIC5tZnAtcHJlbG9hZGVyLCAubWZwLWNvdW50ZXIge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1mcC1oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5tZnAtcHJlbG9hZGVyIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0wLjhlbTtcbiAgbGVmdDogOHB4O1xuICByaWdodDogOHB4O1xuICB6LWluZGV4OiAxMDQ0OyB9XG5cbi5tZnAtcHJlbG9hZGVyIGEge1xuICBjb2xvcjogI0NDQzsgfVxuXG4ubWZwLXByZWxvYWRlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7IH1cblxuLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWZwLXMtZXJyb3IgLm1mcC1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5idXR0b24ubWZwLWNsb3NlLCBidXR0b24ubWZwLWFycm93IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTA0NjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG4ubWZwLWNsb3NlIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDAuNjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDY1KTtcbiAgcGFkZGluZzogMCAwIDE4cHggMTBweDtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7IH1cblxuLm1mcC1jbG9zZTpob3ZlciwgLm1mcC1jbG9zZTpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDEwMCk7IH1cblxuLm1mcC1jbG9zZTphY3RpdmUge1xuICB0b3A6IDFweDsgfVxuXG4ubWZwLWNsb3NlLWJ0bi1pbiAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICMzMzM7IH1cblxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSwgLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogI0ZGRjtcbiAgcmlnaHQ6IC02cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tZnAtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICNDQ0M7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLm1mcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gNjUpO1xuICBtYXJnaW46IDA7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtNTVweDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDkwcHg7XG4gIGhlaWdodDogMTEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgfVxuXG4ubWZwLWFycm93OmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IC01NHB4OyB9XG5cbi5tZnAtYXJyb3c6aG92ZXIsIC5tZnAtYXJyb3c6Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSAxMDApOyB9XG5cbi5tZnAtYXJyb3c6YmVmb3JlLCAubWZwLWFycm93OmFmdGVyLCAubWZwLWFycm93IC5tZnAtYiwgLm1mcC1hcnJvdyAubWZwLWEge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuICBtYXJnaW4tbGVmdDogMzVweDtcbiAgYm9yZGVyOiBtZWRpdW0gaW5zZXQgdHJhbnNwYXJlbnQ7IH1cblxuLm1mcC1hcnJvdzphZnRlciwgLm1mcC1hcnJvdyAubWZwLWEge1xuICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxM3B4O1xuICB0b3A6IDhweDsgfVxuXG4ubWZwLWFycm93OmJlZm9yZSwgLm1mcC1hcnJvdyAubWZwLWIge1xuICBib3JkZXItdG9wLXdpZHRoOiAyMXB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xuICBvcGFjaXR5OiAwLjc7IH1cblxuLm1mcC1hcnJvdy1sZWZ0IHtcbiAgbGVmdDogMDsgfVxuXG4ubWZwLWFycm93LWxlZnQ6YWZ0ZXIsIC5tZnAtYXJyb3ctbGVmdCAubWZwLWEge1xuICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDMxcHg7IH1cblxuLm1mcC1hcnJvdy1sZWZ0OmJlZm9yZSwgLm1mcC1hcnJvdy1sZWZ0IC5tZnAtYiB7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxuXG4ubWZwLWFycm93LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7IH1cblxuLm1mcC1hcnJvdy1yaWdodDphZnRlciwgLm1mcC1hcnJvdy1yaWdodCAubWZwLWEge1xuICBib3JkZXItbGVmdDogMTdweCBzb2xpZCAjRkZGO1xuICBtYXJnaW4tbGVmdDogMzlweDsgfVxuXG4ubWZwLWFycm93LXJpZ2h0OmJlZm9yZSwgLm1mcC1hcnJvdy1yaWdodCAubWZwLWIge1xuICBib3JkZXItbGVmdDogMjdweCBzb2xpZCAjM0YzRjNGOyB9XG5cbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuXG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDkwMHB4OyB9XG5cbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgdG9wOiAtNDBweDsgfVxuXG4ubWZwLWlmcmFtZS1zY2FsZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG5cbi5tZnAtaWZyYW1lLXNjYWxlciBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi8qIE1haW4gaW1hZ2UgaW4gcG9wdXAgKi9cbmltZy5tZnAtaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiA0MHB4IDAgNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovXG4ubWZwLWZpZ3VyZSB7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbi5tZnAtZmlndXJlOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0MHB4O1xuICBib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjNDQ0OyB9XG5cbi5tZnAtZmlndXJlIHNtYWxsIHtcbiAgY29sb3I6ICNCREJEQkQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4OyB9XG5cbi5tZnAtZmlndXJlIGZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubWZwLWJvdHRvbS1iYXIge1xuICBtYXJnaW4tdG9wOiAtMzZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IGF1dG87IH1cblxuLm1mcC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogI0YzRjNGMztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBwYWRkaW5nLXJpZ2h0OiAzNnB4OyB9XG5cbi5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ubWZwLWdhbGxlcnkgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1maWd1cmUge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XG4gIC8qKlxuICAgKiAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlbiAqL1xuICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbiAgLm1mcC1pbWctbW9iaWxlIGltZy5tZnAtaW1nIHtcbiAgICBwYWRkaW5nOiAwOyB9XG5cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlOmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwOyB9XG5cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRvcDogYXV0bztcbiAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyOmVtcHR5IHtcbiAgICBwYWRkaW5nOiAwOyB9XG5cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY291bnRlciB7XG4gICAgcmlnaHQ6IDVweDtcbiAgICB0b3A6IDNweDsgfVxuXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNsb3NlIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubWZwLWFycm93IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTsgfVxuXG4gIC5tZnAtYXJyb3ctbGVmdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7IH1cblxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJTsgfVxuXG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7IH0gfVxuXG4ubWZwLWllNyAubWZwLWltZyB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm1mcC1pZTcgLm1mcC1ib3R0b20tYmFyIHtcbiAgd2lkdGg6IDYwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzAwcHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuXG4ubWZwLWllNyAubWZwLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm1mcC1pZTcgLm1mcC1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDQ0cHg7IH1cblxuLm1mcC1pZTcgLm1mcC1jbG9zZSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwi4oaQXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwi4oaSXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCLigKJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7IH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpOyB9IH1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7IH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTsgfSB9XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stbGlzdCB7XG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiI3skcGF0aH0vbG9hZGluZy5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7IH0gfVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyB9IH1cblxuLyogQXJyb3dzICovXG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7IH0gfVxuXG4gICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOyB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogLTI1cHg7IH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjsgfSB9IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMDtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7IH0gfSB9XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMTh2dztcbiAgQGluY2x1ZGUgbWVkaWEobWluLCA3NjlweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9IH1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHB4O1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcblxuICAgIGJ1dHRvbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC41cztcbiAgICAgIC8vIGJvcmRlcjogMnB4IHNvbGlkICNmZmZcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlDb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJkNTE7IH0gfSB9XG5cbiAgLy8gbGkge1xuICAvLyBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8vIFx0aGVpZ2h0OiAxMHB4O1xuICAvLyBcdHdpZHRoOiAzMHB4O1xuICAvLyBcdG1hcmdpbjogMCA1cHg7XG4gIC8vIFx0cGFkZGluZzogMDtcbiAgLy8gXHRjdXJzb3I6IHBvaW50ZXI7XG4gIC8vIFx0YnV0dG9uIHtcbiAgLy8gXHRcdGJvcmRlcjogMDtcbiAgLy8gXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvLyBcdFx0ZGlzcGxheTogYmxvY2s7XG4gIC8vIFx0XHRoZWlnaHQ6IDIwcHg7XG4gIC8vIFx0XHR3aWR0aDogMjBweDtcbiAgLy8gXHRcdG91dGxpbmU6IG5vbmU7XG4gIC8vIFx0XHRsaW5lLWhlaWdodDogMHB4O1xuICAvLyBcdFx0Zm9udC1zaXplOiAwcHg7XG4gIC8vIFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIFx0XHRwYWRkaW5nOiA1cHg7XG4gIC8vIFx0XHRjdXJzb3I6IHBvaW50ZXI7XG4gIC8vIFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcbiAgLy8gXHRcdFx0b3V0bGluZTogbm9uZTtcbiAgLy8gXHRcdFx0JjpiZWZvcmUge1xuICAvLyBcdFx0XHRcdG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAvLyBcdFx0XHR9XG4gIC8vIFx0XHR9XG4gIC8vIFx0XHQmOmJlZm9yZSB7XG4gIC8vIFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gXHRcdFx0dG9wOiAwO1xuICAvLyBcdFx0XHRsZWZ0OiAwO1xuICAvLyBcdFx0XHRjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgLy8gXHRcdFx0d2lkdGg6IDIwcHg7XG4gIC8vIFx0XHRcdGhlaWdodDogMjBweDtcbiAgLy8gXHRcdFx0Zm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgLy8gXHRcdFx0Zm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gIC8vIFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAvLyBcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIFx0XHRcdGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAvLyBcdFx0XHRvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAvLyBcdFx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLy8gXHRcdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLy8gXHRcdH1cbiAgLy8gXHR9XG4gIC8vIFx0Ji5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gIC8vIFx0XHRjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gIC8vIFx0XHRvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAvLyBcdH1cbiB9ICAvLyB9XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuXG4gIC8vIG1hcmdpbjogMCAxMHB4O1xuICBvdXRsaW5lOiBub25lO1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICBkaXNwbGF5OiBub25lO1xuXG4gICYuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4gIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4gIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH0gfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuIl19 */
