@charset "UTF-8";
/* -------------------------------
 *  font
 * -------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Mrs+Saint+Delafield&display=swap");
.ja, h1, h2, h3, h4, h5, h6, .telphone {
  font-family: 'Zen Old Mincho', serif;
  font-weight: 500;
}

.en_mrs {
  font-family: 'Mrs Saint Delafield', cursive;
  font-weight: 400 !important;
  letter-spacing: normal;
}

body {
  font-family: 'Zen Old Mincho', serif, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.gothic {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

/* -------------------------------
	default
-------------------------------- */
html {
  font-size: 100%;
  /* 16px */
}

@media print, screen and (min-width: 992px) {
  html {
    font-size: 100%;
    /* 16px */
  }
}

body {
  letter-spacing: 0.05em;
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  body {
    margin-top: 75px;
  }
}

@media print, screen and (min-width: 992px) {
  body {
    margin-top: 130px;
  }
}

/* -------------------------------
	アンカーリンク
-------------------------------- */
.anchor {
  position: relative;
  z-index: -1;
}

@media print, screen and (min-width: 768px) {
  .anchor {
    margin-top: -90px;
    padding-top: 90px;
  }
}

/* -------------------------------
	header
-------------------------------- */
/* 基本サイズ */
#header {
  color: #7f686a;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
}

#header h1 {
  font-size: 1rem;
  line-height: normal;
  padding: 0;
  margin: 0;
}

#header .row-head {
  display: flex;
  align-items: center;
  height: 50px;
}

@media print, screen and (min-width: 768px) {
  #header .row-head {
    height: 75px;
  }
}

@media print, screen and (min-width: 992px) {
  #header .row-head {
    height: 130px;
  }
}

#header .row-head .logo {
  flex-basis: 0;
  flex-grow: 1;
  padding-left: 15px;
}

#header .row-head .logo h1 img {
  height: 40px;
}

@media print, screen and (min-width: 992px) {
  #header .row-head .logo {
    flex: 0 0 25%;
  }
  #header .row-head .logo h1 img {
    height: auto;
  }
}

@media print, screen and (max-width: 560px) {
  #header .row-head .logo h1 img {
    height: 30px;
  }
}

@media print, screen and (max-width: 478px) {
  #header .row-head .logo h1 img {
    width: calc((100vw - 205px) * 0.75);
    height: auto;
  }
}

#header .row-head .head_contents {
  flex: 0 0 auto;
}

#header .row-head .head_contents .inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media print, screen and (min-width: 992px) {
  #header .row-head .head_contents {
    padding-right: 22px;
    flex: 0 0 75%;
  }
}

@media print {
  #header {
    position: absolute;
  }
}

.head_icon {
  font-size: 16px;
  margin-right: 10px;
}

@media print, screen and (min-width: 768px) {
  .head_icon {
    font-size: 20px;
    margin-right: 20px;
  }
}

@media print, screen and (min-width: 992px) {
  .head_icon {
    font-size: 25px;
  }
}

.head_tel {
  display: none;
  color: #447519;
  margin-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .head_tel {
    display: block;
  }
}

.head_tel .telphone {
  font-size: 24px;
}

.head_tel p {
  font-size: 11px;
  text-align: center;
  margin: 0.25em 0 0;
}

@media print, screen and (min-width: 992px) {
  .head_tel .telphone {
    font-size: 30px;
  }
  .head_tel p {
    font-size: 13px;
  }
}

#header {
  transition: background 0.3s ease;
}

#header .head_tel, #header .head_icon {
  transition: opacity 0.3s ease;
}

#header .list-sns .inst {
  display: none;
}

@media screen and (min-width: 768px) {
  #header .list-sns .inst {
    display: block;
  }
  #header .list-sns .tel {
    display: none;
  }
}

@media screen and (min-width: 992px) {
  #header .row-head {
    transition: height 0.3s ease;
  }
  #header .row-head .logo h1 img {
    transition: width 0.3s ease;
  }
}

@media screen and (min-width: 768px) {
  .fixed-nav #header {
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
  }
}

@media screen and (min-width: 992px) {
  .fixed-nav #header .row-head {
    height: 75px;
  }
  .fixed-nav #header .row-head .logo h1 img {
    width: 225px;
  }
}

/* -------------------------------
	ログイン中
-------------------------------- */
#wpadminbar {
  font-size: 13px;
  letter-spacing: normal;
  position: fixed;
}

body.customize-support #header {
  top: 46px;
}

@media print, screen and (min-width: 783px) {
  body.customize-support #header {
    top: 32px;
  }
}

/* -------------------------------
	三本線
-------------------------------- */
.menuWrapper {
  width: 50px;
  height: 50px;
  transform: translate3d(0, 0, 0);
  z-index: 9999;
}

#menuButton {
  overflow: hidden;
  display: block;
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

#menuButton span, #menuButton:before, #menuButton:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 34px;
  height: 2px;
  margin: auto;
  background: #447519;
}

#menuButton span {
  overflow: hidden;
  z-index: 1;
  color: #447519;
}

#menuButton:before {
  z-index: 2;
  transform: translate(0, -10px);
  content: "";
}

#menuButton:after {
  z-index: 2;
  transform: translate(0, 10px);
  content: "";
}

#menuButton small {
  position: absolute;
  left: 0;
  bottom: 3px;
  width: 100%;
  color: #7f686a;
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  display: block;
}

/* アニメーション */
#menuButton span {
  opacity: 1;
  transition: opacity 0.2s, transform 0.2s;
}

#menuButton::before, #menuButton::after {
  transition: transform 0.2s;
}

.side-open #menuButton span {
  opacity: 0;
  transform: rotate(25deg);
}

.side-open #menuButton::before {
  transform: rotate(45deg);
}

.side-open #menuButton::after {
  transform: rotate(-45deg);
}

/* -------------------------------
	サイドメニュー
-------------------------------- */
#sidebar ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#sidebar a {
  text-decoration: none;
  display: flex;
}

@media print, screen and (min-width: 768px) {
  #sidebar {
    width: 280px;
  }
}

#sidebar .photo {
  display: none;
}

@media print, screen and (min-width: 768px) {
  #sidebar .photo {
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 890;
    opacity: 0;
    visibility: hidden;
    transform: scale(1);
    transform-origin: right center;
    transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.5s ease;
  }
  body.side-open #sidebar .photo {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
  }
}

#sidebar .contents {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  padding: 50px 30px;
  width: 300px;
  text-align: left;
  background-color: #fff;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  z-index: 900;
  overflow: auto;
  overflow-x: hidden;
}

@media print, screen and (min-width: 768px) {
  #sidebar .contents {
    padding-top: 75px;
    width: 340px;
  }
}

@media print, screen and (min-width: 992px) {
  #sidebar .contents {
    padding-top: 130px;
    width: 380px;
  }
  body.fixed-nav #sidebar .contents {
    padding-top: 75px;
  }
}

body.side-open #sidebar .contents {
  transform: translateX(0);
}

.sidenavi {
  margin: auto 0 0;
  padding: 5% 0;
}

.list-sidenav > li {
  padding: 0;
  border-bottom: dashed 1px #7b7a78;
}

.list-sidenav > li > a {
  color: #447519;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: normal;
  display: block;
  padding: 15px;
  position: relative;
}

.list-sidenav > li > a:before {
  content: "\f105";
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  line-height: 1;
  font-size: 0.64em;
  position: absolute;
  top: 50%;
  right: 1em;
  margin-top: -.5em;
  opacity: 0;
  transform: translateX(-1em);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.list-sidenav > li > a > small {
  font-size: 12px;
  display: block;
  margin-top: .5em;
  margin-left: 10px;
}

@media print, screen and (min-width: 992px) {
  .list-sidenav > li > a {
    font-size: 20px;
  }
  .list-sidenav > li > a > small {
    font-size: 14px;
  }
}

.list-sidenav > li.current-menu-item > a:before, .list-sidenav > li > a:hover:before {
  opacity: 1;
  transform: translateX(0);
}

.side_sns {
  margin: auto 10% auto;
  padding: 5% 0;
  border-top: solid 1px rgba(127, 104, 106, 0.5);
}

/* -------------------------------
	半透明
-------------------------------- */
.overlay {
  content: '';
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: transparent;
  transition: all 0.5s ease;
  z-index: 3;
}

.side-open .overlay {
  visibility: visible;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.5);
}

/* -------------------------------
	footer
-------------------------------- */
#footer {
  page-break-inside: avoid;
}

.footer_contact {
  background-color: #f5f4f2;
}

.footer_contact h2 .in {
  position: relative;
}

.footer_contact h2 .in:after {
  content: "";
  position: absolute;
  left: calc(100% + 0.7em);
  top: 0;
  width: 2em;
  height: 2em;
}

.footer_contact .columns {
  text-align: center;
  max-width: 637px;
  margin-left: auto;
  margin-right: auto;
}

@media print, screen and (min-width: 768px) {
  .footer_contact .columns {
    display: flex;
    align-items: center;
  }
}

@media print, screen and (min-width: 1200px) {
  .footer_contact .columns {
    justify-content: flex-end;
    margin-right: 0;
  }
}

.footer_contact .columns + .columns {
  margin-top: 20px;
  padding-top: 20px;
  border-top: solid 1px #847b7c;
}

.footer_contact .columns > div {
  padding: 0 20px;
}

.footer_contact .columns .box1 {
  text-align: center;
  flex-basis: 0;
  flex-grow: 1;
}

.footer_contact .columns .box2 {
  flex: 0 0 290px;
  margin-top: 15px;
}

.footer_contact .columns .box2 .btn {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .footer_contact .columns .box2 {
    margin-top: 0;
  }
}

.footer_contact .line_text p {
  font-size: 20px;
  line-height: 1.5;
  margin: 0;
}

.footer_contact .line_text .sub {
  font-size: 13px;
}

/* */
.footer_contents {
  color: #212121;
  font-size: 0.875rem;
  line-height: 1.78572;
}

.footer_contents h2 {
  font-size: 18px;
  font-weight: 700;
}

.footer_contents a {
  color: #212121;
}

.footer_contents .content {
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .footer_contents .content {
    text-align: left;
  }
}

@media print, screen and (max-width: 767px) {
  .f_navi {
    line-height: 1.327731;
    border-top: 1px solid #DDDDDD;
    margin: 50px -15px;
  }
}

@media print, screen and (min-width: 768px) {
  .f_navi {
    display: flex;
    justify-content: flex-start;
    margin: 0 -25px;
  }
}

@media print, screen and (min-width: 1201px) {
  .f_navi {
    justify-content: flex-end;
  }
}

.f_navi .box {
  padding: 0 25px;
}

@media print, screen and (max-width: 767px) {
  .f_navi .box {
    padding: 0;
    text-align: center;
  }
}

.f_navi .box > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

@media print, screen and (max-width: 767px) {
  .f_navi .box > ul > li {
    padding: 11.5px 0 12px;
    border-bottom: 1px solid #DDDDDD;
  }
}

.f_navi .box > ul > li + li {
  margin-top: .5em;
}

@media print, screen and (max-width: 767px) {
  .f_navi .box > ul > li + li {
    margin-top: 0;
  }
}

.f_navi .box > ul > li > a {
  text-decoration: none;
}

@media print, screen and (min-width: 768px) {
  .f_navi .box > ul > li > a {
    transition: opacity 0.3s ease;
  }
  .f_navi .box > ul > li > a:hover {
    opacity: 0.65;
  }
}

.copyright {
  color: #212121;
  font-size: 12px;
  text-align: center;
  width: 100%;
  margin: 0 auto;
  max-width: 100%;
}

@media print, screen and (min-width: 768px) {
  .copyright {
    text-align: left;
    padding-left: 15px;
    width: 1200px;
    margin: 20px auto 0;
  }
}

@media print, screen and (min-width: 1200px) {
  .copyright {
    margin: 0 auto;
  }
}

.foot_sns {
  color: #212121;
  font-size: 25px;
  line-height: 1;
  list-style: none;
  padding: 0;
  margin-top: 20px;
  display: flex;
  justify-content: center;
}

@media print, screen and (min-width: 768px) {
  .foot_sns {
    justify-content: flex-start;
  }
}

.foot_sns > li + li {
  margin-left: 10px;
}

.foot_sns > li > a {
  color: #212121;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.foot_sns > li > a:hover {
  opacity: 0.65;
}

/* -------------------------------
	main
-------------------------------- */
#wrapper {
  overflow: hidden;
}

/* -------------------------------
	main title
-------------------------------- */
.main_ttl {
  background-color: #f5f4f2;
}

@media print, screen and (min-width: 768px) {
  .main_ttl {
    background-color: #fff;
  }
}

.main_ttl h2 {
  font-size: calc(30px + 20 * (100vw - 375px) / 825);
  line-height: 1;
  text-align: center;
  margin: 0;
  padding: 1em;
}

.main_ttl h2 > .in {
  text-transform: capitalize;
  text-align: center;
  display: inline-block;
}

.main_ttl h2 > .in > small {
  font-size: calc(14px + 6 * (100vw - 375px) / 825);
  line-height: 1.2;
  display: block;
  margin-top: 1em;
  padding-top: 1em;
  position: relative;
}

.main_ttl h2 > .in > small:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 1px;
  background-color: #847b7c;
}

@media print, screen and (min-width: 768px) {
  .main_ttl h2 {
    text-align: left;
    position: relative;
    z-index: 0;
  }
  .main_ttl h2:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100vw;
    min-width: 1500px;
    height: 100%;
    background-color: #f5f4f2;
    z-index: -1;
  }
  .main_ttl h2 > .in > small:before {
    width: 100vw;
    min-width: 1000px;
  }
}

@media print, screen and (min-width: 1200px) {
  .main_ttl h2 {
    font-size: 50px;
  }
  .main_ttl h2 > .in > small {
    font-size: 20px;
  }
}

/* -------------------------------
	pagetop
-------------------------------- */
#pagetop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease;
  z-index: 10;
}

#pagetop.is-active {
  opacity: 1;
  visibility: visible;
}

@media (max-width: 767px) {
  #pagetop {
    right: 5px;
    bottom: 5px;
  }
  #pagetop img {
    width: 40px;
  }
}

/* -------------------------------
	パンくず
-------------------------------- */
.breadcrumb_wrap {
  font-size: 14px;
  line-height: 1.333;
  letter-spacing: normal;
  padding-top: 10px;
  padding-left: 10px;
}

.breadcrumb_wrap a {
  color: #212121;
}

.breadcrumb_wrap span {
  display: inline-block;
}

.breadcrumb_wrap span > .current-item {
  opacity: 0.65;
}

/* -------------------------------
	ページング
-------------------------------- */
.wp-pagenavi {
  font-size: 0.88889rem;
  line-height: normal;
  letter-spacing: normal;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
}

.wp-pagenavi > span, .wp-pagenavi > a {
  color: #847b7c;
  text-decoration: none;
  height: 2.3em;
  width: 2.3em;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2px;
  border-radius: 0;
  border: solid 1px #847b7c;
}

.wp-pagenavi > span.current {
  color: #fff;
  border-color: #212121;
  background-color: #212121;
}

.wp-pagenavi > a {
  transition: background 0.3s ease;
}

.wp-pagenavi > a:hover {
  background-color: #D6D0C8;
}

:root {
  --duration: 1.2s;
  --delay: 0s;
  --ease: ease;
}

@media screen {
  [data-amn="fade-up"] {
    opacity: 0;
  }
  [data-amn="fade-up"].is-active {
    animation: key_amn_up var(--duration) var(--ease) var(--delay) alternate forwards;
  }
  [data-amn="fade-bottom"] {
    opacity: 0;
  }
  [data-amn="fade-bottom"].is-active {
    animation: key_amn_bottom var(--duration) var(--ease) var(--delay) alternate forwards;
  }
  [data-amn="fade-left"] {
    opacity: 0;
  }
  [data-amn="fade-left"].is-active {
    animation: key_amn_left var(--duration) var(--ease) var(--delay) alternate forwards;
  }
  [data-amn="fade-right"] {
    opacity: 0;
  }
  [data-amn="fade-right"].is-active {
    animation: key_amn_right var(--duration) var(--ease) var(--delay) alternate forwards;
  }
}

@keyframes key_amn_up {
  0% {
    opacity: 0;
    transform: translate(0, 10vh);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0px);
  }
}

@keyframes key_amn_bottom {
  0% {
    opacity: 0;
    transform: translate(0, -10vh);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0px);
  }
}

@keyframes key_amn_left {
  0% {
    opacity: 0;
    transform: translate(10vw, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0px);
  }
}

@keyframes key_amn_right {
  0% {
    opacity: 0;
    transform: translate(-10vw, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0px);
  }
}

/* 印刷用 */
@page {
  margin: 10mm 4mm 10mm 4mm;
}

@media print {
  body {
    min-width: 1500px !important;
  }
  .container {
    min-width: 1200px !important;
  }
  .row {
    overflow: visible !important;
  }
  [class^="col"], [class*=" col"], [class^="col-"], [class*=" col-"] {
    page-break-inside: avoid;
  }
  #pagetop {
    opacity: 0;
    visibility: hidden;
  }
  .page-break {
    page-break-inside: avoid;
    page-break-after: avoid;
  }
}

/* firefox　ハック */
@-moz-document url-prefix() {
  @page {
    margin: auto;
  }
}

/* IE11　ハック */
@media print and (-ms-high-contrast: none) {
  html {
    -ms-overflow-style: none;
    /* ie */
  }
  body {
    min-width: 1500px !important;
    zoom: 0.84;
  }
}

/*# sourceMappingURL=data:application/json;base64,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RTtJQUNFLFVBQVU7SUFDViw2QkFBNkI7RUFDL0I7RUFDQTtJQUNFLFVBQVU7SUFDViw0QkFBNEI7RUFDOUI7QUFDRjs7QUFFQTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDhCQUE4QjtFQUNoQztFQUNBO0lBQ0UsVUFBVTtJQUNWLDRCQUE0QjtFQUM5QjtBQUNGOztBQUVBLFFBQVE7QUFDUjtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFO0lBQ0UsNEJBQTRCO0VBQzlCO0VBQ0E7SUFDRSw0QkFBNEI7RUFDOUI7RUFDQTtJQUNFLDRCQUE0QjtFQUM5QjtFQUNBO0lBQ0Usd0JBQXdCO0VBQzFCO0VBQ0E7SUFDRSxVQUFVO0lBQ1Ysa0JBQWtCO0VBQ3BCO0VBQ0E7SUFDRSx3QkFBd0I7SUFDeEIsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0FBRUEsZ0JBQWdCO0FBQ2hCO0VBQ0U7SUFDRSxZQUFZO0VBQ2Q7QUFDRjs7QUFFQSxhQUFhO0FBQ2I7RUFDRTtJQUNFLHdCQUF3QjtJQUN4QixPQUFPO0VBQ1Q7RUFDQTtJQUNFLDRCQUE0QjtJQUM1QixVQUFVO0VBQ1o7QUFDRiIsImZpbGUiOiJzY3JlZW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiAgZm9udFxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVplbitPbGQrTWluY2hvOndnaHRANTAwJmRpc3BsYXk9c3dhcFwiKTtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NcnMrU2FpbnQrRGVsYWZpZWxkJmRpc3BsYXk9c3dhcFwiKTtcbi5qYSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgLnRlbHBob25lIHtcbiAgZm9udC1mYW1pbHk6ICdaZW4gT2xkIE1pbmNobycsIHNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZW5fbXJzIHtcbiAgZm9udC1mYW1pbHk6ICdNcnMgU2FpbnQgRGVsYWZpZWxkJywgY3Vyc2l2ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICdaZW4gT2xkIE1pbmNobycsIHNlcmlmLCBcIua4uOOCtOOCt+ODg+OCr+S9k1wiLCBZdUdvdGhpYywgXCLmuLjjgrTjgrfjg4Pjgq8gTWVkaXVtXCIsIFwiWXUgR290aGljIE1lZGl1bVwiLCBcIua4uOOCtOOCt+ODg+OCr1wiLCBcIll1IEdvdGhpY1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uZ290aGljIHtcbiAgZm9udC1mYW1pbHk6IFwi5ri444K044K344OD44Kv5L2TXCIsIFl1R290aGljLCBcIua4uOOCtOOCt+ODg+OCryBNZWRpdW1cIiwgXCJZdSBHb3RoaWMgTWVkaXVtXCIsIFwi5ri444K044K344OD44KvXCIsIFwiWXUgR290aGljXCIsIHNhbnMtc2VyaWY7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRkZWZhdWx0XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxNnB4ICovXG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgLyogMTZweCAqL1xuICB9XG59XG5cbmJvZHkge1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keSB7XG4gICAgbWFyZ2luLXRvcDogNzVweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgYm9keSB7XG4gICAgbWFyZ2luLXRvcDogMTMwcHg7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdOOCouODs+OCq+ODvOODquODs+OCr1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFuY2hvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogLTE7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYW5jaG9yIHtcbiAgICBtYXJnaW4tdG9wOiAtOTBweDtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0aGVhZGVyXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiDln7rmnKzjgrXjgqTjgrogKi9cbiNoZWFkZXIge1xuICBjb2xvcjogIzdmNjg2YTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDNweCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk7XG59XG5cbiNoZWFkZXIgaDEge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuI2hlYWRlciAucm93LWhlYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjaGVhZGVyIC5yb3ctaGVhZCB7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAjaGVhZGVyIC5yb3ctaGVhZCB7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgfVxufVxuXG4jaGVhZGVyIC5yb3ctaGVhZCAubG9nbyB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG4jaGVhZGVyIC5yb3ctaGVhZCAubG9nbyBoMSBpbWcge1xuICBoZWlnaHQ6IDQwcHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAjaGVhZGVyIC5yb3ctaGVhZCAubG9nbyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgfVxuICAjaGVhZGVyIC5yb3ctaGVhZCAubG9nbyBoMSBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgI2hlYWRlciAucm93LWhlYWQgLmxvZ28gaDEgaW1nIHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OHB4KSB7XG4gICNoZWFkZXIgLnJvdy1oZWFkIC5sb2dvIGgxIGltZyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMHZ3IC0gMjA1cHgpICogMC43NSk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbiNoZWFkZXIgLnJvdy1oZWFkIC5oZWFkX2NvbnRlbnRzIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbiNoZWFkZXIgLnJvdy1oZWFkIC5oZWFkX2NvbnRlbnRzIC5pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAjaGVhZGVyIC5yb3ctaGVhZCAuaGVhZF9jb250ZW50cyB7XG4gICAgcGFkZGluZy1yaWdodDogMjJweDtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICNoZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxufVxuXG4uaGVhZF9pY29uIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZF9pY29uIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZF9pY29uIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gIH1cbn1cblxuLmhlYWRfdGVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgY29sb3I6ICM0NDc1MTk7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkX3RlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmhlYWRfdGVsIC50ZWxwaG9uZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLmhlYWRfdGVsIHAge1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwLjI1ZW0gMCAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRfdGVsIC50ZWxwaG9uZSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG4gIC5oZWFkX3RlbCBwIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cblxuI2hlYWRlciB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuXG4jaGVhZGVyIC5oZWFkX3RlbCwgI2hlYWRlciAuaGVhZF9pY29uIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbiNoZWFkZXIgLmxpc3Qtc25zIC5pbnN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2hlYWRlciAubGlzdC1zbnMgLmluc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gICNoZWFkZXIgLmxpc3Qtc25zIC50ZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgI2hlYWRlciAucm93LWhlYWQge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2U7XG4gIH1cbiAgI2hlYWRlciAucm93LWhlYWQgLmxvZ28gaDEgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2U7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpeGVkLW5hdiAjaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZml4ZWQtbmF2ICNoZWFkZXIgLnJvdy1oZWFkIHtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gIH1cbiAgLmZpeGVkLW5hdiAjaGVhZGVyIC5yb3ctaGVhZCAubG9nbyBoMSBpbWcge1xuICAgIHdpZHRoOiAyMjVweDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx044Ot44Kw44Kk44Oz5LitXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jd3BhZG1pbmJhciB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG5ib2R5LmN1c3RvbWl6ZS1zdXBwb3J0ICNoZWFkZXIge1xuICB0b3A6IDQ2cHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3ODNweCkge1xuICBib2R5LmN1c3RvbWl6ZS1zdXBwb3J0ICNoZWFkZXIge1xuICAgIHRvcDogMzJweDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx05LiJ5pys57eaXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubWVudVdyYXBwZXIge1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4jbWVudUJ1dHRvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI21lbnVCdXR0b24gc3BhbiwgI21lbnVCdXR0b246YmVmb3JlLCAjbWVudUJ1dHRvbjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IGF1dG87XG4gIGJhY2tncm91bmQ6ICM0NDc1MTk7XG59XG5cbiNtZW51QnV0dG9uIHNwYW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogIzQ0NzUxOTtcbn1cblxuI21lbnVCdXR0b246YmVmb3JlIHtcbiAgei1pbmRleDogMjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4jbWVudUJ1dHRvbjphZnRlciB7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwcHgpO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4jbWVudUJ1dHRvbiBzbWFsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAzcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzdmNjg2YTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiDjgqLjg4vjg6Hjg7zjgrfjg6fjg7MgKi9cbiNtZW51QnV0dG9uIHNwYW4ge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMsIHRyYW5zZm9ybSAwLjJzO1xufVxuXG4jbWVudUJ1dHRvbjo6YmVmb3JlLCAjbWVudUJ1dHRvbjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLnNpZGUtb3BlbiAjbWVudUJ1dHRvbiBzcGFuIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjVkZWcpO1xufVxuXG4uc2lkZS1vcGVuICNtZW51QnV0dG9uOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5zaWRlLW9wZW4gI21lbnVCdXR0b246OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdOOCteOCpOODieODoeODi+ODpeODvFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3NpZGViYXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbiNzaWRlYmFyIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjc2lkZWJhciB7XG4gICAgd2lkdGg6IDI4MHB4O1xuICB9XG59XG5cbiNzaWRlYmFyIC5waG90byB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjc2lkZWJhciAucGhvdG8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDg5MDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2UsIHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIH1cbiAgYm9keS5zaWRlLW9wZW4gI3NpZGViYXIgLnBob3RvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4jc2lkZWJhciAuY29udGVudHMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogNTBweCAzMHB4O1xuICB3aWR0aDogMzAwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgei1pbmRleDogOTAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3NpZGViYXIgLmNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgICB3aWR0aDogMzQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICNzaWRlYmFyIC5jb250ZW50cyB7XG4gICAgcGFkZGluZy10b3A6IDEzMHB4O1xuICAgIHdpZHRoOiAzODBweDtcbiAgfVxuICBib2R5LmZpeGVkLW5hdiAjc2lkZWJhciAuY29udGVudHMge1xuICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICB9XG59XG5cbmJvZHkuc2lkZS1vcGVuICNzaWRlYmFyIC5jb250ZW50cyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNpZGVuYXZpIHtcbiAgbWFyZ2luOiBhdXRvIDAgMDtcbiAgcGFkZGluZzogNSUgMDtcbn1cblxuLmxpc3Qtc2lkZW5hdiA+IGxpIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogZGFzaGVkIDFweCAjN2I3YTc4O1xufVxuXG4ubGlzdC1zaWRlbmF2ID4gbGkgPiBhIHtcbiAgY29sb3I6ICM0NDc1MTk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxpc3Qtc2lkZW5hdiA+IGxpID4gYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA2IEZyZWUnO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjY0ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxZW07XG4gIG1hcmdpbi10b3A6IC0uNWVtO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFlbSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xufVxuXG4ubGlzdC1zaWRlbmF2ID4gbGkgPiBhID4gc21hbGwge1xuICBmb250LXNpemU6IDEycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAuNWVtO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5saXN0LXNpZGVuYXYgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAubGlzdC1zaWRlbmF2ID4gbGkgPiBhID4gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG4ubGlzdC1zaWRlbmF2ID4gbGkuY3VycmVudC1tZW51LWl0ZW0gPiBhOmJlZm9yZSwgLmxpc3Qtc2lkZW5hdiA+IGxpID4gYTpob3ZlcjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zaWRlX3NucyB7XG4gIG1hcmdpbjogYXV0byAxMCUgYXV0bztcbiAgcGFkZGluZzogNSUgMDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMTI3LCAxMDQsIDEwNiwgMC41KTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdOWNiumAj+aYjlxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm92ZXJsYXkge1xuICBjb250ZW50OiAnJztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5zaWRlLW9wZW4gLm92ZXJsYXkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdGZvb3RlclxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2Zvb3RlciB7XG4gIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbn1cblxuLmZvb3Rlcl9jb250YWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjRmMjtcbn1cblxuLmZvb3Rlcl9jb250YWN0IGgyIC5pbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZvb3Rlcl9jb250YWN0IGgyIC5pbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogY2FsYygxMDAlICsgMC43ZW0pO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogMmVtO1xufVxuXG4uZm9vdGVyX2NvbnRhY3QgLmNvbHVtbnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNjM3cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX2NvbnRhY3QgLmNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXJfY29udGFjdCAuY29sdW1ucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvb3Rlcl9jb250YWN0IC5jb2x1bW5zICsgLmNvbHVtbnMge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICM4NDdiN2M7XG59XG5cbi5mb290ZXJfY29udGFjdCAuY29sdW1ucyA+IGRpdiB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLmZvb3Rlcl9jb250YWN0IC5jb2x1bW5zIC5ib3gxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5mb290ZXJfY29udGFjdCAuY29sdW1ucyAuYm94MiB7XG4gIGZsZXg6IDAgMCAyOTBweDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLmZvb3Rlcl9jb250YWN0IC5jb2x1bW5zIC5ib3gyIC5idG4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfY29udGFjdCAuY29sdW1ucyAuYm94MiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uZm9vdGVyX2NvbnRhY3QgLmxpbmVfdGV4dCBwIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW46IDA7XG59XG5cbi5mb290ZXJfY29udGFjdCAubGluZV90ZXh0IC5zdWIge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbi8qICovXG4uZm9vdGVyX2NvbnRlbnRzIHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc4NTcyO1xufVxuXG4uZm9vdGVyX2NvbnRlbnRzIGgyIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZm9vdGVyX2NvbnRlbnRzIGEge1xuICBjb2xvcjogIzIxMjEyMTtcbn1cblxuLmZvb3Rlcl9jb250ZW50cyAuY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfY29udGVudHMgLmNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mX25hdmkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMyNzczMTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0RERERERDtcbiAgICBtYXJnaW46IDUwcHggLTE1cHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mX25hdmkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogMCAtMjVweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gIC5mX25hdmkge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuLmZfbmF2aSAuYm94IHtcbiAgcGFkZGluZzogMCAyNXB4O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZfbmF2aSAuYm94IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uZl9uYXZpIC5ib3ggPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mX25hdmkgLmJveCA+IHVsID4gbGkge1xuICAgIHBhZGRpbmc6IDExLjVweCAwIDEycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREREREQ7XG4gIH1cbn1cblxuLmZfbmF2aSAuYm94ID4gdWwgPiBsaSArIGxpIHtcbiAgbWFyZ2luLXRvcDogLjVlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mX25hdmkgLmJveCA+IHVsID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uZl9uYXZpIC5ib3ggPiB1bCA+IGxpID4gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mX25hdmkgLmJveCA+IHVsID4gbGkgPiBhIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgfVxuICAuZl9uYXZpIC5ib3ggPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHdpZHRoOiAxMjAwcHg7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi5mb290X3NucyB7XG4gIGNvbG9yOiAjMjEyMTIxO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290X3NucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbi5mb290X3NucyA+IGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmZvb3Rfc25zID4gbGkgPiBhIHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5mb290X3NucyA+IGxpID4gYTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRtYWluXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRtYWluIHRpdGxlXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubWFpbl90dGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNGYyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW5fdHRsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG59XG5cbi5tYWluX3R0bCBoMiB7XG4gIGZvbnQtc2l6ZTogY2FsYygzMHB4ICsgMjAgKiAoMTAwdncgLSAzNzVweCkgLyA4MjUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDFlbTtcbn1cblxuLm1haW5fdHRsIGgyID4gLmluIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWFpbl90dGwgaDIgPiAuaW4gPiBzbWFsbCB7XG4gIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgNiAqICgxMDB2dyAtIDM3NXB4KSAvIDgyNSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIHBhZGRpbmctdG9wOiAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1haW5fdHRsIGgyID4gLmluID4gc21hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4NDdiN2M7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbl90dGwgaDIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgLm1haW5fdHRsIGgyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1pbi13aWR0aDogMTUwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNGYyO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG4gIC5tYWluX3R0bCBoMiA+IC5pbiA+IHNtYWxsOmJlZm9yZSB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIG1pbi13aWR0aDogMTAwMHB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW5fdHRsIGgyIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gIH1cbiAgLm1haW5fdHRsIGgyID4gLmluID4gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0cGFnZXRvcFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3BhZ2V0b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyMHB4O1xuICBib3R0b206IDIwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZSwgdmlzaWJpbGl0eSAuM3MgZWFzZTtcbiAgei1pbmRleDogMTA7XG59XG5cbiNwYWdldG9wLmlzLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjcGFnZXRvcCB7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBib3R0b206IDVweDtcbiAgfVxuICAjcGFnZXRvcCBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHTjg5Hjg7PjgY/jgZpcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5icmVhZGNydW1iX3dyYXAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMztcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLmJyZWFkY3J1bWJfd3JhcCBhIHtcbiAgY29sb3I6ICMyMTIxMjE7XG59XG5cbi5icmVhZGNydW1iX3dyYXAgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJyZWFkY3J1bWJfd3JhcCBzcGFuID4gLmN1cnJlbnQtaXRlbSB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHTjg5rjg7zjgrjjg7PjgrBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53cC1wYWdlbmF2aSB7XG4gIGZvbnQtc2l6ZTogMC44ODg4OXJlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53cC1wYWdlbmF2aSA+IHNwYW4sIC53cC1wYWdlbmF2aSA+IGEge1xuICBjb2xvcjogIzg0N2I3YztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBoZWlnaHQ6IDIuM2VtO1xuICB3aWR0aDogMi4zZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzg0N2I3Yztcbn1cblxuLndwLXBhZ2VuYXZpID4gc3Bhbi5jdXJyZW50IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzIxMjEyMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjEyMTtcbn1cblxuLndwLXBhZ2VuYXZpID4gYSB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xufVxuXG4ud3AtcGFnZW5hdmkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q2RDBDODtcbn1cblxuOnJvb3Qge1xuICAtLWR1cmF0aW9uOiAxLjJzO1xuICAtLWRlbGF5OiAwcztcbiAgLS1lYXNlOiBlYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIHtcbiAgW2RhdGEtYW1uPVwiZmFkZS11cFwiXSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICBbZGF0YS1hbW49XCJmYWRlLXVwXCJdLmlzLWFjdGl2ZSB7XG4gICAgYW5pbWF0aW9uOiBrZXlfYW1uX3VwIHZhcigtLWR1cmF0aW9uKSB2YXIoLS1lYXNlKSB2YXIoLS1kZWxheSkgYWx0ZXJuYXRlIGZvcndhcmRzO1xuICB9XG4gIFtkYXRhLWFtbj1cImZhZGUtYm90dG9tXCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIFtkYXRhLWFtbj1cImZhZGUtYm90dG9tXCJdLmlzLWFjdGl2ZSB7XG4gICAgYW5pbWF0aW9uOiBrZXlfYW1uX2JvdHRvbSB2YXIoLS1kdXJhdGlvbikgdmFyKC0tZWFzZSkgdmFyKC0tZGVsYXkpIGFsdGVybmF0ZSBmb3J3YXJkcztcbiAgfVxuICBbZGF0YS1hbW49XCJmYWRlLWxlZnRcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgW2RhdGEtYW1uPVwiZmFkZS1sZWZ0XCJdLmlzLWFjdGl2ZSB7XG4gICAgYW5pbWF0aW9uOiBrZXlfYW1uX2xlZnQgdmFyKC0tZHVyYXRpb24pIHZhcigtLWVhc2UpIHZhcigtLWRlbGF5KSBhbHRlcm5hdGUgZm9yd2FyZHM7XG4gIH1cbiAgW2RhdGEtYW1uPVwiZmFkZS1yaWdodFwiXSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICBbZGF0YS1hbW49XCJmYWRlLXJpZ2h0XCJdLmlzLWFjdGl2ZSB7XG4gICAgYW5pbWF0aW9uOiBrZXlfYW1uX3JpZ2h0IHZhcigtLWR1cmF0aW9uKSB2YXIoLS1lYXNlKSB2YXIoLS1kZWxheSkgYWx0ZXJuYXRlIGZvcndhcmRzO1xuICB9XG59XG5cbkBrZXlmcmFtZXMga2V5X2Ftbl91cCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwdmgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGtleV9hbW5fYm90dG9tIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwdmgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGtleV9hbW5fbGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwdncsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGtleV9hbW5fcmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTB2dywgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwcHgpO1xuICB9XG59XG5cbi8qIOWNsOWIt+eUqCAqL1xuQHBhZ2Uge1xuICBtYXJnaW46IDEwbW0gNG1tIDEwbW0gNG1tO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICBib2R5IHtcbiAgICBtaW4td2lkdGg6IDE1MDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5jb250YWluZXIge1xuICAgIG1pbi13aWR0aDogMTIwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuICBbY2xhc3NePVwiY29sXCJdLCBbY2xhc3MqPVwiIGNvbFwiXSwgW2NsYXNzXj1cImNvbC1cIl0sIFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gICNwYWdldG9wIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAucGFnZS1icmVhayB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG59XG5cbi8qIGZpcmVmb3jjgIDjg4/jg4Pjgq8gKi9cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cblxuLyogSUUxMeOAgOODj+ODg+OCryAqL1xuQG1lZGlhIHByaW50IGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgaHRtbCB7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIC8qIGllICovXG4gIH1cbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiAxNTAwcHggIWltcG9ydGFudDtcbiAgICB6b29tOiAwLjg0O1xuICB9XG59XG4iXX0= */