@charset "UTF-8";
/**
 * pages/guide — 퍼블리싱 스타일 가이드(좌측 GNB + 페이지 분리) 공통 스타일.
 * 모든 guide/*.html 공유. head { "css": "guide" }.
 */
/**
 * SCSS 변수 (연산/믹스인용) — CSS 출력 없음(어디서 @use 해도 중복 없음).
 * :root 토큰은 _tokens.scss 에서 출력.
 */
/* 레이아웃 폭 (PC 전용) */
/**
 * 타이포 스케일 (단일 소스) — @Guide_Typography 기준. key = font-size(px).
 * 여기만 고치면 font() 믹스인과 --fs-* / --lh-* 토큰이 함께 갱신됨.
 */
/* 네비게이션 키 — data-guide / data-key 매칭으로 active 표시 */
.guide-layout {
  display: flex;
  align-items: flex-start;
  gap: 32px;
}

.guide-nav {
  position: sticky;
  top: 24px;
  flex: 0 0 180px;
}
.guide-nav__title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--n-500);
}
.guide-nav ul {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.guide-nav a {
  display: block;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 14px;
  color: var(--n-600);
}
.guide-nav a:hover {
  background: var(--n-50);
  color: var(--n-900);
}

/* active — data-guide=KEY 와 a[data-key=KEY] 일치 시 */
.guide-layout[data-guide=title] .guide-nav a[data-key=title] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=input] .guide-nav a[data-key=input] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=button] .guide-nav a[data-key=button] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=popup] .guide-nav a[data-key=popup] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=check] .guide-nav a[data-key=check] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=icon] .guide-nav a[data-key=icon] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=nav] .guide-nav a[data-key=nav] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=gnb] .guide-nav a[data-key=gnb] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=select] .guide-nav a[data-key=select] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=table] .guide-nav a[data-key=table] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=datepicker] .guide-nav a[data-key=datepicker] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=badge] .guide-nav a[data-key=badge] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=breadcrumb] .guide-nav a[data-key=breadcrumb] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=menu] .guide-nav a[data-key=menu] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=footer] .guide-nav a[data-key=footer] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=tooltip] .guide-nav a[data-key=tooltip] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-layout[data-guide=etc] .guide-nav a[data-key=etc] {
  background: var(--color-bg-tranparent);
  color: var(--color-point);
  font-weight: 600;
}

.guide-main {
  flex: 1 1 auto;
  min-width: 0;
}

.guide-lead {
  margin: -12px 0 4px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--n-600);
}
.guide-lead strong {
  font-weight: 700;
  color: var(--n-900);
}

/* 안내문구 둘 이상일 때 — 음수 상단마진 대신 간격(겹침 방지) */
.guide-lead + .guide-lead {
  margin-top: 8px;
}

.guide-section {
  margin-top: 40px;
}

.guide-section:first-of-type {
  margin-top: 24px;
}

.guide-h {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 8px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--n-900);
}
.guide-h h3 {
  font-size: 22px;
  font-weight: 700;
  color: var(--n-900);
}
.guide-h span {
  font-size: 14px;
  color: var(--n-500);
}

.guide-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: flex-end;
}

.guide-cell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.guide-state {
  font-size: 12px;
  color: var(--n-500);
}

.guide-field {
  width: 280px;
}

.guide-field--sm {
  width: 200px;
}

.gd-item {
  margin-top: 20px;
  border: 1px solid var(--n-200);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.gd-item__head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--n-100);
}

.gd-item__title {
  font-size: 15px;
  font-weight: 600;
  color: var(--n-900);
}

.gd-item__desc {
  font-size: 13px;
  color: var(--n-500);
}

.gd-item__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
}

.gd-code {
  position: relative;
  margin: 0;
  padding: 18px;
  background: #1e1f23;
  overflow: auto;
}
.gd-code pre {
  margin: 0;
}
.gd-code code {
  display: block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
  line-height: 1.7;
  color: #e6e6ea;
  white-space: pre;
  tab-size: 2;
}

.gd-copy {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 10px;
  border: 0;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  font-size: 12px;
  cursor: pointer;
  transition: background 0.15s;
}
.gd-copy:hover {
  background: rgba(255, 255, 255, 0.22);
}
.gd-copy.is-copied {
  background: var(--g-600);
}

.gd-preview {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
  background: var(--n-50);
  border-left: 1px solid var(--n-100);
}

/* 툴팁 데모 — 꼬리(beak)가 상/하로 6px 삐져나오므로 세로 여백 확보 */
.guide-tooltip-demo {
  display: flex;
  justify-content: center;
  padding: 16px 0;
}

/* GNB 가이드 — 전체폭 헤더라 코드 위·프리뷰 아래 1단.
   minmax(0,1fr)로 트랙을 가둬야 래퍼(.gd-gnb)가 좌우 스크롤(표 가이드와 동일 패턴) */
.gd-item--gnb .gd-item__body {
  grid-template-columns: minmax(0, 1fr);
}

.gd-item--gnb .gd-preview {
  min-width: 0;
}

/* Data Table 가이드 — 표가 넓어 2단이면 잘림. 1단 minmax(0,1fr)로 트랙을 가둬야
   래퍼가 폭을 잡고 좌우 스크롤이 걸린다. */
.gd-item--table .gd-item__body {
  grid-template-columns: minmax(0, 1fr);
}

.gd-item--table .gd-preview {
  min-width: 0;
}

/* Badge 가이드: 프리뷰 1열·흰 배경·가로 wrap (OP 가이드와 통일) */
.guide-layout[data-guide=badge] .gd-item__body {
  grid-template-columns: minmax(0, 1fr);
}
.guide-layout[data-guide=badge] .gd-preview {
  flex-flow: row wrap;
  gap: 28px;
  background: #fff;
  border-left: 0;
  border-top: 1px solid var(--n-100);
}
.guide-layout[data-guide=badge] .guide-cell {
  align-items: center;
}

.gd-tablewrap {
  width: 100%;
  overflow-x: auto;
  /* 목록 테이블(고정열)은 자연폭 유지 → 넘치면 래퍼가 좌우 스크롤 */
}
.gd-tablewrap .table {
  width: max-content;
  max-width: none;
}

/* 프리뷰 안에서는 고정 헤더를 static 으로 눕힘(박스 밖으로 안 튀게).
   전체폭 GNB라 콘텐츠가 프리뷰보다 넓으면 래퍼가 좌우 스크롤 → 우측 끝(로그아웃)까지 확인 */
.gd-gnb {
  overflow-x: auto;
}
.gd-gnb .header {
  position: static;
  width: max-content;
  min-width: 100%;
  border: 1px solid var(--n-100);
  border-radius: 8px;
}
.gd-gnb .header-inner {
  width: max-content;
  min-width: 100%;
  max-width: none;
  gap: 40px;
  /* 실제 헤더는 .header-inner-center 가 absolute 중앙정렬(고정폭+space-between) → 프리뷰
     (max-content 래퍼)에선 흐름에서 빠지거나 폭이 벌어져 정보영역이 밀려난다. 가이드 한정으로
     흐름 배치·자연폭·간격으로 바꿔 한 줄에 전부 노출(우측 끝 로그아웃까지 좌우 스크롤로 확인).
     (_header 의 .header .header-inner .header-inner-center 특이도를 이기려 여기 중첩) */
}
.gd-gnb .header-inner .header-inner-center {
  position: static;
  flex: 0 0 auto;
  width: max-content;
  margin: 0;
  gap: 40px;
}

/* Footer 가이드 — 전체폭 컴포넌트라 코드 위·프리뷰 아래 1단 */
.gd-item--footer .gd-item__body {
  grid-template-columns: 1fr;
}

/* Footer 프리뷰 — .footer .inner 는 고정폭이라 프리뷰 폭에 맞춰 100%로 */
.gd-footer {
  overflow-x: auto;
}
.gd-footer .footer .inner {
  width: 100%;
}

/* Etc 가이드(OTP 메일·시스템 점검) — 전체폭 템플릿이라 1단 · 프리뷰 가운데 정렬 */
.gd-item--etc .gd-item__body {
  grid-template-columns: minmax(0, 1fr);
}

.gd-item--etc .gd-preview {
  min-width: 0;
  align-items: center;
}

.icon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 1px;
  padding: 1px;
  background: var(--n-100);
}

.icon-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 22px 12px;
  background: #fff;
  color: var(--n-900);
}
.icon-cell span {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12px;
  color: var(--n-500);
}

.icon-demo {
  display: flex;
  align-items: center;
  gap: 18px;
}
.icon-demo .ico {
  color: var(--n-900);
}
.icon-demo .on-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: var(--color-point);
  color: #fff;
}

/* hover 상태 시연용(가이드 한정) — 정적 페이지에서 :hover 외관을 보여주는 강제 클래스 */
.input.is-hover {
  border-color: var(--p-400);
}

.input.is-focus,
.select.is-focus,
.textarea.is-focus {
  border-color: var(--color-point);
}

.select.is-hover,
.select-trigger.is-hover {
  border-color: var(--p-400);
}

.tab-item.is-hover {
  background: var(--n-50);
}

.btn-primary.is-hover {
  background: var(--p-700);
}

.btn-secondary.is-hover {
  background: var(--p-200);
}

.btn-line.is-hover,
.btn-round.is-hover {
  background: var(--n-50);
}

.btn-fill.is-hover {
  background: var(--n-900);
}

.btn-tertiary.is-hover {
  background: var(--n-100);
}

.btn-filter--search.is-hover {
  background: var(--p-700);
}

.btn-filter--excel.is-hover {
  background: var(--g-50);
}

.btn-text.is-hover {
  text-decoration: underline;
}

.btn-light.is-hover {
  background: var(--n-50);
}

.btn-text-line.is-hover {
  color: var(--n-700);
}

.guide-col {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-start;
}

/* 폭 440 고정 데모(모서리 라운딩 확인용) */
.guide-col--440 > * {
  width: 440px;
  max-width: 100%;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhZ2VzL2d1aWRlLmNzcyIsInBhZ2VzL2d1aWRlLnNjc3MiLCJjb21tb24vX3ZhcmlhYmxlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjs7O0VBQUE7QUNGQTs7O0VBQUE7QUFLQSxtQkFBQTtBQVVBOzs7RUFBQTtBRFBBLG1EQUFBO0FBS0E7RUFDRSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxTQUFBO0FER0Y7O0FDQUE7RUFDRSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0FER0Y7QUNERTtFQUNFLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0FER0o7QUNBRTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFFBQUE7QURFSjtBQ0NFO0VBQ0UsY0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7QURDSjtBQ0NJO0VBQ0UsdUJBQUE7RUFDQSxtQkFBQTtBRENOOztBQ0lBLG1EQUFBO0FBRUU7RUFDRSxzQ0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7QURGSjs7QUNERTtFQUNFLHNDQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtBRElKOztBQ1BFO0VBQ0Usc0NBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0FEVUo7O0FDYkU7RUFDRSxzQ0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7QURnQko7O0FDbkJFO0VBQ0Usc0NBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0FEc0JKOztBQ3pCRTtFQUNFLHNDQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtBRDRCSjs7QUMvQkU7RUFDRSxzQ0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7QURrQ0o7O0FDckNFO0VBQ0Usc0NBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0FEd0NKOztBQzNDRTtFQUNFLHNDQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtBRDhDSjs7QUNqREU7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Rko7O0FDeEZBLDJEQUFBO0FBQ0E7RUFDRSwwQkFBQTtBRDJGRjs7QUN6RkE7OztFQUdFLGdDQUFBO0FENEZGOztBQzFGQTs7RUFFRSwwQkFBQTtBRDZGRjs7QUMzRkE7RUFDRSx1QkFBQTtBRDhGRjs7QUMzRkE7RUFDRSx3QkFBQTtBRDhGRjs7QUM1RkE7RUFDRSx3QkFBQTtBRCtGRjs7QUM3RkE7O0VBRUUsdUJBQUE7QURnR0Y7O0FDOUZBO0VBQ0Usd0JBQUE7QURpR0Y7O0FDL0ZBO0VBQ0Usd0JBQUE7QURrR0Y7O0FDaEdBO0VBQ0Usd0JBQUE7QURtR0Y7O0FDakdBO0VBQ0UsdUJBQUE7QURvR0Y7O0FDbEdBO0VBQ0UsMEJBQUE7QURxR0Y7O0FDbkdBO0VBQ0UsdUJBQUE7QURzR0Y7O0FDcEdBO0VBQ0UsbUJBQUE7QUR1R0Y7O0FDcEdBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsU0FBQTtFQUNBLHVCQUFBO0FEdUdGOztBQ3JHQSw2QkFBQTtBQUNBO0VBQ0UsWUFBQTtFQUNBLGVBQUE7QUR3R0YiLCJmaWxlIjoicGFnZXMvZ3VpZGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBwYWdlcy9ndWlkZSDigJQg7Y2867iU66as7IuxIOyKpO2DgOydvCDqsIDsnbTrk5wo7KKM7LihIEdOQiArIO2OmOydtOyngCDrtoTrpqwpIOqzte2GtSDsiqTtg4DsnbwuXG4gKiDrqqjrk6AgZ3VpZGUvKi5odG1sIOqzteycoC4gaGVhZCB7IFwiY3NzXCI6IFwiZ3VpZGVcIiB9LlxuICovXG4vKipcbiAqIFNDU1Mg67OA7IiYICjsl7DsgrAv66+57Iqk7J247JqpKSDigJQgQ1NTIOy2nOugpSDsl4bsnYwo7Ja065SU7IScIEB1c2Ug7ZW064+EIOykkeuztSDsl4bsnYwpLlxuICogOnJvb3Qg7Yag7YGw7J2AIF90b2tlbnMuc2NzcyDsl5DshJwg7Lac66ClLlxuICovXG4vKiDroIjsnbTslYTsm4Mg7Y+tIChQQyDsoITsmqkpICovXG4vKipcbiAqIO2DgOydtO2PrCDsiqTsvIDsnbwgKOuLqOydvCDshozsiqQpIOKAlCBAR3VpZGVfVHlwb2dyYXBoeSDquLDspIAuIGtleSA9IGZvbnQtc2l6ZShweCkuXG4gKiDsl6zquLDrp4wg6rOg7LmY66m0IGZvbnQoKSDrr7nsiqTsnbjqs7wgLS1mcy0qIC8gLS1saC0qIO2GoO2BsOydtCDtlajqu5gg6rCx7Iug65CoLlxuICovXG4vKiDrhKTruYTqsozsnbTshZgg7YKkIOKAlCBkYXRhLWd1aWRlIC8gZGF0YS1rZXkg66ek7Lmt7Jy866GcIGFjdGl2ZSDtkZzsi5wgKi9cbi5ndWlkZS1sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAzMnB4O1xufVxuXG4uZ3VpZGUtbmF2IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAyNHB4O1xuICBmbGV4OiAwIDAgMTgwcHg7XG59XG4uZ3VpZGUtbmF2X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cbi5ndWlkZS1uYXYgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDJweDtcbn1cbi5ndWlkZS1uYXYgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiB2YXIoLS1uLTYwMCk7XG59XG4uZ3VpZGUtbmF2IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTUwKTtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcbn1cblxuLyogYWN0aXZlIOKAlCBkYXRhLWd1aWRlPUtFWSDsmYAgYVtkYXRhLWtleT1LRVldIOydvOy5mCDsi5wgKi9cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT10aXRsZV0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PXRpdGxlXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9aW5wdXRdIC5ndWlkZS1uYXYgYVtkYXRhLWtleT1pbnB1dF0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy10cmFucGFyZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBvaW50KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPWJ1dHRvbl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWJ1dHRvbl0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy10cmFucGFyZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBvaW50KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPXBvcHVwXSAuZ3VpZGUtbmF2IGFbZGF0YS1rZXk9cG9wdXBdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1jaGVja10gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWNoZWNrXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9aWNvbl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWljb25dIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1uYXZdIC5ndWlkZS1uYXYgYVtkYXRhLWtleT1uYXZdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1nbmJdIC5ndWlkZS1uYXYgYVtkYXRhLWtleT1nbmJdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1zZWxlY3RdIC5ndWlkZS1uYXYgYVtkYXRhLWtleT1zZWxlY3RdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT10YWJsZV0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PXRhYmxlXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9ZGF0ZXBpY2tlcl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWRhdGVwaWNrZXJdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1iYWRnZV0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWJhZGdlXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9YnJlYWRjcnVtYl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWJyZWFkY3J1bWJdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctdHJhbnBhcmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1tZW51XSAuZ3VpZGUtbmF2IGFbZGF0YS1rZXk9bWVudV0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy10cmFucGFyZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBvaW50KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPWZvb3Rlcl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PWZvb3Rlcl0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy10cmFucGFyZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBvaW50KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPXRvb2x0aXBdIC5ndWlkZS1uYXYgYVtkYXRhLWtleT10b29sdGlwXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9ZXRjXSAuZ3VpZGUtbmF2IGFbZGF0YS1rZXk9ZXRjXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcG9pbnQpO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZ3VpZGUtbWFpbiB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5ndWlkZS1sZWFkIHtcbiAgbWFyZ2luOiAtMTJweCAwIDRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogdmFyKC0tbi02MDApO1xufVxuLmd1aWRlLWxlYWQgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcbn1cblxuLyog7JWI64K066y46rWsIOuRmCDsnbTsg4Hsnbwg65WMIOKAlCDsnYzsiJgg7IOB64uo66eI7KeEIOuMgOyLoCDqsITqsqko6rK57LmoIOuwqeyngCkgKi9cbi5ndWlkZS1sZWFkICsgLmd1aWRlLWxlYWQge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5ndWlkZS1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLmd1aWRlLXNlY3Rpb246Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG59XG5cbi5ndWlkZS1oIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBnYXA6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1uLTkwMCk7XG59XG4uZ3VpZGUtaCBoMyB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcbn1cbi5ndWlkZS1oIHNwYW4ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiB2YXIoLS1uLTUwMCk7XG59XG5cbi5ndWlkZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMTZweCAyNHB4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5ndWlkZS1jZWxsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA4cHg7XG59XG5cbi5ndWlkZS1zdGF0ZSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmd1aWRlLWZpZWxkIHtcbiAgd2lkdGg6IDI4MHB4O1xufVxuXG4uZ3VpZGUtZmllbGQtLXNtIHtcbiAgd2lkdGg6IDIwMHB4O1xufVxuXG4uZ2QtaXRlbSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLW4tMjAwKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmdkLWl0ZW1fX2hlYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEwcHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLW4tMTAwKTtcbn1cblxuLmdkLWl0ZW1fX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuXG4uZ2QtaXRlbV9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmdkLWl0ZW1fX2JvZHkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxZnIpO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmdkLWNvZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMThweDtcbiAgYmFja2dyb3VuZDogIzFlMWYyMztcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4uZ2QtY29kZSBwcmUge1xuICBtYXJnaW46IDA7XG59XG4uZ2QtY29kZSBjb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB1aS1tb25vc3BhY2UsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS43O1xuICBjb2xvcjogI2U2ZTZlYTtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgdGFiLXNpemU6IDI7XG59XG5cbi5nZC1jb3B5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cztcbn1cbi5nZC1jb3B5OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIyKTtcbn1cbi5nZC1jb3B5LmlzLWNvcGllZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWctNjAwKTtcbn1cblxuLmdkLXByZXZpZXcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE2cHg7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tNTApO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLW4tMTAwKTtcbn1cblxuLyog7Yi07YyBIOuNsOuqqCDigJQg6rys66asKGJlYWsp6rCAIOyDgS/tlZjroZwgNnB4IOyCkOyguOuCmOyYpOuvgOuhnCDshLjroZwg7Jes67CxIO2ZleuztCAqL1xuLmd1aWRlLXRvb2x0aXAtZGVtbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxNnB4IDA7XG59XG5cbi8qIEdOQiDqsIDsnbTrk5wg4oCUIOyghOyytO2PrSDtl6TrjZTrnbwg7L2U65OcIOychMK37ZSE66as67ewIOyVhOuemCAx64uoLlxuICAgbWlubWF4KDAsMWZyKeuhnCDtirjrnpnsnYQg6rCA65Gs7JW8IOuemO2NvCguZ2QtZ25iKeqwgCDsoozsmrAg7Iqk7YGs66GkKO2RnCDqsIDsnbTrk5zsmYAg64+Z7J28IO2MqO2EtCkgKi9cbi5nZC1pdGVtLS1nbmIgLmdkLWl0ZW1fX2JvZHkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xufVxuXG4uZ2QtaXRlbS0tZ25iIC5nZC1wcmV2aWV3IHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4vKiBEYXRhIFRhYmxlIOqwgOydtOuTnCDigJQg7ZGc6rCAIOuEk+yWtCAy64uo7J2066m0IOyemOumvC4gMeuLqCBtaW5tYXgoMCwxZnIp66GcIO2KuOuemeydhCDqsIDrkazslbxcbiAgIOuemO2NvOqwgCDtj63snYQg7J6h6rOgIOyijOyasCDsiqTtgazroaTsnbQg6rG466aw64ukLiAqL1xuLmdkLWl0ZW0tLXRhYmxlIC5nZC1pdGVtX19ib2R5IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbn1cblxuLmdkLWl0ZW0tLXRhYmxlIC5nZC1wcmV2aWV3IHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4vKiBCYWRnZSDqsIDsnbTrk5w6IO2UhOumrOu3sCAx7Je0wrftnbAg67Cw6rK9wrfqsIDroZwgd3JhcCAoT1Ag6rCA7J2065Oc7JmAIO2GteydvCkgKi9cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1iYWRnZV0gLmdkLWl0ZW1fX2JvZHkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xufVxuLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPWJhZGdlXSAuZ2QtcHJldmlldyB7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGdhcDogMjhweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1uLTEwMCk7XG59XG4uZ3VpZGUtbGF5b3V0W2RhdGEtZ3VpZGU9YmFkZ2VdIC5ndWlkZS1jZWxsIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmdkLXRhYmxld3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAvKiDrqqnroZ0g7YWM7J2067iUKOqzoOygleyXtCnsnYAg7J6Q7Jew7Y+tIOycoOyngCDihpIg64SY7LmY66m0IOuemO2NvOqwgCDsoozsmrAg7Iqk7YGs66GkICovXG59XG4uZ2QtdGFibGV3cmFwIC50YWJsZSB7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKiDtlITrpqzrt7Ag7JWI7JeQ7ISc64qUIOqzoOyglSDtl6TrjZTrpbwgc3RhdGljIOycvOuhnCDriJXtnpgo67CV7IqkIOuwluycvOuhnCDslYgg7YqA6rKMKS5cbiAgIOyghOyytO2PrSBHTkLrnbwg7L2Y7YWQ7Lig6rCAIO2UhOumrOu3sOuztOuLpCDrhJPsnLzrqbQg656Y7Y286rCAIOyijOyasCDsiqTtgazroaQg4oaSIOyasOy4oSDrgZ0o66Gc6re47JWE7JuDKeq5jOyngCDtmZXsnbggKi9cbi5nZC1nbmIge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuLmdkLWduYiAuaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLW4tMTAwKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuLmdkLWduYiAuaGVhZGVyLWlubmVyIHtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgZ2FwOiA0MHB4O1xuICAvKiDsi6TsoJwg7Zek642U64qUIC5oZWFkZXItaW5uZXItY2VudGVyIOqwgCBhYnNvbHV0ZSDspJHslZnsoJXroKwo6rOg7KCV7Y+tK3NwYWNlLWJldHdlZW4pIOKGkiDtlITrpqzrt7BcbiAgICAgKG1heC1jb250ZW50IOuemO2NvCnsl5DshKAg7Z2Q66aE7JeQ7IScIOu5oOyngOqxsOuCmCDtj63snbQg67KM7Ja07KC4IOygleuztOyYgeyXreydtCDrsIDroKTrgpzri6QuIOqwgOydtOuTnCDtlZzsoJXsnLzroZxcbiAgICAg7Z2Q66aEIOuwsOy5mMK37J6Q7Jew7Y+twrfqsITqsqnsnLzroZwg67CU6r+UIO2VnCDspITsl5Ag7KCE67aAIOuFuOy2nCjsmrDsuKEg64GdIOuhnOq3uOyVhOybg+q5jOyngCDsoozsmrAg7Iqk7YGs66Gk66GcIO2ZleyduCkuXG4gICAgIChfaGVhZGVyIOydmCAuaGVhZGVyIC5oZWFkZXItaW5uZXIgLmhlYWRlci1pbm5lci1jZW50ZXIg7Yq57J2064+E66W8IOydtOq4sOugpCDsl6zquLAg7KSR7LKpKSAqL1xufVxuLmdkLWduYiAuaGVhZGVyLWlubmVyIC5oZWFkZXItaW5uZXItY2VudGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWFyZ2luOiAwO1xuICBnYXA6IDQwcHg7XG59XG5cbi8qIEZvb3RlciDqsIDsnbTrk5wg4oCUIOyghOyytO2PrSDsu7Ttj6zrhIztirjrnbwg7L2U65OcIOychMK37ZSE66as67ewIOyVhOuemCAx64uoICovXG4uZ2QtaXRlbS0tZm9vdGVyIC5nZC1pdGVtX19ib2R5IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG59XG5cbi8qIEZvb3RlciDtlITrpqzrt7Ag4oCUIC5mb290ZXIgLmlubmVyIOuKlCDqs6DsoJXtj63snbTrnbwg7ZSE66as67ewIO2PreyXkCDrp57strAgMTAwJeuhnCAqL1xuLmdkLWZvb3RlciB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4uZ2QtZm9vdGVyIC5mb290ZXIgLmlubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEV0YyDqsIDsnbTrk5woT1RQIOuplOydvMK37Iuc7Iqk7YWcIOygkOqygCkg4oCUIOyghOyytO2PrSDthZztlIzrpr/snbTrnbwgMeuLqCDCtyDtlITrpqzrt7Ag6rCA7Jq0642wIOygleugrCAqL1xuLmdkLWl0ZW0tLWV0YyAuZ2QtaXRlbV9fYm9keSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG59XG5cbi5nZC1pdGVtLS1ldGMgLmdkLXByZXZpZXcge1xuICBtaW4td2lkdGg6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5pY29uLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxNTBweCwgMWZyKSk7XG4gIGdhcDogMXB4O1xuICBwYWRkaW5nOiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW4tMTAwKTtcbn1cblxuLmljb24tY2VsbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTJweDtcbiAgcGFkZGluZzogMjJweCAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuLmljb24tY2VsbCBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiB2YXIoLS1uLTUwMCk7XG59XG5cbi5pY29uLWRlbW8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDE4cHg7XG59XG4uaWNvbi1kZW1vIC5pY28ge1xuICBjb2xvcjogdmFyKC0tbi05MDApO1xufVxuLmljb24tZGVtbyAub24tcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBob3ZlciDsg4Htg5wg7Iuc7Jew7JqpKOqwgOydtOuTnCDtlZzsoJUpIOKAlCDsoJXsoIEg7Y6Y7J207KeA7JeQ7IScIDpob3ZlciDsmbjqtIDsnYQg67O07Jes7KO864qUIOqwleygnCDtgbTrnpjsiqQgKi9cbi5pbnB1dC5pcy1ob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcC00MDApO1xufVxuXG4uaW5wdXQuaXMtZm9jdXMsXG4uc2VsZWN0LmlzLWZvY3VzLFxuLnRleHRhcmVhLmlzLWZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG59XG5cbi5zZWxlY3QuaXMtaG92ZXIsXG4uc2VsZWN0LXRyaWdnZXIuaXMtaG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLXAtNDAwKTtcbn1cblxuLnRhYi1pdGVtLmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi01MCk7XG59XG5cbi5idG4tcHJpbWFyeS5pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXAtNzAwKTtcbn1cblxuLmJ0bi1zZWNvbmRhcnkuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wLTIwMCk7XG59XG5cbi5idG4tbGluZS5pcy1ob3Zlcixcbi5idG4tcm91bmQuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTUwKTtcbn1cblxuLmJ0bi1maWxsLmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi05MDApO1xufVxuXG4uYnRuLXRlcnRpYXJ5LmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi0xMDApO1xufVxuXG4uYnRuLWZpbHRlci0tc2VhcmNoLmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcC03MDApO1xufVxuXG4uYnRuLWZpbHRlci0tZXhjZWwuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nLTUwKTtcbn1cblxuLmJ0bi10ZXh0LmlzLWhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5idG4tbGlnaHQuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTUwKTtcbn1cblxuLmJ0bi10ZXh0LWxpbmUuaXMtaG92ZXIge1xuICBjb2xvcjogdmFyKC0tbi03MDApO1xufVxuXG4uZ3VpZGUtY29sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLyog7Y+tIDQ0MCDqs6DsoJUg642w66qoKOuqqOyEnOumrCDrnbzsmrTrlKkg7ZmV7J247JqpKSAqL1xuLmd1aWRlLWNvbC0tNDQwID4gKiB7XG4gIHdpZHRoOiA0NDBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLyoqXG4gKiBwYWdlcy9ndWlkZSDigJQg7Y2867iU66as7IuxIOyKpO2DgOydvCDqsIDsnbTrk5wo7KKM7LihIEdOQiArIO2OmOydtOyngCDrtoTrpqwpIOqzte2GtSDsiqTtg4DsnbwuXG4gKiDrqqjrk6AgZ3VpZGUvKi5odG1sIOqzteycoC4gaGVhZCB7IFwiY3NzXCI6IFwiZ3VpZGVcIiB9LlxuICovXG5AdXNlIFwiLi4vY29tbW9uL3ZhcmlhYmxlc1wiIGFzICo7XG5cbi8qIOuEpOu5hOqyjOydtOyFmCDtgqQg4oCUIGRhdGEtZ3VpZGUgLyBkYXRhLWtleSDrp6Tsua3snLzroZwgYWN0aXZlIO2RnOyLnCAqL1xuLy8gcHJldHRpZXItaWdub3JlXG4kZ3VpZGUta2V5czogdGl0bGUsIGlucHV0LCBidXR0b24sIHBvcHVwLCBjaGVjaywgaWNvbiwgbmF2LCBnbmIsIHNlbGVjdCwgdGFibGUsIGRhdGVwaWNrZXIsIGJhZGdlLFxuICBicmVhZGNydW1iLCBtZW51LCBmb290ZXIsIHRvb2x0aXAsIGV0YztcblxuLmd1aWRlLWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDMycHg7XG59XG5cbi5ndWlkZS1uYXYge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDI0cHg7XG4gIGZsZXg6IDAgMCAxODBweDtcblxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLW4tNTAwKTtcbiAgfVxuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAycHg7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiB2YXIoLS1uLTYwMCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW4tNTApO1xuICAgICAgY29sb3I6IHZhcigtLW4tOTAwKTtcbiAgICB9XG4gIH1cbn1cblxuLyogYWN0aXZlIOKAlCBkYXRhLWd1aWRlPUtFWSDsmYAgYVtkYXRhLWtleT1LRVldIOydvOy5mCDsi5wgKi9cbkBlYWNoICRrIGluICRndWlkZS1rZXlzIHtcbiAgLmd1aWRlLWxheW91dFtkYXRhLWd1aWRlPVwiI3ska31cIl0gLmd1aWRlLW5hdiBhW2RhdGEta2V5PVwiI3ska31cIl0ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLXRyYW5wYXJlbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4uZ3VpZGUtbWFpbiB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5ndWlkZS1sZWFkIHtcbiAgbWFyZ2luOiAtMTJweCAwIDRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogdmFyKC0tbi02MDApO1xuXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogdmFyKC0tbi05MDApO1xuICB9XG59XG5cbi8qIOyViOuCtOusuOq1rCDrkZgg7J207IOB7J28IOuVjCDigJQg7J2M7IiYIOyDgeuLqOuniOynhCDrjIDsi6Ag6rCE6rKpKOqyuey5qCDrsKnsp4ApICovXG4uZ3VpZGUtbGVhZCArIC5ndWlkZS1sZWFkIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4uZ3VpZGUtc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4uZ3VpZGUtc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLmd1aWRlLWgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLW4tOTAwKTtcblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IHZhcigtLW4tOTAwKTtcbiAgfVxuICBzcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6IHZhcigtLW4tNTAwKTtcbiAgfVxufVxuXG4uZ3VpZGUtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDE2cHggMjRweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuLmd1aWRlLWNlbGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDhweDtcbn1cbi5ndWlkZS1zdGF0ZSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmd1aWRlLWZpZWxkIHtcbiAgd2lkdGg6IDI4MHB4O1xufVxuLmd1aWRlLWZpZWxkLS1zbSB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLmdkLWl0ZW0ge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1uLTIwMCk7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5nZC1pdGVtX19oZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1uLTEwMCk7XG59XG4uZ2QtaXRlbV9fdGl0bGUge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1uLTkwMCk7XG59XG4uZ2QtaXRlbV9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IHZhcigtLW4tNTAwKTtcbn1cblxuLmdkLWl0ZW1fX2JvZHkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxZnIpO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmdkLWNvZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMThweDtcbiAgYmFja2dyb3VuZDogIzFlMWYyMztcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgcHJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgY29kZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIGNvbG9yOiAjZTZlNmVhO1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgdGFiLXNpemU6IDI7XG4gIH1cbn1cblxuLmdkLWNvcHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSAyNTUgMjU1IC8gMTIlKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYigyNTUgMjU1IDI1NSAvIDIyJSk7XG4gIH1cbiAgJi5pcy1jb3BpZWQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWctNjAwKTtcbiAgfVxufVxuXG4uZ2QtcHJldmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTZweDtcbiAgcGFkZGluZzogMjRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi01MCk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tbi0xMDApO1xufVxuXG4vKiDtiLTtjIEg642w66qoIOKAlCDqvKzrpqwoYmVhaynqsIAg7IOBL+2VmOuhnCA2cHgg7IKQ7KC464KY7Jik66+A66GcIOyEuOuhnCDsl6zrsLEg7ZmV67O0ICovXG4uZ3VpZGUtdG9vbHRpcC1kZW1vIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE2cHggMDtcbn1cblxuLyogR05CIOqwgOydtOuTnCDigJQg7KCE7LK07Y+tIO2XpOuNlOudvCDsvZTrk5wg7JyEwrftlITrpqzrt7Ag7JWE656YIDHri6guXG4gICBtaW5tYXgoMCwxZnIp66GcIO2KuOuemeydhCDqsIDrkazslbwg656Y7Y28KC5nZC1nbmIp6rCAIOyijOyasCDsiqTtgazroaQo7ZGcIOqwgOydtOuTnOyZgCDrj5nsnbwg7Yyo7YS0KSAqL1xuLmdkLWl0ZW0tLWduYiAuZ2QtaXRlbV9fYm9keSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG59XG4uZ2QtaXRlbS0tZ25iIC5nZC1wcmV2aWV3IHtcbiAgbWluLXdpZHRoOiAwOyAvLyDtlITrpqzrt7DqsIAg7Yq4656Z67O064ukIOy7pOyngOyngCDslYrqsowg4oaSIOuCtOu2gCDtl6TrjZTqsIAg7Iqk7YGs66GkXG59XG5cbi8qIERhdGEgVGFibGUg6rCA7J2065OcIOKAlCDtkZzqsIAg64ST7Ja0IDLri6jsnbTrqbQg7J6Y66a8LiAx64uoIG1pbm1heCgwLDFmcinroZwg7Yq4656Z7J2EIOqwgOuRrOyVvFxuICAg656Y7Y286rCAIO2PreydhCDsnqHqs6Ag7KKM7JqwIOyKpO2BrOuhpOydtCDqsbjrprDri6QuICovXG4uZ2QtaXRlbS0tdGFibGUgLmdkLWl0ZW1fX2JvZHkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xufVxuLmdkLWl0ZW0tLXRhYmxlIC5nZC1wcmV2aWV3IHtcbiAgbWluLXdpZHRoOiAwOyAvLyDqt7jrpqzrk5wg7JWE7J207YWc7J20IO2KuOuemeuztOuLpCDsu6Tsp4Dsp4Ag7JWK6rKMKOuCtOu2gCDrnpjtjbzqsIAg7Iqk7YGs66GkKVxufVxuXG4vKiBCYWRnZSDqsIDsnbTrk5w6IO2UhOumrOu3sCAx7Je0wrftnbAg67Cw6rK9wrfqsIDroZwgd3JhcCAoT1Ag6rCA7J2065Oc7JmAIO2GteydvCkgKi9cbi5ndWlkZS1sYXlvdXRbZGF0YS1ndWlkZT1cImJhZGdlXCJdIHtcbiAgLmdkLWl0ZW1fX2JvZHkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gIH1cbiAgLmdkLXByZXZpZXcge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZ2FwOiAyOHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLW4tMTAwKTtcbiAgfVxuICAuZ3VpZGUtY2VsbCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLmdkLXRhYmxld3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIC8qIOuqqeuhnSDthYzsnbTruJQo6rOg7KCV7Je0KeydgCDsnpDsl7Dtj60g7Jyg7KeAIOKGkiDrhJjsuZjrqbQg656Y7Y286rCAIOyijOyasCDsiqTtgazroaQgKi9cbiAgLnRhYmxlIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi8qIO2UhOumrOu3sCDslYjsl5DshJzripQg6rOg7KCVIO2XpOuNlOulvCBzdGF0aWMg7Jy866GcIOuIle2emCjrsJXsiqQg67CW7Jy866GcIOyViCDtioDqsowpLlxuICAg7KCE7LK07Y+tIEdOQuudvCDsvZjthZDsuKDqsIAg7ZSE66as67ew67O064ukIOuEk+ycvOuptCDrnpjtjbzqsIAg7KKM7JqwIOyKpO2BrOuhpCDihpIg7Jqw7LihIOuBnSjroZzqt7jslYTsm4Mp6rmM7KeAIO2ZleyduCAqL1xuLmdkLWduYiB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgLmhlYWRlciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7IC8vIOy9mO2FkOy4oCDsnpDsl7Dtj60g4oaSIO2UhOumrOu3sOuztOuLpCDrhJPsnLzrqbQg656Y7Y28IOyKpO2BrOuhpFxuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1uLTEwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICB9XG5cbiAgLmhlYWRlci1pbm5lciB7XG4gICAgd2lkdGg6IG1heC1jb250ZW50OyAvLyDrgrTrtoAg7L2Y7YWQ7LigIOyekOyXsO2PrSjsmrDsuKEg7Jyg7Yu4IOyViCDsnpjrprwpXG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTsgLy8gMTkyMCDsoJztlZwg7ZW07KCcKOyekOyXsO2PrSDsmrDshKApXG4gICAgZ2FwOiA0MHB4OyAvLyDtlITrpqzrt7A6IOuhnOqzoCDihpQg7KSR7JWZIOKGlCDsnKDti7gg6rCE6rKpKOyLpOygnCDtl6TrjZTripQg7KCI64yA67Cw7LmY6528IOu2iO2VhOyalClcblxuICAgIC8qIOyLpOygnCDtl6TrjZTripQgLmhlYWRlci1pbm5lci1jZW50ZXIg6rCAIGFic29sdXRlIOykkeyVmeygleugrCjqs6DsoJXtj60rc3BhY2UtYmV0d2Vlbikg4oaSIO2UhOumrOu3sFxuICAgICAgIChtYXgtY29udGVudCDrnpjtjbwp7JeQ7ISgIO2dkOumhOyXkOyEnCDruaDsp4DqsbDrgpgg7Y+t7J20IOuyjOyWtOyguCDsoJXrs7TsmIHsl63snbQg67CA66Ck64Kc64ukLiDqsIDsnbTrk5wg7ZWc7KCV7Jy866GcXG4gICAgICAg7Z2Q66aEIOuwsOy5mMK37J6Q7Jew7Y+twrfqsITqsqnsnLzroZwg67CU6r+UIO2VnCDspITsl5Ag7KCE67aAIOuFuOy2nCjsmrDsuKEg64GdIOuhnOq3uOyVhOybg+q5jOyngCDsoozsmrAg7Iqk7YGs66Gk66GcIO2ZleyduCkuXG4gICAgICAgKF9oZWFkZXIg7J2YIC5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLWlubmVyLWNlbnRlciDtirnsnbTrj4Trpbwg7J206riw66CkIOyXrOq4sCDspJHssqkpICovXG4gICAgLmhlYWRlci1pbm5lci1jZW50ZXIge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZ2FwOiA0MHB4OyAvLyBuYXYg4oaUIOygleuztOyYgeyXrSDqsITqsqko6rOg7KCV7Y+tIHNwYWNlLWJldHdlZW4g64yA7LK0KVxuICAgIH1cbiAgfVxufVxuXG4vKiBGb290ZXIg6rCA7J2065OcIOKAlCDsoITssrTtj60g7Lu07Y+s64SM7Yq46528IOy9lOuTnCDsnITCt+2UhOumrOu3sCDslYTrnpggMeuLqCAqL1xuLmdkLWl0ZW0tLWZvb3RlciAuZ2QtaXRlbV9fYm9keSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuXG4vKiBGb290ZXIg7ZSE66as67ewIOKAlCAuZm9vdGVyIC5pbm5lciDripQg6rOg7KCV7Y+t7J206528IO2UhOumrOu3sCDtj63sl5Ag66ee7LawIDEwMCXroZwgKi9cbi5nZC1mb290ZXIge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIC5mb290ZXIgLmlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiBFdGMg6rCA7J2065OcKE9UUCDrqZTsnbzCt+yLnOyKpO2FnCDsoJDqsoApIOKAlCDsoITssrTtj60g7YWc7ZSM66a/7J206528IDHri6ggwrcg7ZSE66as67ewIOqwgOyatOuNsCDsoJXroKwgKi9cbi5nZC1pdGVtLS1ldGMgLmdkLWl0ZW1fX2JvZHkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xufVxuLmdkLWl0ZW0tLWV0YyAuZ2QtcHJldmlldyB7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmljb24tZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgZ2FwOiAxcHg7XG4gIHBhZGRpbmc6IDFweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi0xMDApOyAvLyDshYAg6rWs67aE7ISgKGdhcCAxcHgg7IKs7J2066GcIOuFuOy2nClcbn1cbi5pY29uLWNlbGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEycHg7XG4gIHBhZGRpbmc6IDIycHggMTJweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLW4tOTAwKTtcblxuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIENvbnNvbGFzLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiB2YXIoLS1uLTUwMCk7XG4gIH1cbn1cblxuLmljb24tZGVtbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMThweDtcblxuICAuaWNvIHtcbiAgICBjb2xvcjogdmFyKC0tbi05MDApO1xuICB9XG4gIC5vbi1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcG9pbnQpO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbi8qIGhvdmVyIOyDge2DnCDsi5zsl7Dsmqko6rCA7J2065OcIO2VnOyglSkg4oCUIOygleyggSDtjpjsnbTsp4Dsl5DshJwgOmhvdmVyIOyZuOq0gOydhCDrs7Tsl6zso7zripQg6rCV7KCcIO2BtOuemOyKpCAqL1xuLmlucHV0LmlzLWhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wLTQwMCk7XG59XG4uaW5wdXQuaXMtZm9jdXMsXG4uc2VsZWN0LmlzLWZvY3VzLFxuLnRleHRhcmVhLmlzLWZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wb2ludCk7XG59XG4uc2VsZWN0LmlzLWhvdmVyLFxuLnNlbGVjdC10cmlnZ2VyLmlzLWhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wLTQwMCk7XG59XG4udGFiLWl0ZW0uaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTUwKTtcbn1cblxuLmJ0bi1wcmltYXJ5LmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcC03MDApO1xufVxuLmJ0bi1zZWNvbmRhcnkuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wLTIwMCk7XG59XG4uYnRuLWxpbmUuaXMtaG92ZXIsXG4uYnRuLXJvdW5kLmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi01MCk7XG59XG4uYnRuLWZpbGwuaXMtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uLTkwMCk7XG59XG4uYnRuLXRlcnRpYXJ5LmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi0xMDApO1xufVxuLmJ0bi1maWx0ZXItLXNlYXJjaC5pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXAtNzAwKTtcbn1cbi5idG4tZmlsdGVyLS1leGNlbC5pcy1ob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWctNTApO1xufVxuLmJ0bi10ZXh0LmlzLWhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpZ2h0LmlzLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbi01MCk7XG59XG4uYnRuLXRleHQtbGluZS5pcy1ob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1uLTcwMCk7XG59XG5cbi5ndWlkZS1jb2wge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEycHg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLyog7Y+tIDQ0MCDqs6DsoJUg642w66qoKOuqqOyEnOumrCDrnbzsmrTrlKkg7ZmV7J247JqpKSAqL1xuLmd1aWRlLWNvbC0tNDQwID4gKiB7XG4gIHdpZHRoOiA0NDBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuIiwiLyoqXG4gKiBTQ1NTIOuzgOyImCAo7Jew7IKwL+uvueyKpOyduOyaqSkg4oCUIENTUyDstpzroKUg7JeG7J2MKOyWtOuUlOyEnCBAdXNlIO2VtOuPhCDspJHrs7Ug7JeG7J2MKS5cbiAqIDpyb290IO2GoO2BsOydgCBfdG9rZW5zLnNjc3Mg7JeQ7IScIOy2nOugpS5cbiAqL1xuXG4vKiDroIjsnbTslYTsm4Mg7Y+tIChQQyDsoITsmqkpICovXG4kc2NyZWVuLW1heDogMTkyMHB4OyAvLyDsp4Dsm5Ag7LWc64yAIO2VtOyDgeuPhFxuJGNvbnRlbnQtd2lkdGg6IDEyMDBweDsgLy8gW+2DgOyehSBBXSDspJHslZkg7L2Y7YWQ7LigIO2PrSAoMTM2OCDsoITsl63soITtmZjsnYAg7YyAIOyhsOycqCDtm4QpXG4kc2lkZWJhci13aWR0aDogMjQwcHg7IC8vIFvtg4DsnoUgQl0g7KKM7LihIOyCrOydtOuTnO2MqOuEkCAtIO2OvOy5qFxuJHNpZGViYXItd2lkdGgtY29sbGFwc2VkOiA1OHB4OyAvLyBb7YOA7J6FIEJdIOyijOy4oSDsgqzsnbTrk5ztjKjrhJAgLSDsoJHtnphcbiRncmlkLWd1dHRlcjogMjBweDtcbiRoZWFkZXItaGVpZ2h0OiA3MHB4OyAvLyDqs6DsoJUgR05CIOuGkuydtCAo67O466y4IOyYpO2UhOyFi+qzvCDrj5nsnbwpXG4kaGVhZGVyLWNlbnRlci13aWR0aDogMTM2OHB4OyAvLyDtl6TrjZQg7KSR7JWZIOu4lOuhnShHTkIr7KCV67O0KSA9IOuplOqwgOuplOuJtCDsu6zrn7wg7KCV66CsIOq4sOykgCDtj61cbiR6LWhlYWRlcjogMTAwO1xuJHNjcm9sbC13aWR0aDogMTcwMHB4OyAvLyBtaW4td2lkdGgg7Iqk7YGs66Gk64yA7J2RXG4vKipcbiAqIO2DgOydtO2PrCDsiqTsvIDsnbwgKOuLqOydvCDshozsiqQpIOKAlCBAR3VpZGVfVHlwb2dyYXBoeSDquLDspIAuIGtleSA9IGZvbnQtc2l6ZShweCkuXG4gKiDsl6zquLDrp4wg6rOg7LmY66m0IGZvbnQoKSDrr7nsiqTsnbjqs7wgLS1mcy0qIC8gLS1saC0qIO2GoO2BsOydtCDtlajqu5gg6rCx7Iug65CoLlxuICovXG4kZm9udC1zY2FsZTogKFxuICAzMjogKFxuICAgIHNpemU6IDMycHgsXG4gICAgbGluZS1oZWlnaHQ6IDQ0cHgsXG4gICksXG4gIC8vIERpc3BsYXlcbiAgMjg6IChcbiAgICAgIHNpemU6IDI4cHgsXG4gICAgICBsaW5lLWhlaWdodDogNDBweCxcbiAgICApLFxuICAvLyBEaXNwbGF5IOKAlCAyNCAoQEd1aWRlX1R5cG9ncmFwaHkg7Iug6recIDIwMjYtMDctMDMpXG4gIDI0OiAoXG4gICAgICBzaXplOiAyNHB4LFxuICAgICAgbGluZS1oZWlnaHQ6IDM2cHgsXG4gICAgKSxcbiAgLy8gVGl0bGUg4oCUIEgxIChQYWdlIFRpdGxlKVxuICAyMDogKFxuICAgICAgc2l6ZTogMjBweCxcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4LFxuICAgICksXG4gIC8vIFRpdGxlIOKAlCBIMiAoU25iIFRpdGxlKVxuICAxODogKFxuICAgICAgc2l6ZTogMThweCxcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4LFxuICAgICksXG4gIC8vIEJvZHlcbiAgMTY6IChcbiAgICAgIHNpemU6IDE2cHgsXG4gICAgICBsaW5lLWhlaWdodDogMjRweCxcbiAgICApLFxuICAvLyBCb2R5IOKAlCDquLDrs7hcbiAgMTU6IChcbiAgICAgIHNpemU6IDE1cHgsXG4gICAgICBsaW5lLWhlaWdodDogMjJweCxcbiAgICApLFxuICAvLyBCb2R5XG4gIDE0OiAoXG4gICAgICBzaXplOiAxNHB4LFxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHgsXG4gICAgKSxcbiAgLy8gQm9keVxuICAxMzogKFxuICAgICAgc2l6ZTogMTNweCxcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4LFxuICAgICksXG4gIC8vIEJvZHkg4oCUIDEyIChAR3VpZGVfVHlwb2dyYXBoeSDsi6Dqt5wgMjAyNi0wNy0wMylcbiAgMTI6IChcbiAgICAgIHNpemU6IDEycHgsXG4gICAgICBsaW5lLWhlaWdodDogMThweCxcbiAgICApLCAvLyBCb2R5XG4pO1xuIl19 */
