/*!**************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./src/scss/site-editor.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * グリッドシステム（非推奨）
 */
/**
 * グリッドシステム（非推奨）
 */
/**
 * グリッドシステム（非推奨）
 */
/* ------------------------------
  Popover
------------------------------- */
/* ------------------------------
 ベーススタイル
------------------------------ */
.entry-style .acms-cssgrid {
  --acms-gap: var(--unit-gap-x);
}
.entry-style .acms-stack,
.entry-style .acms-vstack,
.entry-style .acms-hstack {
  --acms-stack-spacing: var(--unit-gap-x);
}

.entry-style {
  /* コンテンツの初めの要素には上余白をつけない */
}
.entry-style > *:first-child, .entry-style > *:first-child.column-block-editor > *:first-child, .entry-style > *:first-child.js-edit_inplace > *:first-child, .entry-style > *:first-child.js-edit_inplace-hovering + .js-edit_inplace > *:first-child {
  margin-block-start: 0;
}

:where(.entry-style) img,
:where(.entry-style) video {
  max-width: 100%;
  height: auto;
}
:where(.entry-style) audio,
:where(.entry-style) canvas,
:where(.entry-style) embed,
:where(.entry-style) iframe,
:where(.entry-style) object,
:where(.entry-style) svg,
:where(.entry-style) video {
  display: block;
  vertical-align: middle;
}

/* stylelint-disable max-line-length */
/* stylelint-enable max-line-length */
/* ------------------------------
　フィールドスタイル調整
------------------------------ */
/* 価格表ユニットのユニットグループアイテムの境界線 */
[data-unit-type=custom_pricing] .acms-admin-table-admin-edit {
  border-collapse: collapse;
}
[data-unit-type=custom_pricing] .acms-admin-table-admin-edit .sortable-item {
  border-top: 1px solid #ccc;
}
[data-unit-type=custom_pricing] .acms-admin-table-admin-edit .sortable-item:first-child {
  border: 0;
}

/* ------------------------------
 テキスト
------------------------------ */
/* リンク
----------------------------- */
.entry-style a:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=media-image-block], [class~=media-image-block] *, [class~=column-image], [class~=column-image] *, [class~=column-media], [class~=column-media] *, [class~=column-eximage], [class~=column-eximage] *)) {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
}
.entry-style a:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=media-image-block], [class~=media-image-block] *, [class~=column-image], [class~=column-image] *, [class~=column-media], [class~=column-media] *, [class~=column-eximage], [class~=column-eximage] *))[target=_blank] {
  margin-right: 4px;
}
.entry-style a:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=media-image-block], [class~=media-image-block] *, [class~=column-image], [class~=column-image] *, [class~=column-media], [class~=column-media] *, [class~=column-eximage], [class~=column-eximage] *))[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .entry-style a:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=media-image-block], [class~=media-image-block] *, [class~=column-image], [class~=column-image] *, [class~=column-media], [class~=column-media] *, [class~=column-eximage], [class~=column-eximage] *)):-moz-any-link:hover {
    text-decoration: none;
  }
  .entry-style a:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=media-image-block], [class~=media-image-block] *, [class~=column-image], [class~=column-image] *, [class~=column-media], [class~=column-media] *, [class~=column-eximage], [class~=column-eximage] *)):any-link:hover {
    text-decoration: none;
  }
}

.acms-admin-block-editor-body a {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
}
.acms-admin-block-editor-body a[target=_blank] {
  margin-right: 4px;
}
.acms-admin-block-editor-body a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .acms-admin-block-editor-body a:-moz-any-link:hover {
    text-decoration: none;
  }
  .acms-admin-block-editor-body a:any-link:hover {
    text-decoration: none;
  }
}

/* em
----------------------------- */
.entry-style em:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  font-style: italic;
}

.acms-admin-block-editor-body em {
  font-style: italic;
}

/* strong
----------------------------- */
.entry-style strong:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  font-weight: bold;
}

.acms-admin-block-editor-body strong {
  font-weight: bold;
}

/* mark
----------------------------- */
.entry-style mark:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  color: inherit;
  background-color: var(--color-highlight);
}

.acms-admin-block-editor-body mark {
  color: inherit;
  background-color: var(--color-highlight);
}

/* code
----------------------------- */
.entry-style code:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=code-highlight], [class~=code-highlight] *)) {
  padding: 0 0.25rem;
  margin-inline: 0.25rem;
  font-size: 87.5%;
  color: var(--color-primary);
  background-color: var(--color-white);
  border: var(--border-width-sm) solid currentcolor;
  border-radius: var(--border-radius-sm);
}

.acms-admin-block-editor-body code {
  padding: 0 0.25rem;
  margin-inline: 0.25rem;
  font-size: 87.5%;
  color: var(--color-primary);
  background-color: var(--color-white);
  border: var(--border-width-sm) solid currentcolor;
  border-radius: var(--border-radius-sm);
}

/* 見出し
----------------------------- */
.entry-style h1:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h1 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h2 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h3 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h4 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h5:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h5 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h6:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.acms-admin-block-editor-body h6 {
  margin-block: calc(var(--entry-el-margin-md) + var(--unit-heading-margin-top-add)) var(--entry-el-margin-sm);
}

.entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.acms-admin-block-editor-body h2.heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.acms-admin-block-editor-body h2.heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.acms-admin-block-editor-body h2.heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.acms-admin-block-editor-body h3.heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.acms-admin-block-editor-body h3.heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.acms-admin-block-editor-body h3.heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.acms-admin-block-editor-body h4.heading-line {
  padding-block-end: var(--entry-el-padding-xs);
  border-block-end: var(--border-width-md) solid var(--color-gray100);
}
.acms-admin-block-editor-body h4.heading-primary {
  position: relative;
  padding-block-end: calc(var(--entry-el-padding-xs) + var(--border-width-lg));
}
.acms-admin-block-editor-body h4.heading-primary::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 2em;
  height: var(--border-width-lg);
  content: "";
  background: var(--color-primary);
}

.entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  font-size: 1.5625rem;
  line-height: var(--line-height-md);
}
@media (min-width: 48rem) {
  .entry-style h2:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
    font-size: 1.953125rem;
    line-height: var(--line-height-sm);
  }
}

.acms-admin-block-editor-body h2 {
  font-size: 1.5625rem;
  line-height: var(--line-height-md);
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body h2 {
    font-size: 1.953125rem;
    line-height: var(--line-height-sm);
  }
}

.entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  font-size: 1.25rem;
  line-height: var(--line-height-lg);
}
@media (min-width: 48rem) {
  .entry-style h3:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
    font-size: 1.5625rem;
    line-height: var(--line-height-md);
  }
}

.acms-admin-block-editor-body h3 {
  font-size: 1.25rem;
  line-height: var(--line-height-lg);
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body h3 {
    font-size: 1.5625rem;
    line-height: var(--line-height-md);
  }
}

.entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  font-size: 1rem;
  line-height: var(--line-height-base);
}
@media (min-width: 48rem) {
  .entry-style h4:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
    font-size: 1.25rem;
    line-height: var(--line-height-lg);
  }
}

.acms-admin-block-editor-body h4 {
  font-size: 1rem;
  line-height: var(--line-height-base);
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body h4 {
    font-size: 1.25rem;
    line-height: var(--line-height-lg);
  }
}

/* 本文
----------------------------- */
.entry-style p:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-block: 0 var(--entry-el-margin-md);
  font-size: 1rem;
}

.acms-admin-block-editor-body p {
  margin-block: 0 var(--entry-el-margin-md);
  font-size: 1rem;
}

/* リスト
----------------------------- */
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  --list-space-y: 0.5rem; /* アイテム間の縦余白 */
  display: grid;
  gap: var(--list-space-y);
  padding-left: calc(1lh + 0.375rem);
  margin-block: 0 var(--entry-el-margin-md);
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li { /* ul 内に ol, ol 内に ul が入っていた時の対策として子セレクタで指定 */
  position: relative;
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li::marker {
  content: none;
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li::before {
  position: absolute;
  top: calc(0.5lh - 0.1875rem);
  left: calc((0.5lh + 0.1875rem) * -1);
  width: 0.375rem;
  height: 0.375rem;
  content: "";
  background: var(--color-secondary);
  border-radius: 50%;
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li:last-child {
  margin-bottom: 0;
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li > * {
  /* ブロックエディタ：リセット用 */
  margin-bottom: 0;
}
.entry-style ul:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li ul {
  margin-top: var(--list-space-y);
}

.acms-admin-block-editor-body ul {
  --list-space-y: 0.5rem; /* アイテム間の縦余白 */
  display: grid;
  gap: var(--list-space-y);
  padding-left: calc(1lh + 0.375rem);
  margin-block: 0 var(--entry-el-margin-md);
}
.acms-admin-block-editor-body ul > li { /* ul 内に ol, ol 内に ul が入っていた時の対策として子セレクタで指定 */
  position: relative;
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.acms-admin-block-editor-body ul > li::marker {
  content: none;
}
.acms-admin-block-editor-body ul > li::before {
  position: absolute;
  top: calc(0.5lh - 0.1875rem);
  left: calc((0.5lh + 0.1875rem) * -1);
  width: 0.375rem;
  height: 0.375rem;
  content: "";
  background: var(--color-secondary);
  border-radius: 50%;
}
.acms-admin-block-editor-body ul > li:last-child {
  margin-bottom: 0;
}
.acms-admin-block-editor-body ul > li > * {
  /* ブロックエディタ：リセット用 */
  margin-bottom: 0;
}
.acms-admin-block-editor-body ul > li ul {
  margin-top: var(--list-space-y);
}

/* 番号付きリスト */
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  --order-list-space-y: 0.5rem; /* アイテム間の縦余白 */
  display: grid;
  grid-template-columns: minmax(1lh, auto) 1fr; /* 列を「番号用」と「テキスト用」に分ける */ /* ulの1階層目テキストはじまりと揃えるために minmax(1lh, auto) で最小値を設定 */
  gap: var(--order-list-space-y) 0.375rem; /* アイテム間余白, 番号とテキスト間余白 */
  padding-inline-start: 0;
  margin-block: 0 var(--entry-el-margin-md);
  counter-reset: order-list;
}
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li { /* ul 内に ol, ol 内に ul が入っていた時の対策として子セレクタで指定 */
  display: grid;
  grid-template-columns: subgrid; /* アイテム番号の幅を揃えるための設定 */
  grid-column: 1/-1; /* 列をまたいで全幅を確保 */
  grid-auto-flow: column;
  clear: both;
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li::marker {
  content: none;
}
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li::before {
  grid-column: 1;
  padding-top: 1.4px; /* 番号位置の微調整 */
  font-weight: bold;
  color: var(--color-text-2nd);
  word-break: keep-all;
  white-space: nowrap;
  content: counters(order-list, "-") ". ";
  counter-increment: order-list;
}
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li > * {
  /* ブロックエディタ：リセット用 */
  margin-bottom: 0;
}
.entry-style ol:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > li ol {
  grid-column: 1/-1; /* 列をまたいで全幅を確保 */
  padding-left: 1rem;
  margin-top: var(--order-list-space-y);
}

.acms-admin-block-editor-body ol {
  --order-list-space-y: 0.5rem; /* アイテム間の縦余白 */
  display: grid;
  grid-template-columns: minmax(1lh, auto) 1fr; /* 列を「番号用」と「テキスト用」に分ける */ /* ulの1階層目テキストはじまりと揃えるために minmax(1lh, auto) で最小値を設定 */
  gap: var(--order-list-space-y) 0.375rem; /* アイテム間余白, 番号とテキスト間余白 */
  padding-inline-start: 0;
  margin-block: 0 var(--entry-el-margin-md);
  counter-reset: order-list;
}
.acms-admin-block-editor-body ol > li { /* ul 内に ol, ol 内に ul が入っていた時の対策として子セレクタで指定 */
  display: grid;
  grid-template-columns: subgrid; /* アイテム番号の幅を揃えるための設定 */
  grid-column: 1/-1; /* 列をまたいで全幅を確保 */
  grid-auto-flow: column;
  clear: both;
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.acms-admin-block-editor-body ol > li::marker {
  content: none;
}
.acms-admin-block-editor-body ol > li::before {
  grid-column: 1;
  padding-top: 1.4px; /* 番号位置の微調整 */
  font-weight: bold;
  color: var(--color-text-2nd);
  word-break: keep-all;
  white-space: nowrap;
  content: counters(order-list, "-") ". ";
  counter-increment: order-list;
}
.acms-admin-block-editor-body ol > li > * {
  /* ブロックエディタ：リセット用 */
  margin-bottom: 0;
}
.acms-admin-block-editor-body ol > li ol {
  grid-column: 1/-1; /* 列をまたいで全幅を確保 */
  padding-left: 1rem;
  margin-top: var(--order-list-space-y);
}

/* 記述リスト */
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  display: block; /* リセット用 */
  padding-block: 0; /* リセット用 */
  margin-block: 0 var(--entry-el-margin-md);
  border: 0; /* リセット用 */
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) dt {
  margin-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: bold;
  line-height: var(--line-height-base);
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) dd {
  margin-bottom: 1rem;
  margin-left: 0; /* リセット用 */
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) dd + dt {
  margin-top: 0; /* リセット用 */
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered {
  border: var(--border-width-sm) solid var(--color-gray30);
  border-radius: var(--border-radius-lg);
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered dt {
  padding-inline: var(--entry-el-padding-sm);
  padding-top: var(--entry-el-padding-sm);
  border-top: var(--border-width-sm) solid var(--color-gray30);
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered dt:first-child {
  border: 0;
}
.entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered dd {
  padding-inline: var(--entry-el-padding-sm);
  padding-bottom: var(--entry-el-padding-sm);
  margin-bottom: 0;
}
@media (min-width: 48rem) {
  .entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered dt {
    padding-inline: var(--entry-el-padding-md);
    padding-top: var(--entry-el-padding-md);
  }
  .entry-style dl:not(:where([class~=not-editor-style], [class~=not-editor-style] *)).box-bordered dd {
    padding-inline: var(--entry-el-padding-md);
    padding-bottom: var(--entry-el-padding-md);
  }
}

.acms-admin-block-editor-body dl {
  display: block; /* リセット用 */
  padding-block: 0; /* リセット用 */
  margin-block: 0 var(--entry-el-margin-md);
  border: 0; /* リセット用 */
}
.acms-admin-block-editor-body dl dt {
  margin-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: bold;
  line-height: var(--line-height-base);
}
.acms-admin-block-editor-body dl dd {
  margin-bottom: 1rem;
  margin-left: 0; /* リセット用 */
  font-size: 1rem;
  line-height: var(--line-height-base);
}
.acms-admin-block-editor-body dl dd + dt {
  margin-top: 0; /* リセット用 */
}
.acms-admin-block-editor-body dl.box-bordered {
  border: var(--border-width-sm) solid var(--color-gray30);
  border-radius: var(--border-radius-lg);
}
.acms-admin-block-editor-body dl.box-bordered dt {
  padding-inline: var(--entry-el-padding-sm);
  padding-top: var(--entry-el-padding-sm);
  border-top: var(--border-width-sm) solid var(--color-gray30);
}
.acms-admin-block-editor-body dl.box-bordered dt:first-child {
  border: 0;
}
.acms-admin-block-editor-body dl.box-bordered dd {
  padding-inline: var(--entry-el-padding-sm);
  padding-bottom: var(--entry-el-padding-sm);
  margin-bottom: 0;
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body dl.box-bordered dt {
    padding-inline: var(--entry-el-padding-md);
    padding-top: var(--entry-el-padding-md);
  }
  .acms-admin-block-editor-body dl.box-bordered dd {
    padding-inline: var(--entry-el-padding-md);
    padding-bottom: var(--entry-el-padding-md);
  }
}

/* ソースコード
----------------------------- */
.entry-style pre:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=code-highlight], [class~=code-highlight] *)) {
  max-width: 100%;
  padding: var(--entry-el-padding-sm);
  margin-block: 0 var(--entry-el-margin-md);
  overflow: auto;
  font-size: 1rem;
  line-height: var(--line-height-lg);
  color: var(--color-text); /* 閲覧側画面の文字色はライブラリに依存 */
  background-color: var(--color-white);
  border: var(--border-width-sm) solid var(--color-primary);
  border-radius: var(--border-radius-lg);
}
.entry-style pre:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=code-highlight], [class~=code-highlight] *)) code {
  padding: 0;
  /* リセット用 */
  margin: 0;
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  border: none;
  box-shadow: none;
}
@media (min-width: 48rem) {
  .entry-style pre:not(:where([class~=not-editor-style], [class~=not-editor-style] *, [class~=code-highlight], [class~=code-highlight] *)) {
    padding: var(--entry-el-padding-md);
  }
}

.acms-admin-block-editor-body pre {
  max-width: 100%;
  padding: var(--entry-el-padding-sm);
  margin-block: 0 var(--entry-el-margin-md);
  overflow: auto;
  font-size: 1rem;
  line-height: var(--line-height-lg);
  color: var(--color-text); /* 閲覧側画面の文字色はライブラリに依存 */
  background-color: var(--color-white);
  border: var(--border-width-sm) solid var(--color-primary);
  border-radius: var(--border-radius-lg);
}
.acms-admin-block-editor-body pre code {
  padding: 0;
  /* リセット用 */
  margin: 0;
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  border: none;
  box-shadow: none;
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body pre {
    padding: var(--entry-el-padding-md);
  }
}

/* 水平罫線
----------------------------- */
.entry-style hr:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-bottom: var(--entry-el-margin-md);
  border: 0 solid var(--color-gray70);
  border-top-width: var(--border-width-sm);
}
@media (min-width: 48rem) {
  .entry-style hr:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
    margin-bottom: var(--entry-el-margin-lg);
  }
}

.acms-admin-block-editor-body hr {
  margin-bottom: var(--entry-el-margin-md);
  border: 0 solid var(--color-gray70);
  border-top-width: var(--border-width-sm);
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body hr {
    margin-bottom: var(--entry-el-margin-lg);
  }
}

/* ブロックエディタ用 */
[data-type=horizontalRule] {
  margin-block: var(--entry-el-margin-md);
}
[data-type=horizontalRule] hr {
  margin-block: 0;
}
@media (min-width: 48rem) {
  [data-type=horizontalRule] {
    margin-block: var(--entry-el-margin-md);
  }
  [data-type=horizontalRule] hr {
    margin-block: 0;
  }
}

/* ------------------------------
 ブロックエディター内要素のレイアウト
------------------------------ */
/* レイアウト */
:where(.entry-style) :where([data-type=columns]) {
  box-sizing: border-box;
  display: grid;
  grid-auto-flow: column;
}
:where(.entry-style) :where([data-type=columns]).layout-two-column {
  grid-template-columns: repeat(2, 1fr);
}
:where(.entry-style) :where([data-type=columns]).layout-three-column {
  grid-template-columns: repeat(3, 1fr);
}

/* 管理画面側 */
:where(.acms-admin-block-editor) :where([data-type=columns]) {
  gap: 1rem !important;
}

/* 閲覧画面側 */
:where(.entry-style) :where([data-type=columns]) {
  gap: var(--unit-gutter-var);
}

/* ------------------------------
 グループユニット
------------------------------ */
.entry-style .gu-bg-gray {
  padding: var(--entry-el-padding-md) var(--entry-el-padding-xs);
  margin: 0 0 var(--entry-el-margin-md) 0;
  background: var(--color-gray10);
  border-radius: var(--border-radius-lg);
}
.entry-style .gu-bg-gray > *:not(.not-editor-style):first-child,
.entry-style .gu-bg-gray > *:first-child.column-block-editor > *:first-child {
  margin-top: 0;
}
.entry-style .gu-bg-gray > *:not(.not-editor-style):last-child,
.entry-style .gu-bg-gray > *:last-child.column-block-editor > *:last-child {
  margin-bottom: 0;
}
.entry-style .gu-narrow {
  max-width: 80%;
  margin-right: auto;
  margin-left: auto;
}

/* ------------------------------
 ユニット配置
------------------------------ */
.align-left {
  display: flex;
}
.align-left {
  justify-content: flex-start;
}

.align-right {
  display: flex;
}
.align-right {
  justify-content: flex-end;
}

.align-center {
  display: flex;
}
.align-center {
  justify-content: center;
}

/* ------------------------------
 引用
------------------------------ */
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  padding: var(--entry-el-padding-sm);
  margin-block: 0 var(--entry-el-margin-md);
  /* リセット用 */
  margin-inline: 0;
  font-size: 1rem;
  line-height: var(--line-height-xl);
  border: var(--border-width-md) solid var(--color-gray30);
  /* ブロックエディタ調整：リセット用 */
  /* ブロックエディタ調整 */
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) > * {
  margin-block: 0;
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) * + * {
  margin-block-start: 1rem;
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
  /* 中に画像が入っているリンクの時 */
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a[target=_blank] {
  margin-right: 4px;
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:-moz-any-link:hover {
    text-decoration: none;
  }
  .entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:any-link:hover {
    text-decoration: none;
  }
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:has(img) {
  display: inline-block;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
@media (hover: hover) {
  .entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:has(img):hover {
    opacity: 0.7;
  }
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) img {
  width: 100%;
}
.entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) strong {
  /* リセット用 */
  background: transparent;
}
@media (min-width: 48rem) {
  .entry-style blockquote:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
    padding: var(--entry-el-padding-md);
    margin-bottom: var(--entry-el-margin-lg);
  }
}

.acms-admin-block-editor-body blockquote {
  padding: var(--entry-el-padding-sm);
  margin-block: 0 var(--entry-el-margin-md);
  /* リセット用 */
  margin-inline: 0;
  font-size: 1rem;
  line-height: var(--line-height-xl);
  border: var(--border-width-md) solid var(--color-gray30);
  /* ブロックエディタ調整：リセット用 */
  /* ブロックエディタ調整 */
}
.acms-admin-block-editor-body blockquote > * {
  margin-block: 0;
}
.acms-admin-block-editor-body blockquote * + * {
  margin-block-start: 1rem;
}
.acms-admin-block-editor-body blockquote a {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
  /* 中に画像が入っているリンクの時 */
}
.acms-admin-block-editor-body blockquote a[target=_blank] {
  margin-right: 4px;
}
.acms-admin-block-editor-body blockquote a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .acms-admin-block-editor-body blockquote a:-moz-any-link:hover {
    text-decoration: none;
  }
  .acms-admin-block-editor-body blockquote a:any-link:hover {
    text-decoration: none;
  }
}
.acms-admin-block-editor-body blockquote a:has(img) {
  display: inline-block;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
@media (hover: hover) {
  .acms-admin-block-editor-body blockquote a:has(img):hover {
    opacity: 0.7;
  }
}
.acms-admin-block-editor-body blockquote img {
  width: 100%;
}
.acms-admin-block-editor-body blockquote strong {
  /* リセット用 */
  background: transparent;
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body blockquote {
    padding: var(--entry-el-padding-md);
    margin-bottom: var(--entry-el-margin-lg);
  }
}

/* ------------------------------
 リンクボタン
------------------------------ */
/* 上下余白 */
:where(.entry-style) [data-type=linkButton] {
  margin-block: 0 var(--entry-el-margin-md);
}

/* リンク */
:where(.entry-style) [data-type=linkButton] a {
  box-sizing: border-box;
  display: inline-flex;
  gap: 4px;
  place-items: center;
  min-height: 3rem;
  padding: var(--btn-padding-y) var(--btn-padding-x);
  margin-right: 0; /* リセット */
  font-size: 1rem;
  font-weight: bold;
  line-height: var(--line-height-base);
  text-decoration: none; /* リセット */
  background-color: var(--color-primary);
  border-radius: var(--border-radius-md);
}
:where(.entry-style) [data-type=linkButton] a, :where(.entry-style) [data-type=linkButton] a:link, :where(.entry-style) [data-type=linkButton] a:visited {
  color: var(--color-white);
}
:where(.entry-style) [data-type=linkButton] a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (any-hover: hover) {
  :where(.entry-style) [data-type=linkButton] a {
    transition: background-color 0.2s ease;
  }
  :where(.entry-style) [data-type=linkButton] a:where(:-moz-any-link):hover {
    background: var(--color-primary-hover);
    opacity: 1;
  }
  :where(.entry-style) [data-type=linkButton] a:where(:any-link):hover {
    background: var(--color-primary-hover);
    opacity: 1;
  }
}

/* ------------------------------
 カスタムユニット
------------------------------ */
/* メッセージユニット
------------------------------ */
.entry-style .message {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0 0 var(--entry-el-margin-md);
  overflow: hidden;
  background: var(--color-gray10);
  border-radius: var(--border-radius-lg);
}
.entry-style .message-wrap {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 2rem 1rem;
}
.entry-style .message-image {
  height: 15rem;
  overflow: hidden;
}
.entry-style .message-image img {
  width: 100%;
  height: auto;
}
.entry-style .message-lead {
  position: relative;
  margin: 0;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: var(--line-height-lg);
}
.entry-style .message-content {
  margin: 0;
}
.entry-style .message-source {
  margin: 0;
}
.entry-style .message-source::before {
  display: inline-block;
  width: 1.5rem;
  height: 1px;
  margin: 0 1rem 0 0;
  vertical-align: middle;
  content: "";
  background: var(--color-gray30);
}

@media (min-width: 48rem) {
  .entry-style .message {
    flex-direction: row;
  }
  .entry-style .message-wrap {
    position: relative;
    box-sizing: border-box;
    width: 50%;
    padding: 6rem 3rem;
  }
  .entry-style .message-image {
    order: 1;
    width: 50%;
    height: initial;
  }
  .entry-style .message-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .entry-style .message-lead {
    height: auto;
    font-size: 1.5625rem;
    line-height: var(--line-height-md);
  }
  .entry-style .message-content {
    margin: 0;
  }
}
/* ------------------------------
 埋め込みユニット
------------------------------ */
[class*=column-embed-] {
  margin-block: var(--unit-margin-top) var(--unit-margin-bottom);
}
[class*=column-embed-] a.acms-embed-link {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: var(--color-text);
  text-decoration: none;
  border: var(--border-width-sm) solid var(--color-gray30);
  border-radius: var(--border-radius-lg);
}
@media (hover: hover) {
  [class*=column-embed-] a.acms-embed-link {
    transition: background-color 0.3s ease;
  }
  [class*=column-embed-] a.acms-embed-link:hover {
    background-color: var(--color-hover-bg);
  }
}
[class*=column-embed-] .acms-embed-link-image-container img {
  display: block;
  max-width: 100%;
  height: auto;
}
[class*=column-embed-] .acms-embed-link-content {
  padding: 1rem;
  margin: 0; /* リセット */
}
[class*=column-embed-] .acms-embed-link-site-name {
  margin: 0;
  font-size: 0.8rem;
  color: var(--color-text);
}
[class*=column-embed-] .acms-embed-link-title {
  margin: 0 0 0.25rem;
  overflow: hidden;
  font-size: 1rem;
  font-weight: bold;
  text-overflow: ellipsis;
  white-space: nowrap;
}
[class*=column-embed-] .acms-embed-link-description {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  font-size: 0.8rem;
  color: var(--color-text-2nd);
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media (min-width: 48rem) {
  [class*=column-embed-] a.acms-embed-link {
    flex-direction: row;
  }
  [class*=column-embed-] .acms-embed-link-image-container {
    box-sizing: border-box;
    flex: 1 0 auto;
    width: 33.3333333333%;
    padding: 0;
  }
  [class*=column-embed-] .acms-embed-link-image-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  [class*=column-embed-] .acms-embed-link-content {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    width: 0.6666666667;
    padding: 1rem;
    overflow: hidden;
  }
  [class*=column-embed-] .acms-embed-link-title {
    margin: 0;
    overflow: hidden;
    font-size: 1rem;
    font-weight: bold;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* ------------------------------
 - ブロックエディタのファイル（縦積み、ボタン型）
 - メディアファイル
 - ファイル
 ※ media-downloadは動的、storageは静的書き出しに対応
------------------------------ */
:where(.entry-style) [data-type=fileBlock],
[class*=column-media]:has(a[href*=media-download], a[href*=storage]),
[class*=column-file] {
  margin-block: 0 var(--entry-el-margin-md);
  font-size: 0; /* Descender space 対策 */
}

/* ボタン型
------------------------------ */
/* リンク */
:where(.entry-style) [data-type=fileBlock][data-display-type=button] a,
:where(.entry-style) [class*=column-media] a[href*=media-download],
:where(.entry-style) [class*=column-media] a[href*=storage],
:where(.entry-style) [class*=column-file] a {
  box-sizing: border-box;
  display: inline-flex;
  gap: 1rem;
  align-items: center;
  padding: 1rem 1.5rem;
  color: var(--color-text);
  text-decoration: none; /* リセット用 */
  background-color: var(--color-white);
  border: var(--border-width-sm) solid var(--color-gray40);
  border-radius: var(--border-radius-md);
}
@media (any-hover: hover) {
  :where(.entry-style) [data-type=fileBlock][data-display-type=button] a,
  :where(.entry-style) [class*=column-media] a[href*=media-download],
  :where(.entry-style) [class*=column-media] a[href*=storage],
  :where(.entry-style) [class*=column-file] a {
    transition: background-color 0.2s ease;
  }
  :where(.entry-style) [data-type=fileBlock][data-display-type=button] a:where(:-moz-any-link):hover, :where(.entry-style) [class*=column-media] a[href*=media-download]:where(:-moz-any-link):hover, :where(.entry-style) [class*=column-media] a[href*=storage]:where(:-moz-any-link):hover, :where(.entry-style) [class*=column-file] a:where(:-moz-any-link):hover {
    background-color: var(--color-gray20);
    border-color: var(--color-gray40); /* hover動作上書きのため */
  }
  :where(.entry-style) [data-type=fileBlock][data-display-type=button] a:where(:any-link):hover,
  :where(.entry-style) [class*=column-media] a[href*=media-download]:where(:any-link):hover,
  :where(.entry-style) [class*=column-media] a[href*=storage]:where(:any-link):hover,
  :where(.entry-style) [class*=column-file] a:where(:any-link):hover {
    background-color: var(--color-gray20);
    border-color: var(--color-gray40); /* hover動作上書きのため */
  }
}

/* ファイルアイコン */
:where(.entry-style) [data-type=fileBlock][data-display-type=button] img,
:where(.entry-style) [class*=column-media] .columnIcon,
:where(.entry-style) [class*=column-file] .columnIcon {
  display: inline-block;
  width: 2rem;
  max-width: 100%;
  height: auto;
}

/* キャプションタイポグラフィ設定 */
:where(.entry-style) [data-type=fileBlock] .caption,
:where(.entry-style) [class*=column-file] .caption,
:where(.entry-style) [class*=column-media]:has(a[href*=media-download], a[href*=storage]):has(.columnIcon):not(:has(.column-pdf-image)) .caption {
  margin: 0; /* リセット */
  font-size: 1rem;
  line-height: var(--line-height-base);
  color: currentcolor;
}

/* PDFプレビュー
------------------------------ */
/* リンク */
:where(.entry-style) [class*=column-media]:has(.column-pdf-image) a {
  display: inline-grid;
  gap: 0.5rem;
  justify-items: center;
  /* リンクスタイルリセット */
  padding: 0;
  border: 0;
}
@media (any-hover: hover) {
  :where(.entry-style) [class*=column-media]:has(.column-pdf-image) a:hover {
    background-color: transparent; /* リセット */
  }
  :where(.entry-style) [class*=column-media]:has(.column-pdf-image) a:hover .column-pdf-image {
    opacity: 0.7;
  }
  :where(.entry-style) [class*=column-media]:has(.column-pdf-image) a:hover .caption {
    border-bottom-color: currentcolor;
  }
}

:where(.entry-style) .column-pdf-image {
  max-width: 100%;
  border: var(--border-width-sm) solid var(--color-gray40);
  transition: opacity 0.2s ease;
}

:where(.entry-style) .column-pdf-image-caption-box {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  margin: 0;
}
:where(.entry-style) .column-pdf-image-caption-box .columnIcon {
  width: 2rem;
}
:where(.entry-style) .column-pdf-image-caption-box .caption {
  margin: 0; /* リセット */
  font-size: 0.8rem;
  line-height: var(--line-height-base);
  color: var(--color-text-2nd);
  border-bottom: var(--border-width-sm) dotted transparent;
}
:where(.entry-style) .column-pdf-image-caption-box .column-pdf-image-download-icon {
  display: inline-block;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  color: var(--color-text);
}
:where(.entry-style) .column-pdf-image-caption-box .column-pdf-image-download-icon svg {
  width: 100%;
  height: 100%;
  color: inherit;
  -o-object-fit: contain;
     object-fit: contain;
}
:where(.entry-style) .column-pdf-image-caption-box .column-pdf-image-download-icon svg path {
  stroke: currentcolor;
}

/* ブロックエディタのファイル（縦積み）
------------------------------ */
/* キャプション */
:where(.entry-style) [data-type=fileBlock][data-display-type=icon] .caption {
  display: block;
  margin: 4px 0 0; /* 余白リセットのため全方向指定 */
  font-size: 1rem;
  line-height: var(--line-height-base);
  color: var(--color-text);
}

:where(.entry-style) [data-type=fileBlock][data-display-type=icon] {
  text-align: center;
}
:where(.entry-style) [data-type=fileBlock][data-display-type=icon] img {
  width: 4.5rem;
  max-width: 100%;
  height: auto;
}

/* リンク動作スタイル（閲覧画面のみ） */
:where(.entry-style) [data-type=fileBlock][data-display-type=icon] a {
  /* リンクスタイルリセット */
  padding: 0;
  border: 0;
}
@media (any-hover: hover) {
  :where(.entry-style) [data-type=fileBlock][data-display-type=icon] a {
    transition: opacity 0.2s ease;
  }
  :where(.entry-style) [data-type=fileBlock][data-display-type=icon] a:hover {
    opacity: 0.7;
  }
}

/* ------------------------------
 メディア画像・画像・画像URL
------------------------------ */
/* 共通設定
------------------------------ */
:where(.entry-style) figure,
:where(.entry-style) [role=figure]:not(:has(a[href*=media-download], a[href*=storage])) {
  margin-block: 0 var(--entry-el-margin-md);
  margin-inline: 0;
  line-height: 0; /* Descender space 対策 */
  text-align: center;
}
:where(.entry-style) figure a,
:where(.entry-style) [role=figure]:not(:has(a[href*=media-download], a[href*=storage])) a {
  display: inline-block;
  /* リセット用 */
  text-decoration: none;
  /* マウスオーバー用 */
  transition: opacity 0.2s ease;
}
:where(.entry-style) figure a:hover,
:where(.entry-style) [role=figure]:not(:has(a[href*=media-download], a[href*=storage])) a:hover {
  opacity: 0.7;
}
:where(.entry-style) figure img,
:where(.entry-style) [role=figure]:not(:has(a[href*=media-download], a[href*=storage])) img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  border-radius: var(--border-radius-lg);
}

/* キャプション
------------------------------ */
:where(.entry-style) figcaption,
:where(.entry-style) [role=figure]:not(:has(a[href*=media-download], a[href*=storage])) .caption {
  display: block;
  margin: 4px 0 0; /* 余白リセットのため全方向指定 */
  font-size: 0.8rem;
  line-height: var(--line-height-base);
  color: var(--color-text-2nd);
}

/* ------------------------------
 地図
------------------------------ */
.column-map,
.column-street-view {
  margin-block: var(--unit-margin-top) var(--unit-margin-bottom);
}

:where(.column-map div:has(> .js-open-street-map)),
:where(.column-map div:has(> .js-s2d-ready)),
:where(.column-street-view div:has(> .js-street-view)) {
  max-width: 100%;
}

:where(.column-map .js-open-street-map),
:where(.column-map .js-s2d-ready),
:where(.column-street-view .js-street-view) {
  aspect-ratio: 16/9; /* デフォルトのアスペクト比 */
  border-radius: var(--border-radius-lg);
}

/* ------------------------------
 モジュールユニット
------------------------------ */
[class*=column-module] {
  margin-block: var(--unit-margin-top) var(--unit-margin-bottom);
}

/* ------------------------------
 テーブル
------------------------------ */
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin: 0 0 var(--entry-el-margin-md);
  overflow: hidden;
  border-spacing: 0;
  border-collapse: separate; /* テーブルに角丸をつけるため separate にしています */
  background-color: var(--color-white);
  border: var(--border-width-sm) solid var(--color-gray30);
  border-radius: var(--border-radius-lg);
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th,
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td {
  padding: var(--entry-el-padding-xs);
  font-size: 1rem;
  line-height: var(--line-height-base);
  border: 0; /* リセット */
  border-top: var(--border-width-sm) solid var(--color-gray30);
  border-left: var(--border-width-sm) solid var(--color-gray30);
  /* 要素間余白を確保(管理画面での行列操作用UIを考慮しつつ) */
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th > *,
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td > * {
  margin-block: 0; /* リセット */
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th > *:not(.ProseMirror-widget) + *,
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td > *:not(.ProseMirror-widget) + * {
  margin-block-start: 1rem;
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th:first-child,
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td:first-child {
  border-left: 0;
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) tr:first-child th,
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) tr:first-child td {
  border-top: 0;
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th {
  text-align: left;
  vertical-align: top;
  background-color: var(--color-gray10);
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td {
  background-color: var(--color-white); /* リセット用 */
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a[target=_blank] {
  margin-right: 4px;
}
.entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:-moz-any-link:hover {
    text-decoration: none;
  }
  .entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) a:any-link:hover {
    text-decoration: none;
  }
}
@media (min-width: 48rem) {
  .entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) th,
  .entry-style table:not(:where([class~=not-editor-style], [class~=not-editor-style] *)) td {
    padding: var(--entry-el-padding-sm);
    font-size: 1rem;
  }
}

.acms-admin-block-editor-body table {
  margin: 0 0 var(--entry-el-margin-md);
  overflow: hidden;
  border-spacing: 0;
  border-collapse: separate; /* テーブルに角丸をつけるため separate にしています */
  background-color: var(--color-white);
  border: var(--border-width-sm) solid var(--color-gray30);
  border-radius: var(--border-radius-lg);
}
.acms-admin-block-editor-body table th,
.acms-admin-block-editor-body table td {
  padding: var(--entry-el-padding-xs);
  font-size: 1rem;
  line-height: var(--line-height-base);
  border: 0; /* リセット */
  border-top: var(--border-width-sm) solid var(--color-gray30);
  border-left: var(--border-width-sm) solid var(--color-gray30);
  /* 要素間余白を確保(管理画面での行列操作用UIを考慮しつつ) */
}
.acms-admin-block-editor-body table th > *,
.acms-admin-block-editor-body table td > * {
  margin-block: 0; /* リセット */
}
.acms-admin-block-editor-body table th > *:not(.ProseMirror-widget) + *,
.acms-admin-block-editor-body table td > *:not(.ProseMirror-widget) + * {
  margin-block-start: 1rem;
}
.acms-admin-block-editor-body table th:first-child,
.acms-admin-block-editor-body table td:first-child {
  border-left: 0;
}
.acms-admin-block-editor-body table tr:first-child th,
.acms-admin-block-editor-body table tr:first-child td {
  border-top: 0;
}
.acms-admin-block-editor-body table th {
  text-align: left;
  vertical-align: top;
  background-color: var(--color-gray10);
}
.acms-admin-block-editor-body table td {
  background-color: var(--color-white); /* リセット用 */
}
.acms-admin-block-editor-body table a {
  color: currentcolor;
  -webkit-text-decoration: underline dotted 2px;
          text-decoration: underline dotted 2px;
  text-underline-offset: 3px;
}
.acms-admin-block-editor-body table a[target=_blank] {
  margin-right: 4px;
}
.acms-admin-block-editor-body table a[target=_blank]::after {
  display: inline-block;
  flex: none;
  width: 0.875em;
  height: 0.875em;
  margin-left: 4px;
  vertical-align: baseline;
  content: "";
  background-color: currentcolor;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTIgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjI1IDYuMjkxNjdWMTEuMjVIMC43NVYwLjc1SDUuNzA4MzMiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik0xMS4yNTA3IDAuNzVMNS43MDg5OCA2LjI5MTY3IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTEuMjQ5MyA0LjgzMzMzVjAuNzVINy4xNjYwMiIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ii8+PC9zdmc+Cg==);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media (hover: hover) {
  .acms-admin-block-editor-body table a:-moz-any-link:hover {
    text-decoration: none;
  }
  .acms-admin-block-editor-body table a:any-link:hover {
    text-decoration: none;
  }
}
@media (min-width: 48rem) {
  .acms-admin-block-editor-body table th,
  .acms-admin-block-editor-body table td {
    padding: var(--entry-el-padding-sm);
    font-size: 1rem;
  }
}

.entry-style div:has(> table):not(:where([class~=not-editor-style], [class~=not-editor-style] *)) {
  margin-bottom: var(--entry-el-margin-md);
  overflow-x: auto;
}
.entry-style div:has(> table):not(:where([class~=not-editor-style], [class~=not-editor-style] *)) table {
  width: 100%;
  margin: 0;
}

.acms-admin-block-editor-body div:has(> table) {
  margin-bottom: var(--entry-el-margin-md);
  overflow-x: auto;
}
.acms-admin-block-editor-body div:has(> table) table {
  width: 100%;
  margin: 0;
}

/* スクロールするテーブル */
.acms-table-scrollable th,
.acms-table-scrollable td,
.js-table-unit-scroll-hint th,
.js-table-unit-scroll-hint td {
  word-break: keep-all;
  white-space: nowrap;
}

/* ブロックエディター編集画面用打ち消し */
.acms-admin-block-editor-content .entry-style table {
  overflow: visible; /* ブロックエディター編集画面では装飾操作用UIの表示を妨げないように「overflow: hidden;」はしないでください */
  border-radius: 0;
}

/* ------------------------------
 動画ユニット
------------------------------ */
.column-youtube,
.column-video {
  margin-block: var(--unit-margin-top) var(--unit-margin-bottom);
}

:where(.column-iframe iframe) {
  display: block; /* Descender space 対策 */
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9; /* デフォルトのアスペクト比 */
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUN5RGhCOztFQUFBO0FBNkJBOztFQUFBO0FBbUJBOztFQUFBO0FDdEdBOztpQ0FBQTtBQ0RBOztnQ0FBQTtBQU1FO0VBQ0U7QUhTSjtBR0xFOzs7RUFHRTtBSE9KOztBR0ZBO0VBQ0U7QUhLRjtBR0pFO0VBS0U7QUhFSjs7QUdHRTs7RUFFRTtFQUNBO0FIQUo7QUdHRTs7Ozs7OztFQU9FO0VBQ0E7QUhESjs7QUk5QkE7QUFlQTtBQzVCQTs7Z0NBQUE7QUFJQTtBQUNBO0VBQ0U7QUwrQ0Y7QUs3Q0U7RUFDRTtBTCtDSjtBSzdDSTtFQUNFO0FMK0NOOztBTTFEQTs7Z0NBQUE7QUFJQTsrQkFBQTtBQ29CSTtFQ3pCRixtQkFEdUI7RUFFdkI7VUFBQTtFQUNBO0FSb0VGO0FRbEVFO0VBQ0U7QVJvRUo7QVFsRUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhCQWhCbUI7RUFpQm5CO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBUm9FTjtBUWhFRTtFQUNFO0lBQ0U7RVJrRUo7RVFuRUU7SUFDRTtFUmtFSjtBQUNGOztBTzFETTtFQ2pDSixtQkFEdUI7RUFFdkI7VUFBQTtFQUNBO0FSK0ZGO0FRN0ZFO0VBQ0U7QVIrRko7QVE3Rkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhCQWhCbUI7RUFpQm5CO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBUitGTjtBUTNGRTtFQUNFO0lBQ0U7RVI2Rko7RVE5RkU7SUFDRTtFUjZGSjtBQUNGOztBTXhHQTsrQkFBQTtBQ1dJO0VETkY7QU55R0Y7O0FPM0ZNO0VEZEo7QU42R0Y7O0FNMUdBOytCQUFBO0FDR0k7RURFRjtBTjJHRjs7QU9yR007RUROSjtBTitHRjs7QU01R0E7K0JBQUE7QUNMSTtFRFVGO0VBQ0E7QU42R0Y7O0FPaEhNO0VERUo7RUFDQTtBTmtIRjs7QU0vR0E7K0JBQUE7QUNkSTtFRG9CRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTitHRjs7QU9qSU07RURZSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTnlIRjs7QU10SEE7K0JBQUE7QUM3Qkk7RURnQ0Y7QU55SEY7O0FPakpNO0VEd0JKO0FONkhGOztBTzdKSTtFRGdDRjtBTmlJRjs7QU96Sk07RUR3Qko7QU5xSUY7O0FPcktJO0VEZ0NGO0FOeUlGOztBT2pLTTtFRHdCSjtBTjZJRjs7QU83S0k7RURnQ0Y7QU5pSkY7O0FPektNO0VEd0JKO0FOcUpGOztBT3JMSTtFRGdDRjtBTnlKRjs7QU9qTE07RUR3Qko7QU42SkY7O0FPN0xJO0VEZ0NGO0FOaUtGOztBT3pMTTtFRHdCSjtBTnFLRjs7QU1qS0U7RUFDRTtFQUNBO0FOb0tKO0FNaktFO0VBQ0U7RUFDQTtBTm1LSjtBTWpLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5tS047O0FNcExFO0VBQ0U7RUFDQTtBTnVMSjtBTXBMRTtFQUNFO0VBQ0E7QU5zTEo7QU1wTEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOc0xOOztBTXZNRTtFQUNFO0VBQ0E7QU4wTUo7QU12TUU7RUFDRTtFQUNBO0FOeU1KO0FNdk1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTnlNTjs7QU0xTkU7RUFDRTtFQUNBO0FONk5KO0FNMU5FO0VBQ0U7RUFDQTtBTjROSjtBTTFOSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40Tk47O0FNN09FO0VBQ0U7RUFDQTtBTmdQSjtBTTdPRTtFQUNFO0VBQ0E7QU4rT0o7QU03T0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOK09OOztBTWhRRTtFQUNFO0VBQ0E7QU5tUUo7QU1oUUU7RUFDRTtFQUNBO0FOa1FKO0FNaFFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTmtRTjs7QU92VEk7RUQyREY7RUFDQTtBTmdRRjtBU3BSSTtFRnhDQTtJRCtEQTtJQUNBO0VOaVFGO0FBQ0Y7O0FPMVRNO0VEbURKO0VBQ0E7QU4yUUY7QVMvUkk7RUZoQ0U7SUR1REY7SUFDQTtFTjRRRjtBQUNGOztBTzdVSTtFRHFFRjtFQUNBO0FONFFGO0FTMVNJO0VGeENBO0lEeUVBO0lBQ0E7RU42UUY7QUFDRjs7QU9oVk07RUQ2REo7RUFDQTtBTnVSRjtBU3JUSTtFRmhDRTtJRGlFRjtJQUNBO0VOd1JGO0FBQ0Y7O0FPbldJO0VEK0VGO0VBQ0E7QU53UkY7QVNoVUk7RUZ4Q0E7SURtRkE7SUFDQTtFTnlSRjtBQUNGOztBT3RXTTtFRHVFSjtFQUNBO0FObVNGO0FTM1VJO0VGaENFO0lEMkVGO0lBQ0E7RU5vU0Y7QUFDRjs7QU1qU0E7K0JBQUE7QUN4Rkk7RUQyRkY7RUFDQTtBTm9TRjs7QU94WE07RURtRko7RUFDQTtBTnlTRjs7QU10U0E7K0JBQUE7QUMvRkk7RURrR0Y7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBTndTRjtBTXRTRTtFQUNFO0VBQ0E7RUFDQTtBTndTSjtBTXRTSTtFQUNFO0FOd1NOO0FNclNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTnVTTjtBTXBTSTtFQUNFO0FOc1NOO0FNblNJO0VBQ0U7RUFDQTtBTnFTTjtBTWxTSTtFQUNFO0FOb1NOOztBT25hTTtFRDBGSjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FONFVGO0FNMVVFO0VBQ0U7RUFDQTtFQUNBO0FONFVKO0FNMVVJO0VBQ0U7QU40VU47QU16VUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOMlVOO0FNeFVJO0VBQ0U7QU4wVU47QU12VUk7RUFDRTtFQUNBO0FOeVVOO0FNdFVJO0VBQ0U7QU53VU47O0FNblVBO0FDNUlJO0VEOElGO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOcVVGO0FNblVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5xVUo7QU1uVUk7RUFDRTtBTnFVTjtBTWxVSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5vVU47QU1qVUk7RUFDRTtFQUNBO0FObVVOO0FNaFVJO0VBQ0U7RUFDQTtFQUNBO0FOa1VOOztBT2pmTTtFRHNJSjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjhXRjtBTTVXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOOFdKO0FNNVdJO0VBQ0U7QU44V047QU0zV0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FONldOO0FNMVdJO0VBQ0U7RUFDQTtBTjRXTjtBTXpXSTtFQUNFO0VBQ0E7RUFDQTtBTjJXTjs7QU10V0E7QUM1TEk7RUQ4TEY7RUFDQTtFQUNBO0VBQ0E7QU55V0Y7QU12V0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBTnlXSjtBTXRXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FOd1dKO0FNcldFO0VBQ0U7QU51V0o7QU1wV0U7RUFDRTtFQUNBO0FOc1dKO0FNcFdJO0VBQ0U7RUFDQTtFQUNBO0FOc1dOO0FNcFdNO0VBQ0U7QU5zV1I7QU1sV0k7RUFDRTtFQUNBO0VBQ0E7QU5vV047QVNsaUJJO0VIa01FO0lBQ0U7SUFDQTtFTm1XTjtFTWhXSTtJQUNFO0lBQ0E7RU5rV047QUFDRjs7QU81a0JNO0VEc0xKO0VBQ0E7RUFDQTtFQUNBO0FOMFpGO0FNeFpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QU4wWko7QU12WkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBTnlaSjtBTXRaRTtFQUNFO0FOd1pKO0FNclpFO0VBQ0U7RUFDQTtBTnVaSjtBTXJaSTtFQUNFO0VBQ0E7RUFDQTtBTnVaTjtBTXJaTTtFQUNFO0FOdVpSO0FNblpJO0VBQ0U7RUFDQTtFQUNBO0FOcVpOO0FTbmxCSTtFSGtNRTtJQUNFO0lBQ0E7RU5vWk47RU1qWkk7SUFDRTtJQUNBO0VObVpOO0FBQ0Y7O0FNOVlBOytCQUFBO0FDdlBJO0VENlBGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOOFlGO0FNNVlFO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjZZSjtBU3RuQkk7RUZ4Q0E7SURxUkE7RU42WUY7QUFDRjs7QU8zcEJNO0VEcVBKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOMGFGO0FNeGFFO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTnlhSjtBU2xwQkk7RUZoQ0U7SUQ2UUY7RU55YUY7QUFDRjs7QU10YUE7K0JBQUE7QUN6Ukk7RUQ4UkY7RUFDQTtFQUNBO0FOdWFGO0FTL3BCSTtFRnhDQTtJRG1TQTtFTndhRjtBQUNGOztBT3BzQk07RURzUko7RUFDQTtFQUNBO0FOa2JGO0FTMXFCSTtFRmhDRTtJRDJSRjtFTm1iRjtBQUNGOztBTWhiQTtBQUNBO0VBQ0U7QU5tYkY7QU1qYkU7RUFDRTtBTm1iSjtBU3ZyQkk7RUhnUUo7SUFRSTtFTm1iRjtFTWpiRTtJQUNFO0VObWJKO0FBQ0Y7O0FVL3ZCQTs7Z0NBQUE7QUFJQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0FWaXdCRjtBVTl2QkU7RUFDRTtBVmd3Qko7QVU1dkJFO0VBQ0U7QVY4dkJKOztBVTF2QkE7QUFDQTtFQUNFO0FWNnZCRjs7QVUxdkJBO0FBQ0E7RUFDRTtBVjZ2QkY7O0FXMXhCQTs7Z0NBQUE7QUFJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYNHhCSjtBVzF4Qkk7O0VBRUU7QVg0eEJOO0FXenhCSTs7RUFFRTtBWDJ4Qk47QVd2eEJFO0VBQ0U7RUFDQTtFQUNBO0FYeXhCSjs7QVlsekJBOztnQ0FBQTtBQUlFO0VBQ0U7QVpvekJKO0FZanpCTTtFQUNFO0FabXpCUjs7QVl4ekJFO0VBQ0U7QVoyekJKO0FZbHpCTTtFQUNFO0Fab3pCUjs7QVkvekJFO0VBQ0U7QVprMEJKO0FZbnpCTTtFQUNFO0FacXpCUjs7QWF2MEJBOztnQ0FBQTtBTnVCSTtFTWxCRjtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBS0E7QWJtMEJGO0FhdjBCRTtFQUNFO0FieTBCSjtBYXIwQkU7RUFDRTtBYnUwQko7QWFwMEJFO0VMMUJBLG1CQUR1QjtFQUV2QjtVQUFBO0VBQ0E7RUsyQkU7QWJ1MEJKO0FRaDJCRTtFQUNFO0FSazJCSjtBUWgyQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhCQWhCbUI7RUFpQm5CO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBUmsyQk47QVE5MUJFO0VBQ0U7SUFDRTtFUmcyQko7RVFqMkJFO0lBQ0U7RVJnMkJKO0FBQ0Y7QWEzMUJJO0VBQ0U7RUFDQTtFQUNBO0FiNjFCTjtBYTMxQk07RUFDRTtJQUNFO0ViNjFCUjtBQUNGO0FheDFCRTtFQUNFO0FiMDFCSjtBYXYxQkU7RUFDRTtFQUNBO0FieTFCSjtBU3owQkk7RUZ4Q0E7SU00QkE7SUFDQTtFYnkxQkY7QUFDRjs7QU8vMkJNO0VNMUJKO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFLQTtBYnU0QkY7QWEzNEJFO0VBQ0U7QWI2NEJKO0FhejRCRTtFQUNFO0FiMjRCSjtBYXg0QkU7RUwxQkEsbUJBRHVCO0VBRXZCO1VBQUE7RUFDQTtFSzJCRTtBYjI0Qko7QVFwNkJFO0VBQ0U7QVJzNkJKO0FRcDZCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsOEJBaEJtQjtFQWlCbkI7VUFBQTtFQUNBO1VBQUE7RUFDQTtVQUFBO0FSczZCTjtBUWw2QkU7RUFDRTtJQUNFO0VSbzZCSjtFUXI2QkU7SUFDRTtFUm82Qko7QUFDRjtBYS81Qkk7RUFDRTtFQUNBO0VBQ0E7QWJpNkJOO0FhLzVCTTtFQUNFO0lBQ0U7RWJpNkJSO0FBQ0Y7QWE1NUJFO0VBQ0U7QWI4NUJKO0FhMzVCRTtFQUNFO0VBQ0E7QWI2NUJKO0FTNzRCSTtFRmhDRTtJTW9CRjtJQUNBO0ViNjVCRjtBQUNGOztBY245QkE7O2dDQUFBO0FBSUE7QUFDQTtFQUNFO0FkcTlCRjs7QWNsOUJBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZHE5QkY7QWNuOUJFO0VBR0U7QWRtOUJKO0FjaDlCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7VUFBQTtFQUNBO1VBQUE7QWRrOUJKO0FjOThCRTtFQXBDRjtJQXFDSTtFZGk5QkY7RWMvOEJFO0lBQ0U7SUFDQTtFZGk5Qko7RWNuOUJFO0lBQ0U7SUFDQTtFZGk5Qko7QUFDRjs7QWVyZ0NBOztnQ0FBQTtBQUlBO2dDQUFBO0FBR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnNnQ0o7QWVuZ0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZxZ0NKO0FlbGdDRTtFQUNFO0VBQ0E7QWZvZ0NKO0FlbGdDSTtFQUNFO0VBQ0E7QWZvZ0NOO0FlaGdDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZrZ0NKO0FlLy9CRTtFQUNFO0FmaWdDSjtBZTkvQkU7RUFDRTtBZmdnQ0o7QWU5L0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZnZ0NOOztBU3gvQkk7RU1EQTtJQUNFO0VmNi9CSjtFZTEvQkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFZjQvQko7RWV6L0JFO0lBQ0U7SUFDQTtJQUNBO0VmMi9CSjtFZXovQkk7SUFDRTtJQUNBO0lBQ0E7T0FBQTtJQUNBO09BQUE7RWYyL0JOO0Vldi9CRTtJQUNFO0lBQ0E7SUFDQTtFZnkvQko7RWV0L0JFO0lBQ0U7RWZ3L0JKO0FBQ0Y7QWdCdGxDQTs7Z0NBQUE7QUFJQTtFQUNFO0FoQnVsQ0Y7QWdCcmxDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQnVsQ0o7QWdCcmxDSTtFQVRGO0lBVUk7RWhCd2xDSjtFZ0J0bENJO0lBQ0U7RWhCd2xDTjtBQUNGO0FnQnBsQ0U7RUFDRTtFQUNBO0VBQ0E7QWhCc2xDSjtBZ0JubENFO0VBQ0U7RUFDQTtBaEJxbENKO0FnQmxsQ0U7RUFDRTtFQUNBO0VBQ0E7QWhCb2xDSjtBZ0JqbENFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQm1sQ0o7QWdCaGxDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJrbENKO0FTL2tDSTtFT0NBO0lBQ0U7RWhCaWxDSjtFZ0I5a0NFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RWhCZ2xDSjtFZ0I3a0NFO0lBQ0U7SUFDQTtJQUNBO09BQUE7RWhCK2tDSjtFZ0I1a0NFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhCOGtDSjtFZ0Iza0NFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQjZrQ0o7QUFDRjs7QWlCaHJDQTs7Ozs7Z0NBQUE7QUFNQTs7O0VBR0U7RUFDQTtBakJtckNGOztBaUJockNBO2dDQUFBO0FBR0E7QUFDQTs7OztFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQmtyQ0Y7QWlCaHJDRTtFQWZGOzs7O0lBZ0JJO0VqQnNyQ0Y7RWlCcHJDRTtJQUNFO0lBQ0E7RWpCeXJDSjtFaUIzckNFOzs7O0lBQ0U7SUFDQTtFakJ5ckNKO0FBQ0Y7O0FpQnJyQ0E7QUFDQTs7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QWpCd3JDRjs7QWlCcnJDQTtBQUNBOzs7RUFHRTtFQUNBO0VBQ0E7RUFDQTtBakJ3ckNGOztBaUJyckNBO2dDQUFBO0FBR0E7QUFFRTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBakJxckNKO0FpQm5yQ0k7RUFDRTtJQUNFO0VqQnFyQ047RWlCcHJDTTtJQUNFO0VqQnNyQ1I7RWlCbnJDTTtJQUNFO0VqQnFyQ1I7QUFDRjs7QWlCL3FDQTtFQUNFO0VBQ0E7RUFDQTtBakJrckNGOztBaUIvcUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJrckNGO0FpQmhyQ0U7RUFDRTtBakJrckNKO0FpQi9xQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQmlyQ0o7QWlCOXFDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCZ3JDSjtBaUI5cUNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBakJnckNOO0FpQjlxQ007RUFDRTtBakJnckNSOztBaUIxcUNBO2dDQUFBO0FBR0E7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCNHFDRjs7QWlCenFDQTtFQUNFO0FqQjRxQ0Y7QWlCMXFDRTtFQUNFO0VBQ0E7RUFDQTtBakI0cUNKOztBaUJ4cUNBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QWpCMnFDRjtBaUJ6cUNFO0VBTEY7SUFNSTtFakI0cUNGO0VpQjFxQ0U7SUFDRTtFakI0cUNKO0FBQ0Y7O0FrQnIxQ0E7O2dDQUFBO0FBS0E7Z0NBQUE7QUFFQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBbEJzMUNGO0FrQnAxQ0U7O0VBQ0U7RUFFQTtFQUNBO0VBRUE7RUFDQTtBbEJxMUNKO0FrQm4xQ0k7O0VBQ0U7QWxCczFDTjtBa0JsMUNFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsQnExQ0o7O0FrQmoxQ0E7Z0NBQUE7QUFFQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQm8xQ0Y7O0FtQmo0Q0E7O2dDQUFBO0FBR0E7O0VBRUU7QW5CbzRDRjs7QW1CajRDQTs7O0VBR0U7QW5CbzRDRjs7QW1CajRDQTs7O0VBR0U7RUFDQTtBbkJvNENGOztBb0J0NUNBOztnQ0FBQTtBQUdBO0VBQ0U7QXBCeTVDRjs7QXFCNTVDQTs7Z0NBQUE7QWR3Qkk7RWNuQkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJCODVDRjtBcUI1NUNFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU1BO0FyQnk1Q0o7QXFCNzVDSTs7RUFDRTtBckJnNkNOO0FxQjU1Q0k7O0VBQ0U7QXJCKzVDTjtBcUIzNUNFOztFQUVFO0FyQjY1Q0o7QXFCMTVDRTs7RUFFRTtBckI0NUNKO0FxQno1Q0U7RUFDRTtFQUNBO0VBQ0E7QXJCMjVDSjtBcUJ4NUNFO0VBQ0U7QXJCMDVDSjtBcUJ2NUNFO0VickRBLG1CQUR1QjtFQUV2QjtVQUFBO0VBQ0E7QVIrOENGO0FRNzhDRTtFQUNFO0FSKzhDSjtBUTc4Q0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhCQWhCbUI7RUFpQm5CO1VBQUE7RUFDQTtVQUFBO0VBQ0E7VUFBQTtBUis4Q047QVEzOENFO0VBQ0U7SUFDRTtFUjY4Q0o7RVE5OENFO0lBQ0U7RVI2OENKO0FBQ0Y7QVNyNkNJO0VZUEE7O0lBRUU7SUFDQTtFckIrNkNKO0FBQ0Y7O0FPNThDTTtFYzNCSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckIyK0NGO0FxQnorQ0U7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUE7QXJCcytDSjtBcUIxK0NJOztFQUNFO0FyQjYrQ047QXFCeitDSTs7RUFDRTtBckI0K0NOO0FxQngrQ0U7O0VBRUU7QXJCMCtDSjtBcUJ2K0NFOztFQUVFO0FyQnkrQ0o7QXFCdCtDRTtFQUNFO0VBQ0E7RUFDQTtBckJ3K0NKO0FxQnIrQ0U7RUFDRTtBckJ1K0NKO0FxQnArQ0U7RWJyREEsbUJBRHVCO0VBRXZCO1VBQUE7RUFDQTtBUjRoREY7QVExaERFO0VBQ0U7QVI0aERKO0FRMWhESTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsOEJBaEJtQjtFQWlCbkI7VUFBQTtFQUNBO1VBQUE7RUFDQTtVQUFBO0FSNGhETjtBUXhoREU7RUFDRTtJQUNFO0VSMGhESjtFUTNoREU7SUFDRTtFUjBoREo7QUFDRjtBU2wvQ0k7RVlQQTs7SUFFRTtJQUNBO0VyQjQvQ0o7QUFDRjs7QU9qaURJO0VjMkNGO0VBQ0E7QXJCMC9DRjtBcUJ4L0NFO0VBQ0U7RUFDQTtBckIwL0NKOztBT2xpRE07RWNtQ0o7RUFDQTtBckJtZ0RGO0FxQmpnREU7RUFDRTtFQUNBO0FyQm1nREo7O0FxQi8vQ0E7QUFHRTs7OztFQUVFO0VBQ0E7QXJCa2dESjs7QXFCOS9DQTtBQUNBO0VBQ0U7RUFDQTtBckJpZ0RGOztBc0IzbERBOztnQ0FBQTtBQUdBOztFQUVFO0F0QjhsREY7O0FzQjNsREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEI4bERGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL3NpdGUtZWRpdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi4vc3lzdGVtL3NyYy9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4uL3N5c3RlbS9zcmMvc2Nzcy9taXhpbnMvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9fYmFzZS5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4vc3JjL3Njc3MvZ2xvYmFsL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9fZmllbGQuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9lbGVtZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4uL3N5c3RlbS9zcmMvc2Nzcy9taXhpbnMvX2VkaXRvci1zdHlsZS5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4vc3JjL3Njc3MvZ2xvYmFsL21peGlucy9fbGluay10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi4vc3lzdGVtL3NyYy9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9fYmxvY2stZWRpdG9yLWxheW91dC5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4vc3JjL3Njc3MvZWRpdG9yL19ncm91cC5zY3NzIiwid2VicGFjazovL2JlZ2lubmVyLy4vc3JjL3Njc3MvZWRpdG9yL191bml0LWFsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX2Jsb2NrcXVvdGUuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9lbGVtZW50cy9fYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX2N1c3RvbS11bml0LnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX2VtYmVkLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX2ZpbGUuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9lbGVtZW50cy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly9iZWdpbm5lci8uL3NyYy9zY3NzL2VkaXRvci9lbGVtZW50cy9fbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX21vZHVsZS11bml0LnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX3RhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vYmVnaW5uZXIvLi9zcmMvc2Nzcy9lZGl0b3IvZWxlbWVudHMvX3ZpZGVvLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODmeODvOOCueOCueOCv+OCpOODq1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgLmFjbXMtY3NzZ3JpZCB7XG4gIC0tYWNtcy1nYXA6IHZhcigtLXVuaXQtZ2FwLXgpO1xufVxuLmVudHJ5LXN0eWxlIC5hY21zLXN0YWNrLFxuLmVudHJ5LXN0eWxlIC5hY21zLXZzdGFjayxcbi5lbnRyeS1zdHlsZSAuYWNtcy1oc3RhY2sge1xuICAtLWFjbXMtc3RhY2stc3BhY2luZzogdmFyKC0tdW5pdC1nYXAteCk7XG59XG5cbi5lbnRyeS1zdHlsZSB7XG4gIC8qIOOCs+ODs+ODhuODs+ODhOOBruWIneOCgeOBruimgee0oOOBq+OBr+S4iuS9meeZveOCkuOBpOOBkeOBquOBhCAqL1xufVxuLmVudHJ5LXN0eWxlID4gKjpmaXJzdC1jaGlsZCwgLmVudHJ5LXN0eWxlID4gKjpmaXJzdC1jaGlsZC5jb2x1bW4tYmxvY2stZWRpdG9yID4gKjpmaXJzdC1jaGlsZCwgLmVudHJ5LXN0eWxlID4gKjpmaXJzdC1jaGlsZC5qcy1lZGl0X2lucGxhY2UgPiAqOmZpcnN0LWNoaWxkLCAuZW50cnktc3R5bGUgPiAqOmZpcnN0LWNoaWxkLmpzLWVkaXRfaW5wbGFjZS1ob3ZlcmluZyArIC5qcy1lZGl0X2lucGxhY2UgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xufVxuXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBpbWcsXG46d2hlcmUoLmVudHJ5LXN0eWxlKSB2aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuOndoZXJlKC5lbnRyeS1zdHlsZSkgYXVkaW8sXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBjYW52YXMsXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBlbWJlZCxcbjp3aGVyZSguZW50cnktc3R5bGUpIGlmcmFtZSxcbjp3aGVyZSguZW50cnktc3R5bGUpIG9iamVjdCxcbjp3aGVyZSguZW50cnktc3R5bGUpIHN2Zyxcbjp3aGVyZSguZW50cnktc3R5bGUpIHZpZGVvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG1heC1saW5lLWxlbmd0aCAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBtYXgtbGluZS1sZW5ndGggKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxu44CA44OV44Kj44O844Or44OJ44K544K/44Kk44Or6Kq/5pW0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIOS+oeagvOihqOODpuODi+ODg+ODiOOBruODpuODi+ODg+ODiOOCsOODq+ODvOODl+OCouOCpOODhuODoOOBruWig+eVjOe3miAqL1xuW2RhdGEtdW5pdC10eXBlPWN1c3RvbV9wcmljaW5nXSAuYWNtcy1hZG1pbi10YWJsZS1hZG1pbi1lZGl0IHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbltkYXRhLXVuaXQtdHlwZT1jdXN0b21fcHJpY2luZ10gLmFjbXMtYWRtaW4tdGFibGUtYWRtaW4tZWRpdCAuc29ydGFibGUtaXRlbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xufVxuW2RhdGEtdW5pdC10eXBlPWN1c3RvbV9wcmljaW5nXSAuYWNtcy1hZG1pbi10YWJsZS1hZG1pbi1lZGl0IC5zb3J0YWJsZS1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg4bjgq3jgrnjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyog44Oq44Oz44KvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIGE6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICosIFtjbGFzc349bWVkaWEtaW1hZ2UtYmxvY2tdLCBbY2xhc3N+PW1lZGlhLWltYWdlLWJsb2NrXSAqLCBbY2xhc3N+PWNvbHVtbi1pbWFnZV0sIFtjbGFzc349Y29sdW1uLWltYWdlXSAqLCBbY2xhc3N+PWNvbHVtbi1tZWRpYV0sIFtjbGFzc349Y29sdW1uLW1lZGlhXSAqLCBbY2xhc3N+PWNvbHVtbi1leGltYWdlXSwgW2NsYXNzfj1jb2x1bW4tZXhpbWFnZV0gKikpIHtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkIDJweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAzcHg7XG59XG4uZW50cnktc3R5bGUgYTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKiwgW2NsYXNzfj1tZWRpYS1pbWFnZS1ibG9ja10sIFtjbGFzc349bWVkaWEtaW1hZ2UtYmxvY2tdICosIFtjbGFzc349Y29sdW1uLWltYWdlXSwgW2NsYXNzfj1jb2x1bW4taW1hZ2VdICosIFtjbGFzc349Y29sdW1uLW1lZGlhXSwgW2NsYXNzfj1jb2x1bW4tbWVkaWFdICosIFtjbGFzc349Y29sdW1uLWV4aW1hZ2VdLCBbY2xhc3N+PWNvbHVtbi1leGltYWdlXSAqKSlbdGFyZ2V0PV9ibGFua10ge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cbi5lbnRyeS1zdHlsZSBhOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqLCBbY2xhc3N+PW1lZGlhLWltYWdlLWJsb2NrXSwgW2NsYXNzfj1tZWRpYS1pbWFnZS1ibG9ja10gKiwgW2NsYXNzfj1jb2x1bW4taW1hZ2VdLCBbY2xhc3N+PWNvbHVtbi1pbWFnZV0gKiwgW2NsYXNzfj1jb2x1bW4tbWVkaWFdLCBbY2xhc3N+PWNvbHVtbi1tZWRpYV0gKiwgW2NsYXNzfj1jb2x1bW4tZXhpbWFnZV0sIFtjbGFzc349Y29sdW1uLWV4aW1hZ2VdICopKVt0YXJnZXQ9X2JsYW5rXTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXg6IG5vbmU7XG4gIHdpZHRoOiAwLjg3NWVtO1xuICBoZWlnaHQ6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb250YWluO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmVudHJ5LXN0eWxlIGE6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICosIFtjbGFzc349bWVkaWEtaW1hZ2UtYmxvY2tdLCBbY2xhc3N+PW1lZGlhLWltYWdlLWJsb2NrXSAqLCBbY2xhc3N+PWNvbHVtbi1pbWFnZV0sIFtjbGFzc349Y29sdW1uLWltYWdlXSAqLCBbY2xhc3N+PWNvbHVtbi1tZWRpYV0sIFtjbGFzc349Y29sdW1uLW1lZGlhXSAqLCBbY2xhc3N+PWNvbHVtbi1leGltYWdlXSwgW2NsYXNzfj1jb2x1bW4tZXhpbWFnZV0gKikpOmFueS1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYSB7XG4gIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZCAycHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogM3B4O1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYVt0YXJnZXQ9X2JsYW5rXSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYVt0YXJnZXQ9X2JsYW5rXTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXg6IG5vbmU7XG4gIHdpZHRoOiAwLjg3NWVtO1xuICBoZWlnaHQ6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb250YWluO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYTphbnktbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8qIGVtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIGVtOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiBzdHJvbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgc3Ryb25nOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIG1hcmtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgbWFyazpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IG1hcmsge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLyogY29kZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lbnRyeS1zdHlsZSBjb2RlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqLCBbY2xhc3N+PWNvZGUtaGlnaGxpZ2h0XSwgW2NsYXNzfj1jb2RlLWhpZ2hsaWdodF0gKikpIHtcbiAgcGFkZGluZzogMCAwLjI1cmVtO1xuICBtYXJnaW4taW5saW5lOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDg3LjUlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGNvZGUge1xuICBwYWRkaW5nOiAwIDAuMjVyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogODcuNSU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLyog6KaL5Ye644GXXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIGgxOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBtYXJnaW4tYmxvY2s6IGNhbGModmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKSArIHZhcigtLXVuaXQtaGVhZGluZy1tYXJnaW4tdG9wLWFkZCkpIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1zbSk7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGgxIHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgKyB2YXIoLS11bml0LWhlYWRpbmctbWFyZ2luLXRvcC1hZGQpKSB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tc20pO1xufVxuXG4uZW50cnktc3R5bGUgaDI6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIG1hcmdpbi1ibG9jazogY2FsYyh2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpICsgdmFyKC0tdW5pdC1oZWFkaW5nLW1hcmdpbi10b3AtYWRkKSkgdmFyKC0tZW50cnktZWwtbWFyZ2luLXNtKTtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDIge1xuICBtYXJnaW4tYmxvY2s6IGNhbGModmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKSArIHZhcigtLXVuaXQtaGVhZGluZy1tYXJnaW4tdG9wLWFkZCkpIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1zbSk7XG59XG5cbi5lbnRyeS1zdHlsZSBoMzpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgKyB2YXIoLS11bml0LWhlYWRpbmctbWFyZ2luLXRvcC1hZGQpKSB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tc20pO1xufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoMyB7XG4gIG1hcmdpbi1ibG9jazogY2FsYyh2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpICsgdmFyKC0tdW5pdC1oZWFkaW5nLW1hcmdpbi10b3AtYWRkKSkgdmFyKC0tZW50cnktZWwtbWFyZ2luLXNtKTtcbn1cblxuLmVudHJ5LXN0eWxlIGg0Om5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBtYXJnaW4tYmxvY2s6IGNhbGModmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKSArIHZhcigtLXVuaXQtaGVhZGluZy1tYXJnaW4tdG9wLWFkZCkpIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1zbSk7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGg0IHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgKyB2YXIoLS11bml0LWhlYWRpbmctbWFyZ2luLXRvcC1hZGQpKSB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tc20pO1xufVxuXG4uZW50cnktc3R5bGUgaDU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIG1hcmdpbi1ibG9jazogY2FsYyh2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpICsgdmFyKC0tdW5pdC1oZWFkaW5nLW1hcmdpbi10b3AtYWRkKSkgdmFyKC0tZW50cnktZWwtbWFyZ2luLXNtKTtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDUge1xuICBtYXJnaW4tYmxvY2s6IGNhbGModmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKSArIHZhcigtLXVuaXQtaGVhZGluZy1tYXJnaW4tdG9wLWFkZCkpIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1zbSk7XG59XG5cbi5lbnRyeS1zdHlsZSBoNjpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgKyB2YXIoLS11bml0LWhlYWRpbmctbWFyZ2luLXRvcC1hZGQpKSB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tc20pO1xufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoNiB7XG4gIG1hcmdpbi1ibG9jazogY2FsYyh2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpICsgdmFyKC0tdW5pdC1oZWFkaW5nLW1hcmdpbi10b3AtYWRkKSkgdmFyKC0tZW50cnktZWwtbWFyZ2luLXNtKTtcbn1cblxuLmVudHJ5LXN0eWxlIGgyOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkuaGVhZGluZy1saW5lIHtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmcteHMpO1xuICBib3JkZXItYmxvY2stZW5kOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkxMDApO1xufVxuLmVudHJ5LXN0eWxlIGgyOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkuaGVhZGluZy1wcmltYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJsb2NrLWVuZDogY2FsYyh2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKSArIHZhcigtLWJvcmRlci13aWR0aC1sZykpO1xufVxuLmVudHJ5LXN0eWxlIGgyOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkuaGVhZGluZy1wcmltYXJ5OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLWxnKTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGgyLmhlYWRpbmctbGluZSB7XG4gIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogdmFyKC0tYm9yZGVyLXdpZHRoLW1kKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MTAwKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGgyLmhlYWRpbmctcHJpbWFyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IGNhbGModmFyKC0tZW50cnktZWwtcGFkZGluZy14cykgKyB2YXIoLS1ib3JkZXItd2lkdGgtbGcpKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGgyLmhlYWRpbmctcHJpbWFyeTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1sZyk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4uZW50cnktc3R5bGUgaDM6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5oZWFkaW5nLWxpbmUge1xuICBwYWRkaW5nLWJsb2NrLWVuZDogdmFyKC0tZW50cnktZWwtcGFkZGluZy14cyk7XG4gIGJvcmRlci1ibG9jay1lbmQ6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tY29sb3ItZ3JheTEwMCk7XG59XG4uZW50cnktc3R5bGUgaDM6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5oZWFkaW5nLXByaW1hcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYmxvY2stZW5kOiBjYWxjKHZhcigtLWVudHJ5LWVsLXBhZGRpbmcteHMpICsgdmFyKC0tYm9yZGVyLXdpZHRoLWxnKSk7XG59XG4uZW50cnktc3R5bGUgaDM6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5oZWFkaW5nLXByaW1hcnk6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtbGcpO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDMuaGVhZGluZy1saW5lIHtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmcteHMpO1xuICBib3JkZXItYmxvY2stZW5kOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkxMDApO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDMuaGVhZGluZy1wcmltYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJsb2NrLWVuZDogY2FsYyh2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKSArIHZhcigtLWJvcmRlci13aWR0aC1sZykpO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDMuaGVhZGluZy1wcmltYXJ5OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLWxnKTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5lbnRyeS1zdHlsZSBoNDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpLmhlYWRpbmctbGluZSB7XG4gIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogdmFyKC0tYm9yZGVyLXdpZHRoLW1kKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MTAwKTtcbn1cbi5lbnRyeS1zdHlsZSBoNDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpLmhlYWRpbmctcHJpbWFyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IGNhbGModmFyKC0tZW50cnktZWwtcGFkZGluZy14cykgKyB2YXIoLS1ib3JkZXItd2lkdGgtbGcpKTtcbn1cbi5lbnRyeS1zdHlsZSBoNDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpLmhlYWRpbmctcHJpbWFyeTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1sZyk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoNC5oZWFkaW5nLWxpbmUge1xuICBwYWRkaW5nLWJsb2NrLWVuZDogdmFyKC0tZW50cnktZWwtcGFkZGluZy14cyk7XG4gIGJvcmRlci1ibG9jay1lbmQ6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tY29sb3ItZ3JheTEwMCk7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoNC5oZWFkaW5nLXByaW1hcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYmxvY2stZW5kOiBjYWxjKHZhcigtLWVudHJ5LWVsLXBhZGRpbmcteHMpICsgdmFyKC0tYm9yZGVyLXdpZHRoLWxnKSk7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoNC5oZWFkaW5nLXByaW1hcnk6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtbGcpO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLmVudHJ5LXN0eWxlIGgyOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZW50cnktc3R5bGUgaDI6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gICAgZm9udC1zaXplOiAxLjk1MzEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICB9XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGgyIHtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgaDIge1xuICAgIGZvbnQtc2l6ZTogMS45NTMxMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgfVxufVxuXG4uZW50cnktc3R5bGUgaDM6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZW50cnktc3R5bGUgaDM6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgfVxufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgfVxufVxuXG4uZW50cnktc3R5bGUgaDQ6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5lbnRyeS1zdHlsZSBoNDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgfVxufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBoNCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgfVxufVxuXG4vKiDmnKzmlodcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgcDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgcCB7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi8qIOODquOCueODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lbnRyeS1zdHlsZSB1bDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgLS1saXN0LXNwYWNlLXk6IDAuNXJlbTsgLyog44Ki44Kk44OG44Og6ZaT44Gu57im5L2Z55m9ICovXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tbGlzdC1zcGFjZS15KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDFsaCArIDAuMzc1cmVtKTtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG59XG4uZW50cnktc3R5bGUgdWw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+IGxpIHsgLyogdWwg5YaF44GrIG9sLCBvbCDlhoXjgasgdWwg44GM5YWl44Gj44Gm44GE44Gf5pmC44Gu5a++562W44Go44GX44Gm5a2Q44K744Os44Kv44K/44Gn5oyH5a6aICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG59XG4uZW50cnktc3R5bGUgdWw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+IGxpOjptYXJrZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLmVudHJ5LXN0eWxlIHVsOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgPiBsaTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMC41bGggLSAwLjE4NzVyZW0pO1xuICBsZWZ0OiBjYWxjKCgwLjVsaCArIDAuMTg3NXJlbSkgKiAtMSk7XG4gIHdpZHRoOiAwLjM3NXJlbTtcbiAgaGVpZ2h0OiAwLjM3NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmVudHJ5LXN0eWxlIHVsOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgPiBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5lbnRyeS1zdHlsZSB1bDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpID4gbGkgPiAqIHtcbiAgLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/77ya44Oq44K744OD44OI55SoICovXG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZW50cnktc3R5bGUgdWw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+IGxpIHVsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbGlzdC1zcGFjZS15KTtcbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdWwge1xuICAtLWxpc3Qtc3BhY2UteTogMC41cmVtOyAvKiDjgqLjgqTjg4bjg6DplpPjga7nuKbkvZnnmb0gKi9cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1saXN0LXNwYWNlLXkpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMWxoICsgMC4zNzVyZW0pO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHVsID4gbGkgeyAvKiB1bCDlhoXjgasgb2wsIG9sIOWGheOBqyB1bCDjgYzlhaXjgaPjgabjgYTjgZ/mmYLjga7lr77nrZbjgajjgZfjgablrZDjgrvjg6zjgq/jgr/jgafmjIflrpogKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHVsID4gbGk6Om1hcmtlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSB1bCA+IGxpOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygwLjVsaCAtIDAuMTg3NXJlbSk7XG4gIGxlZnQ6IGNhbGMoKDAuNWxoICsgMC4xODc1cmVtKSAqIC0xKTtcbiAgd2lkdGg6IDAuMzc1cmVtO1xuICBoZWlnaHQ6IDAuMzc1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdWwgPiBsaSA+ICoge1xuICAvKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/vvJrjg6rjgrvjg4Pjg4jnlKggKi9cbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHVsID4gbGkgdWwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1saXN0LXNwYWNlLXkpO1xufVxuXG4vKiDnlarlj7fku5jjgY3jg6rjgrnjg4ggKi9cbi5lbnRyeS1zdHlsZSBvbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgLS1vcmRlci1saXN0LXNwYWNlLXk6IDAuNXJlbTsgLyog44Ki44Kk44OG44Og6ZaT44Gu57im5L2Z55m9ICovXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDFsaCwgYXV0bykgMWZyOyAvKiDliJfjgpLjgIznlarlj7fnlKjjgI3jgajjgIzjg4bjgq3jgrnjg4jnlKjjgI3jgavliIbjgZHjgosgKi8gLyogdWzjga4x6ZqO5bGk55uu44OG44Kt44K544OI44Gv44GY44G+44KK44Go5o+D44GI44KL44Gf44KB44GrIG1pbm1heCgxbGgsIGF1dG8pIOOBp+acgOWwj+WApOOCkuioreWumiAqL1xuICBnYXA6IHZhcigtLW9yZGVyLWxpc3Qtc3BhY2UteSkgMC4zNzVyZW07IC8qIOOCouOCpOODhuODoOmWk+S9meeZvSwg55Wq5Y+344Go44OG44Kt44K544OI6ZaT5L2Z55m9ICovXG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgY291bnRlci1yZXNldDogb3JkZXItbGlzdDtcbn1cbi5lbnRyeS1zdHlsZSBvbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpID4gbGkgeyAvKiB1bCDlhoXjgasgb2wsIG9sIOWGheOBqyB1bCDjgYzlhaXjgaPjgabjgYTjgZ/mmYLjga7lr77nrZbjgajjgZfjgablrZDjgrvjg6zjgq/jgr/jgafmjIflrpogKi9cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBzdWJncmlkOyAvKiDjgqLjgqTjg4bjg6Dnlarlj7fjga7luYXjgpLmj4PjgYjjgovjgZ/jgoHjga7oqK3lrpogKi9cbiAgZ3JpZC1jb2x1bW46IDEvLTE7IC8qIOWIl+OCkuOBvuOBn+OBhOOBp+WFqOW5heOCkueiuuS/nSAqL1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG59XG4uZW50cnktc3R5bGUgb2w6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+IGxpOjptYXJrZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLmVudHJ5LXN0eWxlIG9sOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgPiBsaTo6YmVmb3JlIHtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIHBhZGRpbmctdG9wOiAxLjRweDsgLyog55Wq5Y+35L2N572u44Gu5b6u6Kq/5pW0ICovXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC0ybmQpO1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29udGVudDogY291bnRlcnMob3JkZXItbGlzdCwgXCItXCIpIFwiLiBcIjtcbiAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyLWxpc3Q7XG59XG4uZW50cnktc3R5bGUgb2w6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+IGxpID4gKiB7XG4gIC8qIOODluODreODg+OCr+OCqOODh+OCo+OCv++8muODquOCu+ODg+ODiOeUqCAqL1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVudHJ5LXN0eWxlIG9sOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgPiBsaSBvbCB7XG4gIGdyaWQtY29sdW1uOiAxLy0xOyAvKiDliJfjgpLjgb7jgZ/jgYTjgaflhajluYXjgpLnorrkv50gKi9cbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1vcmRlci1saXN0LXNwYWNlLXkpO1xufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBvbCB7XG4gIC0tb3JkZXItbGlzdC1zcGFjZS15OiAwLjVyZW07IC8qIOOCouOCpOODhuODoOmWk+OBrue4puS9meeZvSAqL1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxbGgsIGF1dG8pIDFmcjsgLyog5YiX44KS44CM55Wq5Y+355So44CN44Go44CM44OG44Kt44K544OI55So44CN44Gr5YiG44GR44KLICovIC8qIHVs44GuMemajuWxpOebruODhuOCreOCueODiOOBr+OBmOOBvuOCiuOBqOaPg+OBiOOCi+OBn+OCgeOBqyBtaW5tYXgoMWxoLCBhdXRvKSDjgafmnIDlsI/lgKTjgpLoqK3lrpogKi9cbiAgZ2FwOiB2YXIoLS1vcmRlci1saXN0LXNwYWNlLXkpIDAuMzc1cmVtOyAvKiDjgqLjgqTjg4bjg6DplpPkvZnnmb0sIOeVquWPt+OBqOODhuOCreOCueODiOmWk+S9meeZvSAqL1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyLWxpc3Q7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBvbCA+IGxpIHsgLyogdWwg5YaF44GrIG9sLCBvbCDlhoXjgasgdWwg44GM5YWl44Gj44Gm44GE44Gf5pmC44Gu5a++562W44Go44GX44Gm5a2Q44K744Os44Kv44K/44Gn5oyH5a6aICovXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogc3ViZ3JpZDsgLyog44Ki44Kk44OG44Og55Wq5Y+344Gu5bmF44KS5o+D44GI44KL44Gf44KB44Gu6Kit5a6aICovXG4gIGdyaWQtY29sdW1uOiAxLy0xOyAvKiDliJfjgpLjgb7jgZ/jgYTjgaflhajluYXjgpLnorrkv50gKi9cbiAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgb2wgPiBsaTo6bWFya2VyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IG9sID4gbGk6OmJlZm9yZSB7XG4gIGdyaWQtY29sdW1uOiAxO1xuICBwYWRkaW5nLXRvcDogMS40cHg7IC8qIOeVquWPt+S9jee9ruOBruW+ruiqv+aVtCAqL1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtMm5kKTtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNvbnRlbnQ6IGNvdW50ZXJzKG9yZGVyLWxpc3QsIFwiLVwiKSBcIi4gXCI7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlci1saXN0O1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgb2wgPiBsaSA+ICoge1xuICAvKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/vvJrjg6rjgrvjg4Pjg4jnlKggKi9cbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IG9sID4gbGkgb2wge1xuICBncmlkLWNvbHVtbjogMS8tMTsgLyog5YiX44KS44G+44Gf44GE44Gn5YWo5bmF44KS56K65L+dICovXG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tb3JkZXItbGlzdC1zcGFjZS15KTtcbn1cblxuLyog6KiY6L+w44Oq44K544OIICovXG4uZW50cnktc3R5bGUgZGw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIGRpc3BsYXk6IGJsb2NrOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgcGFkZGluZy1ibG9jazogMDsgLyog44Oq44K744OD44OI55SoICovXG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBib3JkZXI6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xufVxuLmVudHJ5LXN0eWxlIGRsOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgZHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbn1cbi5lbnRyeS1zdHlsZSBkbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIGRkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbn1cbi5lbnRyeS1zdHlsZSBkbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIGRkICsgZHQge1xuICBtYXJnaW4tdG9wOiAwOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbn1cbi5lbnRyeS1zdHlsZSBkbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpLmJveC1ib3JkZXJlZCB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cbi5lbnRyeS1zdHlsZSBkbDpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpLmJveC1ib3JkZXJlZCBkdCB7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG59XG4uZW50cnktc3R5bGUgZGw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5ib3gtYm9yZGVyZWQgZHQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXI6IDA7XG59XG4uZW50cnktc3R5bGUgZGw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5ib3gtYm9yZGVyZWQgZGQge1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZW50cnktc3R5bGUgZGw6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKS5ib3gtYm9yZGVyZWQgZHQge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCk7XG4gIH1cbiAgLmVudHJ5LXN0eWxlIGRsOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkuYm94LWJvcmRlcmVkIGRkIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICB9XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGRsIHtcbiAgZGlzcGxheTogYmxvY2s7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICBwYWRkaW5nLWJsb2NrOiAwOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGJvcmRlcjogMDsgLyog44Oq44K744OD44OI55SoICovXG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBkbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgZGwgZGQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLyog44Oq44K744OD44OI55SoICovXG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgZGwgZGQgKyBkdCB7XG4gIG1hcmdpbi10b3A6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgZGwuYm94LWJvcmRlcmVkIHtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgZGwuYm94LWJvcmRlcmVkIGR0IHtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGRsLmJveC1ib3JkZXJlZCBkdDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlcjogMDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGRsLmJveC1ib3JkZXJlZCBkZCB7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGRsLmJveC1ib3JkZXJlZCBkdCB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgfVxuICAuYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBkbC5ib3gtYm9yZGVyZWQgZGQge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCk7XG4gIH1cbn1cblxuLyog44K944O844K544Kz44O844OJXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIHByZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKiwgW2NsYXNzfj1jb2RlLWhpZ2hsaWdodF0sIFtjbGFzc349Y29kZS1oaWdobGlnaHRdICopKSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBvdmVyZmxvdzogYXV0bztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7IC8qIOmWsuimp+WBtOeUu+mdouOBruaWh+Wtl+iJsuOBr+ODqeOCpOODluODqeODquOBq+S+neWtmCAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4uZW50cnktc3R5bGUgcHJlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqLCBbY2xhc3N+PWNvZGUtaGlnaGxpZ2h0XSwgW2NsYXNzfj1jb2RlLWhpZ2hsaWdodF0gKikpIGNvZGUge1xuICBwYWRkaW5nOiAwO1xuICAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmVudHJ5LXN0eWxlIHByZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKiwgW2NsYXNzfj1jb2RlLWhpZ2hsaWdodF0sIFtjbGFzc349Y29kZS1oaWdobGlnaHRdICopKSB7XG4gICAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCk7XG4gIH1cbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgcHJlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTsgLyog6Zay6Kan5YG055S76Z2i44Gu5paH5a2X6Imy44Gv44Op44Kk44OW44Op44Oq44Gr5L6d5a2YICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHByZSBjb2RlIHtcbiAgcGFkZGluZzogMDtcbiAgLyog44Oq44K744OD44OI55SoICovXG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHByZSB7XG4gICAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCk7XG4gIH1cbn1cblxuLyog5rC05bmz572r57eaXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIGhyOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBib3JkZXI6IDAgc29saWQgdmFyKC0tY29sb3ItZ3JheTcwKTtcbiAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZW50cnktc3R5bGUgaHI6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZW50cnktZWwtbWFyZ2luLWxnKTtcbiAgfVxufVxuXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBociB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGJvcmRlcjogMCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5NzApO1xuICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGhyIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbGcpO1xuICB9XG59XG5cbi8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+eUqCAqL1xuW2RhdGEtdHlwZT1ob3Jpem9udGFsUnVsZV0ge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG59XG5bZGF0YS10eXBlPWhvcml6b250YWxSdWxlXSBociB7XG4gIG1hcmdpbi1ibG9jazogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICBbZGF0YS10eXBlPWhvcml6b250YWxSdWxlXSB7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICB9XG4gIFtkYXRhLXR5cGU9aG9yaXpvbnRhbFJ1bGVdIGhyIHtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g44OW44Ot44OD44Kv44Ko44OH44Kj44K/44O85YaF6KaB57Sg44Gu44Os44Kk44Ki44Km44OIXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIOODrOOCpOOCouOCpuODiCAqL1xuOndoZXJlKC5lbnRyeS1zdHlsZSkgOndoZXJlKFtkYXRhLXR5cGU9Y29sdW1uc10pIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbn1cbjp3aGVyZSguZW50cnktc3R5bGUpIDp3aGVyZShbZGF0YS10eXBlPWNvbHVtbnNdKS5sYXlvdXQtdHdvLWNvbHVtbiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG59XG46d2hlcmUoLmVudHJ5LXN0eWxlKSA6d2hlcmUoW2RhdGEtdHlwZT1jb2x1bW5zXSkubGF5b3V0LXRocmVlLWNvbHVtbiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG59XG5cbi8qIOeuoeeQhueUu+mdouWBtCAqL1xuOndoZXJlKC5hY21zLWFkbWluLWJsb2NrLWVkaXRvcikgOndoZXJlKFtkYXRhLXR5cGU9Y29sdW1uc10pIHtcbiAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIOmWsuimp+eUu+mdouWBtCAqL1xuOndoZXJlKC5lbnRyeS1zdHlsZSkgOndoZXJlKFtkYXRhLXR5cGU9Y29sdW1uc10pIHtcbiAgZ2FwOiB2YXIoLS11bml0LWd1dHRlci12YXIpO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjgrDjg6vjg7zjg5fjg6bjg4vjg4Pjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmVudHJ5LXN0eWxlIC5ndS1iZy1ncmF5IHtcbiAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCkgdmFyKC0tZW50cnktZWwtcGFkZGluZy14cyk7XG4gIG1hcmdpbjogMCAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JheTEwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4uZW50cnktc3R5bGUgLmd1LWJnLWdyYXkgPiAqOm5vdCgubm90LWVkaXRvci1zdHlsZSk6Zmlyc3QtY2hpbGQsXG4uZW50cnktc3R5bGUgLmd1LWJnLWdyYXkgPiAqOmZpcnN0LWNoaWxkLmNvbHVtbi1ibG9jay1lZGl0b3IgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lbnRyeS1zdHlsZSAuZ3UtYmctZ3JheSA+ICo6bm90KC5ub3QtZWRpdG9yLXN0eWxlKTpsYXN0LWNoaWxkLFxuLmVudHJ5LXN0eWxlIC5ndS1iZy1ncmF5ID4gKjpsYXN0LWNoaWxkLmNvbHVtbi1ibG9jay1lZGl0b3IgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVudHJ5LXN0eWxlIC5ndS1uYXJyb3cge1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g44Om44OL44OD44OI6YWN572uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbi1sZWZ0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5hbGlnbi1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOW8leeUqFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgYmxvY2txdW90ZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHtcbiAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgbWFyZ2luLWlubGluZTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteGwpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcbiAgLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/6Kq/5pW077ya44Oq44K744OD44OI55SoICovXG4gIC8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+iqv+aVtCAqL1xufVxuLmVudHJ5LXN0eWxlIGJsb2NrcXVvdGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSA+ICoge1xuICBtYXJnaW4tYmxvY2s6IDA7XG59XG4uZW50cnktc3R5bGUgYmxvY2txdW90ZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpICogKyAqIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xufVxuLmVudHJ5LXN0eWxlIGJsb2NrcXVvdGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSBhIHtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkIDJweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAzcHg7XG4gIC8qIOS4reOBq+eUu+WDj+OBjOWFpeOBo+OBpuOBhOOCi+ODquODs+OCr+OBruaZgiAqL1xufVxuLmVudHJ5LXN0eWxlIGJsb2NrcXVvdGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSBhW3RhcmdldD1fYmxhbmtdIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG4uZW50cnktc3R5bGUgYmxvY2txdW90ZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIGFbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbGV4OiBub25lO1xuICB3aWR0aDogMC44NzVlbTtcbiAgaGVpZ2h0OiAwLjg3NWVtO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgbWFzay1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uL3RhcmdldF9ibGFuay5zdmdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5lbnRyeS1zdHlsZSBibG9ja3F1b3RlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgYTphbnktbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4uZW50cnktc3R5bGUgYmxvY2txdW90ZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIGE6aGFzKGltZykge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAuZW50cnktc3R5bGUgYmxvY2txdW90ZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIGE6aGFzKGltZyk6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuLmVudHJ5LXN0eWxlIGJsb2NrcXVvdGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5lbnRyeS1zdHlsZSBibG9ja3F1b3RlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgc3Ryb25nIHtcbiAgLyog44Oq44K744OD44OI55SoICovXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5lbnRyeS1zdHlsZSBibG9ja3F1b3RlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICAgIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWVudHJ5LWVsLW1hcmdpbi1sZyk7XG4gIH1cbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgLyog44Oq44K744OD44OI55SoICovXG4gIG1hcmdpbi1pbmxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhsKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG4gIC8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+iqv+aVtO+8muODquOCu+ODg+ODiOeUqCAqL1xuICAvKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/oqr/mlbQgKi9cbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGJsb2NrcXVvdGUgPiAqIHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYmxvY2txdW90ZSAqICsgKiB7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGJsb2NrcXVvdGUgYSB7XG4gIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZCAycHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogM3B4O1xuICAvKiDkuK3jgavnlLvlg4/jgYzlhaXjgaPjgabjgYTjgovjg6rjg7Pjgq/jga7mmYIgKi9cbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGJsb2NrcXVvdGUgYVt0YXJnZXQ9X2JsYW5rXSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYmxvY2txdW90ZSBhW3RhcmdldD1fYmxhbmtdOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxleDogbm9uZTtcbiAgd2lkdGg6IDAuODc1ZW07XG4gIGhlaWdodDogMC44NzVlbTtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG1hc2staW1hZ2U6IHVybChcIi9pbWFnZXMvaWNvbi90YXJnZXRfYmxhbmsuc3ZnXCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAuYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBibG9ja3F1b3RlIGE6YW55LWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYmxvY2txdW90ZSBhOmhhcyhpbWcpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgYmxvY2txdW90ZSBhOmhhcyhpbWcpOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGJsb2NrcXVvdGUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBibG9ja3F1b3RlIHN0cm9uZyB7XG4gIC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbGcpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODquODs+OCr+ODnOOCv+ODs1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiDkuIrkuIvkvZnnmb0gKi9cbjp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9bGlua0J1dHRvbl0ge1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbn1cblxuLyog44Oq44Oz44KvICovXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbZGF0YS10eXBlPWxpbmtCdXR0b25dIGEge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiA0cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDNyZW07XG4gIHBhZGRpbmc6IHZhcigtLWJ0bi1wYWRkaW5nLXkpIHZhcigtLWJ0bi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tcmlnaHQ6IDA7IC8qIOODquOCu+ODg+ODiCAqL1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgLyog44Oq44K744OD44OIICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbn1cbjp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9bGlua0J1dHRvbl0gYSwgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1saW5rQnV0dG9uXSBhOmxpbmssIDp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9bGlua0J1dHRvbl0gYTp2aXNpdGVkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbn1cbjp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9bGlua0J1dHRvbl0gYVt0YXJnZXQ9X2JsYW5rXTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXg6IG5vbmU7XG4gIHdpZHRoOiAwLjg3NWVtO1xuICBoZWlnaHQ6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb250YWluO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIDp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9bGlua0J1dHRvbl0gYSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gIH1cbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1saW5rQnV0dG9uXSBhOndoZXJlKDphbnktbGluayk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXByaW1hcnktaG92ZXIpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g44Kr44K544K/44Og44Om44OL44OD44OIXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIOODoeODg+OCu+ODvOOCuOODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgLm1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMCAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyYXkxMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuLmVudHJ5LXN0eWxlIC5tZXNzYWdlLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEuNXJlbTtcbiAgcGFkZGluZzogMnJlbSAxcmVtO1xufVxuLmVudHJ5LXN0eWxlIC5tZXNzYWdlLWltYWdlIHtcbiAgaGVpZ2h0OiAxNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5lbnRyeS1zdHlsZSAubWVzc2FnZS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmVudHJ5LXN0eWxlIC5tZXNzYWdlLWxlYWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbn1cbi5lbnRyeS1zdHlsZSAubWVzc2FnZS1jb250ZW50IHtcbiAgbWFyZ2luOiAwO1xufVxuLmVudHJ5LXN0eWxlIC5tZXNzYWdlLXNvdXJjZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5lbnRyeS1zdHlsZSAubWVzc2FnZS1zb3VyY2U6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMCAxcmVtIDAgMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JheTMwKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5lbnRyeS1zdHlsZSAubWVzc2FnZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAuZW50cnktc3R5bGUgLm1lc3NhZ2Utd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiA2cmVtIDNyZW07XG4gIH1cbiAgLmVudHJ5LXN0eWxlIC5tZXNzYWdlLWltYWdlIHtcbiAgICBvcmRlcjogMTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgfVxuICAuZW50cnktc3R5bGUgLm1lc3NhZ2UtaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbiAgLmVudHJ5LXN0eWxlIC5tZXNzYWdlLWxlYWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xuICB9XG4gIC5lbnRyeS1zdHlsZSAubWVzc2FnZS1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOWfi+OCgei+vOOBv+ODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5bY2xhc3MqPWNvbHVtbi1lbWJlZC1dIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS11bml0LW1hcmdpbi10b3ApIHZhcigtLXVuaXQtbWFyZ2luLWJvdHRvbSk7XG59XG5bY2xhc3MqPWNvbHVtbi1lbWJlZC1dIGEuYWNtcy1lbWJlZC1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIFtjbGFzcyo9Y29sdW1uLWVtYmVkLV0gYS5hY21zLWVtYmVkLWxpbmsge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xuICB9XG4gIFtjbGFzcyo9Y29sdW1uLWVtYmVkLV0gYS5hY21zLWVtYmVkLWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhvdmVyLWJnKTtcbiAgfVxufVxuW2NsYXNzKj1jb2x1bW4tZW1iZWQtXSAuYWNtcy1lbWJlZC1saW5rLWltYWdlLWNvbnRhaW5lciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5bY2xhc3MqPWNvbHVtbi1lbWJlZC1dIC5hY21zLWVtYmVkLWxpbmstY29udGVudCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMDsgLyog44Oq44K744OD44OIICovXG59XG5bY2xhc3MqPWNvbHVtbi1lbWJlZC1dIC5hY21zLWVtYmVkLWxpbmstc2l0ZS1uYW1lIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuW2NsYXNzKj1jb2x1bW4tZW1iZWQtXSAuYWNtcy1lbWJlZC1saW5rLXRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgMC4yNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5bY2xhc3MqPWNvbHVtbi1lbWJlZC1dIC5hY21zLWVtYmVkLWxpbmstZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtMm5kKTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgbGluZS1jbGFtcDogMjtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICBbY2xhc3MqPWNvbHVtbi1lbWJlZC1dIGEuYWNtcy1lbWJlZC1saW5rIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIFtjbGFzcyo9Y29sdW1uLWVtYmVkLV0gLmFjbXMtZW1iZWQtbGluay1pbWFnZS1jb250YWluZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgW2NsYXNzKj1jb2x1bW4tZW1iZWQtXSAuYWNtcy1lbWJlZC1saW5rLWltYWdlLWNvbnRhaW5lciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuICBbY2xhc3MqPWNvbHVtbi1lbWJlZC1dIC5hY21zLWVtYmVkLWxpbmstY29udGVudCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIHdpZHRoOiAwLjY2NjY2NjY2Njc7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIFtjbGFzcyo9Y29sdW1uLWVtYmVkLV0gLmFjbXMtZW1iZWQtbGluay10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gLSDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/jga7jg5XjgqHjgqTjg6vvvIjnuKbnqY3jgb/jgIHjg5zjgr/jg7PlnovvvIlcbiAtIOODoeODh+OCo+OCouODleOCoeOCpOODq1xuIC0g44OV44Kh44Kk44OrXG4g4oC7IG1lZGlhLWRvd25sb2Fk44Gv5YuV55qE44CBc3RvcmFnZeOBr+mdmeeahOabuOOBjeWHuuOBl+OBq+WvvuW/nFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbZGF0YS10eXBlPWZpbGVCbG9ja10sXG5bY2xhc3MqPWNvbHVtbi1tZWRpYV06aGFzKGFbaHJlZio9bWVkaWEtZG93bmxvYWRdLCBhW2hyZWYqPXN0b3JhZ2VdKSxcbltjbGFzcyo9Y29sdW1uLWZpbGVdIHtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGZvbnQtc2l6ZTogMDsgLyogRGVzY2VuZGVyIHNwYWNlIOWvvuetliAqL1xufVxuXG4vKiDjg5zjgr/jg7Plnotcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyog44Oq44Oz44KvICovXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbZGF0YS10eXBlPWZpbGVCbG9ja11bZGF0YS1kaXNwbGF5LXR5cGU9YnV0dG9uXSBhLFxuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdIGFbaHJlZio9bWVkaWEtZG93bmxvYWRdLFxuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdIGFbaHJlZio9c3RvcmFnZV0sXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbY2xhc3MqPWNvbHVtbi1maWxlXSBhIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogMXJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTQwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdW2RhdGEtZGlzcGxheS10eXBlPWJ1dHRvbl0gYSxcbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdIGFbaHJlZio9bWVkaWEtZG93bmxvYWRdLFxuICA6d2hlcmUoLmVudHJ5LXN0eWxlKSBbY2xhc3MqPWNvbHVtbi1tZWRpYV0gYVtocmVmKj1zdG9yYWdlXSxcbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tZmlsZV0gYSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gIH1cbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdW2RhdGEtZGlzcGxheS10eXBlPWJ1dHRvbl0gYTp3aGVyZSg6YW55LWxpbmspOmhvdmVyLFxuICA6d2hlcmUoLmVudHJ5LXN0eWxlKSBbY2xhc3MqPWNvbHVtbi1tZWRpYV0gYVtocmVmKj1tZWRpYS1kb3dubG9hZF06d2hlcmUoOmFueS1saW5rKTpob3ZlcixcbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdIGFbaHJlZio9c3RvcmFnZV06d2hlcmUoOmFueS1saW5rKTpob3ZlcixcbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tZmlsZV0gYTp3aGVyZSg6YW55LWxpbmspOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5MjApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTQwKTsgLyogaG92ZXLli5XkvZzkuIrmm7jjgY3jga7jgZ/jgoEgKi9cbiAgfVxufVxuXG4vKiDjg5XjgqHjgqTjg6vjgqLjgqTjgrPjg7MgKi9cbjp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9ZmlsZUJsb2NrXVtkYXRhLWRpc3BsYXktdHlwZT1idXR0b25dIGltZyxcbjp3aGVyZSguZW50cnktc3R5bGUpIFtjbGFzcyo9Y29sdW1uLW1lZGlhXSAuY29sdW1uSWNvbixcbjp3aGVyZSguZW50cnktc3R5bGUpIFtjbGFzcyo9Y29sdW1uLWZpbGVdIC5jb2x1bW5JY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qIOOCreODo+ODl+OCt+ODp+ODs+OCv+OCpOODneOCsOODqeODleOCo+ioreWumiAqL1xuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdIC5jYXB0aW9uLFxuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tZmlsZV0gLmNhcHRpb24sXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbY2xhc3MqPWNvbHVtbi1tZWRpYV06aGFzKGFbaHJlZio9bWVkaWEtZG93bmxvYWRdLCBhW2hyZWYqPXN0b3JhZ2VdKTpoYXMoLmNvbHVtbkljb24pOm5vdCg6aGFzKC5jb2x1bW4tcGRmLWltYWdlKSkgLmNhcHRpb24ge1xuICBtYXJnaW46IDA7IC8qIOODquOCu+ODg+ODiCAqL1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cblxuLyogUERG44OX44Os44OT44Ol44O8XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIOODquODs+OCryAqL1xuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdOmhhcyguY29sdW1uLXBkZi1pbWFnZSkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBnYXA6IDAuNXJlbTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAvKiDjg6rjg7Pjgq/jgrnjgr/jgqTjg6vjg6rjgrvjg4Pjg4ggKi9cbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIDp3aGVyZSguZW50cnktc3R5bGUpIFtjbGFzcyo9Y29sdW1uLW1lZGlhXTpoYXMoLmNvbHVtbi1wZGYtaW1hZ2UpIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiDjg6rjgrvjg4Pjg4ggKi9cbiAgfVxuICA6d2hlcmUoLmVudHJ5LXN0eWxlKSBbY2xhc3MqPWNvbHVtbi1tZWRpYV06aGFzKC5jb2x1bW4tcGRmLWltYWdlKSBhOmhvdmVyIC5jb2x1bW4tcGRmLWltYWdlIHtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2NsYXNzKj1jb2x1bW4tbWVkaWFdOmhhcyguY29sdW1uLXBkZi1pbWFnZSkgYTpob3ZlciAuY2FwdGlvbiB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cbjp3aGVyZSguZW50cnktc3R5bGUpIC5jb2x1bW4tcGRmLWltYWdlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTQwKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbjp3aGVyZSguZW50cnktc3R5bGUpIC5jb2x1bW4tcGRmLWltYWdlLWNhcHRpb24tYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG59XG46d2hlcmUoLmVudHJ5LXN0eWxlKSAuY29sdW1uLXBkZi1pbWFnZS1jYXB0aW9uLWJveCAuY29sdW1uSWNvbiB7XG4gIHdpZHRoOiAycmVtO1xufVxuOndoZXJlKC5lbnRyeS1zdHlsZSkgLmNvbHVtbi1wZGYtaW1hZ2UtY2FwdGlvbi1ib3ggLmNhcHRpb24ge1xuICBtYXJnaW46IDA7IC8qIOODquOCu+ODg+ODiCAqL1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC0ybmQpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIGRvdHRlZCB0cmFuc3BhcmVudDtcbn1cbjp3aGVyZSguZW50cnktc3R5bGUpIC5jb2x1bW4tcGRmLWltYWdlLWNhcHRpb24tYm94IC5jb2x1bW4tcGRmLWltYWdlLWRvd25sb2FkLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG46d2hlcmUoLmVudHJ5LXN0eWxlKSAuY29sdW1uLXBkZi1pbWFnZS1jYXB0aW9uLWJveCAuY29sdW1uLXBkZi1pbWFnZS1kb3dubG9hZC1pY29uIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuOndoZXJlKC5lbnRyeS1zdHlsZSkgLmNvbHVtbi1wZGYtaW1hZ2UtY2FwdGlvbi1ib3ggLmNvbHVtbi1wZGYtaW1hZ2UtZG93bmxvYWQtaWNvbiBzdmcgcGF0aCB7XG4gIHN0cm9rZTogY3VycmVudGNvbG9yO1xufVxuXG4vKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/jga7jg5XjgqHjgqTjg6vvvIjnuKbnqY3jgb/vvIlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyog44Kt44Oj44OX44K344On44OzICovXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbZGF0YS10eXBlPWZpbGVCbG9ja11bZGF0YS1kaXNwbGF5LXR5cGU9aWNvbl0gLmNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHggMCAwOyAvKiDkvZnnmb3jg6rjgrvjg4Pjg4jjga7jgZ/jgoHlhajmlrnlkJHmjIflrpogKi9cbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdW2RhdGEtZGlzcGxheS10eXBlPWljb25dIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdW2RhdGEtZGlzcGxheS10eXBlPWljb25dIGltZyB7XG4gIHdpZHRoOiA0LjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKiDjg6rjg7Pjgq/li5XkvZzjgrnjgr/jgqTjg6vvvIjplrLopqfnlLvpnaLjga7jgb/vvIkgKi9cbjp3aGVyZSguZW50cnktc3R5bGUpIFtkYXRhLXR5cGU9ZmlsZUJsb2NrXVtkYXRhLWRpc3BsYXktdHlwZT1pY29uXSBhIHtcbiAgLyog44Oq44Oz44Kv44K544K/44Kk44Or44Oq44K744OD44OIICovXG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICA6d2hlcmUoLmVudHJ5LXN0eWxlKSBbZGF0YS10eXBlPWZpbGVCbG9ja11bZGF0YS1kaXNwbGF5LXR5cGU9aWNvbl0gYSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIH1cbiAgOndoZXJlKC5lbnRyeS1zdHlsZSkgW2RhdGEtdHlwZT1maWxlQmxvY2tdW2RhdGEtZGlzcGxheS10eXBlPWljb25dIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg6Hjg4fjgqPjgqLnlLvlg4/jg7vnlLvlg4/jg7vnlLvlg49VUkxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyog5YWx6YCa6Kit5a6aXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbjp3aGVyZSguZW50cnktc3R5bGUpIGZpZ3VyZSxcbjp3aGVyZSguZW50cnktc3R5bGUpIFtyb2xlPWZpZ3VyZV06bm90KDpoYXMoYVtocmVmKj1tZWRpYS1kb3dubG9hZF0sIGFbaHJlZio9c3RvcmFnZV0pKSB7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBtYXJnaW4taW5saW5lOiAwO1xuICBsaW5lLWhlaWdodDogMDsgLyogRGVzY2VuZGVyIHNwYWNlIOWvvuetliAqL1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG46d2hlcmUoLmVudHJ5LXN0eWxlKSBmaWd1cmUgYSxcbjp3aGVyZSguZW50cnktc3R5bGUpIFtyb2xlPWZpZ3VyZV06bm90KDpoYXMoYVtocmVmKj1tZWRpYS1kb3dubG9hZF0sIGFbaHJlZio9c3RvcmFnZV0pKSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAvKiDjg57jgqbjgrnjgqrjg7zjg5Djg7znlKggKi9cbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG46d2hlcmUoLmVudHJ5LXN0eWxlKSBmaWd1cmUgYTpob3Zlcixcbjp3aGVyZSguZW50cnktc3R5bGUpIFtyb2xlPWZpZ3VyZV06bm90KDpoYXMoYVtocmVmKj1tZWRpYS1kb3dubG9hZF0sIGFbaHJlZio9c3RvcmFnZV0pKSBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC43O1xufVxuOndoZXJlKC5lbnRyeS1zdHlsZSkgZmlndXJlIGltZyxcbjp3aGVyZSguZW50cnktc3R5bGUpIFtyb2xlPWZpZ3VyZV06bm90KDpoYXMoYVtocmVmKj1tZWRpYS1kb3dubG9hZF0sIGFbaHJlZio9c3RvcmFnZV0pKSBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLyog44Kt44Oj44OX44K344On44OzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbjp3aGVyZSguZW50cnktc3R5bGUpIGZpZ2NhcHRpb24sXG46d2hlcmUoLmVudHJ5LXN0eWxlKSBbcm9sZT1maWd1cmVdOm5vdCg6aGFzKGFbaHJlZio9bWVkaWEtZG93bmxvYWRdLCBhW2hyZWYqPXN0b3JhZ2VdKSkgLmNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHggMCAwOyAvKiDkvZnnmb3jg6rjgrvjg4Pjg4jjga7jgZ/jgoHlhajmlrnlkJHmjIflrpogKi9cbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtMm5kKTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g5Zyw5ZuzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb2x1bW4tbWFwLFxuLmNvbHVtbi1zdHJlZXQtdmlldyB7XG4gIG1hcmdpbi1ibG9jazogdmFyKC0tdW5pdC1tYXJnaW4tdG9wKSB2YXIoLS11bml0LW1hcmdpbi1ib3R0b20pO1xufVxuXG46d2hlcmUoLmNvbHVtbi1tYXAgZGl2Omhhcyg+IC5qcy1vcGVuLXN0cmVldC1tYXApKSxcbjp3aGVyZSguY29sdW1uLW1hcCBkaXY6aGFzKD4gLmpzLXMyZC1yZWFkeSkpLFxuOndoZXJlKC5jb2x1bW4tc3RyZWV0LXZpZXcgZGl2Omhhcyg+IC5qcy1zdHJlZXQtdmlldykpIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG46d2hlcmUoLmNvbHVtbi1tYXAgLmpzLW9wZW4tc3RyZWV0LW1hcCksXG46d2hlcmUoLmNvbHVtbi1tYXAgLmpzLXMyZC1yZWFkeSksXG46d2hlcmUoLmNvbHVtbi1zdHJlZXQtdmlldyAuanMtc3RyZWV0LXZpZXcpIHtcbiAgYXNwZWN0LXJhdGlvOiAxNi85OyAvKiDjg4fjg5Xjgqnjg6vjg4jjga7jgqLjgrnjg5rjgq/jg4jmr5QgKi9cbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODouOCuOODpeODvOODq+ODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5bY2xhc3MqPWNvbHVtbi1tb2R1bGVdIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS11bml0LW1hcmdpbi10b3ApIHZhcigtLXVuaXQtbWFyZ2luLWJvdHRvbSk7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODhuODvOODluODq1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktc3R5bGUgdGFibGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB7XG4gIG1hcmdpbjogMCAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyAvKiDjg4bjg7zjg5bjg6vjgavop5LkuLjjgpLjgaTjgZHjgovjgZ/jgoEgc2VwYXJhdGUg44Gr44GX44Gm44GE44G+44GZICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGgsXG4uZW50cnktc3R5bGUgdGFibGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB0ZCB7XG4gIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmcteHMpO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgYm9yZGVyOiAwOyAvKiDjg6rjgrvjg4Pjg4ggKi9cbiAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICBib3JkZXItbGVmdDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICAvKiDopoHntKDplpPkvZnnmb3jgpLnorrkv50o566h55CG55S76Z2i44Gn44Gu6KGM5YiX5pON5L2c55SoVUnjgpLogIPmha7jgZfjgaTjgaQpICovXG59XG4uZW50cnktc3R5bGUgdGFibGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB0aCA+ICosXG4uZW50cnktc3R5bGUgdGFibGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB0ZCA+ICoge1xuICBtYXJnaW4tYmxvY2s6IDA7IC8qIOODquOCu+ODg+ODiCAqL1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGggPiAqOm5vdCguUHJvc2VNaXJyb3Itd2lkZ2V0KSArICosXG4uZW50cnktc3R5bGUgdGFibGU6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB0ZCA+ICo6bm90KC5Qcm9zZU1pcnJvci13aWRnZXQpICsgKiB7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbn1cbi5lbnRyeS1zdHlsZSB0YWJsZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHRoOmZpcnN0LWNoaWxkLFxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cbi5lbnRyeS1zdHlsZSB0YWJsZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHRyOmZpcnN0LWNoaWxkIHRoLFxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAwO1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5MTApO1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgYSB7XG4gIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZCAycHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogM3B4O1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgYVt0YXJnZXQ9X2JsYW5rXSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgYVt0YXJnZXQ9X2JsYW5rXTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXg6IG5vbmU7XG4gIHdpZHRoOiAwLjg3NWVtO1xuICBoZWlnaHQ6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb250YWluO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgYTphbnktbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmVudHJ5LXN0eWxlIHRhYmxlOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkgdGgsXG4gIC5lbnRyeS1zdHlsZSB0YWJsZTpub3QoOndoZXJlKFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0sIFtjbGFzc349bm90LWVkaXRvci1zdHlsZV0gKikpIHRkIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdGFibGUge1xuICBtYXJnaW46IDAgMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTsgLyog44OG44O844OW44Or44Gr6KeS5Li444KS44Gk44GR44KL44Gf44KBIHNlcGFyYXRlIOOBq+OBl+OBpuOBhOOBvuOBmSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRoLFxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdGFibGUgdGQge1xuICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGJvcmRlcjogMDsgLyog44Oq44K744OD44OIICovXG4gIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcbiAgYm9yZGVyLWxlZnQ6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcbiAgLyog6KaB57Sg6ZaT5L2Z55m944KS56K65L+dKOeuoeeQhueUu+mdouOBp+OBruihjOWIl+aTjeS9nOeUqFVJ44KS6ICD5oWu44GX44Gk44GkKSAqL1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdGFibGUgdGggPiAqLFxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdGFibGUgdGQgPiAqIHtcbiAgbWFyZ2luLWJsb2NrOiAwOyAvKiDjg6rjgrvjg4Pjg4ggKi9cbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRoID4gKjpub3QoLlByb3NlTWlycm9yLXdpZGdldCkgKyAqLFxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgdGFibGUgdGQgPiAqOm5vdCguUHJvc2VNaXJyb3Itd2lkZ2V0KSArICoge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFyZW07XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSB0YWJsZSB0aDpmaXJzdC1jaGlsZCxcbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSB0YWJsZSB0cjpmaXJzdC1jaGlsZCB0aCxcbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTEwKTtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIGEge1xuICBjb2xvcjogY3VycmVudGNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQgMnB4O1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIGFbdGFyZ2V0PV9ibGFua10ge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIGFbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbGV4OiBub25lO1xuICB3aWR0aDogMC44NzVlbTtcbiAgaGVpZ2h0OiAwLjg3NWVtO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgbWFzay1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uL3RhcmdldF9ibGFuay5zdmdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIGE6YW55LWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IHRhYmxlIHRoLFxuICAuYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItYm9keSB0YWJsZSB0ZCB7XG4gICAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5lbnRyeS1zdHlsZSBkaXY6aGFzKD4gdGFibGUpOm5vdCg6d2hlcmUoW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSwgW2NsYXNzfj1ub3QtZWRpdG9yLXN0eWxlXSAqKSkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuLmVudHJ5LXN0eWxlIGRpdjpoYXMoPiB0YWJsZSk6bm90KDp3aGVyZShbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdLCBbY2xhc3N+PW5vdC1lZGl0b3Itc3R5bGVdICopKSB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5IGRpdjpoYXMoPiB0YWJsZSkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHkgZGl2Omhhcyg+IHRhYmxlKSB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8qIOOCueOCr+ODreODvOODq+OBmeOCi+ODhuODvOODluODqyAqL1xuLmFjbXMtdGFibGUtc2Nyb2xsYWJsZSB0aCxcbi5hY21zLXRhYmxlLXNjcm9sbGFibGUgdGQsXG4uanMtdGFibGUtdW5pdC1zY3JvbGwtaGludCB0aCxcbi5qcy10YWJsZS11bml0LXNjcm9sbC1oaW50IHRkIHtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+ODvOe3qOmbhueUu+mdoueUqOaJk+OBoea2iOOBlyAqL1xuLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWNvbnRlbnQgLmVudHJ5LXN0eWxlIHRhYmxlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+ODvOe3qOmbhueUu+mdouOBp+OBr+ijhemjvuaTjeS9nOeUqFVJ44Gu6KGo56S644KS5aao44GS44Gq44GE44KI44GG44Gr44CMb3ZlcmZsb3c6IGhpZGRlbjvjgI3jga/jgZfjgarjgYTjgafjgY/jgaDjgZXjgYQgKi9cbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g5YuV55S744Om44OL44OD44OIXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jb2x1bW4teW91dHViZSxcbi5jb2x1bW4tdmlkZW8ge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXVuaXQtbWFyZ2luLXRvcCkgdmFyKC0tdW5pdC1tYXJnaW4tYm90dG9tKTtcbn1cblxuOndoZXJlKC5jb2x1bW4taWZyYW1lIGlmcmFtZSkge1xuICBkaXNwbGF5OiBibG9jazsgLyogRGVzY2VuZGVyIHNwYWNlIOWvvuetliAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYXNwZWN0LXJhdGlvOiAxNi85OyAvKiDjg4fjg5Xjgqnjg6vjg4jjga7jgqLjgrnjg5rjgq/jg4jmr5QgKi9cbn0iLCJAdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnLi4vZ2xvYmFsL3ZhcmlhYmxlcycgYXMgdmFyO1xuQHVzZSAnYnJlYWtwb2ludHMnIGFzIGJyZWFrcG9pbnRzO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIGdyaWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDU1MgR3JpZOOBruOCq+ODqeODoOOBqOOCueOCv+ODvOODiOS9jee9ruOBruOCr+ODqeOCueOCkueUn+aIkOOBmeOCi21peGluXG4vLyDlkITjg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjgavlr77jgZfjgabjgIHjgqvjg6njg6Djga7luYXjgajjgrDjg6rjg4Pjg4nplovlp4vkvY3nva7jgpLmjIflrprjgZnjgovjgq/jg6njgrnjgpLnlJ/miJDjgZfjgb7jgZlcbi8vICRjb2x1bW5zOiDjgrDjg6rjg4Pjg4njga7liJfmlbDvvIjjg4fjg5Xjgqnjg6vjg4jjga92YXIuJGFjbXMtY29sdW1uc++8iVxuLy8gJGJyZWFrcG9pbnRzOiDjg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjga7oqK3lrprvvIjjg4fjg5Xjgqnjg6vjg4jjga92YXIuJGdyaWQtYnJlYWtwb2ludHPvvIlcbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6IHZhci4kYWNtcy1jb2x1bW5zLCAkYnJlYWtwb2ludHM6IHZhci4kZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAua2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnRzLmJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50cy5tZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuYWNtcy1nLWNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3RhcnQgd2l0aCBgMWAgYmVjYXVzZSBgMGAgaXMgYW4gaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmFjbXMtZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENTUyBHcmlk44Gu44Kr44Op44Og5pWw44KS6Kit5a6a44GZ44KL44Kv44Op44K544KS55Sf5oiQ44GZ44KLbWl4aW5cbi8vIOWQhOODluODrOOCpOOCr+ODneOCpOODs+ODiOOBq+WvvuOBl+OBpuOAgeOCsOODquODg+ODieOBruOCq+ODqeODoOaVsOOCkuaMh+WumuOBmeOCi+OCr+ODqeOCueOCkueUn+aIkOOBl+OBvuOBmVxuLy8gJGNvbHVtbnM6IOOCsOODquODg+ODieOBruWIl+aVsO+8iOODh+ODleOCqeODq+ODiOOBr3Zhci4kYWNtcy1jb2x1bW5z77yJXG4vLyAkYnJlYWtwb2ludHM6IOODluODrOOCpOOCr+ODneOCpOODs+ODiOOBruioreWumu+8iOODh+ODleOCqeODq+ODiOOBr3Zhci4kZ3JpZC1icmVha3BvaW50c++8iVxuQG1peGluIG1ha2UtY3NzZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiB2YXIuJGFjbXMtY29sdW1ucywgJGJyZWFrcG9pbnRzOiB2YXIuJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLmtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50cy5icmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludHMubWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmFjbXMtZy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIC0tYWNtcy1jb2x1bW5zOiAjeyRpfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuQG1peGluIG1ha2UtZ3JpZCgkbmFtZSwgJGdyaWQtbmFtZSwgJG51bWJlcikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRudW1iZXIge1xuICAgIEBpZiAkZ3JpZC1uYW1lIHtcbiAgICAgIC4jeyRuYW1lfS0jeyRncmlkLW5hbWV9LSN7JGl9IHtcbiAgICAgICAgQGlmICRpICE9ICRudW1iZXIge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKG1hdGguZGl2KCRpLCAkbnVtYmVyKSk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuI3skbmFtZX0tI3skaX0ge1xuICAgICAgICBAaWYgJGkgIT0gJG51bWJlciB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UobWF0aC5kaXYoJGksICRudW1iZXIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuQG1peGluIG1ha2UtcHVsbGVkLWdyaWQoJG5hbWUsICRncmlkLW5hbWUsICRudW1iZXIpIHtcbiAgJGxpbWl0OiAkbnVtYmVyIC0gMTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XG4gICAgQGlmICRncmlkLW5hbWUge1xuICAgICAgLiN7JG5hbWV9LSN7JGdyaWQtbmFtZX0tI3skaX0ge1xuICAgICAgICByaWdodDogcGVyY2VudGFnZShtYXRoLmRpdigkaSwgJG51bWJlcikpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLiN7JG5hbWV9LSN7JGl9IHtcbiAgICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UobWF0aC5kaXYoJGksICRudW1iZXIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiDjgrDjg6rjg4Pjg4njgrfjgrnjg4bjg6DvvIjpnZ7mjqjlpajvvIlcbiAqL1xuQG1peGluIG1ha2UtcHVzaGVkLWdyaWQoJG5hbWUsICRncmlkLW5hbWUsICRudW1iZXIpIHtcbiAgJGxpbWl0OiAkbnVtYmVyIC0gMTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XG4gICAgQGlmICRncmlkLW5hbWUge1xuICAgICAgLiN7JG5hbWV9LSN7JGdyaWQtbmFtZX0tI3skaX0ge1xuICAgICAgICBsZWZ0OiBwZXJjZW50YWdlKG1hdGguZGl2KCRpLCAkbnVtYmVyKSk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuI3skbmFtZX0tI3skaX0ge1xuICAgICAgICBsZWZ0OiBwZXJjZW50YWdlKG1hdGguZGl2KCRpLCAkbnVtYmVyKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICcuLi9nbG9iYWwvdmFyaWFibGVzJyBhcyB2YXI7XG5AdXNlICcuLi9nbG9iYWwvZnVuY3Rpb25zJyBhcyBmbjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFBvcG92ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBwb3BvdmVyKFxuICAkcGFkZGluZy14OiAxMnB4LFxuICAkcGFkZGluZy15OiA4cHgsXG4gICRtaW4td2lkdGg6IDI4MHB4LFxuICAkYmctY29sb3I6IHZhci4kYWNtcy1jb2xvci13aGl0ZSxcbiAgJGJveC1zaGFkb3c6IHZhci4kYWNtcy1zaGFkb3ctZWxldmF0aW9uLW1pZGRsZSxcbiAgJGJvcmRlci1yYWRpdXM6IDZweFxuKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogZm4uekluZGV4KGFjbXMtcG9wb3Zlcik7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogJG1pbi13aWR0aDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAvKipcbiAgKiDlvLfliLbjgqvjg6njg7zjg6Ljg7zjg4nlr77lv5w6IOW8t+WItuOCq+ODqeODvOODouODvOODieaZguOBr+OAgWJveC1zaGFkb3c6bm9uZTsg44Gr44Gq44KL44GM44CBdHJhbnNwYXJlbnTjgavoqK3lrprjgZfjgZ8gYm9yZGVyIOOBruiJsuOBjOS4iuabuOOBjeOBleOCjOOCi+OBn+OCgeimi+OBiOOCi+OCiOOBhuOBq+OBquOCi1xuICAqL1xuICBib3JkZXI6IHRyYW5zcGFyZW50IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4iLCJAdXNlIFwiLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g44OZ44O844K544K544K/44Kk44OrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLiN7YWNtcy4kZW50cnktY2xhc3N9IHtcbiAgLy8g44Kw44Oq44OD44OJ44Gu44Kr44Op44Og6ZaT5L2Z55m944KS6Kit5a6aXG4gIC5hY21zLWNzc2dyaWQge1xuICAgIC0tYWNtcy1nYXA6IHZhcigtLXVuaXQtZ2FwLXgpO1xuICB9XG5cbiAgLy8g44K544K/44OD44Kv44Gu5L2Z55m944KS6Kit5a6aXG4gIC5hY21zLXN0YWNrLFxuICAuYWNtcy12c3RhY2ssXG4gIC5hY21zLWhzdGFjayB7XG4gICAgLS1hY21zLXN0YWNrLXNwYWNpbmc6IHZhcigtLXVuaXQtZ2FwLXgpO1xuICB9XG59XG5cbi8vIOODpuODi+ODg+ODiOWFqOS9k+OBruODrOOCpOOCouOCpuODiFxuLiN7YWNtcy4kZW50cnktY2xhc3N9IHtcbiAgLyog44Kz44Oz44OG44Oz44OE44Gu5Yid44KB44Gu6KaB57Sg44Gr44Gv5LiK5L2Z55m944KS44Gk44GR44Gq44GEICovXG4gICYgPiAqOmZpcnN0LWNoaWxkLFxuICAmID4gKjpmaXJzdC1jaGlsZC5jb2x1bW4tYmxvY2stZWRpdG9yID4gKjpmaXJzdC1jaGlsZCwgLy8g44OW44Ot44OD44Kv44Ko44OH44Kj44K/44O85YaFXG4gICYgPiAqOmZpcnN0LWNoaWxkLmpzLWVkaXRfaW5wbGFjZSA+ICo6Zmlyc3QtY2hpbGQsIC8v44OA44Kk44Os44Kv44OI57eo6ZuG5pmCXG4gICYgPiAqOmZpcnN0LWNoaWxkLmpzLWVkaXRfaW5wbGFjZS1ob3ZlcmluZyArIC5qcy1lZGl0X2lucGxhY2UgPiAqOmZpcnN0LWNoaWxkIC8v44OA44Kk44Os44Kv44OI57eo6ZuG5pmC44Gr44Ob44OQ44O8XG4gIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gIH1cbn1cblxuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkge1xuICBpbWcsXG4gIHZpZGVvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgYXVkaW8sXG4gIGNhbnZhcyxcbiAgZW1iZWQsXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBzdmcsXG4gIHZpZGVvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL+OAgOioreWumlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kZW5hYmxlLWlwaG9uZXg6IHRydWU7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy/jgIDjg5XjgqHjgqTjg6vjga7jg5Hjgrlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGljb24tZm9udC1wYXRoOiBcIi90aGVtZXMvc3lzdGVtL2ZvbnRzL1wiOyAvLyDjg5Xjgqnjg7Pjg4jjga7jg5HjgrnjgpLkuIrmm7jjgY1cbiRyb290LXRoZW1lLWltZzogXCIvaW1hZ2VzL1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8v44CA44OV44Kp44Oz44OIXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIHN0eWxlbGludC1kaXNhYmxlIG1heC1saW5lLWxlbmd0aCAqL1xuJGZvbnQtc2l6ZTogMXJlbTtcbiRmb250LXNjYWxlOiAxLjI1O1xuJGZvbnQtc2NhbGVzOiAoXG4gIGhlYWRpbmctM3hsOiAkZm9udC1zaXplICogJGZvbnQtc2NhbGUgKiAkZm9udC1zY2FsZSAqICRmb250LXNjYWxlICogJGZvbnQtc2NhbGUgKiAkZm9udC1zY2FsZSAqICRmb250LXNjYWxlLFxuICBoZWFkaW5nLTJ4bDogJGZvbnQtc2l6ZSAqICRmb250LXNjYWxlICogJGZvbnQtc2NhbGUgKiAkZm9udC1zY2FsZSAqICRmb250LXNjYWxlICogJGZvbnQtc2NhbGUsXG4gIGhlYWRpbmctbCAgOiAkZm9udC1zaXplICogJGZvbnQtc2NhbGUgKiAkZm9udC1zY2FsZSAqICRmb250LXNjYWxlICogJGZvbnQtc2NhbGUsXG4gIGhlYWRpbmctbSAgOiAkZm9udC1zaXplICogJGZvbnQtc2NhbGUgKiAkZm9udC1zY2FsZSAqICRmb250LXNjYWxlLFxuICBoZWFkaW5nLXMgIDogJGZvbnQtc2l6ZSAqICRmb250LXNjYWxlICogJGZvbnQtc2NhbGUsXG4gIGhlYWRpbmctc3MgOiAkZm9udC1zaXplICogJGZvbnQtc2NhbGUsXG4gIGhlYWRpbmctM3MgOiAkZm9udC1zaXplLFxuXG4gIGJvZHktbCAgICAgOiAkZm9udC1zaXplICogJGZvbnQtc2NhbGUsXG4gIGJvZHktbSAgICAgOiAkZm9udC1zaXplLFxuICBib2R5LXMgICAgIDogY2FsYygkZm9udC1zaXplIC8gJGZvbnQtc2NhbGUpKTtcbi8qIHN0eWxlbGludC1lbmFibGUgbWF4LWxpbmUtbGVuZ3RoICovXG4iLCJAdXNlIFwiLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcbkB1c2UgXCIuLi9nbG9iYWwvY29tbW9uXCIgYXMgZ2xvYmFsO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbuOAgOODleOCo+ODvOODq+ODieOCueOCv+OCpOODq+iqv+aVtFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIOS+oeagvOihqOODpuODi+ODg+ODiOOBruODpuODi+ODg+ODiOOCsOODq+ODvOODl+OCouOCpOODhuODoOOBruWig+eVjOe3miAqL1xuW2RhdGEtdW5pdC10eXBlPVwiY3VzdG9tX3ByaWNpbmdcIl0gLmFjbXMtYWRtaW4tdGFibGUtYWRtaW4tZWRpdCB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgLnNvcnRhYmxlLWl0ZW0ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCIuLi8uLi9nbG9iYWwvYWNtcy1jb21tb25cIiBhcyBhY21zO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODhuOCreOCueODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIOODquODs+OCr1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKFxuICAoXCJhXCIpLFxuICAkZXhjbHVkZS1jbGFzc2VzOiAoXCJub3QtZWRpdG9yLXN0eWxlXCIsIFwibWVkaWEtaW1hZ2UtYmxvY2tcIiwgXCJjb2x1bW4taW1hZ2VcIiwgXCJjb2x1bW4tbWVkaWFcIiwgXCJjb2x1bW4tZXhpbWFnZVwiKVxuKSB7XG4gIEBpbmNsdWRlIGdsb2JhbC5saW5rLXRleHQ7XG59XG5cbi8qIGVtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXG4gIChcImVtXCIpLFxuKSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogc3Ryb25nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXG4gIChcInN0cm9uZ1wiKSxcbikge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogbWFya1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKFxuICAoXCJtYXJrXCIpLFxuKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4vKiBjb2RlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXG4gIChcImNvZGVcIiksXG4gICRleGNsdWRlLWNsYXNzZXM6IChcIm5vdC1lZGl0b3Itc3R5bGVcIiwgXCJjb2RlLWhpZ2hsaWdodFwiKVxuKSB7XG4gIHBhZGRpbmc6IDAuMC4yNXJlbTtcbiAgbWFyZ2luLWlubGluZTogMC4yNXJlbTtcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4vKiDopovlh7rjgZdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW5jbHVkZSBhY21zLmVkaXRvci1zdHlsZSgoXCJoMVwiLCBcImgyXCIsIFwiaDNcIiwgXCJoNFwiLCBcImg1XCIsIFwiaDZcIikpIHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCkgKyB2YXIoLS11bml0LWhlYWRpbmctbWFyZ2luLXRvcC1hZGQpKSB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tc20pO1xufVxuXG5AaW5jbHVkZSBhY21zLmVkaXRvci1zdHlsZSgoXCJoMlwiLCBcImgzXCIsIFwiaDRcIikpIHtcbiAgJi5oZWFkaW5nLWxpbmUge1xuICAgIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKTtcbiAgICBib3JkZXItYmxvY2stZW5kOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkxMDApO1xuICB9XG5cbiAgJi5oZWFkaW5nLXByaW1hcnkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJsb2NrLWVuZDogY2FsYyh2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKSArIHZhcigtLWJvcmRlci13aWR0aC1sZykpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAyZW07XG4gICAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1sZyk7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKFwiaDJcIikge1xuICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgaGVhZGluZy1zKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcblxuICBAaW5jbHVkZSBhY21zLm1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgaGVhZGluZy1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICB9XG59XG5cbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKFwiaDNcIikge1xuICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgaGVhZGluZy1zcyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG5cbiAgQGluY2x1ZGUgYWNtcy5tZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGhlYWRpbmctcyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBhY21zLmVkaXRvci1zdHlsZShcImg0XCIpIHtcbiAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGhlYWRpbmctM3MpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG5cbiAgQGluY2x1ZGUgYWNtcy5tZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGhlYWRpbmctc3MpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIH1cbn1cblxuLyog5pys5paHXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXCJwXCIpIHtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG4gIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xufVxuXG4vKiDjg6rjgrnjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW5jbHVkZSBhY21zLmVkaXRvci1zdHlsZShcInVsXCIpIHtcbiAgLS1saXN0LXNwYWNlLXk6IDAuNXJlbTsgLyog44Ki44Kk44OG44Og6ZaT44Gu57im5L2Z55m9ICovXG5cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1saXN0LXNwYWNlLXkpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMWxoICsgMC4zNzVyZW0pO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcblxuICAmID4gbGkgeyAvKiB1bCDlhoXjgasgb2wsIG9sIOWGheOBqyB1bCDjgYzlhaXjgaPjgabjgYTjgZ/mmYLjga7lr77nrZbjgajjgZfjgablrZDjgrvjg6zjgq/jgr/jgafmjIflrpogKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGJvZHktbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuXG4gICAgJjo6bWFya2VyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogY2FsYygwLjVsaCAtIDAuMTg3NXJlbSk7XG4gICAgICBsZWZ0OiBjYWxjKCgwLjVsaCArIDAuMTg3NXJlbSkgKiAtMSk7XG4gICAgICB3aWR0aDogMC4zNzVyZW07XG4gICAgICBoZWlnaHQ6IDAuMzc1cmVtO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJiA+ICoge1xuICAgICAgLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/77ya44Oq44K744OD44OI55SoICovXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLWxpc3Qtc3BhY2UteSk7XG4gICAgfVxuICB9XG59XG5cbi8qIOeVquWPt+S7mOOBjeODquOCueODiCAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXCJvbFwiKSB7XG4gIC0tb3JkZXItbGlzdC1zcGFjZS15OiAwLjVyZW07IC8qIOOCouOCpOODhuODoOmWk+OBrue4puS9meeZvSAqL1xuXG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDFsaCwgYXV0bykgMWZyOyAvKiDliJfjgpLjgIznlarlj7fnlKjjgI3jgajjgIzjg4bjgq3jgrnjg4jnlKjjgI3jgavliIbjgZHjgosgKi8gLyogdWzjga4x6ZqO5bGk55uu44OG44Kt44K544OI44Gv44GY44G+44KK44Go5o+D44GI44KL44Gf44KB44GrIG1pbm1heCgxbGgsIGF1dG8pIOOBp+acgOWwj+WApOOCkuioreWumiAqL1xuICBnYXA6IHZhcigtLW9yZGVyLWxpc3Qtc3BhY2UteSkgMC4zNzVyZW07IC8qIOOCouOCpOODhuODoOmWk+S9meeZvSwg55Wq5Y+344Go44OG44Kt44K544OI6ZaT5L2Z55m9ICovXG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgY291bnRlci1yZXNldDogb3JkZXItbGlzdDtcblxuICAmID4gbGkgeyAvKiB1bCDlhoXjgasgb2wsIG9sIOWGheOBqyB1bCDjgYzlhaXjgaPjgabjgYTjgZ/mmYLjga7lr77nrZbjgajjgZfjgablrZDjgrvjg6zjgq/jgr/jgafmjIflrpogKi9cbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogc3ViZ3JpZDsgLyog44Ki44Kk44OG44Og55Wq5Y+344Gu5bmF44KS5o+D44GI44KL44Gf44KB44Gu6Kit5a6aICovXG4gICAgZ3JpZC1jb2x1bW46IDEgLyAtMTsgLyog5YiX44KS44G+44Gf44GE44Gn5YWo5bmF44KS56K65L+dICovXG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG5cbiAgICAmOjptYXJrZXIge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICBwYWRkaW5nLXRvcDogMS40cHg7IC8qIOeVquWPt+S9jee9ruOBruW+ruiqv+aVtCAqL1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC0ybmQpO1xuICAgICAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgY29udGVudDogY291bnRlcnMob3JkZXItbGlzdCwgXCItXCIpIFwiLiBcIjtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlci1saXN0O1xuICAgIH1cblxuICAgICYgPiAqIHtcbiAgICAgIC8qIOODluODreODg+OCr+OCqOODh+OCo+OCv++8muODquOCu+ODg+ODiOeUqCAqL1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIC0xOyAvKiDliJfjgpLjgb7jgZ/jgYTjgaflhajluYXjgpLnorrkv50gKi9cbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLW9yZGVyLWxpc3Qtc3BhY2UteSk7XG4gICAgfVxuICB9XG59XG5cbi8qIOiomOi/sOODquOCueODiCAqL1xuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXCJkbFwiKSB7XG4gIGRpc3BsYXk6IGJsb2NrOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgcGFkZGluZy1ibG9jazogMDsgLyog44Oq44K744OD44OI55SoICovXG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBib3JkZXI6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xuXG4gIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGJvZHktbSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICB9XG5cbiAgZGQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICAgIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgfVxuXG4gIGRkICsgZHQge1xuICAgIG1hcmdpbi10b3A6IDA7IC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICB9XG5cbiAgJi5ib3gtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICAgZHQge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICAgICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzApO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRkIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYWNtcy5tZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBkdCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLW1kKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiDjgr3jg7zjgrnjgrPjg7zjg4lcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW5jbHVkZSBhY21zLmVkaXRvci1zdHlsZShcbiAgKFwicHJlXCIpLFxuICAkZXhjbHVkZS1jbGFzc2VzOiAoXCJub3QtZWRpdG9yLXN0eWxlXCIsIFwiY29kZS1oaWdobGlnaHRcIilcbikge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctc20pO1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7IC8qIOmWsuimp+WBtOeUu+mdouOBruaWh+Wtl+iJsuOBr+ODqeOCpOODluODqeODquOBq+S+neWtmCAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIGFjbXMubWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICB9XG59XG5cbi8qIOawtOW5s+e9q+e3mlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKFxuICAoXCJoclwiKSxcbikge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBib3JkZXI6IDAgc29saWQgdmFyKC0tY29sb3ItZ3JheTcwKTtcbiAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKTtcblxuICBAaW5jbHVkZSBhY21zLm1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbGcpO1xuICB9XG59XG5cbi8qIOODluODreODg+OCr+OCqOODh+OCo+OCv+eUqCAqL1xuW2RhdGEtdHlwZT1cImhvcml6b250YWxSdWxlXCJdIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuXG4gIGhyIHtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBhY21zLm1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW4tYmxvY2s6IHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG5cbiAgICBociB7XG4gICAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICdzYXNzOnN0cmluZyc7XG5AdXNlICcuLi9nbG9iYWwvdmFyaWFibGVzJyBhcyB2YXI7XG5cbi8vIOODpuODi+ODg+ODiOWFsemAmuOCueOCv+OCpOODq+aMh+WumueUqFxuQG1peGluIGVkaXRvci1zdHlsZShcbiAgLy8g44K544K/44Kk44Or6YGp55So5a++6LGhQ1NT44K744Os44Kv44K/44O877yI5L6LOiBcImgxXCIsIFwicFwiLCBcIi50aXRsZVwi44Gq44Gp77yJXG4gICRzZWxlY3RvcnMsXG4gIC8vIOOCueOCv+OCpOODq+mBqeeUqOWfuuacrOevhOWbsuOCr+ODqeOCueaMh+WumlxuICAkZW50cnktY2xhc3M6IHZhci4kZW50cnktY2xhc3MsXG4gIC8vIOOCueOCv+OCpOODq+mBqeeUqOmZpOWkluevhOWbsuOCr+ODqeOCueaMh+WumlxuICAkZXhjbHVkZS1jbGFzc2VzOiAoJ25vdC1lZGl0b3Itc3R5bGUnKSxcbiAgLy8g44K544K/44Kk44Or6YGp55So56+E5Zuy44Gu6L+95YqgXG4gICRleHRlbnNpb24tY29udGV4dHM6ICgnLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yLWJvZHknKVxuKSB7XG4gIEBlYWNoICRzZWxlY3RvciBpbiAkc2VsZWN0b3JzIHtcbiAgICAvLyAtLS0g6Zmk5aSW44K744Os44Kv44K/44O85paH5a2X5YiX44KS57WE44G/56uL44Gm44KLIC0tLVxuICAgICRleGNsdWRlLXNlbGVjdG9yOiAnJztcblxuICAgIEBlYWNoICRleGNsdWRlLWNsYXNzIGluICRleGNsdWRlLWNsYXNzZXMge1xuICAgICAgJGV4Y2x1ZGUtc2VsZWN0b3I6ICcjeyRleGNsdWRlLXNlbGVjdG9yfVtjbGFzc349I3skZXhjbHVkZS1jbGFzc31dLCBbY2xhc3N+PSN7JGV4Y2x1ZGUtY2xhc3N9XSAqLCAnO1xuICAgIH1cblxuICAgIC8vIOacq+WwvuOBruOCq+ODs+ODnuOBqOepuueZveOCkuWJiumZpFxuICAgICRleGNsdWRlLXNlbGVjdG9yOiBzdHJpbmcuc2xpY2UoJGV4Y2x1ZGUtc2VsZWN0b3IsIDEsIHN0cmluZy5sZW5ndGgoJGV4Y2x1ZGUtc2VsZWN0b3IpIC0gMik7XG5cbiAgICAvLyAtLS0g6Zay6Kan55S76Z2i77yI44Om44O844K244O844GM6KaL44KL6YCa5bi444Gu55S76Z2i77yJ44Gn44Gu44K544K/44Kk44Or6YGp55So6YOo5YiGIC0tLVxuICAgIC8vIOODu+imquimgee0oOOBq+OAjCRlbnRyeS1jbGFzc+OAjeOCr+ODqeOCueOBjOOBguOCi+OBk+OBqFxuICAgIC8vIOODu+OBleOCieOBq+OAjCRleGNsdWRlLWNsYXNzZXPjgI3jgq/jg6njgrnjgoTjgZ3jga7lrZDopoHntKDjgafjga/jgarjgYTopoHntKDjgavjgaDjgZHpgannlKhcbiAgICAuI3skZW50cnktY2xhc3N9ICN7JHNlbGVjdG9yfTpub3QoOndoZXJlKCN7JGV4Y2x1ZGUtc2VsZWN0b3J9KSkge1xuICAgICAgQGlmIGNvbnRlbnQtZXhpc3RzKCkge1xuICAgICAgICBAY29udGVudDsgLy8g5ZG844Gz5Ye644GX5YWD44Gn5pu444GL44KM44KL44K544K/44Kk44Or44Gu5Lit6Lqr44GM44GT44GT44Gr5YWl44KK44G+44GZXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gLS0tIOOCueOCv+OCpOODq+OCkumBqeeUqOOBmeOCi+evhOWbsuOBrui/veWKoOOAgee3qOmbhueUu+mdouOBp+OBruOCueOCv+OCpOODq+mBqeeUqOmDqOWIhuOBquOBqe+8iOS+izog566h55CG55S76Z2i44KE44Ko44OH44Kj44K/44O85YaF77yJIC0tLVxuICAgIEBlYWNoICRjb250ZXh0IGluICRleHRlbnNpb24tY29udGV4dHMge1xuICAgICAgI3skY29udGV4dH0gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGlmIGNvbnRlbnQtZXhpc3RzKCkge1xuICAgICAgICAgIEBjb250ZW50OyAvLyDlkIzjgZjjgY/lkbzjgbPlh7rjgZflhYPjgafmm7jjgYvjgozjgovjgrnjgr/jgqTjg6vjga7kuK3ouqvjgYzjgZPjgZPjgavlhaXjgorjgb7jgZlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gZWRpdG9yLXN0eWxlIOODn+ODg+OCr+OCueOCpOODs+OBruWRvOOBs+WHuuOBl+S+i1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gLy8g4peGIDEuIOOCu+ODrOOCr+OCv+ODvDHjgaTjgaDjgZHjga7loLTlkIhcbi8vIEBpbmNsdWRlIGVkaXRvci1zdHlsZShcImgyXCIpIHtcbi8vICAgY29sb3I6IHJlZDtcbi8vIH1cblxuLy8gLy8g4peGIDIuIOikh+aVsOOCu+ODrOOCr+OCv+ODvOOCkuOBvuOBqOOCgeOBpuaMh+WumuOBmeOCi+WgtOWQiFxuLy8gQGluY2x1ZGUgZWRpdG9yLXN0eWxlKChcImgyXCIsIFwiaDNcIikpIHtcbi8vICAgY29sb3I6IHJlZDtcbi8vIH1cblxuLy8gLy8g4peGIDMuIOmZpOWkluOCr+ODqeOCueOCkui/veWKoOOBl+OBn+OBhOWgtOWQiFxuLy8gQGluY2x1ZGUgZWRpdG9yLXN0eWxlKFxuLy8gICAoXCJwXCIpLFxuLy8gICAkZXhjbHVkZS1jbGFzc2VzOiAoXCJub3QtZWRpdG9yLXN0eWxlXCIsIFwibm90LWFydGljbGUtZWRpdG9yLXN0eWxlXCIpXG4vLyApIHtcbi8vICAgY29sb3I6IHJlZDtcbi8vIH1cblxuLy8gLy8g4peGIDQuIOi/veWKoOOBrumBqeeUqOevhOWbsuOCkuWil+OChOOBl+OBn+OBhOWgtOWQiFxuLy8gQGluY2x1ZGUgZWRpdG9yLXN0eWxlKFxuLy8gICAoXCJzdHJvbmdcIiksXG4vLyAgICRleHRlbnNpb24tY29udGV4dHM6IChcIi5hY21zLWFkbWluLWJsb2NrLWVkaXRvci1ib2R5XCIsIFwiLmVudHJ5Rm9ybUxpdGVFZGl0b3JcIikpIHtcbi8vICAgY29sb3I6IHJlZDtcbi8vIH1cblxuLy8gLy8g4peGIDUuIOOCueOCv+OCpOODq+mBqeeUqOWfuuacrOevhOWbsuOCkuWkieabtOOBl+OBn+OBhOWgtOWQiFxuLy8gQGluY2x1ZGUgZWRpdG9yLXN0eWxlKFxuLy8gICAoXCJwXCIpLFxuLy8gICAkZW50cnktY2xhc3M6IFwiYXJ0aWNsZS1ib2R5XCIpIHtcbi8vICAgY29sb3I6IHJlZDtcbi8vIH1cbiIsIkB1c2UgXCIuLi92YXJpYWJsZXNcIiBhcyB2YXI7XG5cbkBtaXhpbiBsaW5rLXRleHQoJGNvbG9yOiBjdXJyZW50Y29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkIDJweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAzcHg7XG5cbiAgJlt0YXJnZXQ9XCJfYmxhbmtcIl0ge1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIHdpZHRoOiAwLjg3NWVtO1xuICAgICAgaGVpZ2h0OiAwLjg3NWVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgbWFzay1pbWFnZTogdXJsKFwiI3t2YXIuJHJvb3QtdGhlbWUtaW1nfWljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAmOmFueS1saW5rOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICcuLi9nbG9iYWwvdmFyaWFibGVzJyBhcyB2YXI7XG5cbi8vIOODluODrOOCpOOCr+ODneOCpOODs+ODiOOBruODk+ODpeODvOODneODvOODiOOCteOCpOOCuuOBqOODoeODh+OCo+OCouOCr+OCqOODqlxuLy9cbi8vIGAkZ3JpZC1icmVha3BvaW50c2Ag44Kw44Ot44O844OQ44Or5aSJ5pWw44Gn5a6a576p44GV44KM44Gf44Oe44OD44OX44GM44OH44OV44Kp44Or44OI44GnIGAkYnJlYWtwb2ludHNgIOW8leaVsOOBqOOBl+OBpuS9v+eUqOOBleOCjOOBvuOBmeOAglxuXG4vLyDmrKHjga7jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjga7lkI3liY3jgpLov5TjgZfjgb7jgZnjgILmnIDlvozjga7jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjga7loLTlkIjjga8gbnVsbCDjgpLov5TjgZfjgb7jgZnjgIJcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6IHZhci4kZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC5rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGxpc3QuaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcblxuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRuIDwgbGlzdC5sZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBsaXN0Lm50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIOacgOWwj+ODluODrOOCpOOCr+ODneOCpOODs+ODiOW5heOAguacgOWwj++8iOacgOWIne+8ieOBruODluODrOOCpOOCr+ODneOCpOODs+ODiOOBruWgtOWQiOOBryBudWxs44CCXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiB2YXIuJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLmdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcblxuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIOacgOWkp+ODluODrOOCpOOCr+ODneOCpOODs+ODiOW5heOAglxuLy8gYG1pbi1gIOOBqCBgbWF4LWAg44OX44Os44OV44Kj44OD44Kv44K544GK44KI44Gz5bCP5pWw54K544KS5ZCr44KA44OT44Ol44O844Od44O844OI44Gu5Yi26ZmQ44Gr5a++5b+c44GZ44KL44Gf44KB44CBXG4vLyDmnIDlpKflgKTjgpIgMC4wMnB4IOa4m+OCieOBl+OBpuOBhOOBvuOBmeOAglxuLy8g5Y+C54WnOiBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFNhZmFyaeOBruePvuWcqOOBruS4uOOCgei+vOOBv+ODkOOCsOOBq+WvvuW/nOOBmeOCi+OBn+OCgeOAgTAuMDFweOOBp+OBr+OBquOBjzAuMDJweOOCkuS9v+eUqOOBl+OBpuOBhOOBvuOBmeOAglxuLy8g5Y+C54WnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiB2YXIuJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcblxuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gMC4wMiwgbnVsbCk7XG59XG5cbi8vIOacgOWwj+ODluODrOOCpOOCr+ODneOCpOODs+ODiOOBruWgtOWQiOOBr+epuuaWh+Wtl+WIl+OCkui/lOOBl+OAgeOBneOCjOS7peWkluOBruWgtOWQiOOBr+WQjeWJjeOBruWJjeOBq+ODgOODg+OCt+ODpeOCkuS7mOOBkeOBpui/lOOBl+OBvuOBmeOAglxuLy8g44Os44K544Od44Oz44K344OW44Om44O844OG44Kj44Oq44OG44Kj44Gu5L2c5oiQ44Gr5L6/5Yip44Gn44GZ44CCXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAo56m65paH5a2X5YiX44KS6L+U44GX44G+44GZKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiB2YXIuJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCAnJywgJy0jeyRuYW1lfScpO1xufVxuXG4vLyDmnIDlsI/jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jluYXku6XkuIrjga7jg6Hjg4fjgqPjgqLjgILmnIDlsI/jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjga7loLTlkIjjga/jgq/jgqjjg6rjgarjgZfjgIJcbi8vIOaMh+WumuOBleOCjOOBn+ODluODrOOCpOOCr+ODneOCpOODs+ODiOOBiuOCiOOBs+OBneOCjOOCiOOCiuWkp+OBjeOBhOeUu+mdouOBpyBAY29udGVudCDjgpLpgannlKjjgZfjgb7jgZnjgIJcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6IHZhci4kZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8g5pyA5aSn44OW44Os44Kk44Kv44Od44Kk44Oz44OI5bmF5Lul5LiL44Gu44Oh44OH44Kj44Ki44CC5pyA5aSn44OW44Os44Kk44Kv44Od44Kk44Oz44OI44Gu5aC05ZCI44Gv44Kv44Ko44Oq44Gq44GX44CCXG4vLyDmjIflrprjgZXjgozjgZ/jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjgYrjgojjgbPjgZ3jgozjgojjgorlsI/jgZXjgYTnlLvpnaLjgacgQGNvbnRlbnQg44KS6YGp55So44GX44G+44GZ44CCXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6IHZhci4kZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8g6KSH5pWw44Gu44OW44Os44Kk44Kv44Od44Kk44Oz44OI5bmF44Gr44G+44Gf44GM44KL44Oh44OH44Kj44Ki44CCXG4vLyDmnIDlsI/jgajmnIDlpKfjga7jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjga7plpPjgacgQGNvbnRlbnQg44KS6YGp55So44GX44G+44GZ44CCXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6IHZhci4kZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8g44OW44Os44Kk44Kv44Od44Kk44Oz44OI44Gu5pyA5bCP5bmF44Go5pyA5aSn5bmF44Gu6ZaT44Gu44Oh44OH44Kj44Ki44CCXG4vLyDmnIDlsI/jg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjgavjga/mnIDlsI/lgKTjgarjgZfjgIHmnIDlpKfjg5bjg6zjgqTjgq/jg53jgqTjg7Pjg4jjgavjga/mnIDlpKflgKTjgarjgZfjgIJcbi8vIOaMh+WumuOBleOCjOOBn+ODluODrOOCpOOCr+ODneOCpOODs+ODiOOBruOBv+OBpyBAY29udGVudCDjgpLpgannlKjjgZfjgIHjgojjgorluoPjgYTjgb7jgZ/jga/ni63jgYTnlLvpnaLjgafjga/pgannlKjjgZfjgb7jgZvjgpPjgIJcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogdmFyLiRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCIuLi9nbG9iYWwvYWNtcy1jb21tb25cIiBhcyBhY21zO1xuQHVzZSBcIi4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOODluODreODg+OCr+OCqOODh+OCo+OCv+ODvOWGheimgee0oOOBruODrOOCpOOCouOCpuODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIOODrOOCpOOCouOCpuODiCAqL1xuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgOndoZXJlKFtkYXRhLXR5cGU9XCJjb2x1bW5zXCJdKSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG5cbiAgLy8gMuOCq+ODqeODoFxuICAmLmxheW91dC10d28tY29sdW1uIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG5cbiAgLy8gM+OCq+ODqeODoFxuICAmLmxheW91dC10aHJlZS1jb2x1bW4ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cbn1cblxuLyog566h55CG55S76Z2i5YG0ICovXG46d2hlcmUoLmFjbXMtYWRtaW4tYmxvY2stZWRpdG9yKSA6d2hlcmUoW2RhdGEtdHlwZT1cImNvbHVtbnNcIl0pIHtcbiAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7IC8vIOeuoeeQhueUu+mdouOBp+OBr+S9meeZveOBjOW6g+OBj+OBquOCiuOBmeOBjuOBquOBhOOCiOOBhuWbuuWumuWApOOCkuaMh+WumlxufVxuXG4vKiDplrLopqfnlLvpnaLlgbQgKi9cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIDp3aGVyZShbZGF0YS10eXBlPVwiY29sdW1uc1wiXSkge1xuICBnYXA6IHZhcigtLXVuaXQtZ3V0dGVyLXZhcik7XG59XG5cbiIsIkB1c2UgXCIuLi9nbG9iYWwvYWNtcy1jb21tb25cIiBhcyBhY21zO1xuQHVzZSBcIi4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOOCsOODq+ODvOODl+ODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uI3thY21zLiRlbnRyeS1jbGFzc30ge1xuICAuZ3UtYmctZ3JheSB7XG4gICAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1tZCkgdmFyKC0tZW50cnktZWwtcGFkZGluZy14cyk7XG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKSAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyYXkxMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgICA+ICo6bm90KC5ub3QtZWRpdG9yLXN0eWxlKTpmaXJzdC1jaGlsZCxcbiAgICA+ICo6Zmlyc3QtY2hpbGQuY29sdW1uLWJsb2NrLWVkaXRvciA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+ICo6bm90KC5ub3QtZWRpdG9yLXN0eWxlKTpsYXN0LWNoaWxkLFxuICAgID4gKjpsYXN0LWNoaWxkLmNvbHVtbi1ibG9jay1lZGl0b3IgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ3UtbmFycm93IHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbiIsIkB1c2UgXCIuLi9nbG9iYWwvYWNtcy1jb21tb25cIiBhcyBhY21zO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg6bjg4vjg4Pjg4jphY3nva5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGVhY2ggJGFsaWdubWVudCBpbiBhY21zLiRhbGlnbm1lbnRzIHtcbiAgLmFsaWduLSN7JGFsaWdubWVudH0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgICAgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9hY21zLWNvbW1vblwiIGFzIGFjbXM7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2NvbW1vblwiIGFzIGdsb2JhbDtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g5byV55SoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoXCJibG9ja3F1b3RlXCIpIHtcbiAgcGFkZGluZzogdmFyKC0tZW50cnktZWwtcGFkZGluZy1zbSk7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuXG4gIC8qIOODquOCu+ODg+ODiOeUqCAqL1xuICBtYXJnaW4taW5saW5lOiAwO1xuICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhsKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG5cbiAgLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/6Kq/5pW077ya44Oq44K744OD44OI55SoICovXG4gICYgPiAqIHtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gIH1cblxuICAvKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/oqr/mlbQgKi9cbiAgKiArICoge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbiAgfVxuXG4gIGEge1xuICAgIEBpbmNsdWRlIGdsb2JhbC5saW5rLXRleHQ7XG5cbiAgICAvKiDkuK3jgavnlLvlg4/jgYzlhaXjgaPjgabjgYTjgovjg6rjg7Pjgq/jga7mmYIgKi9cbiAgICAmOmhhcyhpbWcpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuXG4gICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgc3Ryb25nIHtcbiAgICAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIEBpbmNsdWRlIGFjbXMubWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIHBhZGRpbmc6IHZhcigtLWVudHJ5LWVsLXBhZGRpbmctbWQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWVudHJ5LWVsLW1hcmdpbi1sZyk7XG4gIH1cbn1cblxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcbkB1c2UgXCIuLi8uLi9nbG9iYWwvY29tbW9uXCIgYXMgZ2xvYmFsO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg6rjg7Pjgq/jg5zjgr/jg7Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiDkuIrkuIvkvZnnmb0gKi9cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtkYXRhLXR5cGU9XCJsaW5rQnV0dG9uXCJdIHtcbiAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLWVudHJ5LWVsLW1hcmdpbi1tZCk7XG59XG5cbi8qIOODquODs+OCryAqL1xuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2RhdGEtdHlwZT1cImxpbmtCdXR0b25cIl0gYSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBnYXA6IDRweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogM3JlbTtcbiAgcGFkZGluZzogdmFyKC0tYnRuLXBhZGRpbmcteSkgdmFyKC0tYnRuLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1yaWdodDogMDsgLyog44Oq44K744OD44OIICovXG4gIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IC8qIOODquOCu+ODg+ODiCAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgJixcbiAgJjpsaW5rLFxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cblxuICAmW3RhcmdldD1cIl9ibGFua1wiXTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4OiBub25lO1xuICAgIHdpZHRoOiAwLjg3NWVtO1xuICAgIGhlaWdodDogMC44NzVlbTtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiI3tnbG9iYWwuJHJvb3QtdGhlbWUtaW1nfWljb24vdGFyZ2V0X2JsYW5rLnN2Z1wiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgfVxuXG5cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgICAmOndoZXJlKDphbnktbGluayk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeS1ob3Zlcik7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcbkB1c2UgXCIuLi8uLi9nbG9iYWwvY29tbW9uXCIgYXMgZ2xvYmFsO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjgqvjgrnjgr/jg6Djg6bjg4vjg4Pjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiDjg6Hjg4Pjgrvjg7zjgrjjg6bjg4vjg4Pjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLiN7YWNtcy4kZW50cnktY2xhc3N9IHtcbiAgLm1lc3NhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyYXkxMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cblxuICAubWVzc2FnZS13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxLjVyZW07XG4gICAgcGFkZGluZzogMnJlbSAxcmVtO1xuICB9XG5cbiAgLm1lc3NhZ2UtaW1hZ2Uge1xuICAgIGhlaWdodDogMTVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAubWVzc2FnZS1sZWFkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBoZWFkaW5nLXNzKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICB9XG5cbiAgLm1lc3NhZ2UtY29udGVudCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLm1lc3NhZ2Utc291cmNlIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbWFyZ2luOiAwIDFyZW0gMCAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmF5MzApO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBhY21zLm1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgLiN7YWNtcy4kZW50cnktY2xhc3N9IHtcbiAgICAubWVzc2FnZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5tZXNzYWdlLXdyYXAge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiA2cmVtIDNyZW07XG4gICAgfVxuXG4gICAgLm1lc3NhZ2UtaW1hZ2Uge1xuICAgICAgb3JkZXI6IDE7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaGVpZ2h0OiBpbml0aWFsO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lc3NhZ2UtbGVhZCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgaGVhZGluZy1zKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG4gICAgfVxuXG4gICAgLm1lc3NhZ2UtY29udGVudCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCJzYXNzOm1hdGhcIjtcbkB1c2UgXCIuLi8uLi9nbG9iYWwvYWNtcy1jb21tb25cIiBhcyBhY21zO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOWfi+OCgei+vOOBv+ODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbltjbGFzcyo9XCJjb2x1bW4tZW1iZWQtXCJdIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS11bml0LW1hcmdpbi10b3ApIHZhcigtLXVuaXQtbWFyZ2luLWJvdHRvbSk7XG5cbiAgYS5hY21zLWVtYmVkLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1iZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFjbXMtZW1iZWQtbGluay1pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmFjbXMtZW1iZWQtbGluay1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbjogMDsgLyog44Oq44K744OD44OIICovXG4gIH1cblxuICAuYWNtcy1lbWJlZC1saW5rLXNpdGUtbmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LXMpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgfVxuXG4gIC5hY21zLWVtYmVkLWxpbmstdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDAuMjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1tKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLmFjbXMtZW1iZWQtbGluay1kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGJvZHktcyk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtMm5kKTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgbGluZS1jbGFtcDogMjtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICB9XG5cbiAgQGluY2x1ZGUgYWNtcy5tZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgYS5hY21zLWVtYmVkLWxpbmsge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICAuYWNtcy1lbWJlZC1saW5rLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICB3aWR0aDogbWF0aC5kaXYoMTAwJSwgMyk7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5hY21zLWVtYmVkLWxpbmstaW1hZ2UtY29udGFpbmVyIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgIC5hY21zLWVtYmVkLWxpbmstY29udGVudCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDAuMjVyZW07XG4gICAgICB3aWR0aDogbWF0aC5kaXYoMiwgMyk7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYWNtcy1lbWJlZC1saW5rLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgaGVhZGluZy0zcyk7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9hY21zLWNvbW1vblwiIGFzIGFjbXM7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2NvbW1vblwiIGFzIGdsb2JhbDtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gLSDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/jga7jg5XjgqHjgqTjg6vvvIjnuKbnqY3jgb/jgIHjg5zjgr/jg7PlnovvvIlcbiAtIOODoeODh+OCo+OCouODleOCoeOCpOODq1xuIC0g44OV44Kh44Kk44OrXG4g4oC7IG1lZGlhLWRvd25sb2Fk44Gv5YuV55qE44CBc3RvcmFnZeOBr+mdmeeahOabuOOBjeWHuuOBl+OBq+WvvuW/nFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBbZGF0YS10eXBlPVwiZmlsZUJsb2NrXCJdLFxuW2NsYXNzKj1cImNvbHVtbi1tZWRpYVwiXTpoYXMoYVtocmVmKj1cIm1lZGlhLWRvd25sb2FkXCJdLCBhW2hyZWYqPVwic3RvcmFnZVwiXSksXG5bY2xhc3MqPVwiY29sdW1uLWZpbGVcIl0ge1xuICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgZm9udC1zaXplOiAwOyAvKiBEZXNjZW5kZXIgc3BhY2Ug5a++562WICovXG59XG5cbi8qIOODnOOCv+ODs+Wei1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIOODquODs+OCryAqL1xuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2RhdGEtdHlwZT1cImZpbGVCbG9ja1wiXVtkYXRhLWRpc3BsYXktdHlwZT0nYnV0dG9uJ10gYSxcbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtjbGFzcyo9XCJjb2x1bW4tbWVkaWFcIl0gYVtocmVmKj1cIm1lZGlhLWRvd25sb2FkXCJdLFxuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2NsYXNzKj1cImNvbHVtbi1tZWRpYVwiXSBhW2hyZWYqPVwic3RvcmFnZVwiXSxcbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtjbGFzcyo9XCJjb2x1bW4tZmlsZVwiXSBhIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogMXJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTQwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgICAmOndoZXJlKDphbnktbGluayk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTIwKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTQwKTsgLyogaG92ZXLli5XkvZzkuIrmm7jjgY3jga7jgZ/jgoEgKi9cbiAgICB9XG4gIH1cbn1cblxuLyog44OV44Kh44Kk44Or44Ki44Kk44Kz44OzICovXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBbZGF0YS10eXBlPVwiZmlsZUJsb2NrXCJdW2RhdGEtZGlzcGxheS10eXBlPSdidXR0b24nXSBpbWcsXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBbY2xhc3MqPVwiY29sdW1uLW1lZGlhXCJdIC5jb2x1bW5JY29uLFxuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2NsYXNzKj1cImNvbHVtbi1maWxlXCJdIC5jb2x1bW5JY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qIOOCreODo+ODl+OCt+ODp+ODs+OCv+OCpOODneOCsOODqeODleOCo+ioreWumiAqL1xuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2RhdGEtdHlwZT1cImZpbGVCbG9ja1wiXSAuY2FwdGlvbixcbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtjbGFzcyo9XCJjb2x1bW4tZmlsZVwiXSAuY2FwdGlvbixcbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtjbGFzcyo9XCJjb2x1bW4tbWVkaWFcIl06aGFzKGFbaHJlZio9XCJtZWRpYS1kb3dubG9hZFwiXSwgYVtocmVmKj1cInN0b3JhZ2VcIl0pOmhhcyguY29sdW1uSWNvbik6bm90KDpoYXMoLmNvbHVtbi1wZGYtaW1hZ2UpKSAuY2FwdGlvbiB7XG4gIG1hcmdpbjogMDsgLyog44Oq44K744OD44OIICovXG4gIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGNvbG9yOiBjdXJyZW50Y29sb3I7XG59XG5cbi8qIFBERuODl+ODrOODk+ODpeODvFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIOODquODs+OCryAqL1xuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW2NsYXNzKj1cImNvbHVtbi1tZWRpYVwiXTpoYXMoLmNvbHVtbi1wZGYtaW1hZ2UpIHtcbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuXG4gICAgLyog44Oq44Oz44Kv44K544K/44Kk44Or44Oq44K744OD44OIICovXG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyog44Oq44K744OD44OIICovXG4gICAgICAgIC5jb2x1bW4tcGRmLWltYWdlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIC5jb2x1bW4tcGRmLWltYWdlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTQwKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIC5jb2x1bW4tcGRmLWltYWdlLWNhcHRpb24tYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG5cbiAgLmNvbHVtbkljb24ge1xuICAgIHdpZHRoOiAycmVtO1xuICB9XG5cbiAgLmNhcHRpb24ge1xuICAgIG1hcmdpbjogMDsgLyog44Oq44K744OD44OIICovXG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KGdsb2JhbC4kZm9udC1zY2FsZXMsIGJvZHktcyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LTJuZCk7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBkb3R0ZWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuY29sdW1uLXBkZi1pbWFnZS1kb3dubG9hZC1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgcGF0aCB7XG4gICAgICAgIHN0cm9rZTogY3VycmVudGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiDjg5bjg63jg4Pjgq/jgqjjg4fjgqPjgr/jga7jg5XjgqHjgqTjg6vvvIjnuKbnqY3jgb/vvIlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiDjgq3jg6Pjg5fjgrfjg6fjg7MgKi9cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtkYXRhLXR5cGU9XCJmaWxlQmxvY2tcIl1bZGF0YS1kaXNwbGF5LXR5cGU9J2ljb24nXSAuY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDRweCAwIDA7IC8qIOS9meeZveODquOCu+ODg+ODiOOBruOBn+OCgeWFqOaWueWQkeaMh+WumiAqL1xuICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG5cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtkYXRhLXR5cGU9XCJmaWxlQmxvY2tcIl1bZGF0YS1kaXNwbGF5LXR5cGU9J2ljb24nXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBpbWcge1xuICAgIHdpZHRoOiA0LjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4vKiDjg6rjg7Pjgq/li5XkvZzjgrnjgr/jgqTjg6vvvIjplrLopqfnlLvpnaLjga7jgb/vvIkgKi9cbjp3aGVyZSguI3thY21zLiRlbnRyeS1jbGFzc30pIFtkYXRhLXR5cGU9XCJmaWxlQmxvY2tcIl1bZGF0YS1kaXNwbGF5LXR5cGU9J2ljb24nXSBhIHtcbiAgLyog44Oq44Oz44Kv44K544K/44Kk44Or44Oq44K744OD44OIICovXG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcblxuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcbkB1c2UgXCIuLi8uLi9nbG9iYWwvY29tbW9uXCIgYXMgZ2xvYmFsO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg6Hjg4fjgqPjgqLnlLvlg4/jg7vnlLvlg4/jg7vnlLvlg49VUkxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8qIOWFsemAmuioreWumlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBmaWd1cmUsXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBbcm9sZT0nZmlndXJlJ106bm90KDpoYXMoYVtocmVmKj1cIm1lZGlhLWRvd25sb2FkXCJdLCBhW2hyZWYqPVwic3RvcmFnZVwiXSkpICB7XG4gIG1hcmdpbi1ibG9jazogMCB2YXIoLS1lbnRyeS1lbC1tYXJnaW4tbWQpO1xuICBtYXJnaW4taW5saW5lOiAwO1xuICBsaW5lLWhlaWdodDogMDsgLyogRGVzY2VuZGVyIHNwYWNlIOWvvuetliAqL1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLyog44Oq44K744OD44OI55SoICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgLyog44Oe44Km44K544Kq44O844OQ44O855SoICovXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xuICB9XG59XG5cbi8qIOOCreODo+ODl+OCt+ODp+ODs1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46d2hlcmUoLiN7YWNtcy4kZW50cnktY2xhc3N9KSBmaWdjYXB0aW9uLFxuOndoZXJlKC4je2FjbXMuJGVudHJ5LWNsYXNzfSkgW3JvbGU9J2ZpZ3VyZSddOm5vdCg6aGFzKGFbaHJlZio9XCJtZWRpYS1kb3dubG9hZFwiXSwgYVtocmVmKj1cInN0b3JhZ2VcIl0pKSAuY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDRweCAwIDA7IC8qIOS9meeZveODquOCu+ODg+ODiOOBruOBn+OCgeWFqOaWueWQkeaMh+WumiAqL1xuICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1zKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC0ybmQpO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOWcsOWbs1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29sdW1uLW1hcCxcbi5jb2x1bW4tc3RyZWV0LXZpZXcge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXVuaXQtbWFyZ2luLXRvcCkgdmFyKC0tdW5pdC1tYXJnaW4tYm90dG9tKTtcbn1cblxuOndoZXJlKC5jb2x1bW4tbWFwIGRpdjpoYXMoPiAuanMtb3Blbi1zdHJlZXQtbWFwKSksXG46d2hlcmUoLmNvbHVtbi1tYXAgZGl2Omhhcyg+IC5qcy1zMmQtcmVhZHkpKSxcbjp3aGVyZSguY29sdW1uLXN0cmVldC12aWV3IGRpdjpoYXMoPiAuanMtc3RyZWV0LXZpZXcpKSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuOndoZXJlKC5jb2x1bW4tbWFwIC5qcy1vcGVuLXN0cmVldC1tYXApLFxuOndoZXJlKC5jb2x1bW4tbWFwIC5qcy1zMmQtcmVhZHkpLFxuOndoZXJlKC5jb2x1bW4tc3RyZWV0LXZpZXcgLmpzLXN0cmVldC12aWV3KSB7XG4gIGFzcGVjdC1yYXRpbzogMTYgLyA5OyAvKiDjg4fjg5Xjgqnjg6vjg4jjga7jgqLjgrnjg5rjgq/jg4jmr5QgKi9cbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4iLCJAdXNlIFwiLi4vLi4vZ2xvYmFsL2FjbXMtY29tbW9uXCIgYXMgYWNtcztcbkB1c2UgXCIuLi8uLi9nbG9iYWwvY29tbW9uXCIgYXMgZ2xvYmFsO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiDjg6Ljgrjjg6Xjg7zjg6vjg6bjg4vjg4Pjg4hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuW2NsYXNzKj1cImNvbHVtbi1tb2R1bGVcIl0ge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXVuaXQtbWFyZ2luLXRvcCkgdmFyKC0tdW5pdC1tYXJnaW4tYm90dG9tKTtcbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9hY21zLWNvbW1vblwiIGFzIGFjbXM7XG5AdXNlIFwiLi4vLi4vZ2xvYmFsL2NvbW1vblwiIGFzIGdsb2JhbDtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4g44OG44O844OW44OrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGluY2x1ZGUgYWNtcy5lZGl0b3Itc3R5bGUoKFwidGFibGVcIikpIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8qIOODhuODvOODluODq+OBq+inkuS4uOOCkuOBpOOBkeOCi+OBn+OCgSBzZXBhcmF0ZSDjgavjgZfjgabjgYTjgb7jgZkgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXhzKTtcbiAgICBmb250LXNpemU6IG1hcC5nZXQoZ2xvYmFsLiRmb250LXNjYWxlcywgYm9keS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgYm9yZGVyOiAwOyAvKiDjg6rjgrvjg4Pjg4ggKi9cbiAgICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMCk7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tY29sb3ItZ3JheTMwKTtcblxuICAgICYgPiAqIHtcbiAgICAgIG1hcmdpbi1ibG9jazogMDsgLyog44Oq44K744OD44OIICovXG4gICAgfVxuXG4gICAgLyog6KaB57Sg6ZaT5L2Z55m944KS56K65L+dKOeuoeeQhueUu+mdouOBp+OBruihjOWIl+aTjeS9nOeUqFVJ44KS6ICD5oWu44GX44Gk44GkKSAqL1xuICAgICYgPiAqOm5vdCguUHJvc2VNaXJyb3Itd2lkZ2V0KSArICoge1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIHRoOmZpcnN0LWNoaWxkLFxuICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICB0aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkxMCk7XG4gIH1cblxuICB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyAvKiDjg6rjgrvjg4Pjg4jnlKggKi9cbiAgfVxuXG4gIGEge1xuICAgIEBpbmNsdWRlIGdsb2JhbC5saW5rLXRleHQ7XG4gIH1cblxuICBAaW5jbHVkZSBhY21zLm1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1lbnRyeS1lbC1wYWRkaW5nLXNtKTtcbiAgICAgIGZvbnQtc2l6ZTogbWFwLmdldChnbG9iYWwuJGZvbnQtc2NhbGVzLCBib2R5LW0pO1xuICAgIH1cbiAgfVxufVxuXG4vLyBkaXbnm7TkuIvjgavjg4bjg7zjg5bjg6vjgYzjgYLjgovloLTlkIhcbkBpbmNsdWRlIGFjbXMuZWRpdG9yLXN0eWxlKChcImRpdjpoYXMoPiB0YWJsZSlcIikpIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZW50cnktZWwtbWFyZ2luLW1kKTtcbiAgb3ZlcmZsb3cteDogYXV0bzsgLy8g5qiq44K544Kv44Ot44O844Or44GZ44KL5pmC55SoXG5cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4vKiDjgrnjgq/jg63jg7zjg6vjgZnjgovjg4bjg7zjg5bjg6sgKi9cbi5hY21zLXRhYmxlLXNjcm9sbGFibGUsXG4uanMtdGFibGUtdW5pdC1zY3JvbGwtaGludCB7XG4gIHRoLFxuICB0ZCB7XG4gICAgd29yZC1icmVhazoga2VlcC1hbGw7IC8vIOaoquOCueOCr+ODreODvOODq+OBmeOCi+ODhuODvOODluODq+OBruaZguOBr+W4uOaZguODhuOCreOCueODiOaKmOOCiui/lOOBl+OBquOBl1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/44O857eo6ZuG55S76Z2i55So5omT44Gh5raI44GXICovXG4uYWNtcy1hZG1pbi1ibG9jay1lZGl0b3ItY29udGVudCAuZW50cnktc3R5bGUgdGFibGUge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyog44OW44Ot44OD44Kv44Ko44OH44Kj44K/44O857eo6ZuG55S76Z2i44Gn44Gv6KOF6aO+5pON5L2c55SoVUnjga7ooajnpLrjgpLlpqjjgZLjgarjgYTjgojjgYbjgavjgIxvdmVyZmxvdzogaGlkZGVuO+OAjeOBr+OBl+OBquOBhOOBp+OBj+OBoOOBleOBhCAqL1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4uLy4uL2dsb2JhbC9jb21tb25cIiBhcyBnbG9iYWw7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIOWLleeUu+ODpuODi+ODg+ODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29sdW1uLXlvdXR1YmUsXG4uY29sdW1uLXZpZGVvIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS11bml0LW1hcmdpbi10b3ApIHZhcigtLXVuaXQtbWFyZ2luLWJvdHRvbSk7XG59XG5cbjp3aGVyZSguY29sdW1uLWlmcmFtZSBpZnJhbWUpIHtcbiAgZGlzcGxheTogYmxvY2s7IC8qIERlc2NlbmRlciBzcGFjZSDlr77nrZYgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGFzcGVjdC1yYXRpbzogMTYgLyA5OyAvKiDjg4fjg5Xjgqnjg6vjg4jjga7jgqLjgrnjg5rjgq/jg4jmr5QgKi9cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/