@charset "UTF-8";
/**
 * pages/login.css — 시스템 로그인 페이지 전용. 가운데 카드형.
 * head 에 { "css": "login" } 로 로드. 상태: .login-form.is-otp-sent / .is-error.
 */
/**
 * SCSS 변수 (연산/믹스인용) — CSS 출력 없음. 어디서든 @use 해도 중복 생성 안 됨.
 * (CSS custom properties(:root)는 _tokens.scss 에서 출력.)
 */
/* 레이아웃 폭 (PC 전용) */
/**
 * 타이포 스케일 (단일 소스) — @Guide_Typography 기준. key = font-size(px).
 * 여기만 고치면 font() 믹스인과 --fs-* / --lh-* 토큰이 함께 갱신됨.
 */
/**
 * pages/login.css — 시스템 로그인 페이지 전용. 가운데 카드형.
 * head 에 { "css": "login" } 로 로드. 상태: .login-form.is-otp-sent / .is-error.
 */
/**
 * 공용 믹스인 — `@use '../common/mixins' as *;`
 */
/**
 * 타이포 스케일 적용(size + line-height 한 쌍). 예: `@include font(20);`
 * weight는 별도(`font-weight: var(--fw-bold);`). 허용 키는 $font-scale.
 */
/* 중앙 카드형 → 전역 최소폭(#wrap 1200) 해제.
 * (min-width 있으면 축소 시 콘텐츠는 문서 중앙 / fixed 모달·딤은 뷰포트 중앙 → 어긋남) */
#wrap {
  min-width: 0;
  background: #fff;
}

.inner {
  width: 100%;
  max-width: calc(var(--content-width) + 48px);
  padding: 0 24px;
}

/* 페이지 (헤더 아래 상단 정렬). min-height 960 → 창이 낮아도 카드가 여백 유지(뭉개짐 방지) */
.login {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  min-height: 600px;
  padding-top: 100px;
  background: #fff;
}

/* 카드 (536 = 440 + 좌우 48) */
.login-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 536px;
  padding: 40px 48px;
  background: var(--n-40);
  /* 테두리는 inset 그림자로 — Figma 는 선을 프레임 안쪽에 그려 레이아웃 폭을 먹지 않는다.
     border 로 두면 카드 536×412 → 538×414, 내부 입력폭 440 → 438 로 어긋남. */
  box-shadow: inset 0 0 0 1px var(--n-200);
  border-radius: 0;
}

.login-head {
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: center;
}

.login-sub {
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: var(--n-500);
}

.login-title {
  font-size: 24px;
  line-height: 36px;
  font-weight: var(--fw-bold);
  color: var(--n-900);
}

/* 비밀번호 변경(90일 경과) — 안내 문구('90일 마다' 강조) + 규칙 목록 */
.login-desc {
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: var(--n-600);
  text-align: center;
}
.login-desc b {
  font-weight: var(--fw-bold);
  color: var(--color-point);
}

.login-rules {
  margin: 0;
  padding-left: 20px;
  list-style: disc;
  font-size: 13px;
  line-height: 20px;
  color: var(--n-600);
}
.login-rules li {
  margin: 0;
}

/* 90일 경과 비밀번호 변경 — 눈 아이콘 좌우반전(Figma 인스턴스 scaleX(-1) 대응) */
.pw-expired .login-pw-toggle .ico {
  transform: scaleX(-1);
}

.login-input-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.login-fields {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.login-pw {
  position: relative;
}
.login-pw .input {
  padding-right: 44px;
}
.login-pw-toggle {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  display: inline-flex;
  padding: 0;
  border: 0;
  background: none;
  color: var(--n-500);
  cursor: pointer;
}

/* OTP 인증번호 입력 행 — 기본 숨김, 로그인 시도 후(.is-otp-sent) 노출.
 * Figma: input 332 + gap 8 + button/basic_line_L 100 = 440 */
.login-otp {
  display: none;
  gap: 8px;
}
.login-otp .input {
  flex: 1 1 auto;
  min-width: 0;
}
.login-otp {
  /* button/basic_line_L — 높이 50 · 폭 100 고정. 글자는 15(.btn 기본)라 .btn-lg 미사용 */
}
.login-otp .btn-otp {
  flex: 0 0 100px;
  width: 100px;
  height: 50px;
  min-width: 0;
  padding: 0 14px;
}

/* 오류 메시지 — 기본 숨김, 오류 상태에서 노출 */
.login-error {
  display: none;
  align-items: center;
  gap: 2px;
  padding: 16px;
  background: var(--r-100);
}
.login-error .ico {
  color: var(--color-error);
}
.login-error span {
  font-size: 13px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: var(--color-error);
}

/* 네이비 버튼(.btn-navy)은 공통 _button.scss 로 이동 */
.login-links {
  display: flex;
  align-items: center;
}
.login-links a {
  flex: 1 1 0;
  font-size: 15px;
  line-height: 22px;
  color: var(--n-600);
  text-align: center;
}

.login-links-sep {
  flex: 0 0 auto;
  width: 1px;
  height: 12px;
  background: var(--n-300);
}

/* 로그인 버튼 라벨 — 기본 '로그인' / OTP 단계 'OTP 인증번호 로그인' */
.login-submit-label-otp {
  display: none;
}

/* 상태별 노출 */
/* OTP 단계 — 인증번호 행 노출 + 버튼 라벨 교체 + ID·비밀번호 잠금(개발 연동 시 disabled 부여) */
.login-form.is-otp-sent .login-otp {
  display: flex;
}
.login-form.is-otp-sent .login-submit-label {
  display: none;
}
.login-form.is-otp-sent .login-submit-label-otp {
  display: inline;
}
.login-form.is-otp-sent .login-fields > .input,
.login-form.is-otp-sent .login-pw .input {
  background: var(--n-100);
  border-color: var(--n-200);
}

/* 로그인 실패 시 에러 메시지 노출 (개발 연동) */
.login-form.is-error .login-error {
  display: flex;
}

/* 로그인 플로우 팝업 (공통 .modal-* 은 _modal.scss. 여기선 폼형 변형만) */
.modal-box--terms {
  width: 690px;
}

.modal-box--pw {
  width: 800px;
}

/* 폼형 바디: 표준(가운데·min150) 대신 좌측·상단 정렬 + 폼 ↔ 확인 gap 30 */
.modal-box--terms .modal-body,
.modal-box--pw .modal-body {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 30px;
  min-height: 0;
  padding: 30px 20px 20px;
}

.terms-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.terms-block {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* 약관 본문 박스 — 고정높이 + Figma 스크롤바(우측 반투명 라운드, 8px 인셋) */
.terms-text {
  box-sizing: border-box;
  height: 190px;
  padding: 20px;
  border-right: 8px solid transparent;
  overflow-y: scroll;
  background: var(--n-40);
  border-radius: 10px;
}
.terms-text::-webkit-scrollbar {
  width: 5px;
}
.terms-text::-webkit-scrollbar-track {
  margin: 8px 0;
  background: transparent;
}
.terms-text::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.2);
  border-radius: 50px;
}

.terms-text-body {
  min-height: 210px;
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: #616161;
}

/* 로그인 플로우 체크 행 gap 5 (컴포넌트 기본 8 → Figma 5. 색은 아래 네이비 오버라이드) */
.login-remember,
.terms-check {
  gap: 5px;
}

/* 로그인 플로우 체크박스 = 네이비(DB-700) — 컴포넌트 기본(Primary)을 로그인 톤에 맞춰 오버라이드 */
.login-remember.check:not(.check--radio) input:checked ~ .check-box,
.terms-check.check:not(.check--radio) input:checked ~ .check-box {
  border-color: var(--db-700);
  background: var(--db-700);
}

/* ID·비밀번호 변경 팝업 (800, 2단) — 폭은 위 .modal-box--pw */
.pw-form {
  display: flex;
  gap: 20px;
  width: 100%;
}

.pw-col {
  display: flex;
  flex: 1 1 0;
  min-width: 0;
  flex-direction: column;
  gap: 30px;
}

.pw-divider {
  flex: 0 0 auto;
  align-self: stretch;
  width: 1px;
  background: var(--n-100);
}

.pw-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.pw-col-title {
  font-size: 16px;
  line-height: 24px;
  font-weight: var(--fw-bold);
  color: var(--n-900);
}

.pw-desc {
  padding-left: 20px;
  list-style: disc;
  font-size: 13px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: #616161;
}

.pw-fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 4px;
}

.field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.field-label {
  font-size: 14px;
  line-height: 20px;
  font-weight: var(--fw-semibold);
  color: var(--n-900);
}

.field-row {
  display: flex;
  gap: 6px;
}
.field-row .input {
  flex: 1 1 auto;
  min-width: 0;
}
.field-row .btn {
  flex: 0 0 auto;
  height: 44px;
}

/* 읽기전용 필드(현재 ID·현재 비밀번호) — Figma: 흰색 배경 */
.field .input[readonly] {
  background: #fff;
}

/* 비밀번호 변경 오류 메시지 — 기본 숨김, 검증 실패 시 노출(개발 연동) */
.pw-error {
  display: none;
  align-items: center;
  gap: 2px;
  padding: 16px;
  background: var(--r-100);
}
.pw-error .ico {
  color: var(--color-error);
}
.pw-error span {
  font-size: 13px;
  line-height: 20px;
  font-weight: var(--fw-medium);
  color: var(--color-error);
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhZ2VzL2xvZ2luLmNzcyIsInBhZ2VzL2xvZ2luLnNjc3MiLCJjb21tb24vX3ZhcmlhYmxlcy5zY3NzIiwiY29tbW9uL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7OztFQUFBO0FDRkE7OztFQUFBO0FBS0EsbUJBQUE7QUFVQTs7O0VBQUE7QURiQTs7O0VBQUE7QUVGQTs7RUFBQTtBQU1BOzs7RUFBQTtBRkdBOytEQUFBO0FBRUE7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7QURpQkY7O0FDZEE7RUFDRSxXQUFBO0VBQ0EsNENBQUE7RUFDQSxlQUFBO0FEaUJGOztBQ2RBLGlFQUFBO0FBQ0E7RUFDRSxhQUFBO0VBQ0EsY0FBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7QURpQkY7O0FDZEEsMkJBQUE7QUFDQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSx1QkFBQTtFQUNBO2dFQUFBO0VBRUEsd0NBQUE7RUFDQSxnQkFBQTtBRGlCRjs7QUNkQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFFBQUE7RUFDQSxrQkFBQTtBRGlCRjs7QUNkQTtFRXZDRSxlQUFBO0VBQ0EsaUJBQUE7RUZ3Q0EsNkJBQUE7RUFDQSxtQkFBQTtBRGtCRjs7QUNmQTtFRTdDRSxlQUFBO0VBQ0EsaUJBQUE7RUY4Q0EsMkJBQUE7RUFDQSxtQkFBQTtBRG1CRjs7QUNoQkEsaURBQUE7QUFDQTtFRXBERSxlQUFBO0VBQ0EsaUJBQUE7RUZxREEsNkJBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FEb0JGO0FDbEJFO0VBQ0UsMkJBQUE7RUFDQSx5QkFBQTtBRG9CSjs7QUNoQkE7RUFDRSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFRW5FQSxlQUFBO0VBQ0EsaUJBQUE7RUZvRUEsbUJBQUE7QURvQkY7QUNsQkU7RUFD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QUE7RUU5VEEsZUFBQTtFQUNBLGlCQUFBO0VGK1RBLDZCQUFBO0VBQ0EsY0FBQTtBRGFGOztBQ1ZBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0FEYUY7O0FDVkE7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxRQUFBO0FEYUY7O0FDVkE7RUVqVkUsZUFBQTtFQUNBLGlCQUFBO0VGa1ZBLCtCQUFBO0VBQ0EsbUJBQUE7QURjRjs7QUNYQTtFQUNFLGFBQUE7RUFDQSxRQUFBO0FEY0Y7QUNaRTtFQUNFLGNBQUE7RUFDQSxZQUFBO0FEY0o7QUNYRTtFQUNFLGNBQUE7RUFDQSxZQUFBO0FEYUo7O0FDVEEsMENBQUE7QUFDQTtFQUNFLGdCQUFBO0FEWUY7O0FDVEEsOENBQUE7QUFDQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFFBQUE7RUFDQSxhQUFBO0VBQ0Esd0JBQUE7QURZRjtBQ1ZFO0VBQ0UseUJBQUE7QURZSjtBQ1RFO0VFdlhBLGVBQUE7RUFDQSxpQkFBQTtFRndYRSw2QkFBQTtFQUNBLHlCQUFBO0FEWUoiLCJmaWxlIjoicGFnZXMvbG9naW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBwYWdlcy9sb2dpbi5jc3Mg4oCUIOyLnOyKpO2FnCDroZzqt7jsnbgg7Y6Y7J207KeAIOyghOyaqS4g6rCA7Jq0642wIOy5tOuTnO2YlS5cbiAqIGhlYWQg7JeQIHsgXCJjc3NcIjogXCJsb2dpblwiIH0g66GcIOuhnOuTnC4g7IOB7YOcOiAubG9naW4tZm9ybS5pcy1vdHAtc2VudCAvIC5pcy1lcnJvci5cbiAqL1xuLyoqXG4gKiBTQ1NTIOuzgOyImCAo7Jew7IKwL+uvueyKpOyduOyaqSkg4oCUIENTUyDstpzroKUg7JeG7J2MLiDslrTrlJTshJzrk6AgQHVzZSDtlbTrj4Qg7KSR67O1IOyDneyEsSDslYgg65CoLlxuICogKENTUyBjdXN0b20gcHJvcGVydGllcyg6cm9vdCnripQgX3Rva2Vucy5zY3NzIOyXkOyEnCDstpzroKUuKVxuICovXG4vKiDroIjsnbTslYTsm4Mg7Y+tIChQQyDsoITsmqkpICovXG4vKipcbiAqIO2DgOydtO2PrCDsiqTsvIDsnbwgKOuLqOydvCDshozsiqQpIOKAlCBAR3VpZGVfVHlwb2dyYXBoeSDquLDspIAuIGtleSA9IGZvbnQtc2l6ZShweCkuXG4gKiDsl6zquLDrp4wg6rOg7LmY66m0IGZvbnQoKSDrr7nsiqTsnbjqs7wgLS1mcy0qIC8gLS1saC0qIO2GoO2BsOydtCDtlajqu5gg6rCx7Iug65CoLlxuICovXG4vKipcbiAqIHBhZ2VzL2xvZ2luLmNzcyDigJQg7Iuc7Iqk7YWcIOuhnOq3uOyduCDtjpjsnbTsp4Ag7KCE7JqpLiDqsIDsmrTrjbAg7Lm065Oc7ZiVLlxuICogaGVhZCDsl5AgeyBcImNzc1wiOiBcImxvZ2luXCIgfSDroZwg66Gc65OcLiDsg4Htg5w6IC5sb2dpbi1mb3JtLmlzLW90cC1zZW50IC8gLmlzLWVycm9yLlxuICovXG4vKipcbiAqIOqzteyaqSDrr7nsiqTsnbgg4oCUIGBAdXNlICcuLi9jb21tb24vbWl4aW5zJyBhcyAqO2BcbiAqL1xuLyoqXG4gKiDtg4DsnbTtj6wg7Iqk7LyA7J28IOyggeyaqShzaXplICsgbGluZS1oZWlnaHQg7ZWcIOyMjSkuIOyYiDogYEBpbmNsdWRlIGZvbnQoMjApO2BcbiAqIHdlaWdodOuKlCDrs4Trj4QoYGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtgKS4g7ZeI7JqpIO2CpOuKlCAkZm9udC1zY2FsZS5cbiAqL1xuLyog7KSR7JWZIOy5tOuTnO2YlSDihpIg7KCE7JetIOy1nOyGjO2PrSgjd3JhcCAxMjAwKSDtlbTsoJwuXG4gKiAobWluLXdpZHRoIOyeiOycvOuptCDstpXshowg7IucIOy9mO2FkOy4oOuKlCDrrLjshJwg7KSR7JWZIC8gZml4ZWQg66qo64uswrfrlKTsnYAg67ew7Y+s7Yq4IOykkeyVmSDihpIg7Ja06riL64KoKSAqL1xuI3dyYXAge1xuICBtaW4td2lkdGg6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IGNhbGModmFyKC0tY29udGVudC13aWR0aCkgKyA0OHB4KTtcbiAgcGFkZGluZzogMCAyNHB4O1xufVxuXG4vKiDtjpjsnbTsp4AgKO2XpOuNlCDslYTrnpgg7IOB64uoIOygleugrCkuIG1pbi1oZWlnaHQgOTYwIOKGkiDssL3snbQg64Ku7JWE64+EIOy5tOuTnOqwgCDsl6zrsLEg7Jyg7KeAKOutieqwnOynkCDrsKnsp4ApICovXG4ubG9naW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNjAwcHg7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLyog7Lm065OcICg1MzYgPSA0NDAgKyDsoozsmrAgNDgpICovXG4ubG9naW4tY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMjBweDtcbiAgd2lkdGg6IDUzNnB4O1xuICBwYWRkaW5nOiA0MHB4IDQ4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tNDApO1xuICAvKiDthYzrkZDrpqzripQgaW5zZXQg6re466a87J6Q66GcIOKAlCBGaWdtYSDripQg7ISg7J2EIO2UhOugiOyehCDslYjsqr3sl5Ag6re466CkIOugiOydtOyVhOybgyDtj63snYQg66i57KeAIOyViuuKlOuLpC5cbiAgICAgYm9yZGVyIOuhnCDrkZDrqbQg7Lm065OcIDUzNsOXNDEyIOKGkiA1MzjDlzQxNCwg64K067aAIOyeheugpe2PrSA0NDAg4oaSIDQzOCDroZwg7Ja06riL64KoLiAqL1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tbi0yMDApO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubG9naW4taGVhZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sb2dpbi1zdWIge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBmb250LXdlaWdodDogdmFyKC0tZnctbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmxvZ2luLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LWJvbGQpO1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuXG4vKiDruYTrsIDrsojtmLgg67OA6rK9KDkw7J28IOqyveqzvCkg4oCUIOyViOuCtCDrrLjqtawoJzkw7J28IOuniOuLpCcg6rCV7KGwKSArIOq3nOy5mSDrqqnroZ0gKi9cbi5sb2dpbi1kZXNjIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gIGNvbG9yOiB2YXIoLS1uLTYwMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5sb2dpbi1kZXNjIGIge1xuICBmb250LXdlaWdodDogdmFyKC0tZnctYm9sZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG59XG5cbi5sb2dpbi1ydWxlcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaXN0LXN0eWxlOiBkaXNjO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogdmFyKC0tbi02MDApO1xufVxuLmxvZ2luLXJ1bGVzIGxpIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiA5MOydvCDqsr3qs7wg67mE67CA67KI7Zi4IOuzgOqyvSDigJQg64iIIOyVhOydtOy9mCDsoozsmrDrsJjsoIQoRmlnbWEg7J247Iqk7YS07IqkIHNjYWxlWCgtMSkg64yA7J2RKSAqL1xuLnB3LWV4cGlyZWQgLmxvZ2luLXB3LXRvZ2dsZSAuaWNvIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xufVxuXG4ubG9naW4taW5wdXQtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTBweDtcbn1cblxuLmxvZ2luLWZpZWxkcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTBweDtcbn1cblxuLmxvZ2luLXB3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmxvZ2luLXB3IC5pbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQ0cHg7XG59XG4ubG9naW4tcHctdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEycHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiBPVFAg7J247Kad67KI7Zi4IOyeheugpSDtlokg4oCUIOq4sOuzuCDsiKjquYAsIOuhnOq3uOyduCDsi5zrj4Qg7ZuEKC5pcy1vdHAtc2VudCkg64W47LacLlxuICogRmlnbWE6IGlucHV0IDMzMiArIGdhcCA4ICsgYnV0dG9uL2Jhc2ljX2xpbmVfTCAxMDAgPSA0NDAgKi9cbi5sb2dpbi1vdHAge1xuICBkaXNwbGF5OiBub25lO1xuICBnYXA6IDhweDtcbn1cbi5sb2dpbi1vdHAgLmlucHV0IHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1pbi13aWR0aDogMDtcbn1cbi5sb2dpbi1vdHAge1xuICAvKiBidXR0b24vYmFzaWNfbGluZV9MIOKAlCDrhpLsnbQgNTAgwrcg7Y+tIDEwMCDqs6DsoJUuIOq4gOyekOuKlCAxNSguYnRuIOq4sOuzuCnrnbwgLmJ0bi1sZyDrr7jsgqzsmqkgKi9cbn1cbi5sb2dpbi1vdHAgLmJ0bi1vdHAge1xuICBmbGV4OiAwIDAgMTAwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDAgMTRweDtcbn1cblxuLyog7Jik66WYIOuplOyLnOyngCDigJQg6riw67O4IOyIqOq5gCwg7Jik66WYIOyDge2DnOyXkOyEnCDrhbjstpwgKi9cbi5sb2dpbi1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMnB4O1xuICBwYWRkaW5nOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yLTEwMCk7XG59XG4ubG9naW4tZXJyb3IgLmljbyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG59XG4ubG9naW4tZXJyb3Igc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1tZWRpdW0pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuXG4vKiDrhKTsnbTruYQg67KE7Yq8KC5idG4tbmF2eSnsnYAg6rO17Ya1IF9idXR0b24uc2NzcyDroZwg7J2064+ZICovXG4ubG9naW4tbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmxvZ2luLWxpbmtzIGEge1xuICBmbGV4OiAxIDEgMDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgY29sb3I6IHZhcigtLW4tNjAwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubG9naW4tbGlua3Mtc2VwIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi0zMDApO1xufVxuXG4vKiDroZzqt7jsnbgg67KE7Yq8IOudvOuyqCDigJQg6riw67O4ICfroZzqt7jsnbgnIC8gT1RQIOuLqOqzhCAnT1RQIOyduOymneuyiO2YuCDroZzqt7jsnbgnICovXG4ubG9naW4tc3VibWl0LWxhYmVsLW90cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIOyDge2DnOuzhCDrhbjstpwgKi9cbi8qIE9UUCDri6jqs4Qg4oCUIOyduOymneuyiO2YuCDtlokg64W47LacICsg67KE7Yq8IOudvOuyqCDqtZDssrQgKyBJRMK367mE67CA67KI7Zi4IOyeoOq4iCjqsJzrsJwg7Jew64+ZIOyLnCBkaXNhYmxlZCDrtoDsl6wpICovXG4ubG9naW4tZm9ybS5pcy1vdHAtc2VudCAubG9naW4tb3RwIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5sb2dpbi1mb3JtLmlzLW90cC1zZW50IC5sb2dpbi1zdWJtaXQtbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmxvZ2luLWZvcm0uaXMtb3RwLXNlbnQgLmxvZ2luLXN1Ym1pdC1sYWJlbC1vdHAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4ubG9naW4tZm9ybS5pcy1vdHAtc2VudCAubG9naW4tZmllbGRzID4gLmlucHV0LFxuLmxvZ2luLWZvcm0uaXMtb3RwLXNlbnQgLmxvZ2luLXB3IC5pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tMTAwKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1uLTIwMCk7XG59XG5cbi8qIOuhnOq3uOyduCDsi6TtjKgg7IucIOyXkOufrCDrqZTsi5zsp4Ag64W47LacICjqsJzrsJwg7Jew64+ZKSAqL1xuLmxvZ2luLWZvcm0uaXMtZXJyb3IgLmxvZ2luLWVycm9yIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyog66Gc6re47J24IO2UjOuhnOyasCDtjJ3sl4UgKOqzte2GtSAubW9kYWwtKiDsnYAgX21vZGFsLnNjc3MuIOyXrOq4sOyEoCDtj7ztmJUg67OA7ZiV66eMKSAqL1xuLm1vZGFsLWJveC0tdGVybXMge1xuICB3aWR0aDogNjkwcHg7XG59XG5cbi5tb2RhbC1ib3gtLXB3IHtcbiAgd2lkdGg6IDgwMHB4O1xufVxuXG4vKiDtj7ztmJUg67CU65SUOiDtkZzspIAo6rCA7Jq0642wwrdtaW4xNTApIOuMgOyLoCDsoozsuKHCt+yDgeuLqCDsoJXroKwgKyDtj7wg4oaUIO2ZleyduCBnYXAgMzAgKi9cbi5tb2RhbC1ib3gtLXRlcm1zIC5tb2RhbC1ib2R5LFxuLm1vZGFsLWJveC0tcHcgLm1vZGFsLWJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBnYXA6IDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDMwcHggMjBweCAyMHB4O1xufVxuXG4udGVybXMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMzBweDtcbn1cblxuLnRlcm1zLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4vKiDslb3qtIAg67O466y4IOuwleyKpCDigJQg6rOg7KCV64aS7J20ICsgRmlnbWEg7Iqk7YGs66Gk67CUKOyasOy4oSDrsJjtiKzrqoUg65287Jq065OcLCA4cHgg7J247IWLKSAqL1xuLnRlcm1zLXRleHQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDE5MHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTQwKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cbi50ZXJtcy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiA1cHg7XG59XG4udGVybXMtdGV4dDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBtYXJnaW46IDhweCAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi50ZXJtcy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbn1cblxuLnRlcm1zLXRleHQtYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDIxMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBmb250LXdlaWdodDogdmFyKC0tZnctbWVkaXVtKTtcbiAgY29sb3I6ICM2MTYxNjE7XG59XG5cbi8qIOuhnOq3uOyduCDtlIzroZzsmrAg7LK07YGsIO2WiSBnYXAgNSAo7Lu07Y+s64SM7Yq4IOq4sOuzuCA4IOKGkiBGaWdtYSA1LiDsg4nsnYAg7JWE656YIOuEpOydtOu5hCDsmKTrsoTrnbzsnbTrk5wpICovXG4ubG9naW4tcmVtZW1iZXIsXG4udGVybXMtY2hlY2sge1xuICBnYXA6IDVweDtcbn1cblxuLyog66Gc6re47J24IO2UjOuhnOyasCDssrTtgazrsJXsiqQgPSDrhKTsnbTruYQoREItNzAwKSDigJQg7Lu07Y+s64SM7Yq4IOq4sOuzuChQcmltYXJ5KeydhCDroZzqt7jsnbgg7Yak7JeQIOunnuy2sCDsmKTrsoTrnbzsnbTrk5wgKi9cbi5sb2dpbi1yZW1lbWJlci5jaGVjazpub3QoLmNoZWNrLS1yYWRpbykgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVjay1ib3gsXG4udGVybXMtY2hlY2suY2hlY2s6bm90KC5jaGVjay0tcmFkaW8pIGlucHV0OmNoZWNrZWQgfiAuY2hlY2stYm94IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kYi03MDApO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1kYi03MDApO1xufVxuXG4vKiBJRMK367mE67CA67KI7Zi4IOuzgOqyvSDtjJ3sl4UgKDgwMCwgMuuLqCkg4oCUIO2PreydgCDsnIQgLm1vZGFsLWJveC0tcHcgKi9cbi5wdy1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAyMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnB3LWNvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4td2lkdGg6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMzBweDtcbn1cblxuLnB3LWRpdmlkZXIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi0xMDApO1xufVxuXG4ucHctaGVhZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNnB4O1xufVxuXG4ucHctY29sLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LWJvbGQpO1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuXG4ucHctZGVzYyB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbGlzdC1zdHlsZTogZGlzYztcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gIGNvbG9yOiAjNjE2MTYxO1xufVxuXG4ucHctZmllbGRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxNnB4O1xuICBwYWRkaW5nLXRvcDogNHB4O1xufVxuXG4uZmllbGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDZweDtcbn1cblxuLmZpZWxkLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LXNlbWlib2xkKTtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcbn1cblxuLmZpZWxkLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogNnB4O1xufVxuLmZpZWxkLXJvdyAuaW5wdXQge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLXdpZHRoOiAwO1xufVxuLmZpZWxkLXJvdyAuYnRuIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIGhlaWdodDogNDRweDtcbn1cblxuLyog7J296riw7KCE7JqpIO2VhOuTnCjtmITsnqwgSUTCt+2YhOyerCDruYTrsIDrsojtmLgpIOKAlCBGaWdtYTog7Z2w7IOJIOuwsOqyvSAqL1xuLmZpZWxkIC5pbnB1dFtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4vKiDruYTrsIDrsojtmLgg67OA6rK9IOyYpOulmCDrqZTsi5zsp4Ag4oCUIOq4sOuzuCDsiKjquYAsIOqygOymnSDsi6TtjKgg7IucIOuFuOy2nCjqsJzrsJwg7Jew64+ZKSAqL1xuLnB3LWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAycHg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXItMTAwKTtcbn1cbi5wdy1lcnJvciAuaWNvIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cbi5wdy1lcnJvciBzcGFuIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKipcbiAqIHBhZ2VzL2xvZ2luLmNzcyDigJQg7Iuc7Iqk7YWcIOuhnOq3uOyduCDtjpjsnbTsp4Ag7KCE7JqpLiDqsIDsmrTrjbAg7Lm065Oc7ZiVLlxuICogaGVhZCDsl5AgeyBcImNzc1wiOiBcImxvZ2luXCIgfSDroZwg66Gc65OcLiDsg4Htg5w6IC5sb2dpbi1mb3JtLmlzLW90cC1zZW50IC8gLmlzLWVycm9yLlxuICovXG5AdXNlIFwiLi4vY29tbW9uL3ZhcmlhYmxlc1wiIGFzICo7XG5AdXNlIFwiLi4vY29tbW9uL21peGluc1wiIGFzICo7XG5cbi8qIOykkeyVmSDsubTrk5ztmJUg4oaSIOyghOyXrSDstZzshoztj60oI3dyYXAgMTIwMCkg7ZW07KCcLlxuICogKG1pbi13aWR0aCDsnojsnLzrqbQg7LaV7IaMIOyLnCDsvZjthZDsuKDripQg66y47IScIOykkeyVmSAvIGZpeGVkIOuqqOuLrMK365Sk7J2AIOu3sO2PrO2KuCDspJHslZkg4oaSIOyWtOq4i+uCqCkgKi9cbiN3cmFwIHtcbiAgbWluLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmOyAvLyDroZzqt7jsnbggPSDtnbAg7Y6Y7J207KeAKO2VmOuLqCDtmozsg4kg67C065OcIOuwqeyngClcbn1cblxuLmlubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYyh2YXIoLS1jb250ZW50LXdpZHRoKSArIDQ4cHgpOyAvLyDiiaUxMjQ4IOyXkOyEoCDsvZjthZDsuKAgMTIwMCDsnKDsp4BcbiAgcGFkZGluZzogMCAyNHB4O1xufVxuXG4vKiDtjpjsnbTsp4AgKO2XpOuNlCDslYTrnpgg7IOB64uoIOygleugrCkuIG1pbi1oZWlnaHQgOTYwIOKGkiDssL3snbQg64Ku7JWE64+EIOy5tOuTnOqwgCDsl6zrsLEg7Jyg7KeAKOutieqwnOynkCDrsKnsp4ApICovXG4ubG9naW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNjAwcHg7IC8vIEZpZ21hIGNvbnRlbnRzIOuGkuydtCjsubTrk5wgdG9wMTAwICsgNDcyICsg7JWE656YMzg4KVxuICBwYWRkaW5nLXRvcDogMTAwcHg7IC8vIEZpZ21hIOy5tOuTnCB0b3BcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLyog7Lm065OcICg1MzYgPSA0NDAgKyDsoozsmrAgNDgpICovXG4ubG9naW4tY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMjBweDtcbiAgd2lkdGg6IDUzNnB4O1xuICBwYWRkaW5nOiA0MHB4IDQ4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tNDApO1xuICAvKiDthYzrkZDrpqzripQgaW5zZXQg6re466a87J6Q66GcIOKAlCBGaWdtYSDripQg7ISg7J2EIO2UhOugiOyehCDslYjsqr3sl5Ag6re466CkIOugiOydtOyVhOybgyDtj63snYQg66i57KeAIOyViuuKlOuLpC5cbiAgICAgYm9yZGVyIOuhnCDrkZDrqbQg7Lm065OcIDUzNsOXNDEyIOKGkiA1MzjDlzQxNCwg64K067aAIOyeheugpe2PrSA0NDAg4oaSIDQzOCDroZwg7Ja06riL64KoLiAqL1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tbi0yMDApO1xuICBib3JkZXItcmFkaXVzOiAwOyAvLyBGaWdtYSDqsIHsp4Qg66qo7ISc66asXG59XG5cbi5sb2dpbi1oZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmxvZ2luLXN1YiB7XG4gIEBpbmNsdWRlIGZvbnQoMTQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZnctbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmxvZ2luLXRpdGxlIHtcbiAgQGluY2x1ZGUgZm9udCgyNCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcbn1cblxuLyog67mE67CA67KI7Zi4IOuzgOqyvSg5MOydvCDqsr3qs7wpIOKAlCDslYjrgrQg66y46rWsKCc5MOydvCDrp4jri6QnIOqwleyhsCkgKyDqt5zsuZkg66qp66GdICovXG4ubG9naW4tZGVzYyB7XG4gIEBpbmNsdWRlIGZvbnQoMTQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZnctbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLW4tNjAwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICB9XG59XG5cbi5sb2dpbi1ydWxlcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaXN0LXN0eWxlOiBkaXNjO1xuICBAaW5jbHVkZSBmb250KDEzKTtcbiAgY29sb3I6IHZhcigtLW4tNjAwKTtcblxuICBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi8qIDkw7J28IOqyveqzvCDruYTrsIDrsojtmLgg67OA6rK9IOKAlCDriIgg7JWE7J207L2YIOyijOyasOuwmOyghChGaWdtYSDsnbjsiqTthLTsiqQgc2NhbGVYKC0xKSDrjIDsnZEpICovXG4ucHctZXhwaXJlZCAubG9naW4tcHctdG9nZ2xlIC5pY28ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG59XG5cbi5sb2dpbi1pbnB1dC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4ubG9naW4tZmllbGRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4ubG9naW4tcHcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xuICB9XG5cbiAgJi10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTJweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tbi01MDApO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vKiBPVFAg7J247Kad67KI7Zi4IOyeheugpSDtlokg4oCUIOq4sOuzuCDsiKjquYAsIOuhnOq3uOyduCDsi5zrj4Qg7ZuEKC5pcy1vdHAtc2VudCkg64W47LacLlxuICogRmlnbWE6IGlucHV0IDMzMiArIGdhcCA4ICsgYnV0dG9uL2Jhc2ljX2xpbmVfTCAxMDAgPSA0NDAgKi9cbi5sb2dpbi1vdHAge1xuICBkaXNwbGF5OiBub25lO1xuICBnYXA6IDhweDtcblxuICAuaW5wdXQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8qIGJ1dHRvbi9iYXNpY19saW5lX0wg4oCUIOuGkuydtCA1MCDCtyDtj60gMTAwIOqzoOyglS4g6riA7J6Q64qUIDE1KC5idG4g6riw67O4KeudvCAuYnRuLWxnIOuvuOyCrOyaqSAqL1xuICAuYnRuLW90cCB7XG4gICAgZmxleDogMCAwIDEwMHB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDAgMTRweDtcbiAgfVxufVxuXG4vKiDsmKTrpZgg66mU7Iuc7KeAIOKAlCDquLDrs7gg7Iio6rmALCDsmKTrpZgg7IOB7YOc7JeQ7IScIOuFuOy2nCAqL1xuLmxvZ2luLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAycHg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXItMTAwKTtcblxuICAuaWNvIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgQGluY2x1ZGUgZm9udCgxMyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgfVxufVxuXG4vKiDrhKTsnbTruYQg67KE7Yq8KC5idG4tbmF2eSnsnYAg6rO17Ya1IF9idXR0b24uc2NzcyDroZwg7J2064+ZICovXG5cbi5sb2dpbi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgQGluY2x1ZGUgZm9udCgxNSk7XG4gICAgY29sb3I6IHZhcigtLW4tNjAwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmxvZ2luLWxpbmtzLXNlcCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tMzAwKTtcbn1cblxuLyog66Gc6re47J24IOuyhO2KvCDrnbzrsqgg4oCUIOq4sOuzuCAn66Gc6re47J24JyAvIE9UUCDri6jqs4QgJ09UUCDsnbjspp3rsojtmLgg66Gc6re47J24JyAqL1xuLmxvZ2luLXN1Ym1pdC1sYWJlbC1vdHAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiDsg4Htg5zrs4Qg64W47LacICovXG4vKiBPVFAg64uo6rOEIOKAlCDsnbjspp3rsojtmLgg7ZaJIOuFuOy2nCArIOuyhO2KvCDrnbzrsqgg6rWQ7LK0ICsgSUTCt+u5hOuwgOuyiO2YuCDsnqDquIgo6rCc67CcIOyXsOuPmSDsi5wgZGlzYWJsZWQg67aA7JesKSAqL1xuLmxvZ2luLWZvcm0uaXMtb3RwLXNlbnQge1xuICAubG9naW4tb3RwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLmxvZ2luLXN1Ym1pdC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubG9naW4tc3VibWl0LWxhYmVsLW90cCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG5cbiAgLmxvZ2luLWZpZWxkcyA+IC5pbnB1dCxcbiAgLmxvZ2luLXB3IC5pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbi0xMDApOyAvLyBGaWdtYSDsnoXroKXsmYTro4wo7J6g6riIKSDsg4Htg5xcbiAgICBib3JkZXItY29sb3I6IHZhcigtLW4tMjAwKTtcbiAgfVxufVxuXG4vKiDroZzqt7jsnbgg7Iuk7YyoIOyLnCDsl5Drn6wg66mU7Iuc7KeAIOuFuOy2nCAo6rCc67CcIOyXsOuPmSkgKi9cbi5sb2dpbi1mb3JtLmlzLWVycm9yIC5sb2dpbi1lcnJvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIOuhnOq3uOyduCDtlIzroZzsmrAg7Yyd7JeFICjqs7XthrUgLm1vZGFsLSog7J2AIF9tb2RhbC5zY3NzLiDsl6zquLDshKAg7Y+87ZiVIOuzgO2YleunjCkgKi9cbi5tb2RhbC1ib3gtLXRlcm1zIHtcbiAgd2lkdGg6IDY5MHB4OyAvLyBGaWdtYSDslb3qtIAg7Yyd7JeFIDY5MFxufVxuXG4ubW9kYWwtYm94LS1wdyB7XG4gIHdpZHRoOiA4MDBweDsgLy8gRmlnbWEgSUTCt+u5hOuwgOuyiO2YuCDrs4Dqsr0gODAwXG59XG5cbi8qIO2PvO2YlSDrsJTrlJQ6IO2RnOykgCjqsIDsmrTrjbDCt21pbjE1MCkg64yA7IugIOyijOy4ocK37IOB64uoIOygleugrCArIO2PvCDihpQg7ZmV7J24IGdhcCAzMCAqL1xuLm1vZGFsLWJveC0tdGVybXMgLm1vZGFsLWJvZHksXG4ubW9kYWwtYm94LS1wdyAubW9kYWwtYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyAvLyDtkZzspIAg6rCA7Jq0642w7KCV66CsIO2VtOygnFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMzBweDtcbiAgbWluLWhlaWdodDogMDtcbiAgcGFkZGluZzogMzBweCAyMHB4IDIwcHg7IC8vIEZpZ21hIHB0MzAgcGIyMCBweDIwXG59XG5cbi50ZXJtcy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAzMHB4O1xufVxuXG4udGVybXMtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEwcHg7XG59XG5cbi8qIOyVveq0gCDrs7jrrLgg67CV7IqkIOKAlCDqs6DsoJXrhpLsnbQgKyBGaWdtYSDsiqTtgazroaTrsJQo7Jqw7LihIOuwmO2IrOuqhSDrnbzsmrTrk5wsIDhweCDsnbjshYspICovXG4udGVybXMtdGV4dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTkwcHg7IC8vIEZpZ21hIO2FjeyKpO2KuCAxNTAgKyDsg4HtlZggcGFkZGluZyAyMFxuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDsgLy8g7Iqk7YGs66GkIOyasOy4oSA4IOyduOyFi1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tNDApO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogNXB4O1xuICB9XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBtYXJnaW46IDhweCAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCAwIDAgLyAyMCUpOyAvLyBGaWdtYSBzY3JvbGwgcmdiYSgwLDAsMCwwLjIpIOKAlCDthqDtgbAg7JeG7J2MXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxufVxuXG4udGVybXMtdGV4dC1ib2R5IHtcbiAgbWluLWhlaWdodDogMjEwcHg7IC8vIOynp+ydgCDrrLjqtazsl6zrj4Qg7Iqk7YGs66GkIOuFuOy2nFxuICBAaW5jbHVkZSBmb250KDE0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gIGNvbG9yOiAjNjE2MTYxOyAvLyDthqDtgbAg7JeG64qUIEZpZ21hIOygle2ZleqwklxufVxuXG4vKiDroZzqt7jsnbgg7ZSM66Gc7JqwIOyytO2BrCDtlokgZ2FwIDUgKOy7tO2PrOuEjO2KuCDquLDrs7ggOCDihpIgRmlnbWEgNS4g7IOJ7J2AIOyVhOuemCDrhKTsnbTruYQg7Jik67KE65287J2065OcKSAqL1xuLmxvZ2luLXJlbWVtYmVyLFxuLnRlcm1zLWNoZWNrIHtcbiAgZ2FwOiA1cHg7XG59XG5cbi8qIOuhnOq3uOyduCDtlIzroZzsmrAg7LK07YGs67CV7IqkID0g64Sk7J2067mEKERCLTcwMCkg4oCUIOy7tO2PrOuEjO2KuCDquLDrs7goUHJpbWFyeSnsnYQg66Gc6re47J24IO2GpOyXkCDrp57strAg7Jik67KE65287J2065OcICovXG4ubG9naW4tcmVtZW1iZXIuY2hlY2s6bm90KC5jaGVjay0tcmFkaW8pIGlucHV0OmNoZWNrZWQgfiAuY2hlY2stYm94LFxuLnRlcm1zLWNoZWNrLmNoZWNrOm5vdCguY2hlY2stLXJhZGlvKSBpbnB1dDpjaGVja2VkIH4gLmNoZWNrLWJveCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZGItNzAwKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZGItNzAwKTtcbn1cblxuLyogSUTCt+u5hOuwgOuyiO2YuCDrs4Dqsr0g7Yyd7JeFICg4MDAsIDLri6gpIOKAlCDtj63snYAg7JyEIC5tb2RhbC1ib3gtLXB3ICovXG4ucHctZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMjBweDsgLy8gRmlnbWEg7Lus65+8IOqwhOqyqVxuICB3aWR0aDogMTAwJTtcbn1cblxuLnB3LWNvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4td2lkdGg6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMzBweDsgLy8gRmlnbWEgVGl0bGUrVGV4dCDihpQg7J6F66Cl66y27J2MIDMwXG59XG5cbi5wdy1kaXZpZGVyIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tMTAwKTtcbn1cblxuLnB3LWhlYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDZweDsgLy8gRmlnbWFcbn1cblxuLnB3LWNvbC10aXRsZSB7XG4gIEBpbmNsdWRlIGZvbnQoMTYpO1xuICBmb250LXdlaWdodDogdmFyKC0tZnctYm9sZCk7XG4gIGNvbG9yOiB2YXIoLS1uLTkwMCk7XG59XG5cbi5wdy1kZXNjIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaXN0LXN0eWxlOiBkaXNjO1xuICBAaW5jbHVkZSBmb250KDEzKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gIGNvbG9yOiAjNjE2MTYxOyAvLyDthqDtgbAg7JeG64qUIEZpZ21hIOygle2ZleqwklxufVxuXG4ucHctZmllbGRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxNnB4OyAvLyBGaWdtYVxuICBwYWRkaW5nLXRvcDogNHB4OyAvLyBGaWdtYSBwdDRcbn1cblxuLmZpZWxkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA2cHg7XG59XG5cbi5maWVsZC1sYWJlbCB7XG4gIEBpbmNsdWRlIGZvbnQoMTQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZnctc2VtaWJvbGQpO1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuXG4uZmllbGQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA2cHg7XG5cbiAgLmlucHV0IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAuYnRuIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBoZWlnaHQ6IDQ0cHg7IC8vIOyeheugpSg0NCnqs7wg7KCV66CsXG4gIH1cbn1cblxuLyog7J296riw7KCE7JqpIO2VhOuTnCjtmITsnqwgSUTCt+2YhOyerCDruYTrsIDrsojtmLgpIOKAlCBGaWdtYTog7Z2w7IOJIOuwsOqyvSAqL1xuLmZpZWxkIC5pbnB1dFtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4vKiDruYTrsIDrsojtmLgg67OA6rK9IOyYpOulmCDrqZTsi5zsp4Ag4oCUIOq4sOuzuCDsiKjquYAsIOqygOymnSDsi6TtjKgg7IucIOuFuOy2nCjqsJzrsJwg7Jew64+ZKSAqL1xuLnB3LWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAycHg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXItMTAwKTtcblxuICAuaWNvIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgQGluY2x1ZGUgZm9udCgxMyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW1lZGl1bSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBTQ1NTIOuzgOyImCAo7Jew7IKwL+uvueyKpOyduOyaqSkg4oCUIENTUyDstpzroKUg7JeG7J2MLiDslrTrlJTshJzrk6AgQHVzZSDtlbTrj4Qg7KSR67O1IOyDneyEsSDslYgg65CoLlxuICogKENTUyBjdXN0b20gcHJvcGVydGllcyg6cm9vdCnripQgX3Rva2Vucy5zY3NzIOyXkOyEnCDstpzroKUuKVxuICovXG5cbi8qIOugiOydtOyVhOybgyDtj60gKFBDIOyghOyaqSkgKi9cbiRzY3JlZW4tbWF4OiAxOTIwcHg7IC8vIOyngOybkCDstZzrjIAg7ZW07IOB64+EXG4kY29udGVudC13aWR0aDogMTIwMHB4OyAvLyBb7YOA7J6FIEFdIOykkeyVmSDsoJXroKwg7L2Y7YWQ7LigIO2PrSAoMTM2OCDsoITsl63soITtmZjsnYAg7YyAIOyhsOycqCDtm4QpXG4kc2lkZWJhci13aWR0aDogMjcwcHg7IC8vIFvtg4DsnoUgQl0g7KKM7LihIExOQiAtIO2OvOy5qFxuJHNpZGViYXItd2lkdGgtY29sbGFwc2VkOiA2NnB4OyAvLyBb7YOA7J6FIEJdIOyijOy4oSBMTkIgLSDsoJHtnphcbiRncmlkLWd1dHRlcjogMjBweDtcbiRoZWFkZXItaGVpZ2h0OiA3MHB4OyAvLyDqs6DsoJUgR05CIO2XpOuNlCDrhpLsnbQgKOuzuOusuCDsmKTtlITshYvqs7wg64+Z7J28KVxuJGZvb3Rlci1oZWlnaHQ6IDYwcHg7IC8vIOyKpO2LsO2CpO2Si+2EsCDqs4TsgrDsmqkgKExOQiBtaW4taGVpZ2h0IOyXkOyEnCDsoJzsmbgpXG4kei1oZWFkZXI6IDEwMDtcblxuLyoqXG4gKiDtg4DsnbTtj6wg7Iqk7LyA7J28ICjri6jsnbwg7IaM7IqkKSDigJQgQEd1aWRlX1R5cG9ncmFwaHkg6riw7KSALiBrZXkgPSBmb250LXNpemUocHgpLlxuICog7Jes6riw66eMIOqzoOy5mOuptCBmb250KCkg66+57Iqk7J246rO8IC0tZnMtKiAvIC0tbGgtKiDthqDtgbDsnbQg7ZWo6ruYIOqwseyLoOuQqC5cbiAqL1xuJGZvbnQtc2NhbGU6IChcbiAgMzI6IChcbiAgICBzaXplOiAzMnB4LFxuICAgIGxpbmUtaGVpZ2h0OiA0NHB4LFxuICApLFxuICAyODogKFxuICAgIHNpemU6IDI4cHgsXG4gICAgbGluZS1oZWlnaHQ6IDQwcHgsXG4gICksXG4gIDI0OiAoXG4gICAgc2l6ZTogMjRweCxcbiAgICBsaW5lLWhlaWdodDogMzZweCxcbiAgKSxcbiAgMjA6IChcbiAgICBzaXplOiAyMHB4LFxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4LFxuICApLFxuICAxODogKFxuICAgIHNpemU6IDE4cHgsXG4gICAgbGluZS1oZWlnaHQ6IDI4cHgsXG4gICksXG4gIDE2OiAoXG4gICAgc2l6ZTogMTZweCxcbiAgICBsaW5lLWhlaWdodDogMjRweCxcbiAgKSxcbiAgMTU6IChcbiAgICBzaXplOiAxNXB4LFxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4LFxuICApLFxuICAxNDogKFxuICAgIHNpemU6IDE0cHgsXG4gICAgbGluZS1oZWlnaHQ6IDIwcHgsXG4gICksXG4gIDEzOiAoXG4gICAgc2l6ZTogMTNweCxcbiAgICBsaW5lLWhlaWdodDogMjBweCxcbiAgKSxcbiAgMTI6IChcbiAgICBzaXplOiAxMnB4LFxuICAgIGxpbmUtaGVpZ2h0OiAxOHB4LFxuICApLFxuKTtcbiIsIi8qKlxuICog6rO17JqpIOuvueyKpOyduCDigJQgYEB1c2UgJy4uL2NvbW1vbi9taXhpbnMnIGFzICo7YFxuICovXG5AdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCJ2YXJpYWJsZXNcIiBhcyAqO1xuXG4vKipcbiAqIO2DgOydtO2PrCDsiqTsvIDsnbwg7KCB7JqpKHNpemUgKyBsaW5lLWhlaWdodCDtlZwg7IyNKS4g7JiIOiBgQGluY2x1ZGUgZm9udCgyMCk7YFxuICogd2VpZ2h064qUIOuzhOuPhChgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LWJvbGQpO2ApLiDtl4jsmqkg7YKk64qUICRmb250LXNjYWxlLlxuICovXG5AbWl4aW4gZm9udCgkc2l6ZSkge1xuICBAaWYgbm90IG1hcC5oYXMta2V5KCRmb250LXNjYWxlLCAkc2l6ZSkge1xuICAgIEBlcnJvciBcImZvbnQoI3skc2l6ZX0pIOKAlCDsoJXsnZjrkJjsp4Ag7JWK7J2AIO2DgOydtO2PrCDsgqzsnbTspoguIO2XiOyaqTogI3ttYXAua2V5cygkZm9udC1zY2FsZSl9XCI7XG4gIH1cbiAgJHQ6IG1hcC5nZXQoJGZvbnQtc2NhbGUsICRzaXplKTtcbiAgZm9udC1zaXplOiBtYXAuZ2V0KCR0LCBzaXplKTtcbiAgbGluZS1oZWlnaHQ6IG1hcC5nZXQoJHQsIGxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHJlc3BvbmQtdXAoJGJwKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkYnApIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uZC1kb3duKCRicCkge1xuICBAbWVkaWEgKG1heC13aWR0aDogKCRicCAtIDAuMDJweCkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZWxsaXBzaXMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuQG1peGluIGVsbGlwc2lzLW11bHRpKCRsaW5lOiAyKSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIl19 */
