@charset "UTF-8";
/**
 * 値が2つ以上の配列かどうか判定する関数
 * @param  {array} $_list 配列か判定したい値
 * @return {boole}        値が2つ以上の配列ならtrue
 */
/**
 * 数値をremに変換する関数です
 * @param  {Number} $target        remにしたい数値
 * @param  {Number} $threshold [1] しきい値
 * @return {Number}                数値にremが付いた数値を返します
 */
/**
 * 数値をemに変換する関数です
 * @param  {Number} $target           emにしたい数値
 * @param  {Number} $parentValue [16] しきい値
 * @return {Number}                   数値にremが付いた数値を返します
 */
/**
 * 数値をpxに変換する関数です
 * @param  {Number} $arget          pxにしたい数値
 * @param  {Number} $threshold [1]  しきい値
 * @return {Number}                 数値にpxが付いた数値を返します
 */
/**
 * line-heightが1の時と同じになるようにline-height分の差分を返す関数です
 * @param  {Number} $lineHeight lineHeightの値
 * @param  {Number} $fontSize   fontの値
 * @return {Number}             差分の数値
 */
/**
 * 深い階層のmapの値を取得して返す関数です。
 * @param  {map} $map   map本体
 * @param  {map} $keys  mapのkey
 * @return {map}        指定したmapのkey
 */
/**
 * 色をmapから取得する関数です
 * @param  {array}  $keys      配列
 * @param  {number} $_opacity  0.0 ~ 1
 * @return {map}               $colorsの任意のkey
 */
/**
 * z-indexをmapから取得する関数です
 * @param  {array} $keys  配列
 * @return {map}   $z-indexの任意のkey
 */
/**
 * fontをmapから取得する関数です
 * @param  {array} $keys  配列
 * @return {map}   $fontsの任意のkey
 */
/**
 * $breakpointsの中の数値を@mediaに入れてemにして返すmixin
 * @param  {array}  $breakpoint [sm]  $breakpointsのkeyのarray
 * @param  {string} $key        [min] min or max
 * @return {void}                     @media ($key-width) {}
 */
:root {
  --breakpoint-xs: 600;
  --breakpoint-sm: 769;
  --breakpoint-md: 900;
  --breakpoint-ml: 1040;
  --breakpoint-lg: 1200;
  --breakpoint-xl: 1366;
  --z-index-main: 1;
  --z-index-gotop: 10;
  --z-index-film: 50;
  --z-index-contact: 75;
  --z-index-gnav: 100;
  --z-index-header: 200;
  --color-primary-white: #fff;
  --color-primary-black: #000;
  --color-primary-red: #99161c;
  --color-primary-yellow: #c3a046;
  --font-family-ja-sans: Noto Sans JP, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, meiryo, ＭＳ Ｐゴシック, MS PGothic, Droid Sans, sans-serif;
}

/* stylelint-disable */

/* stylelint-enable */
/**
 * 擬似要素でアスペクト比の領域を確保するmixin
 * @param  {$_width}                   横の値
 * @param  {$_height}                  縦の値
 * @param  {$_pseudo_element} [before] 消費する疑似要素 before or after
 * @return {void}
 */
/**
 * font-weightの数値を返す関数
 * @param  {String} $weight weightのキーワード値
 * @return {Number}         weightのnumber
 */
/**
 * 親要素から飛び出すmixin
 * @param  {$_padding} false bool
 * @return {void}
 */
/*
  すべてのpadding,margin,borderをnoneに
  font-weight,font-size,font-family,letter-spacing,word-wrapを親要素から引き継ぐ
*/
* {
  padding: 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  word-wrap: inherit;
  border: none;
}

/*
  全ての要素のbox-sizingをborder-boxにする。
*/
*,
::after,
::before {
  box-sizing: border-box;
}

/*
  初期設定
  font-sizeは100%以外だとユーザビリティを損なう為100%必須
*/
html {
  overflow-x: hidden;
  line-height: 1;
  letter-spacing: 0;
  word-break: break-all;
  font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  min-height: 100vh;
  text-align: left;
}

/*
  aタグをinline要素で使うことが無いので、blockにする。
*/
a {
  display: block;
  color: inherit;
  text-decoration: none;
}

/*
  aタグをクリックできないので、aの中のobjectタグをpointer-eventsを切る
*/
a object {
  pointer-events: none;
}

img {
  width: 100%;
}

svg {
  overflow: hidden;
}

img, svg, video, canvas {
  height: auto;
}

img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  max-width: 100%;
}

ul[class],
ol[class] {
  list-style-type: none;
}

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

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

address {
  font-style: normal;
}

/*
  Formのリセット
*/
button,
input,
optgroup,
select,
textarea {
  font-size: 16px;
}

input {
  border-radius: 0;
}

button {
  cursor: pointer;
}

textarea {
  resize: vertical;
}

select::-ms-expand {
  display: none;
}

button,
select {
  text-transform: none;
}

input,
button,
select,
textarea {
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

[disabled] {
  cursor: default;
}

[hidden] {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
::before,
::after {
    transition-delay: 0s !important;
    transition-duration: 1ms !important;
    -webkit-animation-duration: 1ms !important;
            animation-duration: 1ms !important;
    -webkit-animation-delay: -1ms !important;
            animation-delay: -1ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
  }
}
[v-cloak] {
  visibility: hidden;
}

[data-whatinput=mouse] *:focus,
[data-whatinput=touch] *:focus {
  outline: none;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes burger01 {
  0% {
    transform: translateY(-10px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: rotate(45deg);
  }
}
@keyframes burger01 {
  0% {
    transform: translateY(-10px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: rotate(45deg);
  }
}
@-webkit-keyframes burger02 {
  0% {
    transform: translateY(10px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: rotate(-45deg);
  }
}
@keyframes burger02 {
  0% {
    transform: translateY(10px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: rotate(-45deg);
  }
}
body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "Droid Sans", sans-serif;
  font-weight: 400;
}

.wrapper {
  max-width: 67.5rem;
  padding: 0 1.25rem;
  margin: 0 auto;
}
@media (max-width: 48.0614em) {
  .wrapper {
    max-width: 58.75rem;
    padding: 0 1.25rem;
    margin: 0 auto;
  }
}
.wrapper--inner {
  max-width: 67.5rem;
  padding: 0 1.25rem;
  margin: 0 auto;
}

.modal-btn[date-modal-close] + .modal-bg {
  display: none;
}

.modal-btn[date-modal-open] + .modal-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
}
.modal-btn[date-modal-open] + .modal-bg .modal-close {
  position: absolute;
  top: 2.5%;
  right: 7.5vw;
  display: block;
  width: 40px;
  height: 40px;
}
@media (min-width: 48.0625em) {
  .modal-btn[date-modal-open] + .modal-bg .modal-close {
    right: 15vw;
  }
}
.modal-btn[date-modal-open] + .modal-bg .modal-close::before, .modal-btn[date-modal-open] + .modal-bg .modal-close::after {
  position: absolute;
  top: 0;
  display: block;
  width: 3px;
  height: 100%;
  content: "";
  background-color: #fff;
}
.modal-btn[date-modal-open] + .modal-bg .modal-close::before {
  left: 50%;
  transform: rotate(45deg) translateX(-50%);
}
.modal-btn[date-modal-open] + .modal-bg .modal-close::after {
  left: 50%;
  transform: rotate(-45deg) translateX(-50%);
}
.modal-btn[date-modal-open] + .modal-bg .modal-wrapper {
  position: relative;
  top: 50%;
  left: 50%;
  width: 80vw;
  height: 45vw;
  overflow: hidden;
  transform: translate(-50%, -50%);
}
@media (min-width: 48.0625em) {
  .modal-btn[date-modal-open] + .modal-bg .modal-wrapper {
    width: 70vw;
    height: 40vw;
  }
}
.modal-btn[date-modal-open] + .modal-bg .modal-wrapper .modal-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.sp-none {
  display: none;
}
@media (min-width: 48.0625em) {
  .sp-none {
    display: block;
  }
}

.pc-none {
  display: none;
}
@media (max-width: 48.0614em) {
  .pc-none {
    display: block;
  }
}

.md-none {
  display: none;
}
@media (min-width: 56.25em) {
  .md-none {
    display: block;
  }
}

.md-block {
  display: none;
}
@media (max-width: 56.2489em) {
  .md-block {
    display: block;
  }
}

.header {
  border-top: 20px solid #99161c;
  border-bottom: 1px solid #333;
}
.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 15px;
  padding-bottom: 15px;
}
.header__title {
  width: 100%;
  max-width: 265px;
}

.gotop-sp {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 28.06px;
}
@media (min-width: 48.0625em) {
  .gotop-sp {
    display: none;
  }
}
.gotop-sp__img {
  width: 100%;
}
.gotop-sp__text {
  margin-top: 3px;
  font-size: 0.625rem;
  font-weight: 600;
  color: #99161c;
  text-align: center;
}

.gotop-pc {
  display: none;
}
@media (min-width: 48.0625em) {
  .gotop-pc {
    display: block;
    font-size: 0.875rem;
    color: #99161c;
    border-bottom: 1px solid #99161c;
  }
}
.gotop-pc:hover {
  border-bottom: none;
}

.news {
  display: none;
}
@media (min-width: 48.0625em) {
  .news {
    display: block;
    padding: 10px 0;
    font-size: 0.875rem;
    color: #fff;
    background-color: #99161c;
  }
}

.description {
  margin-top: 15px;
}
@media (min-width: 48.0625em) {
  .description {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
  }
}
.description__title {
  display: flex;
  align-items: center;
}
@media (min-width: 48.0625em) {
  .description__title {
    min-width: 310px;
  }
}
.description__title-text {
  margin-left: 12px;
  font-size: 2.3125rem;
  font-weight: 600;
  color: #99161c;
}
.description__text {
  margin-top: 10px;
  font-size: 1rem;
  line-height: 1.5;
}
@media (min-width: 48.0625em) {
  .description__text {
    max-width: 540px;
    margin-left: 60px;
  }
}

.stamp {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75px;
  height: 75px;
  background-color: #c3a046;
  border-radius: 50%;
}
.stamp__text {
  font-size: 1.4375rem;
  font-weight: 600;
  color: #fff;
}

.overview {
  margin-top: 15px;
}
@media (min-width: 65em) {
  .overview {
    display: flex;
    flex-wrap: wrap;
    max-width: none;
    padding: 0;
    margin: 30px 0 0;
  }
}
.overview .video {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #000;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
}
@media (min-width: 65em) {
  .overview .video {
    width: 57.5%;
    padding: 0;
    margin: 0;
  }
}
@media (min-width: 65em) and (min-width: 65em) {
  .overview .video__inner {
    max-width: 600px;
    padding-top: 30px;
    padding-right: 40px;
    margin-top: 60px;
    margin-bottom: 60px;
    margin-left: auto;
  }
}
.overview .btn-lv1 {
  max-width: 200px;
  margin: 30px auto 0;
}
@media (min-width: 65em) {
  .overview .btn-lv1 {
    margin-top: 20px;
  }
}
.overview .modal-btn {
  position: relative;
  z-index: 1;
  margin-top: -80px;
}
.overview .des {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #99161c;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
}
@media (min-width: 65em) {
  .overview .des {
    width: 42.5%;
    padding: 0;
    margin: 0;
  }
}
@media (min-width: 65em) {
  .overview .des__inner {
    max-width: 402px;
    padding-left: 34px;
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
.overview .des__title {
  padding: 20px;
  font-size: 1.25rem;
  color: #fff;
  text-align: center;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.overview .des__text {
  margin-top: 20px;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #fff;
}
.overview .des-table {
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
  font-size: 0.875rem;
  background-color: #fff;
  border-top: 1px solid #99161c;
  border-left: 1px solid #99161c;
}
.overview .des-table__title {
  width: 25%;
  padding: 0.42em 0;
  text-align: center;
  border-right: 1px solid #99161c;
  border-bottom: 1px solid #99161c;
}
.overview .des-table__text {
  width: 75%;
  padding: 0.42em 0 0 1.35em;
  border-right: 1px solid #99161c;
  border-bottom: 1px solid #99161c;
}

.details {
  width: 100%;
  padding-bottom: 15px;
  overflow-x: scroll;
}
@media (min-width: 65em) {
  .details {
    max-width: 67.5rem;
    padding: 0 1.25rem;
    margin: 0 auto;
    overflow-x: hidden;
  }
}

.details-table {
  display: flex;
  min-width: 1080px;
  margin-top: 60px;
  font-size: 1rem;
  border-left: 2px solid #99161c;
}
@media (min-width: 65em) {
  .details-table {
    min-width: auto;
  }
}
.details-table__title {
  padding: 0.75em;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background-color: #99161c;
  border-right: 2px solid #fff;
}
.details-table__title:nth-of-type(1) {
  width: 16.8%;
}
.details-table__title:nth-of-type(2) {
  width: 14.7%;
}
.details-table__title:nth-of-type(3) {
  width: 57%;
}
.details-table__title:nth-of-type(4) {
  width: 11.5%;
  border-right: none;
}

.details-list {
  display: flex;
  flex-wrap: wrap;
  min-width: 1080px;
  font-size: 1rem;
  border-bottom: 2px solid #99161c;
  border-left: 2px solid #99161c;
}
@media (min-width: 65em) {
  .details-list {
    min-width: auto;
  }
}
.details-list__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16.8%;
  padding: 26px;
  font-weight: 600;
  border-right: 2px solid #99161c;
}
.details-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px;
  border-right: 2px solid #99161c;
}
.details-list__item:nth-of-type(1) {
  width: 14.7%;
}
.details-list__item:nth-of-type(2) {
  width: 57%;
}
.details-list__item:nth-of-type(3) {
  width: 11.5%;
}
.details-list__item .btn-lv1 {
  padding: 10px 0;
  margin-top: 0;
  font-size: 1rem;
}
.details-list__list {
  width: 100%;
  list-style: "・" !important;
}
.details-list__list-item {
  padding-left: 5px;
}
.details-list__list-item:not(:first-of-type) {
  margin-top: 6px;
}

.youtube {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.youtube::before {
  display: block;
  padding-top: 56.6666666667%;
  content: "";
}
.youtube > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.btn-lv1 {
  display: block;
  width: 100%;
  padding: 0.16em 0;
  font-size: 1.5rem;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background-color: #99161c;
  border-radius: 33px;
  transition: 0.3s;
}
.btn-lv1:hover {
  background-color: #c61b22;
}
.btn-lv1__link {
  color: #fff;
}

.picup {
  display: inline-block;
  padding: 6px 12px;
  margin-left: 10px;
  font-size: 0.625rem;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}

.seminar {
  margin-top: 60px;
}
@media (min-width: 48.0625em) {
  .seminar {
    margin-top: 120px;
  }
}
.seminar__title {
  font-size: 2.5rem;
  font-weight: 600;
  text-align: center;
}
.seminar .youtube {
  position: relative;
  margin-top: 40px;
  border: 8px solid #99161c;
  transition: 0.3s;
}
.seminar .youtube:hover {
  opacity: 0.8;
}
.seminar .youtube::after {
  position: absolute;
  display: block;
  width: 61.18px;
  height: 40.93px;
  content: "";
  background-image: url(../img/seminar/youtube-icon.png);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 48.0625em) {
  .seminar .youtube {
    max-width: 500px;
    margin: 60px auto 0;
  }
}
.seminar .details-list {
  display: flex;
  flex-direction: column;
  min-width: auto;
  margin-top: 20px;
}
@media (min-width: 65em) {
  .seminar .details-list {
    flex-direction: row;
    margin-top: 30px;
  }
}
.seminar .details-list__item {
  display: block;
  width: 100%;
  padding: 0;
}
@media (min-width: 65em) {
  .seminar .details-list__item {
    display: flex;
    flex-direction: column;
    width: 20.8%;
  }
  .seminar .details-list__item:nth-child(2) {
    width: 60%;
  }
  .seminar .details-list__item:nth-child(3) {
    width: 19.2%;
  }
}
.seminar .details-list__title {
  width: 100%;
  padding: 12px;
  color: #fff;
  background-color: #99161c;
}
.seminar .details-list__contents {
  padding: 20px;
}
@media (min-width: 65em) {
  .seminar .details-list__contents {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 24px;
  }
}
.seminar .details-list__text {
  text-align: center;
}
.seminar .details-list__text.-bold {
  font-weight: 600;
}
.seminar .details-list .btn-lv1 {
  max-width: 104px;
  margin: 20px auto 0;
}
@media (min-width: 65em) {
  .seminar .details-list .btn-lv1 {
    margin-top: 0;
  }
}
.seminar .details-list .picup {
  max-width: 96px;
  margin-top: 5px;
}
@media (min-width: 48.0625em) {
  .seminar .details-list .picup {
    margin-top: 0;
  }
}
@media (min-width: 65em) {
  .seminar .ml-none {
    display: none;
  }
}

.inquiry {
  padding: 30px 15px;
  margin-top: 80px;
  color: #fff;
  text-align: center;
  background-color: #99161c;
}
@media (min-width: 48.0625em) {
  .inquiry {
    max-width: 800px;
    margin: 120px auto 0;
  }
}
.inquiry a {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}
.inquiry p {
  padding: 10px 0 0;
  font-size: 0.9em;
  font-weight: 600;
  line-height: 2;
}
.inquiry strong {
  font-size: 1.4em;
}

.bottom-bg {
  width: 100%;
  height: 22.2vw;
  max-height: 300px;
  background-image: url(../img/seminar/footer-bg@2x.jpg);
  background-position: center;
  background-size: cover;
}
@media (min-width: 48.0625em) {
  .bottom-bg {
    margin-top: 120px;
  }
}

.convertion {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 0;
  background-color: #f5f2e9;
}
@media (min-width: 56.25em) {
  .convertion {
    padding: 18px 0;
  }
}
.convertion .wrapper {
  display: flex;
  justify-content: space-between;
}
.convertion__wrapper {
  width: 43.7%;
  text-align: center;
}
.convertion__wrapper:last-of-type {
  width: 50%;
}
@media (min-width: 56.25em) {
  .convertion__wrapper {
    display: flex;
    align-items: center;
    width: 45.7%;
  }
  .convertion__wrapper:last-of-type {
    width: 40%;
  }
}
.convertion__text {
  font-size: 0.9375rem;
  font-weight: 600;
  text-align: center;
}
.convertion__text span {
  display: none;
}
@media (min-width: 56.25em) {
  .convertion__text {
    font-size: 1.25rem;
    -moz-text-align-last: left;
         text-align-last: left;
  }
  .convertion__text span {
    display: block;
    margin-top: 4px;
    font-size: 1rem;
    font-weight: 400;
  }
}
@media (min-width: 56.25em) {
  .convertion__btn {
    width: 100%;
    max-width: 140px;
    margin-left: 60px;
  }
  .convertion__btn.-second {
    max-width: 158px;
  }
}
.convertion__btn .btn-lv1 {
  padding: 8px 0;
  margin-top: 6px;
  font-size: 0.875rem;
  background-color: #c3a046;
}
.convertion__btn .btn-lv1:hover {
  background-color: #ddb54f;
}
.convertion__btn-text {
  font-size: 0.875rem;
}

.footer {
  padding: 10px;
  text-align: center;
  background-color: #99161c;
}
.footer__copyright {
  font-size: 0.875rem;
  color: #fff;
}

.login {
  text-align: center;
}
.login__title {
  margin-top: 40px;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2;
}
@media (min-width: 48.0625em) {
  .login__title {
    margin-top: 120px;
  }
}
.login__careful {
  display: block;
  margin-top: 40px;
  font-size: 1rem;
  line-height: 1.5;
}
@media (min-width: 48.0625em) {
  .login__careful {
    max-width: 482px;
    margin: 60px auto 0;
  }
}
.login__careful.-sub {
  display: inline;
  color: #99161c;
}
.login__careful.-bold {
  display: inline;
  font-weight: 600;
}
.login__careful.-small {
  font-size: 0.875rem;
}
.login__careful.-tal {
  text-align: left;
}
@media (min-width: 48.0625em) {
  .login__careful.-tal {
    text-align: center;
  }
}
.login__careful a:hover {
  text-decoration: underline;
}
.login form {
  margin-top: 20px;
}
@media (min-width: 48.0625em) {
  .login form {
    max-width: 630px;
    margin: 60px auto 0;
  }
}
.login .flex {
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 20px;
}
@media (min-width: 48.0625em) {
  .login .flex {
    width: calc(100% - 168px);
  }
}
.login .flex span {
  display: block;
  min-width: 50px;
  margin-left: 5px;
  color: #99161c;
}
.login dl {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 48.0625em) {
  .login dl {
    align-items: center;
  }
}
.login dt {
  width: 100%;
  margin-top: 20px;
  font-size: 1rem;
  font-weight: 600;
  -moz-text-align-last: left;
       text-align-last: left;
}
@media (min-width: 48.0625em) {
  .login dt {
    width: 168px;
    margin-top: 0;
  }
}
.login dd {
  width: calc(100% - 55px);
}
.login .input {
  width: 100%;
  height: 48px;
  padding: 10px;
  border: 2px solid #99161c;
  border-radius: 4px;
}
.login .error {
  margin-top: 10px;
  color: #99161c;
}
.login .btn-lv1 {
  max-width: 200px;
  margin: 40px auto 0;
}
.login__des {
  padding: 15px 20px;
  margin-top: 20px;
  margin-bottom: 80px;
  -moz-text-align-last: left;
       text-align-last: left;
  background-color: #e0e0e0;
}
@media (min-width: 48.0625em) {
  .login__des {
    max-width: 800px;
    margin: 30px auto 120px;
  }
}
.login__des-text {
  font-size: 0.75rem;
  line-height: 2;
}

.main {
  padding-bottom: 50px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3R5bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9AZm91bmRhdGlvbnMvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL0Bmb3VuZGF0aW9ucy9fY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Njc3MvQGZvdW5kYXRpb25zL196LWluZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Njc3MvQGZvdW5kYXRpb25zL19mb250cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL0Bmb3VuZGF0aW9ucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9AZm91bmRhdGlvbnMvX2Nzc192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9AZm91bmRhdGlvbnMvX2FzcGVjdC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL0Bmb3VuZGF0aW9ucy9fZm9udHdlaWdodC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL0Bmb3VuZGF0aW9ucy9fb3ZlcmZsb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9AZm91bmRhdGlvbnMvX3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Njc3MvQGZvdW5kYXRpb25zL19hbmltYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Njc3MvQGZvdW5kYXRpb25zL19AYmFzZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL2ZyYW1lL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL3V0aWxpdHlzL19oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL0Bmb3VuZGF0aW9ucy9fcG9zaXRpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7RUFBQTtBQVNB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QTtFQUNFO0FkNFlGO0FLelZNO0VTcEROO0lBR0k7RWQ4WUY7QUFDRjs7QWMzWUE7RUFDRTtBZDhZRjtBS3ZXTTtFU3hDTjtJQUdJO0VkZ1pGO0FBQ0Y7O0FjN1lBO0VBQ0U7QWRnWkY7QUszV007RVN0Q047SUFHSTtFZGtaRjtBQUNGOztBYy9ZQTtFQUNFO0Fka1pGO0FLelhNO0VTMUJOO0lBR0k7RWRvWkY7QUFDRjs7QWV6WkE7RUFDRTtFQUNBO0FmNFpGO0FlMVpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjRaSjtBZXpaRTtFQUNFO0VBQ0E7QWYyWko7O0FldlpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWYwWkY7QUtoWk07RVVkTjtJQU1JO0VmNFpGO0FBQ0Y7QWUxWkU7RUFDRTtBZjRaSjtBZXpaRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWYyWko7O0FldlpBO0VBQ0U7QWYwWkY7QUtuYU07RVVRTjtJQUdJO0lBQ0E7SUFDQTtJQUNBO0VmNFpGO0FBQ0Y7QWUzWkU7RUFDRTtBZjZaSjs7QWV6WkE7RUFDRTtBZjRaRjtBS2xiTTtFVXFCTjtJQUdJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWY4WkY7QUFDRjs7QWUzWkE7RUFDRTtBZjhaRjtBSy9iTTtFVWdDTjtJQUdJO0lBQ0E7SUFDQTtJQUNBO0VmZ2FGO0FBQ0Y7QWU5WkU7RUFDRTtFQUNBO0FmZ2FKO0FLM2NNO0VVeUNKO0lBSUk7RWZrYUo7QUFDRjtBZWhhSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0Fma2FOO0FlOVpFO0VBQ0U7RUFDQTtFQUNBO0FmZ2FKO0FLM2RNO0VVd0RKO0lBS0k7SUFDQTtFZmthSjtBQUNGOztBZTlaQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmaWFGO0FlL1pFO0VBQ0U7RUFDQTtFQUNBO0FmaWFKOztBZTdaQTtFQUNFO0FmZ2FGO0FLcGZNO0VVbUZOO0lBR0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZmthRjtBQUNGO0FlaGFFO0VBQ0U7RUFDQTtFQUNBO0VON0lGO0VBQ0E7RUFFRTtF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SjtJQU1JO0Vmd2JKO0FBQ0Y7QWVyYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZnViSjtBS2xnQ007RVV1a0JKO0lBTUk7SUFDQTtFZnliSjtBQUNGO0FldmJJO0VBQ0U7RUFDQTtBZnliTjtBZXRiSTtFQUNFO0VBQ0E7QWZ3Yk47QWVyYkk7RUFDRTtBZnViTjtBZXBiSTtFQUNFO0Fmc2JOO0FLdGhDTTtFVStsQkY7SUFHSTtFZndiTjtBQUNGO0FlcmJJO0VBQ0U7QWZ1Yk47QWVuYkU7RUFDRTtBZnFiSjtBS2ppQ007RVUybUJKO0lBR0k7SUFDQTtFZnViSjtBQUNGO0FlcGJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZzYko7QUs3aUNNO0VVbW5CSjtJQU1JO0Vmd2JKO0FBQ0Y7QWV0Ykk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZndiTjtBZXBiRTtFQUNFO0VBQ0E7QWZzYko7QUs1akNNO0VVb29CSjtJQUlJO0Vmd2JKO0FBQ0Y7QWVyYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO09BQUE7QWZ1Yko7QUt4a0NNO0VVNG9CSjtJQU9JO0lBQ0E7RWZ5Yko7QUFDRjtBZXRiRTtFQUNFO0Fmd2JKO0FlcmJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnViSjtBZXBiRTtFQUNFO0VBQ0E7RUFDQTtBZnNiSjtBZW5iRTtFQUNFO0VBQ0E7QWZxYko7QWVsYkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7QWZvYko7QUt4bUNNO0VVK3FCSjtJQU9JO0lBQ0E7RWZzYko7QUFDRjtBZXBiSTtFQUNFO0VBQ0E7QWZzYk4sQyIsImZpbGUiOiJkaXN0L2Fzc2V0cy9jc3Mvc3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiDlgKTjgYwy44Gk5Lul5LiK44Gu6YWN5YiX44GL44Gp44GG44GL5Yik5a6a44GZ44KL6Zai5pWwXG4gKiBAcGFyYW0gIHthcnJheX0gJF9saXN0IOmFjeWIl+OBi+WIpOWumuOBl+OBn+OBhOWApFxuICogQHJldHVybiB7Ym9vbGV9ICAgICAgICDlgKTjgYwy44Gk5Lul5LiK44Gu6YWN5YiX44Gq44KJdHJ1ZVxuICovXG4vKipcbiAqIOaVsOWApOOCknJlbeOBq+WkieaPm+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7TnVtYmVyfSAkdGFyZ2V0ICAgICAgICByZW3jgavjgZfjgZ/jgYTmlbDlgKRcbiAqIEBwYXJhbSAge051bWJlcn0gJHRocmVzaG9sZCBbMV0g44GX44GN44GE5YCkXG4gKiBAcmV0dXJuIHtOdW1iZXJ9ICAgICAgICAgICAgICAgIOaVsOWApOOBq3JlbeOBjOS7mOOBhOOBn+aVsOWApOOCkui/lOOBl+OBvuOBmVxuICovXG4vKipcbiAqIOaVsOWApOOCkmVt44Gr5aSJ5o+b44GZ44KL6Zai5pWw44Gn44GZXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICR0YXJnZXQgICAgICAgICAgIGVt44Gr44GX44Gf44GE5pWw5YCkXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICRwYXJlbnRWYWx1ZSBbMTZdIOOBl+OBjeOBhOWApFxuICogQHJldHVybiB7TnVtYmVyfSAgICAgICAgICAgICAgICAgICDmlbDlgKTjgatyZW3jgYzku5jjgYTjgZ/mlbDlgKTjgpLov5TjgZfjgb7jgZlcbiAqL1xuLyoqXG4gKiDmlbDlgKTjgpJweOOBq+WkieaPm+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7TnVtYmVyfSAkYXJnZXQgICAgICAgICAgcHjjgavjgZfjgZ/jgYTmlbDlgKRcbiAqIEBwYXJhbSAge051bWJlcn0gJHRocmVzaG9sZCBbMV0gIOOBl+OBjeOBhOWApFxuICogQHJldHVybiB7TnVtYmVyfSAgICAgICAgICAgICAgICAg5pWw5YCk44GrcHjjgYzku5jjgYTjgZ/mlbDlgKTjgpLov5TjgZfjgb7jgZlcbiAqL1xuLyoqXG4gKiBsaW5lLWhlaWdodOOBjDHjga7mmYLjgajlkIzjgZjjgavjgarjgovjgojjgYbjgatsaW5lLWhlaWdodOWIhuOBruW3ruWIhuOCkui/lOOBmemWouaVsOOBp+OBmVxuICogQHBhcmFtICB7TnVtYmVyfSAkbGluZUhlaWdodCBsaW5lSGVpZ2h044Gu5YCkXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICRmb250U2l6ZSAgIGZvbnTjga7lgKRcbiAqIEByZXR1cm4ge051bWJlcn0gICAgICAgICAgICAg5beu5YiG44Gu5pWw5YCkXG4gKi9cbi8qKlxuICog5rex44GE6ZqO5bGk44GubWFw44Gu5YCk44KS5Y+W5b6X44GX44Gm6L+U44GZ6Zai5pWw44Gn44GZ44CCXG4gKiBAcGFyYW0gIHttYXB9ICRtYXAgICBtYXDmnKzkvZNcbiAqIEBwYXJhbSAge21hcH0gJGtleXMgIG1hcOOBrmtleVxuICogQHJldHVybiB7bWFwfSAgICAgICAg5oyH5a6a44GX44GfbWFw44Gua2V5XG4gKi9cbi8qKlxuICog6Imy44KSbWFw44GL44KJ5Y+W5b6X44GZ44KL6Zai5pWw44Gn44GZXG4gKiBAcGFyYW0gIHthcnJheX0gICRrZXlzICAgICAg6YWN5YiXXG4gKiBAcGFyYW0gIHtudW1iZXJ9ICRfb3BhY2l0eSAgMC4wIH4gMVxuICogQHJldHVybiB7bWFwfSAgICAgICAgICAgICAgICRjb2xvcnPjga7ku7vmhI/jga5rZXlcbiAqL1xuLyoqXG4gKiB6LWluZGV444KSbWFw44GL44KJ5Y+W5b6X44GZ44KL6Zai5pWw44Gn44GZXG4gKiBAcGFyYW0gIHthcnJheX0gJGtleXMgIOmFjeWIl1xuICogQHJldHVybiB7bWFwfSAgICR6LWluZGV444Gu5Lu75oSP44Gua2V5XG4gKi9cbi8qKlxuICogZm9udOOCkm1hcOOBi+OCieWPluW+l+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7YXJyYXl9ICRrZXlzICDphY3liJdcbiAqIEByZXR1cm4ge21hcH0gICAkZm9udHPjga7ku7vmhI/jga5rZXlcbiAqL1xuLyoqXG4gKiAkYnJlYWtwb2ludHPjga7kuK3jga7mlbDlgKTjgpJAbWVkaWHjgavlhaXjgozjgaZlbeOBq+OBl+OBpui/lOOBmW1peGluXG4gKiBAcGFyYW0gIHthcnJheX0gICRicmVha3BvaW50IFtzbV0gICRicmVha3BvaW50c+OBrmtleeOBrmFycmF5XG4gKiBAcGFyYW0gIHtzdHJpbmd9ICRrZXkgICAgICAgIFttaW5dIG1pbiBvciBtYXhcbiAqIEByZXR1cm4ge3ZvaWR9ICAgICAgICAgICAgICAgICAgICAgQG1lZGlhICgka2V5LXdpZHRoKSB7fVxuICovXG46cm9vdCB7XG4gIC0tYnJlYWtwb2ludC14czogNjAwO1xuICAtLWJyZWFrcG9pbnQtc206IDc2OTtcbiAgLS1icmVha3BvaW50LW1kOiA5MDA7XG4gIC0tYnJlYWtwb2ludC1tbDogMTA0MDtcbiAgLS1icmVha3BvaW50LWxnOiAxMjAwO1xuICAtLWJyZWFrcG9pbnQteGw6IDEzNjY7XG4gIC0tei1pbmRleC1tYWluOiAxO1xuICAtLXotaW5kZXgtZ290b3A6IDEwO1xuICAtLXotaW5kZXgtZmlsbTogNTA7XG4gIC0tei1pbmRleC1jb250YWN0OiA3NTtcbiAgLS16LWluZGV4LWduYXY6IDEwMDtcbiAgLS16LWluZGV4LWhlYWRlcjogMjAwO1xuICAtLWNvbG9yLXByaW1hcnktd2hpdGU6ICNmZmY7XG4gIC0tY29sb3ItcHJpbWFyeS1ibGFjazogIzAwMDtcbiAgLS1jb2xvci1wcmltYXJ5LXJlZDogIzk5MTYxYztcbiAgLS1jb2xvci1wcmltYXJ5LXllbGxvdzogI2MzYTA0NjtcbiAgLS1mb250LWZhbWlseS1qYS1zYW5zOiBOb3RvIFNhbnMgSlAsIOODkuODqeOCruODjuinkuOCtCBQcm9OIFczLCBIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm9OLCDjg6HjgqTjg6rjgqosIG1laXJ5bywg77yt77yzIO+8sOOCtOOCt+ODg+OCrywgTVMgUEdvdGhpYywgRHJvaWQgU2Fucywgc2Fucy1zZXJpZjtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbjpleHBvcnQge1xuICB4czogNjAwO1xuICBzbTogNzY5O1xuICBtZDogOTAwO1xuICBtbDogMTA0MDtcbiAgbGc6IDEyMDA7XG4gIHhsOiAxMzY2O1xufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4vKipcbiAqIOaTrOS8vOimgee0oOOBp+OCouOCueODmuOCr+ODiOavlOOBrumgmOWfn+OCkueiuuS/neOBmeOCi21peGluXG4gKiBAcGFyYW0gIHskX3dpZHRofSAgICAgICAgICAgICAgICAgICDmqKrjga7lgKRcbiAqIEBwYXJhbSAgeyRfaGVpZ2h0fSAgICAgICAgICAgICAgICAgIOe4puOBruWApFxuICogQHBhcmFtICB7JF9wc2V1ZG9fZWxlbWVudH0gW2JlZm9yZV0g5raI6LK744GZ44KL55aR5Ly86KaB57SgIGJlZm9yZSBvciBhZnRlclxuICogQHJldHVybiB7dm9pZH1cbiAqL1xuLyoqXG4gKiBmb250LXdlaWdodOOBruaVsOWApOOCkui/lOOBmemWouaVsFxuICogQHBhcmFtICB7U3RyaW5nfSAkd2VpZ2h0IHdlaWdodOOBruOCreODvOODr+ODvOODieWApFxuICogQHJldHVybiB7TnVtYmVyfSAgICAgICAgIHdlaWdodOOBrm51bWJlclxuICovXG4vKipcbiAqIOimquimgee0oOOBi+OCiemjm+OBs+WHuuOBmW1peGluXG4gKiBAcGFyYW0gIHskX3BhZGRpbmd9IGZhbHNlIGJvb2xcbiAqIEByZXR1cm4ge3ZvaWR9XG4gKi9cbi8qXG4gIOOBmeOBueOBpuOBrnBhZGRpbmcsbWFyZ2luLGJvcmRlcuOCkm5vbmXjgatcbiAgZm9udC13ZWlnaHQsZm9udC1zaXplLGZvbnQtZmFtaWx5LGxldHRlci1zcGFjaW5nLHdvcmQtd3JhcOOCkuimquimgee0oOOBi+OCieW8leOBjee2meOBkFxuKi9cbioge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgd29yZC13cmFwOiBpbmhlcml0O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi8qXG4gIOWFqOOBpuOBruimgee0oOOBrmJveC1zaXppbmfjgpJib3JkZXItYm9444Gr44GZ44KL44CCXG4qL1xuKixcbjo6YWZ0ZXIsXG46OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qXG4gIOWIneacn+ioreWumlxuICBmb250LXNpemXjga8xMDAl5Lul5aSW44Gg44Go44Om44O844K244OT44Oq44OG44Kj44KS5pCN44Gq44GG54K6MTAwJeW/hemgiFxuKi9cbmh0bWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qXG4gIGHjgr/jgrDjgpJpbmxpbmXopoHntKDjgafkvb/jgYbjgZPjgajjgYznhKHjgYTjga7jgafjgIFibG9ja+OBq+OBmeOCi+OAglxuKi9cbmEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLypcbiAgYeOCv+OCsOOCkuOCr+ODquODg+OCr+OBp+OBjeOBquOBhOOBruOBp+OAgWHjga7kuK3jga5vYmplY3Tjgr/jgrDjgpJwb2ludGVyLWV2ZW50c+OCkuWIh+OCi1xuKi9cbmEgb2JqZWN0IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5zdmcge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5pbWcsIHN2ZywgdmlkZW8sIGNhbnZhcyB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW1nLCBzdmcsIHZpZGVvLCBjYW52YXMsIGF1ZGlvLCBpZnJhbWUsIGVtYmVkLCBvYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG51bFtjbGFzc10sXG5vbFtjbGFzc10ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKlxuICBGb3Jt44Gu44Oq44K744OD44OIXG4qL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5pbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gIH1cbn1cblt2LWNsb2FrXSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PXRvdWNoXSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJ1cmdlcjAxIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJ1cmdlcjAyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIEpQXCIsIFwi44OS44Op44Ku44OO6KeS44K0IFByb04gVzNcIiwgXCJIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm9OXCIsIFwi44Oh44Kk44Oq44KqXCIsIG1laXJ5bywgXCLvvK3vvLMg77yw44K044K344OD44KvXCIsIFwiTVMgUEdvdGhpY1wiLCBcIkRyb2lkIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLndyYXBwZXIge1xuICBtYXgtd2lkdGg6IDY3LjVyZW07XG4gIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDguMDYxNGVtKSB7XG4gIC53cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDU4Ljc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuLndyYXBwZXItLWlubmVyIHtcbiAgbWF4LXdpZHRoOiA2Ny41cmVtO1xuICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ubW9kYWwtYnRuW2RhdGUtbW9kYWwtY2xvc2VdICsgLm1vZGFsLWJnIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vZGFsLWJ0bltkYXRlLW1vZGFsLW9wZW5dICsgLm1vZGFsLWJnIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG4ubW9kYWwtYnRuW2RhdGUtbW9kYWwtb3Blbl0gKyAubW9kYWwtYmcgLm1vZGFsLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIuNSU7XG4gIHJpZ2h0OiA3LjV2dztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5tb2RhbC1idG5bZGF0ZS1tb2RhbC1vcGVuXSArIC5tb2RhbC1iZyAubW9kYWwtY2xvc2Uge1xuICAgIHJpZ2h0OiAxNXZ3O1xuICB9XG59XG4ubW9kYWwtYnRuW2RhdGUtbW9kYWwtb3Blbl0gKyAubW9kYWwtYmcgLm1vZGFsLWNsb3NlOjpiZWZvcmUsIC5tb2RhbC1idG5bZGF0ZS1tb2RhbC1vcGVuXSArIC5tb2RhbC1iZyAubW9kYWwtY2xvc2U6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogM3B4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ubW9kYWwtYnRuW2RhdGUtbW9kYWwtb3Blbl0gKyAubW9kYWwtYmcgLm1vZGFsLWNsb3NlOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVYKC01MCUpO1xufVxuLm1vZGFsLWJ0bltkYXRlLW1vZGFsLW9wZW5dICsgLm1vZGFsLWJnIC5tb2RhbC1jbG9zZTo6YWZ0ZXIge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi5tb2RhbC1idG5bZGF0ZS1tb2RhbC1vcGVuXSArIC5tb2RhbC1iZyAubW9kYWwtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDgwdnc7XG4gIGhlaWdodDogNDV2dztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5tb2RhbC1idG5bZGF0ZS1tb2RhbC1vcGVuXSArIC5tb2RhbC1iZyAubW9kYWwtd3JhcHBlciB7XG4gICAgd2lkdGg6IDcwdnc7XG4gICAgaGVpZ2h0OiA0MHZ3O1xuICB9XG59XG4ubW9kYWwtYnRuW2RhdGUtbW9kYWwtb3Blbl0gKyAubW9kYWwtYmcgLm1vZGFsLXdyYXBwZXIgLm1vZGFsLWl0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLW5vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuc3Atbm9uZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBjLW5vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjA2MTRlbSkge1xuICAucGMtbm9uZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm1kLW5vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU2LjI1ZW0pIHtcbiAgLm1kLW5vbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5tZC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTYuMjQ4OWVtKSB7XG4gIC5tZC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmhlYWRlciB7XG4gIGJvcmRlci10b3A6IDIwcHggc29saWQgIzk5MTYxYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7XG59XG4uaGVhZGVyX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuLmhlYWRlcl9fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyNjVweDtcbn1cblxuLmdvdG9wLXNwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAyOC4wNnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ290b3Atc3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5nb3RvcC1zcF9faW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ290b3Atc3BfX3RleHQge1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjOTkxNjFjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nb3RvcC1wYyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5nb3RvcC1wYyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzk5MTYxYztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5MTYxYztcbiAgfVxufVxuLmdvdG9wLXBjOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm5ld3Mge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAubmV3cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5MTYxYztcbiAgfVxufVxuXG4uZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuLmRlc2NyaXB0aW9uX190aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5kZXNjcmlwdGlvbl9fdGl0bGUge1xuICAgIG1pbi13aWR0aDogMzEwcHg7XG4gIH1cbn1cbi5kZXNjcmlwdGlvbl9fdGl0bGUtdGV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICBmb250LXNpemU6IDIuMzEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM5OTE2MWM7XG59XG4uZGVzY3JpcHRpb25fX3RleHQge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5kZXNjcmlwdGlvbl9fdGV4dCB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgfVxufVxuXG4uc3RhbXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDc1cHg7XG4gIGhlaWdodDogNzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzYTA0NjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLnN0YW1wX190ZXh0IHtcbiAgZm9udC1zaXplOiAxLjQzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ub3ZlcnZpZXcge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDY1ZW0pIHtcbiAgLm92ZXJ2aWV3IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICB9XG59XG4ub3ZlcnZpZXcgLnZpZGVvIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDUwdncgLSA1MCUpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoNTB2dyAtIDUwJSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAub3ZlcnZpZXcgLnZpZGVvIHtcbiAgICB3aWR0aDogNTcuNSU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSBhbmQgKG1pbi13aWR0aDogNjVlbSkge1xuICAub3ZlcnZpZXcgLnZpZGVvX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuLm92ZXJ2aWV3IC5idG4tbHYxIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luOiAzMHB4IGF1dG8gMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSB7XG4gIC5vdmVydmlldyAuYnRuLWx2MSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuLm92ZXJ2aWV3IC5tb2RhbC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIG1hcmdpbi10b3A6IC04MHB4O1xufVxuLm92ZXJ2aWV3IC5kZXMge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTE2MWM7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoNTB2dyAtIDUwJSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyg1MHZ3IC0gNTAlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSB7XG4gIC5vdmVydmlldyAuZGVzIHtcbiAgICB3aWR0aDogNDIuNSU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSB7XG4gIC5vdmVydmlldyAuZGVzX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA0MDJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDM0cHg7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG4ub3ZlcnZpZXcgLmRlc19fdGl0bGUge1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbn1cbi5vdmVydmlldyAuZGVzX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzE0Mjg1NzE0MztcbiAgY29sb3I6ICNmZmY7XG59XG4ub3ZlcnZpZXcgLmRlcy10YWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5OTE2MWM7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzk5MTYxYztcbn1cbi5vdmVydmlldyAuZGVzLXRhYmxlX190aXRsZSB7XG4gIHdpZHRoOiAyNSU7XG4gIHBhZGRpbmc6IDAuNDJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5OTE2MWM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTkxNjFjO1xufVxuLm92ZXJ2aWV3IC5kZXMtdGFibGVfX3RleHQge1xuICB3aWR0aDogNzUlO1xuICBwYWRkaW5nOiAwLjQyZW0gMCAwIDEuMzVlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzk5MTYxYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTE2MWM7XG59XG5cbi5kZXRhaWxzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAuZGV0YWlscyB7XG4gICAgbWF4LXdpZHRoOiA2Ny41cmVtO1xuICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cbn1cblxuLmRldGFpbHMtdGFibGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4td2lkdGg6IDEwODBweDtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICM5OTE2MWM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAuZGV0YWlscy10YWJsZSB7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICB9XG59XG4uZGV0YWlscy10YWJsZV9fdGl0bGUge1xuICBwYWRkaW5nOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTE2MWM7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmY7XG59XG4uZGV0YWlscy10YWJsZV9fdGl0bGU6bnRoLW9mLXR5cGUoMSkge1xuICB3aWR0aDogMTYuOCU7XG59XG4uZGV0YWlscy10YWJsZV9fdGl0bGU6bnRoLW9mLXR5cGUoMikge1xuICB3aWR0aDogMTQuNyU7XG59XG4uZGV0YWlscy10YWJsZV9fdGl0bGU6bnRoLW9mLXR5cGUoMykge1xuICB3aWR0aDogNTclO1xufVxuLmRldGFpbHMtdGFibGVfX3RpdGxlOm50aC1vZi10eXBlKDQpIHtcbiAgd2lkdGg6IDExLjUlO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5kZXRhaWxzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1pbi13aWR0aDogMTA4MHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjOTkxNjFjO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICM5OTE2MWM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAuZGV0YWlscy1saXN0IHtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gIH1cbn1cbi5kZXRhaWxzLWxpc3RfX3RpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxNi44JTtcbiAgcGFkZGluZzogMjZweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzk5MTYxYztcbn1cbi5kZXRhaWxzLWxpc3RfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICM5OTE2MWM7XG59XG4uZGV0YWlscy1saXN0X19pdGVtOm50aC1vZi10eXBlKDEpIHtcbiAgd2lkdGg6IDE0LjclO1xufVxuLmRldGFpbHMtbGlzdF9faXRlbTpudGgtb2YtdHlwZSgyKSB7XG4gIHdpZHRoOiA1NyU7XG59XG4uZGV0YWlscy1saXN0X19pdGVtOm50aC1vZi10eXBlKDMpIHtcbiAgd2lkdGg6IDExLjUlO1xufVxuLmRldGFpbHMtbGlzdF9faXRlbSAuYnRuLWx2MSB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmRldGFpbHMtbGlzdF9fbGlzdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBcIuODu1wiICFpbXBvcnRhbnQ7XG59XG4uZGV0YWlscy1saXN0X19saXN0LWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn1cbi5kZXRhaWxzLWxpc3RfX2xpc3QtaXRlbTpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgbWFyZ2luLXRvcDogNnB4O1xufVxuXG4ueW91dHViZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnlvdXR1YmU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogNTYuNjY2NjY2NjY2NyU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ueW91dHViZSA+IGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5idG4tbHYxIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjE2ZW0gMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTE2MWM7XG4gIGJvcmRlci1yYWRpdXM6IDMzcHg7XG4gIHRyYW5zaXRpb246IDAuM3M7XG59XG4uYnRuLWx2MTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNjFiMjI7XG59XG5cbi5waWN1cCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5zZW1pbmFyIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLnNlbWluYXIge1xuICAgIG1hcmdpbi10b3A6IDEyMHB4O1xuICB9XG59XG4uc2VtaW5hcl9fdGl0bGUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNlbWluYXIgLnlvdXR1YmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGJvcmRlcjogOHB4IHNvbGlkICM5OTE2MWM7XG4gIHRyYW5zaXRpb246IDAuM3M7XG59XG4uc2VtaW5hciAueW91dHViZTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuODtcbn1cbi5zZW1pbmFyIC55b3V0dWJlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA2MS4xOHB4O1xuICBoZWlnaHQ6IDQwLjkzcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvc2VtaW5hci95b3V0dWJlLWljb24ucG5nKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLnNlbWluYXIgLnlvdXR1YmUge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiA2MHB4IGF1dG8gMDtcbiAgfVxufVxuLnNlbWluYXIgLmRldGFpbHMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSB7XG4gIC5zZW1pbmFyIC5kZXRhaWxzLWxpc3Qge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuLnNlbWluYXIgLmRldGFpbHMtbGlzdF9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NWVtKSB7XG4gIC5zZW1pbmFyIC5kZXRhaWxzLWxpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMjAuOCU7XG4gIH1cbiAgLnNlbWluYXIgLmRldGFpbHMtbGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbiAgLnNlbWluYXIgLmRldGFpbHMtbGlzdF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgIHdpZHRoOiAxOS4yJTtcbiAgfVxufVxuLnNlbWluYXIgLmRldGFpbHMtbGlzdF9fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTJweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTE2MWM7XG59XG4uc2VtaW5hciAuZGV0YWlscy1saXN0X19jb250ZW50cyB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAuc2VtaW5hciAuZGV0YWlscy1saXN0X19jb250ZW50cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMjRweDtcbiAgfVxufVxuLnNlbWluYXIgLmRldGFpbHMtbGlzdF9fdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zZW1pbmFyIC5kZXRhaWxzLWxpc3RfX3RleHQuLWJvbGQge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLnNlbWluYXIgLmRldGFpbHMtbGlzdCAuYnRuLWx2MSB7XG4gIG1heC13aWR0aDogMTA0cHg7XG4gIG1hcmdpbjogMjBweCBhdXRvIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjVlbSkge1xuICAuc2VtaW5hciAuZGV0YWlscy1saXN0IC5idG4tbHYxIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4uc2VtaW5hciAuZGV0YWlscy1saXN0IC5waWN1cCB7XG4gIG1heC13aWR0aDogOTZweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuc2VtaW5hciAuZGV0YWlscy1saXN0IC5waWN1cCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDY1ZW0pIHtcbiAgLnNlbWluYXIgLm1sLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmlucXVpcnkge1xuICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTE2MWM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5pbnF1aXJ5IHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIG1hcmdpbjogMTIwcHggYXV0byAwO1xuICB9XG59XG4uaW5xdWlyeSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmlucXVpcnkgcCB7XG4gIHBhZGRpbmc6IDEwcHggMCAwO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMjtcbn1cbi5pbnF1aXJ5IHN0cm9uZyB7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG59XG5cbi5ib3R0b20tYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMi4ydnc7XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3NlbWluYXIvZm9vdGVyLWJnQDJ4LmpwZyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmJvdHRvbS1iZyB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbn1cblxuLmNvbnZlcnRpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWYyZTk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTYuMjVlbSkge1xuICAuY29udmVydGlvbiB7XG4gICAgcGFkZGluZzogMThweCAwO1xuICB9XG59XG4uY29udmVydGlvbiAud3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5jb252ZXJ0aW9uX193cmFwcGVyIHtcbiAgd2lkdGg6IDQzLjclO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29udmVydGlvbl9fd3JhcHBlcjpsYXN0LW9mLXR5cGUge1xuICB3aWR0aDogNTAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU2LjI1ZW0pIHtcbiAgLmNvbnZlcnRpb25fX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogNDUuNyU7XG4gIH1cbiAgLmNvbnZlcnRpb25fX3dyYXBwZXI6bGFzdC1vZi10eXBlIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG59XG4uY29udmVydGlvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29udmVydGlvbl9fdGV4dCBzcGFuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1Ni4yNWVtKSB7XG4gIC5jb252ZXJ0aW9uX190ZXh0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgdGV4dC1hbGlnbi1sYXN0OiBsZWZ0O1xuICB9XG4gIC5jb252ZXJ0aW9uX190ZXh0IHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU2LjI1ZW0pIHtcbiAgLmNvbnZlcnRpb25fX2J0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgfVxuICAuY29udmVydGlvbl9fYnRuLi1zZWNvbmQge1xuICAgIG1heC13aWR0aDogMTU4cHg7XG4gIH1cbn1cbi5jb252ZXJ0aW9uX19idG4gLmJ0bi1sdjEge1xuICBwYWRkaW5nOiA4cHggMDtcbiAgbWFyZ2luLXRvcDogNnB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNhMDQ2O1xufVxuLmNvbnZlcnRpb25fX2J0biAuYnRuLWx2MTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGI1NGY7XG59XG4uY29udmVydGlvbl9fYnRuLXRleHQge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkxNjFjO1xufVxuLmZvb3Rlcl9fY29weXJpZ2h0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5sb2dpbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5sb2dpbl9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxvZ2luX190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbn1cbi5sb2dpbl9fY2FyZWZ1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5sb2dpbl9fY2FyZWZ1bCB7XG4gICAgbWF4LXdpZHRoOiA0ODJweDtcbiAgICBtYXJnaW46IDYwcHggYXV0byAwO1xuICB9XG59XG4ubG9naW5fX2NhcmVmdWwuLXN1YiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29sb3I6ICM5OTE2MWM7XG59XG4ubG9naW5fX2NhcmVmdWwuLWJvbGQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ubG9naW5fX2NhcmVmdWwuLXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5sb2dpbl9fY2FyZWZ1bC4tdGFsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxvZ2luX19jYXJlZnVsLi10YWwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLmxvZ2luX19jYXJlZnVsIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5sb2dpbiBmb3JtIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxvZ2luIGZvcm0ge1xuICAgIG1heC13aWR0aDogNjMwcHg7XG4gICAgbWFyZ2luOiA2MHB4IGF1dG8gMDtcbiAgfVxufVxuLmxvZ2luIC5mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5sb2dpbiAuZmxleCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2OHB4KTtcbiAgfVxufVxuLmxvZ2luIC5mbGV4IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLXdpZHRoOiA1MHB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBjb2xvcjogIzk5MTYxYztcbn1cbi5sb2dpbiBkbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxvZ2luIGRsIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4ubG9naW4gZHQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5sb2dpbiBkdCB7XG4gICAgd2lkdGg6IDE2OHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbi5sb2dpbiBkZCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA1NXB4KTtcbn1cbi5sb2dpbiAuaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjOTkxNjFjO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4ubG9naW4gLmVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgY29sb3I6ICM5OTE2MWM7XG59XG4ubG9naW4gLmJ0bi1sdjEge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDQwcHggYXV0byAwO1xufVxuLmxvZ2luX19kZXMge1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIHRleHQtYWxpZ24tbGFzdDogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxvZ2luX19kZXMge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMTIwcHg7XG4gIH1cbn1cbi5sb2dpbl9fZGVzLXRleHQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyO1xufSIsIi8qKlxuICog5YCk44GMMuOBpOS7peS4iuOBrumFjeWIl+OBi+OBqeOBhuOBi+WIpOWumuOBmeOCi+mWouaVsFxuICogQHBhcmFtICB7YXJyYXl9ICRfbGlzdCDphY3liJfjgYvliKTlrprjgZfjgZ/jgYTlgKRcbiAqIEByZXR1cm4ge2Jvb2xlfSAgICAgICAg5YCk44GMMuOBpOS7peS4iuOBrumFjeWIl+OBquOCiXRydWVcbiAqL1xuQGZ1bmN0aW9uIGlzX2FycmF5KCRfbGlzdCkge1xuICBAcmV0dXJuIHR5cGUtb2YoJF9saXN0KSA9PSBsaXN0IG9yIHR5cGUtb2YoJF9saXN0KSA9PSBhcmdsaXN0O1xufVxuXG4vKipcbiAqIOaVsOWApOOCknJlbeOBq+WkieaPm+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7TnVtYmVyfSAkdGFyZ2V0ICAgICAgICByZW3jgavjgZfjgZ/jgYTmlbDlgKRcbiAqIEBwYXJhbSAge051bWJlcn0gJHRocmVzaG9sZCBbMV0g44GX44GN44GE5YCkXG4gKiBAcmV0dXJuIHtOdW1iZXJ9ICAgICAgICAgICAgICAgIOaVsOWApOOBq3JlbeOBjOS7mOOBhOOBn+aVsOWApOOCkui/lOOBl+OBvuOBmVxuICovXG5AZnVuY3Rpb24gX3JlbSgkdGFyZ2V0LCAkdGhyZXNob2xkKSB7XG4gIEBpZih1bml0KCR0YXJnZXQpICE9ICcnKSB7XG4gICAgQGVycm9yICdyZW3jgavjgZfjgZ/jgYTmlbDlgKTjgavljZjkvY3jgpLku5jjgZHjgarjgYTjgafjgY/jgaDjgZXjgYQnO1xuICB9IEBlbHNlIGlmKHVuaXQoJHRocmVzaG9sZCkgIT0gJycpIHtcbiAgICBAZXJyb3IgJ+OBl+OBjeOBhOWApOOBq+WNmOS9jeOCkuS7mOOBkeOBquOBhOOBp+OBj+OBoOOBleOBhCdcbiAgfSBAZWxzZSBpZigkdGFyZ2V0ID09IDApIHtcbiAgICBAcmV0dXJuICR0YXJnZXQ7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gKCgoJHRhcmdldCAvIDE2KSAqICR0aHJlc2hvbGQpICogMXJlbSk7XG4gIH1cbn1cblxuLy/nrKzkuIDlvJXmlbDjgavphY3liJfjgpLmuKHjgZnjgZPjgajjgYzlj6/og73jgavjgarjgaPjgZ9cbkBmdW5jdGlvbiByZW0oJHRhcmdldCwgJHRocmVzaG9sZDogMSkge1xuICBAaWYoaXNfYXJyYXkoJHRhcmdldCkpIHtcbiAgICAkbmV3X3JlbV9hcnJheTogKCk7XG4gICAgQGVhY2ggJHRhcmdldF9pdGVtIGluICR0YXJnZXQge1xuICAgICAgJG5ld19yZW1fYXJyYXk6IGFwcGVuZCgkbmV3X3JlbV9hcnJheSwgX3JlbSgkdGFyZ2V0X2l0ZW0sICR0aHJlc2hvbGQpKTtcbiAgICB9XG4gICAgQHJldHVybiAkbmV3X3JlbV9hcnJheTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBfcmVtKCR0YXJnZXQsJHRocmVzaG9sZCk7XG4gIH1cbn1cblxuLyoqXG4gKiDmlbDlgKTjgpJlbeOBq+WkieaPm+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7TnVtYmVyfSAkdGFyZ2V0ICAgICAgICAgICBlbeOBq+OBl+OBn+OBhOaVsOWApFxuICogQHBhcmFtICB7TnVtYmVyfSAkcGFyZW50VmFsdWUgWzE2XSDjgZfjgY3jgYTlgKRcbiAqIEByZXR1cm4ge051bWJlcn0gICAgICAgICAgICAgICAgICAg5pWw5YCk44GrcmVt44GM5LuY44GE44Gf5pWw5YCk44KS6L+U44GX44G+44GZXG4gKi9cbkBmdW5jdGlvbiBfZW0oJHRhcmdldCwgJHBhcmVudFZhbHVlKSB7XG4gIEBpZih1bml0KCR0YXJnZXQpICE9ICcnKSB7XG4gICAgQGVycm9yICdlbeOBq+OBl+OBn+OBhOaVsOWApOOBq+WNmOS9jeOCkuS7mOOBkeOBquOBhOOBp+OBj+OBoOOBleOBhCc7XG4gIH0gQGVsc2UgaWYodW5pdCgkcGFyZW50VmFsdWUpICE9ICcnKSB7XG4gICAgQGVycm9yICfopqropoHntKDjga7mlbDlgKTjgavljZjkvY3jgpLku5jjgZHjgarjgYTjgafjgY/jgaDjgZXjgYQnXG4gIH0gQGVsc2UgaWYoJHRhcmdldCA9PSAwKSB7XG4gICAgQHJldHVybiAkdGFyZ2V0O1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICgoJHRhcmdldCAvIDE2KSAqIDFlbSk7XG4gIH1cbn1cblxuLy/nrKzkuIDlvJXmlbDjgavphY3liJfjgpLmuKHjgZnjgZPjgajjgYzlj6/og73jgavjgarjgaPjgZ9cbkBmdW5jdGlvbiBlbSgkdGFyZ2V0LCAkcGFyZW50VmFsdWU6IDE2KSB7XG4gIEBpZihpc19hcnJheSgkdGFyZ2V0KSkge1xuICAgICRuZXdfZW1fYXJyYXk6ICgpO1xuICAgIEBlYWNoICR0YXJnZXRfaXRlbSBpbiAkdGFyZ2V0IHtcbiAgICAgICRuZXdfZW1fYXJyYXk6IGFwcGVuZCgkbmV3X2VtX2FycmF5LCBfZW0oJHRhcmdldF9pdGVtLCAkcGFyZW50VmFsdWUpKTtcbiAgICB9XG4gICAgQHJldHVybiAkbmV3X2VtX2FycmF5O1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIF9lbSgkdGFyZ2V0LCRwYXJlbnRWYWx1ZSk7XG4gIH1cbn1cblxuXG4vKipcbiAqIOaVsOWApOOCknB444Gr5aSJ5o+b44GZ44KL6Zai5pWw44Gn44GZXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICRhcmdldCAgICAgICAgICBweOOBq+OBl+OBn+OBhOaVsOWApFxuICogQHBhcmFtICB7TnVtYmVyfSAkdGhyZXNob2xkIFsxXSAg44GX44GN44GE5YCkXG4gKiBAcmV0dXJuIHtOdW1iZXJ9ICAgICAgICAgICAgICAgICDmlbDlgKTjgatweOOBjOS7mOOBhOOBn+aVsOWApOOCkui/lOOBl+OBvuOBmVxuICovXG5AZnVuY3Rpb24gX3B4KCR0YXJnZXQsICR0aHJlc2hvbGQpIHtcbiAgQGlmKHVuaXQoJHRhcmdldCkgIT0gJycpIHtcbiAgICBAZXJyb3IgJ3B444Gr44GX44Gf44GE5pWw5YCk44Gr5Y2Y5L2N44KS5LuY44GR44Gq44GE44Gn44GP44Gg44GV44GEJztcbiAgfSBAZWxzZSBpZih1bml0KCR0aHJlc2hvbGQpICE9ICcnKSB7XG4gICAgQGVycm9yICfjgZfjgY3jgYTlgKTjgavljZjkvY3jgpLku5jjgZHjgarjgYTjgafjgY/jgaDjgZXjgYQnXG4gIH0gQGVsc2UgaWYoJHRhcmdldCA9PSAwKSB7XG4gICAgQHJldHVybiAkdGFyZ2V0O1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICgoJHRhcmdldCAqICR0aHJlc2hvbGQpICogMXB4KTtcbiAgfVxufVxuXG4vL+esrOS4gOW8leaVsOOBq+mFjeWIl+OCkua4oeOBmeOBk+OBqOOBjOWPr+iDveOBq+OBquOBo+OBn1xuQGZ1bmN0aW9uIHB4KCR0YXJnZXQsICR0aHJlc2hvbGQ6IDEpIHtcbiAgQGlmKGlzX2FycmF5KCR0YXJnZXQpKSB7XG4gICAgJG5ld19weF9hcnJheTogKCk7XG4gICAgQGVhY2ggJHRhcmdldF9pdGVtIGluICR0YXJnZXQge1xuICAgICAgJG5ld19weF9hcnJheTogYXBwZW5kKCRuZXdfcHhfYXJyYXksIF9weCgkdGFyZ2V0X2l0ZW0sICR0aHJlc2hvbGQpKTtcbiAgICB9XG4gICAgQHJldHVybiAkbmV3X3B4X2FycmF5O1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIF9weCgkdGFyZ2V0LCR0aHJlc2hvbGQpO1xuICB9XG59XG5cbi8qKlxuICogbGluZS1oZWlnaHTjgYwx44Gu5pmC44Go5ZCM44GY44Gr44Gq44KL44KI44GG44GrbGluZS1oZWlnaHTliIbjga7lt67liIbjgpLov5TjgZnplqLmlbDjgafjgZlcbiAqIEBwYXJhbSAge051bWJlcn0gJGxpbmVIZWlnaHQgbGluZUhlaWdodOOBruWApFxuICogQHBhcmFtICB7TnVtYmVyfSAkZm9udFNpemUgICBmb25044Gu5YCkXG4gKiBAcmV0dXJuIHtOdW1iZXJ9ICAgICAgICAgICAgIOW3ruWIhuOBruaVsOWApFxuICovXG5AZnVuY3Rpb24gbWFyZ2luKCRfbGluZUhlaWdodCwgJF9mb250U2l6ZSkge1xuICBAaWYodW5pdCgkX2xpbmVIZWlnaHQpICE9ICcnKSB7XG4gICAgQGVycm9yICdsaW5lLWhlaWdodOOBq+WNmOS9jeOCkuS7mOOBkeOBquOBhOOBp+OBj+OBoOOBleOBhCc7XG4gIH0gQGVsc2UgaWYodW5pdCgkX2ZvbnRTaXplKSAhPSAnJykge1xuICAgIEBlcnJvciAnZm9udC1zaXpl44Gr5Y2Y5L2N44KS5LuY44GR44Gq44GE44Gn44GP44Gg44GV44GEJztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoJF9mb250U2l6ZSAqICRfbGluZUhlaWdodCAtICRfZm9udFNpemUpIC8gMjtcbiAgfVxufVxuXG4vKipcbiAqIOa3seOBhOmajuWxpOOBrm1hcOOBruWApOOCkuWPluW+l+OBl+OBpui/lOOBmemWouaVsOOBp+OBmeOAglxuICogQHBhcmFtICB7bWFwfSAkbWFwICAgbWFw5pys5L2TXG4gKiBAcGFyYW0gIHttYXB9ICRrZXlzICBtYXDjga5rZXlcbiAqIEByZXR1cm4ge21hcH0gICAgICAgIOaMh+WumuOBl+OBn21hcOOBrmtleVxuICovXG5AZnVuY3Rpb24gbWFwLWRlZXAtZ2V0KCRtYXAsICRrZXlzLi4uKSB7XG4gIEBlYWNoICRrZXkgaW4gJGtleXMge1xuICAgIEBpZiAobm90IG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICAgICRtYXA6IG1hcC1nZXQoJG1hcCwgJGtleSk7XG4gIH1cbiAgQHJldHVybiAkbWFwO1xufSIsIkB1c2UgJ2Z1bmN0aW9ucydhcyBmdW5jdGlvbjtcblxuLy/oibLjga7lrprnvqlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGNvbG9yczogKFxuICB3aGl0ZTogI2ZmZixcbiAgYmxhY2s6ICMwMDAsXG4gIHJlZDogIzk5MTYxYyxcbiAgeWVsbG93OiAjYzNhMDQ2LFxuKTtcblxuXG4vKipcbiAqIOiJsuOCkm1hcOOBi+OCieWPluW+l+OBmeOCi+mWouaVsOOBp+OBmVxuICogQHBhcmFtICB7YXJyYXl9ICAka2V5cyAgICAgIOmFjeWIl1xuICogQHBhcmFtICB7bnVtYmVyfSAkX29wYWNpdHkgIDAuMCB+IDFcbiAqIEByZXR1cm4ge21hcH0gICAgICAgICAgICAgICAkY29sb3Jz44Gu5Lu75oSP44Gua2V5XG4gKi9cbkBmdW5jdGlvbiBjb2xvcigkX2tleXMsICRfb3BhY2l0eTogbnVsbCkge1xuICBAaWYoJF9vcGFjaXR5ICE9bnVsbCkge1xuICAgIEByZXR1cm4gcmdiYShmdW5jdGlvbi5tYXAtZGVlcC1nZXQoJGNvbG9ycywgJF9rZXlzLi4uKSwgJF9vcGFjaXR5KVxuICB9XG5cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZnVuY3Rpb24ubWFwLWRlZXAtZ2V0KCRjb2xvcnMsICRfa2V5cy4uLilcbiAgfVxufVxuIiwiQHVzZSAnZnVuY3Rpb25zJyBhcyBmdW5jdGlvbjtcblxuLy96LWluZGV444Gu5a6a576pXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiR6LWluZGV4OiAoXG4gIG1haW46IDEsXG4gIGdvdG9wOiAxMCxcbiAgZmlsbTogNTAsXG4gIGNvbnRhY3Q6IDc1LFxuICBnbmF2OiAxMDAsXG4gIGhlYWRlcjogMjAwLFxuKTtcblxuLyoqXG4gKiB6LWluZGV444KSbWFw44GL44KJ5Y+W5b6X44GZ44KL6Zai5pWw44Gn44GZXG4gKiBAcGFyYW0gIHthcnJheX0gJGtleXMgIOmFjeWIl1xuICogQHJldHVybiB7bWFwfSAgICR6LWluZGV444Gu5Lu75oSP44Gua2V5XG4gKi9cbkBmdW5jdGlvbiB6LWluZGV4KCRrZXlzKSB7XG4gIEByZXR1cm4gZnVuY3Rpb24ubWFwLWRlZXAtZ2V0KCR6LWluZGV4LCAka2V5cy4uLik7XG59XG4iLCJAdXNlICdmdW5jdGlvbnMnIGFzIGZ1bmN0aW9uO1xuXG4vL+ODleOCqeODs+ODiFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vZm9udC1mYW1pbHnjg6Hjg7zjgqvjg7xcbi8vaHR0cHM6Ly9zYXJ1d2FrYWt1bi5jb20vZm9udC1mYW1pbHlcblxuJGZvbnRzOiAoXG4gIGphOiAoXG4gICAgc2FuczogKCdOb3RvIFNhbnMgSlAnLCAn44OS44Op44Ku44OO6KeS44K0IFByb04gVzMnLCAnSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvTicsICfjg6HjgqTjg6rjgqonLCBtZWlyeW8sICfvvK3vvLMg77yw44K044K344OD44KvJywgJ01TIFBHb3RoaWMnLCAnRHJvaWQgU2Fucycsc2Fucy1zZXJpZiksXG4gICksXG4pO1xuXG4vKipcbiAqIGZvbnTjgpJtYXDjgYvjgonlj5blvpfjgZnjgovplqLmlbDjgafjgZlcbiAqIEBwYXJhbSAge2FycmF5fSAka2V5cyAg6YWN5YiXXG4gKiBAcmV0dXJuIHttYXB9ICAgJGZvbnRz44Gu5Lu75oSP44Gua2V5XG4gKi9cbkBmdW5jdGlvbiBmb250KCRrZXlzKSB7XG4gIEByZXR1cm4gZnVuY3Rpb24ubWFwLWRlZXAtZ2V0KCRmb250cywgJGtleXMuLi4pO1xufVxuXG4iLCJAdXNlICdmdW5jdGlvbnMnIGFzIGZ1bmN0aW9uO1xuXG4vL+ODluODrOODvOOCr+ODneOCpOODs+ODiOOBruWumue+qVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8v44Oh44OH44Kj44Ki44Kv44Ko44Oq44Gu5aSJ5pWwXG4kYnJlYWtwb2ludHM6IChcbiAgeHM6IDYwMCxcbiAgc206IDc2OSxcbiAgbWQ6IDkwMCxcbiAgbWw6IDEwNDAsXG4gIGxnOiAxMjAwLFxuICB4bDogMTM2NlxuKTtcblxuLy/jgqvjg7Pjg5fjga7jgqTjg7Pjg4rjg7zmqKrluYVcbiR3cmFwcGVyLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgbWQgKTtcbiR3cmFwcGVyLXdpZHRoLW1sOiBtYXAtZ2V0KCRicmVha3BvaW50cywgbWwgKTtcbi8v44K544Oe44Ob5pmC44Gu5bem5Y+z44GucGFkZGluZ1xuJHdyYXBwZXItcGFkZGluZzogMjA7XG5cbi8qKlxuICogJGJyZWFrcG9pbnRz44Gu5Lit44Gu5pWw5YCk44KSQG1lZGlh44Gr5YWl44KM44GmZW3jgavjgZfjgabov5TjgZltaXhpblxuICogQHBhcmFtICB7YXJyYXl9ICAkYnJlYWtwb2ludCBbc21dICAkYnJlYWtwb2ludHPjga5rZXnjga5hcnJheVxuICogQHBhcmFtICB7c3RyaW5nfSAka2V5ICAgICAgICBbbWluXSBtaW4gb3IgbWF4XG4gKiBAcmV0dXJuIHt2b2lkfSAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAoJGtleS13aWR0aCkge31cbiAqL1xuQG1peGluIG1lZGlhKCRfYnJlYWtwb2ludHM6IHNtLCAkX2tleTogbWluKSB7XG4gIC8vJF9icmVha3BvaW50c+OBrkVycm9y5qSc5Ye6XG4gIEBlYWNoICRfaGFzX2JyZWFrcG9pbnQgaW4gJF9icmVha3BvaW50cyB7XG4gICAgJF9jdXJyZW50X2luZGV4OiBpbmRleCgkX2JyZWFrcG9pbnRzLCAkX2hhc19icmVha3BvaW50KTtcbiAgICBAaWYobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkX2hhc19icmVha3BvaW50KSA9PSBmYWxzZSkge1xuICAgICAgQGVycm9yICfnrKzkuIDlvJXmlbDjga4jeyRfY3VycmVudF9pbmRleH3nm67jga7lgKQjeyRfaGFzX2JyZWFrcG9pbnR944Gv54Sh5Yq544Gq5YCk44Gn44GZ44CCJztcbiAgICB9XG4gIH1cbiAgLy8kX2tleeOBjG1pbuOBi21heOOBi+OBrkVycm9y5qSc5Ye6XG4gICRrZXlfYXJyYXk6IChtaW4sbWF4KTtcbiAgQGlmKGluZGV4KCRrZXlfYXJyYXksICRfa2V5KSA9PSBudWxsKSB7XG4gICAgQGVycm9yICfnrKzkuozlvJXmlbAjeyRfa2V5feOBr+eEoeWKueOBquWApOOBp+OBmeOAgm1pbiBvciBtYXjjgafmjIflrprjgZfjgabjgY/jgaDjgZXjgYTjgIInXG4gIH1cblxuICAkX2JyZWFrcG9pbnQtbGVuZ3RoOiBsZW5ndGgoJF9icmVha3BvaW50cyk7XG4gIEBpZigkX2JyZWFrcG9pbnQtbGVuZ3RoID09IDEpIHtcblxuICAgICRfZmlyc3RfYnJlYWtwb2ludDogbnRoKCRfYnJlYWtwb2ludHMsMSk7XG4gICAgJF9maXJzdF9icmVha3BvaW50X3ZhbHVlOiBtYXBfZ2V0KCRicmVha3BvaW50cywkX2ZpcnN0X2JyZWFrcG9pbnQpO1xuICAgIEBpZiAoJF9rZXkgPT0gbWF4KSB7XG4gICAgICBAbWVkaWEgKCN7JF9rZXl9LXdpZHRoOiBmdW5jdGlvbi5lbSgkX2ZpcnN0X2JyZWFrcG9pbnRfdmFsdWUpIC0gLjAwMTEpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAoJF9rZXkgPT0gbWluKSB7XG4gICAgICBAbWVkaWEgKCN7JF9rZXl9LXdpZHRoOiBmdW5jdGlvbi5lbSgkX2ZpcnN0X2JyZWFrcG9pbnRfdmFsdWUpKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cblxuICB9IEBlbHNlIGlmKCRfYnJlYWtwb2ludC1sZW5ndGggPT0gMikge1xuXG4gICAgJF9maXJzdF9icmVha3BvaW50OiBudGgoJF9icmVha3BvaW50cywxKTtcbiAgICAkX3NlY29uZF9icmVha3BvaW50OiBudGgoJF9icmVha3BvaW50cywyKTtcbiAgICAkX2ZpcnN0X2JyZWFrcG9pbnRfdmFsdWU6IG1hcF9nZXQoJGJyZWFrcG9pbnRzLCRfZmlyc3RfYnJlYWtwb2ludCk7XG4gICAgJF9zZWNvbmRfYnJlYWtwb2ludF92YWx1ZTogbWFwX2dldCgkYnJlYWtwb2ludHMsJF9zZWNvbmRfYnJlYWtwb2ludCk7XG4gICAgJF9tYXhfdmFsdWU6IG1heCgkX2ZpcnN0X2JyZWFrcG9pbnRfdmFsdWUsJF9zZWNvbmRfYnJlYWtwb2ludF92YWx1ZSk7XG4gICAgJF9taW5fdmFsdWU6IG1pbigkX2ZpcnN0X2JyZWFrcG9pbnRfdmFsdWUsJF9zZWNvbmRfYnJlYWtwb2ludF92YWx1ZSk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogZnVuY3Rpb24uZW0oJF9taW5fdmFsdWUpKSBhbmQgKG1heC13aWR0aDogZnVuY3Rpb24uZW0oJF9tYXhfdmFsdWUpIC0gLjAwMTEpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ+esrOS4gOW8leaVsOOBr+acgOWkpzLjgaTjgZfjgYvoqK3lrprjgafjgY3jgb7jgZvjgpPjgIInXG4gIH1cbn1cbiIsIkB1c2UgJ2NvbG9ycycgYXMgX2NvbG9yO1xuQHVzZSBcInotaW5kZXhcIjtcbkB1c2UgXCJmb250c1wiIGFzIF9mb250O1xuQHVzZSAnYnJlYWtwb2ludHMnIGFzIF9icmVha3BvaW50O1xuXG4vL3Jvb3TjgavmqJnnpLrjgZXjgZvjgovnlKhcbjpyb290IHtcbiAgLy8gYnJlYWtwb2ludHNcbiAgQGVhY2ggJGtleSwkdmFsdWUgaW4gX2JyZWFrcG9pbnQuJGJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3ska2V5fTogI3ttYXAtZ2V0KF9icmVha3BvaW50LiRicmVha3BvaW50cywgJGtleSl9O1xuICB9XG5cbiAgLy8gei1pbmRleFxuICBAZWFjaCAka2V5LCR2YWx1ZSBpbiB6LWluZGV4LiR6LWluZGV4IHtcbiAgICBAZWFjaCAkZGVlcEtleSwkZGVlcFZhbHVlIGluICR2YWx1ZSB7XG4gICAgICBAaWYoJGRlZXBWYWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIC0tei1pbmRleC0je1wiXCIgKyAka2V5fTogI3skdmFsdWV9O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tei1pbmRleC0je1wiXCIgKyAka2V5fS0je1wiXCIgKyAkZGVlcEtleX06ICN7JGRlZXBWYWx1ZX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8g6ImyXG4gIEBlYWNoICRrZXksJHZhbHVlIGluIF9jb2xvci4kY29sb3JzIHtcbiAgICBAZWFjaCAkZGVlcEtleSwkZGVlcFZhbHVlIGluICR2YWx1ZSB7XG4gICAgICBAaWYoJGRlZXBWYWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIC0tY29sb3ItcHJpbWFyeS0je1wiXCIgKyAka2V5fTogI3skdmFsdWV9O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tY29sb3ItI3tcIlwiICsgJGtleX0tI3tcIlwiICsgJGRlZXBLZXl9OiAjeyRkZWVwVmFsdWV9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGZvbnRzXG4gIEBlYWNoICRrZXksJHZhbHVlIGluIF9mb250LiRmb250cyB7XG4gICAgQGVhY2ggJGRlZXBLZXksJGRlZXBWYWx1ZSBpbiAkdmFsdWUge1xuICAgICAgLS1mb250LWZhbWlseS0jeyRrZXl9LSN7JGRlZXBLZXl9OiAjeyRkZWVwVmFsdWV9O1xuICAgIH1cbiAgfVxufVxuXG4vL0pT44GrQnJlYWtwb2ludHPlpInmlbDjgpLjgqjjgq/jgrnjg53jg7zjg4jjgZXjgZvjgovjgIJcbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG46ZXhwb3J0IHtcbiAgQGVhY2ggJGtleSwkdmFsdWUgaW4gX2JyZWFrcG9pbnQuJGJyZWFrcG9pbnRzIHtcbiAgICAjeyRrZXl9OiBtYXAtZ2V0KF9icmVha3BvaW50LiRicmVha3BvaW50cywgJGtleSk7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8qKlxuICog5pOs5Ly86KaB57Sg44Gn44Ki44K544Oa44Kv44OI5q+U44Gu6aCY5Z+f44KS56K65L+d44GZ44KLbWl4aW5cbiAqIEBwYXJhbSAgeyRfd2lkdGh9ICAgICAgICAgICAgICAgICAgIOaoquOBruWApFxuICogQHBhcmFtICB7JF9oZWlnaHR9ICAgICAgICAgICAgICAgICAg57im44Gu5YCkXG4gKiBAcGFyYW0gIHskX3BzZXVkb19lbGVtZW50fSBbYmVmb3JlXSDmtojosrvjgZnjgovnlpHkvLzopoHntKAgYmVmb3JlIG9yIGFmdGVyXG4gKiBAcmV0dXJuIHt2b2lkfVxuICovXG5AbWl4aW4gYXNwZWN0KCRfd2lkdGgsICRfaGVpZ2h0LCAkX3BzZXVkb19lbGVtZW50OiBiZWZvcmUpIHtcbiAgJjo6I3skX3BzZXVkb19lbGVtZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJF93aWR0aC8kX2hlaWdodCk7XG4gICAgY29udGVudDogJyc7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGFzcGVjdCgkX3dpZHRoLCAkX2hlaWdodCkge1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJF93aWR0aC8kX2hlaWdodCk7XG59XG4iLCIkZm9udC13ZWlnaHQ6IChcbiAgdGhpbjogMTAwLFxuICBsaWdodDogMzAwLFxuICByZWd1bGFyOiA0MDAsXG4gIG1lZGl1bTogNTAwLFxuICBib2xkOiA2MDAsXG4gIGJsYWNrOiA5MDBcbik7XG5cbi8qKlxuICogZm9udC13ZWlnaHTjga7mlbDlgKTjgpLov5TjgZnplqLmlbBcbiAqIEBwYXJhbSAge1N0cmluZ30gJHdlaWdodCB3ZWlnaHTjga7jgq3jg7zjg6/jg7zjg4nlgKRcbiAqIEByZXR1cm4ge051bWJlcn0gICAgICAgICB3ZWlnaHTjga5udW1iZXJcbiAqL1xuQGZ1bmN0aW9uIGZvbnQtd2VpZ2h0KCRfd2VpZ2h0KSB7XG4gIEBpZihtYXAtaGFzLWtleSgkZm9udC13ZWlnaHQsICRfd2VpZ2h0KSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm9udC13ZWlnaHQsICRfd2VpZ2h0KTtcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yICfkvb/jgYjjgovlgKTjga/ku6XkuIvjgafjgZnihpIje21hcC1rZXlzKCRmb250LXdlaWdodCl9J1xuICB9XG59XG4iLCIvKipcbiAqIOimquimgee0oOOBi+OCiemjm+OBs+WHuuOBmW1peGluXG4gKiBAcGFyYW0gIHskX3BhZGRpbmd9IGZhbHNlIGJvb2xcbiAqIEByZXR1cm4ge3ZvaWR9XG4gKi9cblxuQG1peGluIG92ZXJmbG93KCRfcGFkZGluZzogZmFsc2UpIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgQGlmICgkX3BhZGRpbmcgPT0gdHJ1ZSkge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoNTB2dyAtIDUwJSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKDUwdncgLSA1MCUpO1xuICB9XG59IiwiLypcbiAg44GZ44G544Gm44GucGFkZGluZyxtYXJnaW4sYm9yZGVy44KSbm9uZeOBq1xuICBmb250LXdlaWdodCxmb250LXNpemUsZm9udC1mYW1pbHksbGV0dGVyLXNwYWNpbmcsd29yZC13cmFw44KS6Kaq6KaB57Sg44GL44KJ5byV44GN57aZ44GQXG4qL1xuKiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB3b3JkLXdyYXA6IGluaGVyaXQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuXG4vKlxuICDlhajjgabjga7opoHntKDjga5ib3gtc2l6aW5n44KSYm9yZGVyLWJveOOBq+OBmeOCi+OAglxuKi9cbiosXG46OmFmdGVyLFxuOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKlxuICDliJ3mnJ/oqK3lrppcbiAgZm9udC1zaXpl44GvMTAwJeS7peWkluOBoOOBqOODpuODvOOCtuODk+ODquODhuOCo+OCkuaQjeOBquOBhueCujEwMCXlv4XpoIhcbiovXG5odG1sIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIC8v6Iux5Y2Y6Kqe44KS5pS56KGM44GZ44KL44KI44GG44Gr5aSJ5pu0XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgLy/mloflrZfoqbDjgoFcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAncGFsdCc7XG4gIC8v44Oi44OQ44Kk44Or56uv5pyr44Gn5qiq44Gr44GX44Gf5pmC44Gr44OG44Kt44K544OI6Ieq5YuV5ouh5aSn44KS44GV44Gb44Gq44GEXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tb3otdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLy/jg5Xjgqnjg7Pjg4jjga7jgqLjg7Pjg4HjgqjjgqTjg6rjgqLjgrlcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgLy9vdmVyZmxvdy14OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qXG4gIGHjgr/jgrDjgpJpbmxpbmXopoHntKDjgafkvb/jgYbjgZPjgajjgYznhKHjgYTjga7jgafjgIFibG9ja+OBq+OBmeOCi+OAglxuKi9cbmEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLy9hW2hyZWZePSd0ZWw6J10ge1xuLy8gIEBtZWRpYSAoaG92ZXI6aG92ZXIpIHtcbi8vICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuLy8gIH1cbi8vfVxuXG4vKlxuICBh44K/44Kw44KS44Kv44Oq44OD44Kv44Gn44GN44Gq44GE44Gu44Gn44CBYeOBruS4reOBrm9iamVjdOOCv+OCsOOCknBvaW50ZXItZXZlbnRz44KS5YiH44KLXG4qL1xuYSBvYmplY3Qge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnN2ZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmltZywgc3ZnLCB2aWRlbywgY2FudmFzIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbWcsIHN2ZywgdmlkZW8sIGNhbnZhcywgYXVkaW8sIGlmcmFtZSwgZW1iZWQsIG9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8vdWwsb2zjgafjga9saXN0LXN0eWxl44KS6KGo56S644GX44Gq44GE44CCXG51bFtjbGFzc10sXG5vbFtjbGFzc10ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vSUXlr77nrZZcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKlxuICBGb3Jt44Gu44Oq44K744OD44OIXG4qL1xuLy8xNnB45Lul5LiL44Gg44Go44K544Oe44Ob44Gn5ouh5aSn44GV44KM44KL44Gu44Gn5ouh5aSn44GV44KM44Gq44GE44KI44GG44GrXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbmlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8vSFRNTOOBrmRpc2FibGVk6KaB57Sg44GuY3Vyc29y44KS5Yid5pyf5YCk44Gr5oi744GZXG5bZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vL0hUTUzjga5oaWRkZW7lsZ7mgKfjgpLooajnpLrjgZXjgZvjgarjgYRcbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vL+err+acq+OBruioreWumuOBp+ODiOODqeODs+OCuOOCt+ODp+ODs+OBqOOCouODi+ODoeODvOOCt+ODp+ODs+OCkuWIh+OBo+OBpuOBhOOCi+S6uuOBq+OBr+OCouODi+ODoeODvOOCt+ODp+ODs+OBqOODiOODqeODs+OCuOOCt+ODp+ODs+OBleOBm+OBquOBhFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgKixcbiAgOjpiZWZvcmUsXG4gIDo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy92dWXjga7jg57jgrnjgr/jg4Pjgrfjg6XjgpLooajnpLrjgZfjgarjgYRcblt2LWNsb2FrXSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy9tb3VzZeOBqHRvdWNo44Gn44Gvb3V0bGluZeOCkuihqOekuuOBl+OBquOBhFxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9J3RvdWNoJ10gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4iLCIvLyBAa2V5ZnJhbWVzIOS7u+aEj+OBruWQjeWJjSB7XG4vLyAgIDAlIHtcbi8vICAgICAgIENTU+ODl+ODreODkeODhuOCozrlgKQ7XG4vLyAgIH1cbi8vICAgMTAwJSB7XG4vLyAgICAgICBDU1Pjg5fjg63jg5Hjg4bjgqM65YCkO1xuLy8gICB9XG4vLyB9XG5cbi8vIOWRvOOBs+WHuuOBl+aWuVxuLy8gLmFuaW1hdGlvbiB7XG4vLyAgIGFuaW1hdGlvbjog5ZCN5YmNIOe1guOCj+OCi+OBvuOBp+OBruenkuaVsCDlpInljJbjga7luqblkIjjgYQg44OH44Kj44Os44KkIOe5sOOCiui/lOOBmeWbnuaVsCDlho3nlJ/mlrnlkJEg6ZaL5aeL44CB57WC5LqG44Gu44K544K/44Kk44OrO1xuLy8gfVxuXG4vLyDjgJBDU1Mz44CRQGtleWZyYW1lcyDjgaggYW5pbWF0aW9uIOmWoumAo+OBruOBvuOBqOOCgVxuLy8gaHR0cHM6Ly9xaWl0YS5jb20vNzk2OC9pdGVtcy8xZDk5OTM1NGUwMGRiNTNiY2JkOFxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBidXJnZXIwMSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpXG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMClcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBidXJnZXIwMiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweClcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKVxuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn0iLCJAdXNlICdmdW5jdGlvbnMnIGFzIGZ1bmN0aW9uO1xuQHVzZSAnY29sb3JzJyBhcyBjb2xvcjtcbkB1c2UgJ2ZvbnRzJyBhcyBmb250O1xuQHVzZSAnZm9udHdlaWdodCcgYXMgZm9udHdlaWdodDtcbkB1c2UgJ2JyZWFrcG9pbnRzJyBhcyBicmVha3BvaW50O1xuXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogZm9udC5mb250KGphIHNhbnMpO1xuICBmb250LXdlaWdodDogZm9udHdlaWdodC5mb250LXdlaWdodChyZWd1bGFyKTtcbiAgY29sb3I6IGNvbG9yLmNvbG9yKHRleHQgYmxhY2spO1xufVxuXG4ud3JhcHBlciB7XG4gIC8vaW5uZXLjgYzjgrXjgqTjg4njgr/jg4Pjg4HjgZfjgarjgYTjgojjgYbjgavkuojjgoHjgrnjg57jg5vmmYLjga7lt6blj7NwYWRkaW5n5YiG6Kit5a6aXG4gIG1heC13aWR0aDogZnVuY3Rpb24ucmVtKGJyZWFrcG9pbnQuJHdyYXBwZXItd2lkdGgtbWwgKyAoYnJlYWtwb2ludC4kd3JhcHBlci1wYWRkaW5nICogMikpO1xuICBwYWRkaW5nOiAwIGZ1bmN0aW9uLnJlbShicmVha3BvaW50LiR3cmFwcGVyLXBhZGRpbmcpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC5tZWRpYShzbSxtYXgpIHtcbiAgICBtYXgtd2lkdGg6IGZ1bmN0aW9uLnJlbShicmVha3BvaW50LiR3cmFwcGVyLXdpZHRoICsgKGJyZWFrcG9pbnQuJHdyYXBwZXItcGFkZGluZyAqIDIpKTtcbiAgICBwYWRkaW5nOiAwIGZ1bmN0aW9uLnJlbShicmVha3BvaW50LiR3cmFwcGVyLXBhZGRpbmcpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gICYtLWlubmVyIHtcbiAgICBtYXgtd2lkdGg6IGZ1bmN0aW9uLnJlbShicmVha3BvaW50LiR3cmFwcGVyLXdpZHRoLW1sICsgKGJyZWFrcG9pbnQuJHdyYXBwZXItcGFkZGluZyAqIDIpKTtcbiAgICBwYWRkaW5nOiAwIGZ1bmN0aW9uLnJlbShicmVha3BvaW50LiR3cmFwcGVyLXBhZGRpbmcpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi5lbiB7XG4gIGZvbnQtZmFtaWx5OiBmb250LmZvbnQoZW4gc2VjdWxhcik7XG59XG4iLCIubW9kYWwtYnRuW2RhdGUtbW9kYWwtY2xvc2VdIHtcbiAgKyAubW9kYWwtYmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm1vZGFsLWJ0bltkYXRlLW1vZGFsLW9wZW5dIHtcbiAgKyAubW9kYWwtYmcge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcihibGFjayksIC45KTtcblxuICAgIC5tb2RhbC1jbG9zZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIuNSU7XG4gICAgICByaWdodDogNy41dnc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgICAgcmlnaHQ6IDE1dnc7XG4gICAgICB9XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDNweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xuICAgICAgfVxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoaG92ZXIgeWVsbG93KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDgwdnc7XG4gICAgICBoZWlnaHQ6IDQ1dnc7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBAaW5jbHVkZSBtZWRpYShzbSkge1xuICAgICAgICB3aWR0aDogNzB2dztcbiAgICAgICAgaGVpZ2h0OiA0MHZ3O1xuICAgICAgfVxuICAgICAgLm1vZGFsLWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuc3Atbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBjLW5vbmUge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtZWRpYShzbSxtYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubWQtbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKG1kKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm1kLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgbWVkaWEobWQsbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn0iLCJcbi8vIEBmb3J3YXJkICcuL0Bmb3VuZGF0aW9ucy9mb250ZmFjZSc7XG5AdXNlICcuL0Bmb3VuZGF0aW9ucy9fY3NzX3ZhcmlhYmxlcyc7XG4vL+KGk+KGk+KGk+KGk+KGk+KGkyBAcGFnZXPjgatAdXNlIOKGk+KGk+KGk+KGk+KGk+KGk1xuQHVzZSAnLi9AZm91bmRhdGlvbnMvZm91bmRhdGlvbnMnIGFzICo7XG4vL+KGkeKGkeKGkeKGkeKGkeKGkSBAcGFnZXPjgatAdXNlIOKGkeKGkeKGkeKGkeKGkeKGkVxuQGZvcndhcmQgJy4vQGZvdW5kYXRpb25zL19yZXNldCc7XG5AZm9yd2FyZCAnLi9AZm91bmRhdGlvbnMvX2FuaW1hdGlvbnMnO1xuQGZvcndhcmQnLi9AZm91bmRhdGlvbnMvX0BiYXNlJztcblxuLy8gQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Tm90bytTYW5zK0pQOndnaHRANDAwOzUwMDs3MDAmZmFtaWx5PU5vdG8rU2VyaWYrSlA6d2dodEAyMDA7NDAwOzUwMDs3MDAmZGlzcGxheT1zd2FwJyk7XG5cbi8vIEBpbXBvcnQgJ2xpYnMvKionO1xuQGltcG9ydCAnZnJhbWUvX21vZGFsLnNjc3MnO1xuLy8gQGltcG9ydCAnbGF5b3V0cy8qKic7XG4vLyBAaW1wb3J0ICdwYWdlcy8qKic7XG4vLyBAaW1wb3J0ICdvYmplY3RzLyoqJztcbkBpbXBvcnQgJ3V0aWxpdHlzL19oaWRkZW4uc2Nzcyc7XG5cblxuLmhlYWRlciB7XG4gIGJvcmRlci10b3A6IDIwcHggc29saWQgY29sb3IocmVkKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7XG5cbiAgJl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAyNjVweDtcbiAgfVxufVxuXG4uZ290b3Atc3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDI4LjA2cHg7XG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZfX2ltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgZm9udC1zaXplOiByZW0oMTApO1xuICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICBjb2xvcjogY29sb3IocmVkKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmdvdG9wLXBjIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgY29sb3I6IGNvbG9yKHJlZCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKHJlZCk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG4ubmV3cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG4gIH1cbn1cblxuLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgICBtaW4td2lkdGg6IDMxMHB4O1xuICAgIH1cblxuICAgICYtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDM3KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICAgIGNvbG9yOiBjb2xvcihyZWQpO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMjQvMTYpO1xuICAgIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgICBtYXgtd2lkdGg6IDU0MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgfVxuICB9XG59XG5cbi5zdGFtcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogNzVweDtcbiAgaGVpZ2h0OiA3NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih5ZWxsb3cpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiByZW0oMjMpO1xuICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICB9XG59XG5cbi5vdmVydmlldyB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIEBpbmNsdWRlIG1lZGlhKG1sKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgfVxuXG4gIC52aWRlbyAge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcbiAgICBAaW5jbHVkZSBvdmVyZmxvdyh0cnVlKTtcbiAgICBAaW5jbHVkZSBtZWRpYShtbCkge1xuICAgICAgd2lkdGg6IDU3LjUlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJl9faW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShtbCkge1xuICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnRuLWx2MSB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW46IDMwcHggYXV0byAgMDtcbiAgICBAaW5jbHVkZSBtZWRpYShtbCkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW4tdG9wOiAtODBweDtcbiAgfVxuXG4gIC5kZXMge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG4gICAgQGluY2x1ZGUgb3ZlcmZsb3codHJ1ZSk7XG4gICAgQGluY2x1ZGUgbWVkaWEobWwpIHtcbiAgICAgIHdpZHRoOiA0Mi41JTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgQGluY2x1ZGUgbWVkaWEobWwpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDJweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKHdoaXRlKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcih3aGl0ZSk7XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgbGluZS1oZWlnaHQ6ICgyNC8xNCk7XG4gICAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICAgIH1cbiAgICBcbiAgICAmLXRhYmxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKHJlZCk7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGNvbG9yKHJlZCk7XG4gICAgICBcbiAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgcGFkZGluZzogLjQyZW0gMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjb2xvcihyZWQpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IocmVkKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJl9fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIHBhZGRpbmc6IC40MmVtIDAgMCAxLjM1ZW07XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGNvbG9yKHJlZCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihyZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGV0YWlscyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICBAaW5jbHVkZSBtZWRpYShtbCkge1xuICAgIG1heC13aWR0aDogcmVtKCR3cmFwcGVyLXdpZHRoLW1sICsgKCR3cmFwcGVyLXBhZGRpbmcgKiAyKSk7XG4gICAgcGFkZGluZzogMCByZW0oJHdyYXBwZXItcGFkZGluZyk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG59XG5cbi5kZXRhaWxzLXRhYmxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAxMDgwcHg7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCBjb2xvcihyZWQpO1xuICBAaW5jbHVkZSAgbWVkaWEobWwpIHtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgcGFkZGluZzogLjc1ZW07XG4gICAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgY29sb3Iod2hpdGUpO1xuICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgd2lkdGg6IDE2LjglO1xuICAgIH1cbiAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIHdpZHRoOiAxNC43JTtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICB3aWR0aDogNTclO1xuICAgIH1cbiAgICAmOm50aC1vZi10eXBlKDQpIHtcbiAgICAgIHdpZHRoOiAxMS41JTtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRldGFpbHMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWluLXdpZHRoOiAxMDgwcHg7XG4gIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICBjb2xvcihyZWQpO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICBjb2xvcihyZWQpO1xuICBAaW5jbHVkZSAgbWVkaWEobWwpIHtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxNi44JTtcbiAgICBwYWRkaW5nOiAyNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAgY29sb3IocmVkKTtcbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAgY29sb3IocmVkKTtcbiAgICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICAgIHdpZHRoOiAxNC43JTtcbiAgICB9XG4gICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICB3aWR0aDogNTclO1xuICAgIH1cbiAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgIHdpZHRoOiAxMS41JTtcbiAgICB9XG4gICAgLmJ0bi1sdjEge1xuICAgICAgcGFkZGluZzogMTBweCAgMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgfVxuICB9XG5cbiAgJl9fbGlzdCAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpc3Qtc3R5bGU6ICfjg7snICFpbXBvcnRhbnQ7XG4gICAgJi1pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ueW91dHViZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAaW5jbHVkZSBhc3BlY3QoMzQwLCA2MDApO1xuICA+IGltZyB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb247XG4gIH1cbn1cblxuLmJ0bi1sdjEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IC4xNmVtIDA7XG4gIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG4gIGJvcmRlci1yYWRpdXM6IDMzcHg7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M2MWIyMjtcbiAgfVxufVxuXG4ucGljdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgZm9udC1zaXplOiByZW0oMTApO1xuICBmb250LXdlaWdodDogZm9udC13ZWlnaHQoYm9sZCk7XG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5zZW1pbmFyIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbSg0MCk7XG4gICAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC55b3V0dWJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBib3JkZXI6IDhweCBzb2xpZCBjb2xvcihyZWQpO1xuICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC44O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA2MS4xOHB4O1xuICAgICAgaGVpZ2h0OiA0MC45M3B4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3NlbWluYXIveW91dHViZS1pY29uLnBuZyk7XG4gICAgICBAaW5jbHVkZSBwb3NpdGlvbjtcbiAgICB9XG4gICAgQGluY2x1ZGUgIG1lZGlhKHNtKSAge1xuICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgIG1hcmdpbjogNjBweCBhdXRvIDA7XG4gICAgfVxuICB9XG5cbiAgLmRldGFpbHMtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKG1sKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgQGluY2x1ZGUgIG1lZGlhKG1sKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiAyMC44JTtcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIHdpZHRoOiAxOS4yJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihyZWQpO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYShtbCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAmLi1ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tbHYxIHtcbiAgICAgIG1heC13aWR0aDogMTA0cHg7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAwO1xuICAgICAgQGluY2x1ZGUgIG1lZGlhKG1sKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBpY3VwIHtcbiAgICAgIG1heC13aWR0aDogOTZweDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAubWwtbm9uZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEobWwpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5pbnF1aXJ5IHtcbiAgcGFkZGluZzogMzBweCAxNXB4O1xuICBtYXJnaW4tdG9wOiA4MHB4O1xuICBjb2xvcjogY29sb3Iod2hpdGUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG4gIEBpbmNsdWRlICBtZWRpYShzbSkge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiAxMjBweCBhdXRvIDA7XG4gIH1cbiAgYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBwIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICB9XG4gIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgfVxufVxuXG4uYm90dG9tLWJnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjIuMnZ3O1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9zZW1pbmFyL2Zvb3Rlci1iZ0AyeC5qcGcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbn1cblxuLmNvbnZlcnRpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWYyZTk7XG4gIEBpbmNsdWRlIG1lZGlhKG1kKSB7XG4gICAgcGFkZGluZzogMThweCAwO1xuICB9XG4gIFxuICAud3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmX193cmFwcGVyIHtcbiAgICB3aWR0aDogNDMuNyU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKG1kKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiA0NS43JTtcbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBmb250LXNpemU6IHJlbSgxNSk7XG4gICAgZm9udC13ZWlnaHQ6IGZvbnQtd2VpZ2h0KGJvbGQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKG1kKSB7XG4gICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBmb250LXdlaWdodDogZm9udC13ZWlnaHQocmVndWxhcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fYnRuIHtcbiAgICBAaW5jbHVkZSBtZWRpYShtZCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAmLi1zZWNvbmQge1xuICAgICAgICBtYXgtd2lkdGg6IDE1OHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tbHYxIHtcbiAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoeWVsbG93KTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRiNTRmO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtdGV4dCB7XG4gICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXIge1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHJlZCk7XG5cbiAgJl9fY29weXJpZ2h0IHtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcbiAgfVxufVxuXG4ubG9naW4gIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtKDQwKTtcbiAgICBmb250LXdlaWdodDogZm9udC13ZWlnaHQoYm9sZCk7XG4gICAgbGluZS1oZWlnaHQ6ICg0OC80MCk7XG4gICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgIG1hcmdpbi10b3A6IDEyMHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2NhcmVmdWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMjQvMTYpO1xuICAgIEBpbmNsdWRlICBtZWRpYShzbSkge1xuICAgICAgbWF4LXdpZHRoOiA0ODJweDtcbiAgICAgIG1hcmdpbjogNjBweCBhdXRvIDA7XG4gICAgfVxuXG4gICAgJi4tc3ViIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGNvbG9yOiBjb2xvcihyZWQpO1xuICAgIH1cbiAgICBcbiAgICAmLi1ib2xkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICB9XG5cbiAgICAmLi1zbWFsbCB7XG4gICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgfVxuXG4gICAgJi4tdGFsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBAaW5jbHVkZSBtZWRpYShzbSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICBmb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKHNtKSB7XG4gICAgICBtYXgtd2lkdGg6IDYzMHB4O1xuICAgICAgbWFyZ2luOiA2MHB4IGF1dG8gMDtcbiAgICB9XG4gIH1cblxuICAuZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNjhweCk7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1pbi13aWR0aDogNTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBjb2xvcjogY29sb3IocmVkKTtcbiAgICB9XG4gIH1cblxuICBkbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgZHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiBmb250LXdlaWdodChib2xkKTtcbiAgICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gICAgQGluY2x1ZGUgbWVkaWEoc20pIHtcbiAgICAgIHdpZHRoOiAxNjhweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG4gIFxuICBkZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDU1cHgpO1xuICB9XG5cbiAgLmlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihyZWQpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxuXG4gIC5lcnJvciAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBjb2xvcjogY29sb3IocmVkKTtcbiAgfVxuXG4gIC5idG4tbHYxe1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgfVxuXG4gICZfX2RlcyB7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbiAgICBAaW5jbHVkZSBtZWRpYShzbSkge1xuICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgIG1hcmdpbjogMzBweCBhdXRvIDEyMHB4O1xuICAgIH1cblxuICAgICYtdGV4dCB7XG4gICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICBsaW5lLWhlaWdodDogKDI0LzEyKTtcbiAgICB9XG4gIH1cbn0iLCJAbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiB4eSkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBpZiAkcG9zaXRpb24gPT0geHkge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0geCB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHkge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==*/