@charset "UTF-8";
/*! destyle.css v1.0.15 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model */
/* ============================================ */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  -webkit-text-size-adjust: 100%; /* 2 */
  line-height: 1.15; /* 1 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  clear: both;
  overflow: visible; /* 2 */
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /* 1 */
  margin: 0;
  height: 0; /* 1 */
  border: 0;
  border-top: 1px solid;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  vertical-align: bottom;
}

embed,
object,
iframe {
  border: 0;
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  vertical-align: middle;
  text-align: inherit;
  font: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
  border: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  display: table; /* 1 */
  padding: 0; /* 3 */
  max-width: 100%; /* 1 */
  color: inherit; /* 2 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button; /* 1 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-spacing: 0;
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* ======================================================================
 base
====================================================================== */
html {
  font-size: 62.5%;
}

body {
  color: #000;
  overflow-wrap: break-word;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  text-rendering: optimizeLegibility;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, sans-serif;
}
body * {
  -webkit-transition: 0.4s all ease;
  transition: 0.4s all ease;
}

html,
body {
  width: 100%;
  height: 100%;
}

* {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* h1 - h6 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
}

/* a */
a {
  text-decoration: none;
}
a:link {
  color: #000;
  cursor: pointer;
}
a:visited {
  color: #000;
}
a:hover {
  color: #000;
}
a:active {
  color: #000;
}

a[href^=tel] {
  color: #000;
}

/* Text Highlight */
/* button */
button {
  display: block;
}

textarea {
  resize: vertical;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

/* placeholder */
input:-moz-placeholder-shown, textarea:-moz-placeholder-shown {
  color: #000;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #000;
}
input:placeholder-shown,
textarea:placeholder-shown {
  color: #000;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #000;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #000;
  opacity: 1;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #000;
  opacity: 1;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #000;
}
input:focus:-moz-placeholder-shown, textarea:focus:-moz-placeholder-shown {
  color: #000;
}
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
  color: #000;
}
input:focus:placeholder-shown,
textarea:focus:placeholder-shown {
  color: #000;
}
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: #000;
}
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: #000;
  opacity: 1;
}
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: #000;
  opacity: 1;
}
input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: #000;
}

img {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* ======================================================================
 utility
====================================================================== */
/* =================================
 layout
================================= */
.u_cf:after {
  display: block;
  clear: both;
  content: "";
}

@media screen and (min-width: 768px) {
  .u_pc {
    display: block;
  }
  .u_pc_i {
    display: inline;
  }
  .u_pc_ib {
    display: inline-block;
  }
  .u_pc_f {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .u_pc_if {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .u_sp {
    display: none;
  }
  .u_sp_i, .u_sp_ib, .u_sp_f, .u_sp_if {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .u_pc {
    display: none;
  }
  .u_pc_i, .u_pc_ib, .u_pc_f, .u_pc_if {
    display: none;
  }
  .u_sp {
    display: block;
  }
  .u_sp_i {
    display: inline;
  }
  .u_sp_ib {
    display: inline-block;
  }
  .u_sp_f {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .u_sp_if {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}
/* =================================
 content_size
================================= */
.u_content_size {
  padding: 0 20px;
}
@media screen and (min-width: 768px) {
  .u_content_size {
    margin: 0 auto;
    padding: 0;
    width: 1200px;
  }
}

/* =================================
 font_1
================================= */
.font_1 {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, sans-serif;
}

.font_2 {
  font-family: "Sintony", sans-serif;
}

/* =================================
 text
================================= */
.u_txt_1 {
  letter-spacing: 0.1em;
  font-size: 1em;
  line-height: 1;
}
.u_txt_2 {
  letter-spacing: 0.1em;
  font-size: 1em;
  line-height: 1;
}
.u_txt_3 {
  letter-spacing: 0.1em;
  font-size: 1em;
  line-height: 1;
}
/* =================================
 text weight
================================= */
.u_lighter {
  font-weight: lighter;
}

.u_bold {
  font-weight: bold;
}

/* =================================
 text align
================================= */
.u_ta_c {
  text-align: center;
}

.u_ta_r {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .u_ta_cl {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .u_ta_lc {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .u_ta_cr {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .u_ta_cr {
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .u_ta_rc {
    text-align: right;
  }
}
@media screen and (min-width: 768px) {
  .u_ta_rc {
    text-align: center;
  }
}

/* =================================
 paragraph margin
================================= */
.u_paragraph + .u_paragraph {
  margin: 15px 0 0;
}

/* =================================
 hover animation
================================= */
.u_hover_1 {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (min-width: 768px) {
  .u_hover_1:hover {
    opacity: 0.7;
  }
}

/* =================================
 hoge
================================= */
/* ======================================================================
 component
====================================================================== */
/* =================================
 title
================================= */
.c-ttl-1__ja {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: clamp(10px, calc(0.0955109838vw + 9.6246418338px), 11px);
  font-size: clamp(12px, calc(0.7640878701vw + 8.9971346705px), 20px);
}
@media screen and (max-width: 767px) {
  .c-ttl-1__ja {
    gap: 2.5445292621vw;
    font-size: 3.0534351145vw;
  }
}
.c-ttl-1__ja:before {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  aspect-ratio: 26/10;
  width: clamp(18px, calc(0.7640878701vw + 14.9971346705px), 26px);
  border-radius: 50%;
  content: "";
}
@media screen and (max-width: 767px) {
  .c-ttl-1__ja:before {
    width: 4.5801526718vw;
  }
}
.c-ttl-1__ja._col-w {
  color: #fff;
}
.c-ttl-1__ja._ver1:before {
  background: #fff;
}
.c-ttl-1__ja._ver2:before {
  background: #d9d9d9;
}
.c-ttl-1__en {
  color: #ce5555;
  font-size: clamp(50px, calc(6.6857688634vw + 23.7249283668px), 120px);
}
@media screen and (max-width: 767px) {
  .c-ttl-1__en {
    font-size: 12.7226463104vw;
  }
}

.c-ttl-2__ja {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: clamp(10px, calc(0.0955109838vw + 9.6246418338px), 11px);
  font-size: clamp(12px, calc(0.7640878701vw + 8.9971346705px), 20px);
}
@media screen and (max-width: 767px) {
  .c-ttl-2__ja {
    gap: 2.5445292621vw;
    font-size: 3.0534351145vw;
  }
}
.c-ttl-2__ja:before {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  aspect-ratio: 26/10;
  width: clamp(18px, calc(0.7640878701vw + 14.9971346705px), 26px);
  border-radius: 50%;
  content: "";
}
@media screen and (max-width: 767px) {
  .c-ttl-2__ja:before {
    width: 4.5801526718vw;
  }
}
.c-ttl-2__ja._col-w {
  color: #fff;
}
.c-ttl-2__ja._ver1:before {
  background: #fff;
}
.c-ttl-2__ja._ver2:before {
  background: #d9d9d9;
}
.c-ttl-2__en {
  color: #ce5555;
  font-size: clamp(43px, calc(1.623686724vw + 36.6189111748px), 60px);
}
@media screen and (max-width: 767px) {
  .c-ttl-2__en {
    font-size: 10.941475827vw;
  }
}

/* =================================
 buttons
================================= */
.c_btn_1 {
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 0 0 clamp(45px, calc(0vw + 45px), 45px);
  width: clamp(272px, calc(0vw + 272px), 272px);
  height: clamp(62px, calc(0vw + 62px), 62px);
  border-radius: clamp(64px, calc(0vw + 64px), 64px);
  background: #fff;
  color: #281780 !important;
  font-weight: 700;
  font-size: clamp(20px, calc(0vw + 20px), 20px);
  font-family: "Sintony", sans-serif;
}
@media screen and (max-width: 767px) {
  .c_btn_1 {
    padding: 0 0 0 11.4503816794vw;
    width: 69.2111959288vw;
    height: 15.7760814249vw;
    font-size: 5.0890585242vw;
  }
}
.c_btn_1:before {
  position: absolute;
  top: 50%;
  right: clamp(25px, calc(0vw + 25px), 25px);
  z-index: -1;
  aspect-ratio: 1/1;
  width: clamp(13px, calc(0vw + 13px), 13px);
  border-radius: 50%;
  background: #ce5555;
  content: "";
  -webkit-transition: 0.4s all ease;
  transition: 0.4s all ease;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .c_btn_1:before {
    right: 6.3613231552vw;
    width: 3.3078880407vw;
  }
}
.c_btn_1:hover {
  color: #fff !important;
}
.c_btn_1:hover:before {
  right: 0;
  width: 100%;
}

/* =================================
 icon
================================= */
.c-ico-chevron {
  position: relative;
  z-index: 0;
  display: block;
  aspect-ratio: 1/1;
  width: clamp(52px, calc(0vw + 52px), 52px);
  border-radius: 50%;
  background: #32303c;
}
@media screen and (max-width: 767px) {
  .c-ico-chevron {
    width: 13.2315521628vw;
  }
}
.c-ico-chevron:before {
  position: absolute;
  top: 50%;
  left: 50%;
  aspect-ratio: 9/15;
  width: clamp(9px, calc(0vw + 9px), 9px);
  background: #fff;
  content: "";
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-mask: url(../img/common/ico-chevron.svg) no-repeat center/contain;
  mask: url(../img/common/ico-chevron.svg) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .c-ico-chevron:before {
    width: 2.2900763359vw;
  }
}

/* =================================
 table
================================= */
/* =================================
 list
================================= */
/* =================================
 item
================================= */
/* =================================
 slider
================================= */
.c_slider .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c_slider .slick-dots li {
  position: relative;
  display: inline-block;
  padding: 0;
  width: 20px;
  height: 20px;
}
.c_slider .slick-dots li.slick-active button:before {
  background: #888;
}
.c_slider .slick-dots li button {
  display: block;
  padding: 5px;
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: transparent;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
}
.c_slider .slick-dots li button:before {
  position: absolute;
  top: 6px;
  left: 6px;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  background: #ddd;
  content: "";
  text-align: center;
  -webkit-font-smoothing: antialiased;
  font-size: 30px;
  line-height: 20px;
  opacity: 1;
}

/* =================================
 pager
================================= */
/* =================================
 hoge
================================= */
/* ======================================================================
 layout
====================================================================== */
/* =================================
 l-container
================================= */
/* =================================
 l-header
================================= */
.l-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  padding: clamp(20px, calc(1.9102196753vw + 12.4928366762px), 40px) clamp(20px, calc(0vw + 20px), 20px) 0;
  width: 100%;
}
.l-header__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px;
}
@media screen and (max-width: 1025px) {
  .l-header__inr {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .l-header__inr {
    gap: 10px;
  }
}
.l-header-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(5px, calc(3.3428844317vw + -8.1375358166px), 40px);
  font-weight: bold;
  font-size: clamp(5px, calc(1.1461318052vw + 0.4957020057px), 17px);
}
@media screen and (max-width: 1025px) {
  .l-header-nav {
    display: none;
  }
}
.l-header-nav__item {
  position: relative;
  z-index: 0;
}
.l-header-nav__item:hover .l-header-nav__link:before {
  opacity: 1;
}
.l-header-nav__link {
  position: relative;
  z-index: 0;
  color: #fff !important;
}
.l-header-nav__link:before {
  position: absolute;
  top: -10px;
  left: 50%;
  aspect-ratio: 1/1;
  width: 6px;
  border-radius: 50%;
  background: #c33333;
  content: "";
  opacity: 0;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
}
.l-header__logo {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 clamp(154px, 154px + 86 * (100vw - 393px) / 1047, 240px);
  flex: 0 1 clamp(154px, 154px + 86 * (100vw - 393px) / 1047, 240px);
}
@media screen and (max-width: 480px) {
  .l-header__logo {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 39.1857506361vw;
    flex: 0 1 39.1857506361vw;
  }
}
.l-header__logo img {
  width: 100%;
}
.l-header__btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: clamp(8px, calc(2.1012416428vw + -0.2578796562px), 30px);
}
.l-header__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: clamp(70px, calc(6.4947468959vw + 44.4756446991px), 138px);
  height: clamp(22px, calc(2.1967526266vw + 13.3667621777px), 45px);
  border-radius: clamp(80px, calc(0vw + 80px), 80px);
  color: #fff !important;
  font-weight: 700;
  font-size: clamp(12px, calc(0.4775549188vw + 10.1232091691px), 17px);
}
@media screen and (max-width: 480px) {
  .l-header__btn {
    width: 17.8117048346vw;
    height: 5.5979643766vw;
    font-size: 3.0534351145vw;
  }
}
.l-header__btn._ver1 {
  border: 1px solid #c33333;
  background: #c33333;
}
.l-header__btn._ver1:hover {
  background: #fff;
  color: #c33333 !important;
}
.l-header__btn._ver2 {
  border: 1px solid #979797;
  background: #979797;
}
.l-header__btn._ver2:hover {
  background: #fff;
  color: #979797 !important;
}
.l-header__ham-btn {
  position: absolute;
  top: 30px;
  right: clamp(20px, calc(-0.9551098376vw + 23.7535816619px), 10px);
  aspect-ratio: 25/9;
  width: clamp(25px, calc(2.3877745941vw + 15.6160458453px), 50px);
}
@media screen and (max-width: 480px) {
  .l-header__ham-btn {
    top: 25px;
  }
}
@media screen and (min-width: 1026px) {
  .l-header__ham-btn {
    display: none;
  }
}
.l-header__ham-btn .bar {
  position: absolute;
  width: 100%;
  height: 1px;
  background: #fff;
  cursor: pointer;
}
.l-header__ham-btn .bar:first-child {
  top: 0;
}
.l-header__ham-btn .bar:nth-child(2) {
  top: calc(50% - 1px);
}
.l-header__ham-btn .bar:nth-child(3) {
  bottom: 0;
}
.l-header__ham-btn[aria-expanded=true] .bar:first-child {
  top: 50%;
  rotate: -25deg;
}
.l-header__ham-btn[aria-expanded=true] .bar:nth-child(2) {
  opacity: 0;
}
.l-header__ham-btn[aria-expanded=true] .bar:nth-child(3) {
  bottom: 50%;
  rotate: 25deg;
}
.l-header--clone {
  position: fixed;
  top: -100px;
  left: 0;
  z-index: 100;
  padding: clamp(10px, calc(0vw + 10px), 10px) clamp(20px, calc(0vw + 20px), 20px);
  background: #fff;
  -webkit-transition: 0.6s all ease;
  transition: 0.6s all ease;
}
.l-header--clone .l-header-nav__link {
  color: #000 !important;
}
.l-header--clone.is-active {
  top: 0;
}
.l-header--clone .l-header__ham-btn {
  top: 20px;
}
@media screen and (max-width: 480px) {
  .l-header--clone .l-header__ham-btn {
    top: 17px;
  }
}
.l-header--clone .l-header__ham-btn .bar {
  background: #000;
}

.l-header-nav-drop-menu {
  position: absolute;
  top: 95%;
  left: 50%;
  visibility: hidden;
  padding: 20px 0 0;
  min-width: 175px;
  max-width: inherit;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(12px, calc(0.1910219675vw + 11.2492836676px), 14px);
  opacity: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.l-header-nav-drop-menu__link {
  display: block;
  padding: 10px 15px;
  background: rgba(195, 51, 51, 0.5);
  color: #fff !important;
  text-align: center;
}
.l-header-nav-drop-menu__link:hover {
  opacity: 0.7;
}

.l-header-nav__item:hover .l-header-nav-drop-menu {
  visibility: visible;
  opacity: 1;
}

.l-hamburger {
  position: fixed;
  z-index: 1000;
  display: block;
  visibility: hidden;
  padding: clamp(20px, calc(1.9102196753vw + 12.4928366762px), 40px) clamp(20px, calc(0vw + 20px), 20px) 0;
  width: 100%;
  height: 100lvh;
  background: #32303c;
  opacity: 0;
  pointer-events: none;
  inset: 0;
}
@media screen and (min-width: 1026px) {
  .l-hamburger {
    display: none;
  }
}
.l-hamburger.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.l-hamburger__logo {
  margin: 0 0 clamp(20px, calc(1.9102196753vw + 12.4928366762px), 40px);
  width: clamp(154px, 154px + 86 * (100vw - 393px) / 1047, 240px);
}
@media screen and (max-width: 480px) {
  .l-hamburger__logo {
    margin: 0 0 7.6335877863vw;
    width: 39.1857506361vw;
  }
}
.l-hamburger__logo img {
  width: 100%;
}
.l-hamburger-nav__item {
  padding: 0 0 clamp(20px, calc(0vw + 20px), 20px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__item {
    padding: 0 0 5.0890585242vw;
  }
}
.l-hamburger-nav__item:not(:first-of-type) {
  margin: clamp(20px, calc(0vw + 20px), 20px) 0 0;
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__item:not(:first-of-type) {
    margin: 5.0890585242vw 0 0;
  }
}
.l-hamburger-nav__link {
  position: relative;
  z-index: 0;
  padding-left: clamp(30px, calc(0vw + 30px), 30px);
  color: #fff !important;
  font-weight: bold;
  font-size: clamp(20px, calc(0vw + 20px), 20px);
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__link {
    padding-left: 7.6335877863vw;
    font-size: 3.5623409669vw;
  }
}
.l-hamburger-nav__link:before {
  position: absolute;
  top: 50%;
  left: 0;
  aspect-ratio: 1/1;
  width: clamp(6px, calc(0vw + 6px), 6px);
  border-radius: 50%;
  background: #ce5555;
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__link:before {
    width: 1.5267175573vw;
  }
}
.l-hamburger-nav__subnav {
  margin-top: clamp(20px, calc(0vw + 20px), 20px);
  padding-left: clamp(30px, calc(0vw + 30px), 30px);
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__subnav {
    margin-top: 5.0890585242vw;
    padding-left: 7.6335877863vw;
  }
}
.l-hamburger-nav__sublink {
  display: block;
  color: rgba(255, 255, 255, 0.6) !important;
  font-weight: bold;
  font-size: clamp(16px, calc(0vw + 16px), 16px);
  line-height: 1.8333333333;
}
@media screen and (max-width: 480px) {
  .l-hamburger-nav__sublink {
    font-size: 3.0534351145vw;
  }
}
.l-hamburger__btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: clamp(40px, calc(0vw + 40px), 40px);
  margin: clamp(45px, calc(0vw + 45px), 45px) 0 0;
}
@media screen and (max-width: 767px) {
  .l-hamburger__btn-box {
    gap: 10.1781170483vw;
    margin: 11.7048346056vw 0 0;
  }
}
.l-hamburger__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: clamp(146px, calc(0vw + 146px), 146px);
  height: clamp(46px, calc(0vw + 46px), 46px);
  border-radius: clamp(80px, calc(0vw + 80px), 80px);
  color: #fff !important;
  font-weight: 700;
  font-size: clamp(16px, calc(0vw + 16px), 16px);
}
@media screen and (max-width: 480px) {
  .l-hamburger__btn {
    width: 37.1501272265vw;
    height: 11.7048346056vw;
    font-size: 4.0712468193vw;
  }
}
.l-hamburger__btn._ver1 {
  border: 1px solid #c33333;
  background: #c33333;
}
.l-hamburger__btn._ver1:hover {
  background: #fff;
  color: #c33333 !important;
}
.l-hamburger__btn._ver2 {
  border: 1px solid #979797;
  background: #979797;
}
.l-hamburger__btn._ver2:hover {
  background: #fff;
  color: #979797 !important;
}

/* =================================
 l-breadcrumbs
================================= */
/* =================================
 l-main_visual
================================= */
.l-main-visual-top {
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 600px;
  width: 100%;
  height: 100lvh;
}
@media screen and (max-width: 767px) {
  .l-main-visual-top {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 25.4452926209vw 5.0890585242vw 11.4503816794vw;
    min-height: 0;
    width: 100%;
    height: auto;
  }
}
.l-main-visual-top:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: rgba(16, 10, 46, 0.8);
  content: "";
}
.l-main-visual-top__ttl {
  aspect-ratio: 653/353;
  width: clamp(235px, calc(39.923591213vw + 78.100286533px), 653px);
}
.l-main-visual-top__ttl .img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.l-main-visual-top__txt {
  margin: clamp(25px, calc(3.3428844317vw + 11.8624641834px), 60px) 0 0;
  color: #ce5555;
  font-weight: 700;
  font-size: clamp(12px, calc(0.7640878701vw + 8.9971346705px), 20px);
  line-height: 1.75;
}
.l-main-visual-top__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.l-main-visual-top__video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* =================================
 l-cta
================================= */
.l-cta {
  padding: clamp(100px, calc(9.5510983763vw + 62.4641833811px), 200px) clamp(20px, calc(5.7306590258vw + -2.5214899713px), 80px);
  background: #fff;
}
.l-cta__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: clamp(100px, calc(-2.8653295129vw + 111.2607449857px), 70px) clamp(0px, calc(5.253104107vw + -20.6446991404px), 55px) clamp(100px, calc(0vw + 100px), 100px) clamp(30px, calc(8.1184336199vw + -1.9054441261px), 115px);
  background: #ededed;
}
@media screen and (max-width: 767px) {
  .l-cta__inr {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.l-cta__info {
  font-size: clamp(16px, calc(0.3820439351vw + 14.4985673352px), 20px);
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .l-cta__info {
    margin: 5.0890585242vw 0 0;
    font-size: 4.0712468193vw;
    line-height: 2.375;
  }
}
@media screen and (max-width: 767px) {
  .l-cta__link {
    margin: 7.6335877863vw 0 0;
  }
}
.l-cta__link:hover {
  background: #ce5555;
}

/* =================================
 l-footer
================================= */
.l-footer {
  padding: clamp(100px, calc(0vw + 100px), 100px) clamp(20px, calc(5.7306590258vw + -2.5214899713px), 80px) clamp(25px, calc(1.4326647564vw + 19.3696275072px), 40px);
  background: #333;
}
.l-footer__logo_box {
  margin: 0 0 clamp(30px, calc(0.9551098376vw + 26.2464183381px), 40px);
  padding: 0 0 clamp(30px, calc(1.4326647564vw + 24.3696275072px), 45px);
  border-bottom: 1px solid #515151;
}
.l-footer__logo {
  width: clamp(240px, calc(0vw + 240px), 240px);
}
@media screen and (max-width: 767px) {
  .l-footer__logo {
    width: 61.0687022901vw;
  }
}
.l-footer__logo .img {
  width: 100%;
}
.l-footer__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .l-footer__contents {
    display: block;
  }
}
.l-footer__info {
  color: #fff;
  font-size: 1.1111111111vw;
  line-height: 2.375;
}
@media screen and (max-width: 767px) {
  .l-footer__info {
    font-size: 4.0712468193vw;
  }
}
.l-footer__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(40px, calc(4.7755491882vw + 21.2320916905px), 90px);
}
@media screen and (max-width: 767px) {
  .l-footer__cont {
    display: block;
  }
}
.l-footer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(15px, calc(4.2979942693vw + -1.8911174785px), 60px);
}
@media screen and (max-width: 767px) {
  .l-footer__nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.272264631vw;
    margin: 12.7226463104vw 0 0;
  }
}
.l-footer__nav-item:not(:first-child) {
  margin-top: clamp(15px, calc(0.4775549188vw + 13.1232091691px), 20px);
}
@media screen and (max-width: 767px) {
  .l-footer__nav-item:not(:first-child) {
    margin-top: 0vw;
  }
}
.l-footer__nav-link {
  position: relative;
  z-index: 0;
  padding-left: clamp(30px, calc(0vw + 30px), 30px);
  color: #fff !important;
  font-weight: bold;
  font-size: clamp(16px, calc(0.0955109838vw + 15.6246418338px), 17px);
}
@media screen and (max-width: 767px) {
  .l-footer__nav-link {
    padding-left: 3.0534351145vw;
    font-size: 4.0712468193vw;
    line-height: 2.8125;
  }
}
.l-footer__nav-link:before {
  position: absolute;
  top: 50%;
  left: 0;
  aspect-ratio: 1/1;
  width: clamp(6px, calc(0vw + 6px), 6px);
  border-radius: 50%;
  background: #ce5555;
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .l-footer__nav-link:before {
    width: 1.5267175573vw;
  }
}
.l-footer__nav-sub {
  margin: clamp(10px, calc(0vw + 10px), 10px) 0 0;
  padding-left: clamp(30px, calc(0vw + 30px), 30px);
}
@media screen and (max-width: 767px) {
  .l-footer__nav-sub {
    margin: 0;
    padding-left: 3.0534351145vw;
  }
}
.l-footer__nav-sub-link {
  display: block;
  color: rgba(255, 255, 255, 0.6) !important;
  font-weight: 700;
  font-size: clamp(12px, calc(0vw + 12px), 12px);
  line-height: 1.8333333333;
}
@media screen and (max-width: 767px) {
  .l-footer__nav-sub-link {
    font-size: 3.0534351145vw;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__btn-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 7.6335877863vw;
    margin: 10.1781170483vw 0 0;
  }
}
.l-footer__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: clamp(160px, calc(-2.1012416428vw + 168.2578796562px), 138px);
  height: clamp(45px, calc(0vw + 45px), 45px);
  border-radius: clamp(80px, calc(0vw + 80px), 80px);
  color: #fff !important;
  font-weight: 700;
  font-size: clamp(17px, calc(0vw + 17px), 17px);
}
@media screen and (max-width: 767px) {
  .l-footer__btn {
    width: 40.7124681934vw;
    height: 11.4503816794vw;
    font-size: 4.3256997455vw;
  }
}
.l-footer__btn:not(:first-of-type) {
  margin-top: clamp(35px, calc(0vw + 35px), 35px);
}
@media screen and (max-width: 767px) {
  .l-footer__btn:not(:first-of-type) {
    margin: 0;
  }
}
.l-footer__btn._ver1 {
  border: 1px solid #c33333;
  background: #c33333;
}
.l-footer__btn._ver1:hover {
  background: #fff;
  color: #c33333 !important;
}
.l-footer__btn._ver2 {
  border: 1px solid #979797;
  background: #979797;
}
.l-footer__btn._ver2:hover {
  background: #fff;
  color: #979797 !important;
}
.l-footer__copyright {
  margin: clamp(50px, calc(-1.4326647564vw + 55.6303724928px), 35px) 0 0;
  color: #7b7b7b;
  font-size: clamp(12px, calc(0vw + 12px), 12px);
}
@media screen and (max-width: 767px) {
  .l-footer__copyright {
    text-align: center;
  }
}

/* ======================================================================
 common style index
・reset
・setting
・base
・utility
・component
・layout
====================================================================== */
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9yZXNldC5zY3NzIiwiX2Jhc2Uuc2NzcyIsIl9zZXR0aW5nLnNjc3MiLCJfdXRpbGl0eS5zY3NzIiwiX2NvbXBvbmVudC5zY3NzIiwiX2xheW91dC5zY3NzIiwic3R5bGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUFFQTtBQUNBO0FBRUE7RUFDRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFHRjtBQUNBO0FBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0VBQ0U7RUFDQTtFQUVBOzs7QUFHRjtBQUNBO0FBRUE7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFDQTtBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVNFOzs7QUFHRjtBQUNBO0FBRUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBTUU7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQ0E7QUFFQTtBQUFBO0VBRUU7RUFDQTtFQUNBOzs7QUFHRjtBQUNBO0FBRUE7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFDQTtBQUVBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFDQTtBQUVBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUdGO0FBQ0E7QUFFQTtBQUFBO0FBQUE7QUFJQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtFQUdFO0VBQ0E7OztBQUdGO0FBQ0E7QUFFQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBRUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBRUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUVBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUVBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUNBO0FBRUE7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFB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bUJXOztBR3FtQlg7RUFDRTtFQUNBOztBQUtOO0VBQ0U7RUFDQTtFQUNBOztBSHRlRjtFR21lQTtJQU1JOzs7O0FDN3BCTjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIGRlc3R5bGUuY3NzIHYxLjAuMTUgfCBNSVQgTGljZW5zZSB8IGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNvbGFzLWN1c2FuL2Rlc3R5bGUuY3NzICovXG5cbi8qIFJlc2V0IGJveC1tb2RlbCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qIERvY3VtZW50ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICogMy4gUmVtb3ZlIGdyYXkgb3ZlcmxheSBvbiBsaW5rcyBmb3IgaU9TLlxuICovXG5cbmh0bWwge1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAzKi9cbn1cblxuLyogU2VjdGlvbnMgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBWZXJ0aWNhbCByaHl0aG0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnAsXG50YWJsZSxcbmJsb2NrcXVvdGUsXG5hZGRyZXNzLFxucHJlLFxuaWZyYW1lLFxuZm9ybSxcbmZpZ3VyZSxcbmRsIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIZWFkaW5ncyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLyogTGlzdHMgKGVudW1lcmF0aW9uKSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxudWwsXG5vbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogTGlzdHMgKGRlZmluaXRpb24pICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljcyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5zdWIge1xuICBib3R0b206IC0uMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuZW1iZWQsXG5vYmplY3QsXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qIEZvcm1zICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlc2V0IGZvcm0gZmllbGRzIHRvIG1ha2UgdGhlbSBzdHlsZWFibGVcbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBSZXNldCByYWRpbyBhbmQgY2hlY2tib3ggYXBwZWFyYW5jZSB0byBwcmVzZXJ2ZSB0aGVpciBsb29rIGluIGlPUy5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveDtcbiAgYXBwZWFyYW5jZTogY2hlY2tib3g7XG59XG5cblt0eXBlPVwicmFkaW9cIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHJhZGlvO1xuICBhcHBlYXJhbmNlOiByYWRpbztcbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5bdHlwZT1cImJ1dHRvblwiXVtkaXNhYmxlZF0sXG5bdHlwZT1cInJlc2V0XCJdW2Rpc2FibGVkXSxcblt0eXBlPVwic3VibWl0XCJdW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgYXJyb3cgaW4gSUUxMCAmIElFMTFcbiAqL1xuXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFJlbW92ZSBwYWRkaW5nXG4gKi9cblxub3B0aW9uIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXNldCB0byBpbnZpc2libGVcbiAqL1xuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWluLXdpZHRoOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMSAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBDbGlja2FibGUgbGFiZWxzXG4gKi9cblxubGFiZWxbZm9yXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogSW50ZXJhY3RpdmUgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKlxuICogUmVtb3ZlIG91dGxpbmUgZm9yIGVkaXRhYmxlIGNvbnRlbnQuXG4gKi9cblxuW2NvbnRlbnRlZGl0YWJsZV0ge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4vKiBUYWJsZSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxudGFibGUge1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBNaXNjICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiQHVzZSBcInNldHRpbmdcIiBhcyAqO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gYmFzZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7IC8vIDFlbSA9IDEwcHhcbn1cblxuYm9keSB7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHRleHQtc2hhZG93OiByZ2JhKDAsMCwwLC4wMSkgMCAwIDFweDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LWZhbWlseTogJGZvbnRfMTtcbiAgJiAqIHtcbiAgICB0cmFuc2l0aW9uOiAuNHMgYWxsIGVhc2U7XG4gIH1cbn1cblxuaHRtbCxcbmJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4qIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG5cbi8qIGgxIC0gaDYgKi9cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBhICovXG4vLyDlkITjg5rjg7zjgrjjgafoibLjgpLlpInmm7TjgZnjgovjgajjgY3jga9AaW5jbHVkZSBhX3RhZ+OCkuS9v+eUqOOBl+OBpuS4iuabuOOBjeOBl+OBpuOBj+OBoOOBleOBhOOAglxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgJjpsaW5rIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4vLyDjg6Ljg5DjgqTjg6vmmYIg6Zu76Kmx55Wq5Y+344Kr44Op44O8XG5hW2hyZWZePVwidGVsXCJdIHtcbiAgY29sb3I6ICRibGFjaztcbn1cblxuLyogVGV4dCBIaWdobGlnaHQgKi9cbi8vIDo6c2VsZWN0aW9uIHtcbi8vICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuLy8gfVxuXG4vKiBidXR0b24gKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbnNlbGVjdCB7XG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGJsYWNrO1xuICB9XG59XG5cbi8qIHBsYWNlaG9sZGVyICovXG4vLyDlkITjg5rjg7zjgrjjgafoibLjgpLlpInmm7TjgZnjgovjgajjgY3jga9AaW5jbHVkZSBwbGFjZWhvbGRlcuOCkuS9v+eUqOOBl+OBpuS4iuabuOOBjeOBl+OBpuOBj+OBoOOBleOBhOOAglxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCRibGFjayk7XG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCRibGFjayk7XG4gIH1cbn1cblxuLy8g44OJ44Op44OD44Kw56aB5q2iXG5pbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gdmFyaWFibGVcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gaW1n44OH44Kj44Os44Kv44OI44Oq44G+44Gn44Gu44OR44K5XG4kaW1nX2RpcjogXCIuLi9pbWdcIjtcblxuLy8g44Kz44Oz44OG44Oz44OE5bmFXG4kY29udGVudF93aWR0aDogMTIwMHB4O1xuXG4vLyBTUOaZguOBruW3puWPs+OBruS9meeZve+8iOeJh+aWue+8iVxuJHNwX3NpZGVfcGFkZGluZzogMjBweDtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGJyZWFrcG9pbnRcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyDkuIvoqJgy44Gk44Gu5aSJ5pWw44Gu6ZaT44GM44K/44OW44Os44OD44OI6KGo56S6XG4vLyDjgr/jg5bjg6zjg4Pjg4jooajnpLrjgarjgZfjga7loLTlkIjjga8y44Gk44Gu5aSJ5pWw44Gu5YCk44KS44CMMXB45beu44CN44Gn6Kit5a6a44GZ44KL44GT44GoXG5cbi8vICRwY19icOS7peS4iuOBjFBD6KGo56S6XG4kcGNfYnA6IDc2OHB4O1xuXG4vLyAkc3BfYnDku6XkuIvjgYxTUOihqOekulxuJHNwX2JwOiA3NjdweDtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGZvbnRcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kZm9udF8xOiBcIk5vdG8gU2FucyBKUFwiLCBcIuODkuODqeOCruODjuinkuOCtCBQcm8gVzNcIiwgXCJIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm9cIiwgXCLmuLjjgrTjgrfjg4Pjgq9cIiwgWXVHb3RoaWMsIHNhbnMtc2VyaWY7XG4kZm9udF8yOiBcIlNpbnRvbnlcIiwgc2Fucy1zZXJpZjtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGNvbG9yXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGJsYWNrOiAjMDAwO1xuXG4kd2hpdGU6ICNmZmY7XG5cbiRwcmltYXJ5X2NvbF8xOiAjY2U1NTU1O1xuJHByaW1hcnlfY29sXzI6ICNjMzMzMzM7XG5cbiRzZWNvbmRhcnlfY29sXzE6ICMyODE3ODA7XG4kc2Vjb25kYXJ5X2NvbF8yOiAjMzIzMDNjO1xuXG4kdGVydGlhcnlfY29sXzE6ICM5Nzk3OTc7XG5cbiRxdWF0ZXJuYXJ5X2NvbF8xOiAjMzMzO1xuJHF1YXRlcm5hcnlfY29sXzI6ICM1MTUxNTE7XG4kcXVhdGVybmFyeV9jb2xfMzogI2Q5ZDlkOTtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENTUyBUcmFuc2l0aW9uIEVhc2luZ1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERlZmF1bHRcbiRsaW5lYXI6IGN1YmljLWJlemllciguMjUwLCAuMjUwLCAuNzUwLCAuNzUwKTtcbiRlYXNlOiBjdWJpYy1iZXppZXIoLjI1MCwgLjEwMCwgLjI1MCwgMS4wMDApO1xuJGVhc2UtaW46IGN1YmljLWJlemllciguNDIwLCAuMDAwLCAxLjAwMCwgMS4wMDApO1xuJGVhc2Utb3V0OiBjdWJpYy1iZXppZXIoLjAwMCwgLjAwMCwgLjU4MCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoLjQyMCwgLjAwMCwgLjU4MCwgMS4wMDApO1xuLy8gSW5cbiRlYXNlSW5RdWFkOiBjdWJpYy1iZXppZXIoLjU1MCwgLjA4NSwgLjY4MCwgLjUzMCk7XG4kZWFzZUluQ3ViaWM6IGN1YmljLWJlemllciguNTUwLCAuMDU1LCAuNjc1LCAuMTkwKTtcbiRlYXNlSW5RdWFydDogY3ViaWMtYmV6aWVyKC44OTUsIC4wMzAsIC42ODUsIC4yMjApO1xuJGVhc2VJblF1aW50OiBjdWJpYy1iZXppZXIoLjc1NSwgLjA1MCwgLjg1NSwgLjA2MCk7XG4kZWFzZUluU2luZTogY3ViaWMtYmV6aWVyKC40NzAsIC4wMDAsIC43NDUsIC43MTUpO1xuJGVhc2VJbkV4cG86IGN1YmljLWJlemllciguOTUwLCAuMDUwLCAuNzk1LCAuMDM1KTtcbiRlYXNlSW5DaXJjOiBjdWJpYy1iZXppZXIoLjYwMCwgLjA0MCwgLjk4MCwgLjMzNSk7XG4kZWFzZUluQmFjazogY3ViaWMtYmV6aWVyKC42MDAsIC0uMjgwLCAuNzM1LCAuMDQ1KTtcbi8vIE91dFxuJGVhc2VPdXRRdWFkOiBjdWJpYy1iZXppZXIoLjI1MCwgLjQ2MCwgLjQ1MCwgLjk0MCk7XG4kZWFzZU91dEN1YmljOiBjdWJpYy1iZXppZXIoLjIxNSwgLjYxMCwgLjM1NSwgMS4wMDApO1xuJGVhc2VPdXRRdWFydDogY3ViaWMtYmV6aWVyKC4xNjUsIC44NDAsIC40NDAsIDEuMDAwKTtcbiRlYXNlT3V0UXVpbnQ6IGN1YmljLWJlemllciguMjMwLCAxLjAwMCwgLjMyMCwgMS4wMDApO1xuJGVhc2VPdXRTaW5lOiBjdWJpYy1iZXppZXIoLjM5MCwgLjU3NSwgLjU2NSwgMS4wMDApO1xuJGVhc2VPdXRFeHBvOiBjdWJpYy1iZXppZXIoLjE5MCwgMS4wMDAsIC4yMjAsIDEuMDAwKTtcbiRlYXNlT3V0Q2lyYzogY3ViaWMtYmV6aWVyKC4wNzUsIC44MjAsIC4xNjUsIDEuMDAwKTtcbiRlYXNlT3V0QmFjazogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMjAsIDEuMjc1KTtcbi8vIEluIE91dFxuJGVhc2VJbk91dFF1YWQ6IGN1YmljLWJlemllciguNDU1LCAuMDMwLCAuNTE1LCAuOTU1KTtcbiRlYXNlSW5PdXRDdWJpYzogY3ViaWMtYmV6aWVyKC42NDUsIC4wNDUsIC4zNTUsIDEuMDAwKTtcbiRlYXNlSW5PdXRRdWFydDogY3ViaWMtYmV6aWVyKC43NzAsIC4wMDAsIC4xNzUsIDEuMDAwKTtcbiRlYXNlSW5PdXRRdWludDogY3ViaWMtYmV6aWVyKC44NjAsIC4wMDAsIC4wNzAsIDEuMDAwKTtcbiRlYXNlSW5PdXRTaW5lOiBjdWJpYy1iZXppZXIoLjQ0NSwgLjA1MCwgLjU1MCwgLjk1MCk7XG4kZWFzZUluT3V0RXhwbzogY3ViaWMtYmV6aWVyKDEuMDAwLCAuMDAwLCAuMDAwLCAxLjAwMCk7XG4kZWFzZUluT3V0Q2lyYzogY3ViaWMtYmV6aWVyKC43ODUsIC4xMzUsIC4xNTAsIC44NjApO1xuJGVhc2VJbk91dEJhY2s6IGN1YmljLWJlemllciguNjgwLCAtLjU1MCwgLjI2NSwgMS41NTApO1xuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gbWl4aW5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gY2xlYXJmaXhcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gY2Yge1xuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBzYWZlLWFyZWFcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gc2FmZV9hcmVhIHtcbiAgcGFkZGluZy10b3A6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBwYWRkaW5nLXRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBwYWRkaW5nLXJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZy1sZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xufVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gYeOCv+OCsOOBruOCq+ODqeODvOWkieabtFxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBtaXhpbiBhX3RhZygkY29sb3IxLCAkY29sb3IyKSB7XG4gICY6bGluayxcbiAgJjphY3RpdmUsXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRjb2xvcjE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3IyO1xuICB9XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyDjg5fjg6zjg7zjgrnjg5vjg6vjg4Djg7zjga7jgqvjg6njg7zlpInmm7Rcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yKSB7XG4gICY6cGxhY2Vob2xkZXItc2hvd24ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIG1lZGlhIHF1ZXJ5XG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIG1xKCRtaW5fd2lkdGgsICRtYXhfd2lkdGgpIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbl93aWR0aCArIHB4KSBhbmQgKG1heC13aWR0aDogJG1heF93aWR0aCArIHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBtcV9taW4oJHdpZHRoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aCArIHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBtcV9tYXgoJHdpZHRoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCArIHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gZGV2aWNlXG5AbWl4aW4gcGMge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkcGNfYnApIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIHNwIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNwX2JwKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiB0YWIge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc3BfYnAgKyAxcHgpIGFuZCAobWF4LXdpZHRoOiAkcGNfYnAgLSAxcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIHBjX3RhYiB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzcF9icCArIDFweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gc3BfdGFiIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHBjX2JwIC0gMXB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBwY19jb250ZW50IHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHBjX2JwKSBhbmQgKG1heC13aWR0aDogJGNvbnRlbnRfd2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gY3NzIGhhY2tcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDaHJvbWUoYW5kIFNhZmFyaSwgT3BlcmEpXG5AbWl4aW4gY2hyb21lIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8vIEZpcmVGb3hcbkBtaXhpbiBmaXJlZm94IHtcbiAgXzpsYW5nKHgpOjotbW96LXBsYWNlaG9sZGVyLFxuICAmIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuLy8gRWRnZVxuQG1peGluIGVkZ2Uge1xuICBfOmxhbmcoeCk6Oi1tcy0sXG4gICYge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4vLyBJRSgxMSlcbkBtaXhpbiBpZSB7XG4gIF86LW1zLWxhbmcoeCk6Oi1tcy1iYWNrZHJvcCxcbiAgJiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8vIFNhZmFyaVxuQG1peGluIHNhZmFyaSB7XG4gIF86bGFuZyh4KSArIF86LXdlYmtpdC1mdWxsLXNjcmVlbi1kb2N1bWVudCxcbiAgJiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIG9iamVjdCBmaXQgaW1hZ2VzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIG9maSgkc2l6ZSkge1xuICBvYmplY3QtZml0OiAkc2l6ZTtcblxuICBAaW5jbHVkZSBpZSB7XG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogI3skc2l6ZX07XCI7XG4gIH1cbn1cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGhpZGUgc2Nyb2xsYmFyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQG1peGluIGhpZGVfc2Nyb2xsYmFyIHtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyDjg6zjgrnjg53jg7Pjgrfjg5Zcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIOWfuuacrO+8mnB45oyH5a6a44Gu5pyA5bCP44O75pyA5aSn5YCk44KS44CBbWluVlfvvZ5tYXhWV+OBrumWk+OBp+a1geS9k+WMluOBl+OBpiBjbGFtcCgpIOOCkui/lOOBmVxuLy8g5L6L77yJZm9udC1zaXplOiBmbHVpZC1jbGFtcCgxNCwgMjAsIDM3NSwgMTM2Nik7XG5AZnVuY3Rpb24gZmx1aWQtY2xhbXAoJG1pblB4LCAkbWF4UHgsICRtaW5WVywgJG1heFZXKSB7XG4gIC8vIOWuieWFqOetllxuICAkc2xvcGU6ICgkbWF4UHggLSAkbWluUHgpIC8gKCRtYXhWVyAtICRtaW5WVyk7ICAgICAgICAgICAgICAvLyBweCAvIHZ3XG4gICRpbnRlcmNlcHQ6ICRtaW5QeCAtICRzbG9wZSAqICRtaW5WVzsgICAgICAgICAgICAgICAgICAgICAgICAvLyBweFxuICBAaWYgJG1heFZXID09ICRtaW5WVyB7XG4gICAgQHJldHVybiAjeyRtYXhQeH1weDtcbiAgfVxuICAvLyBjYWxjKCAoc2xvcGUqMTAwKXZ3ICsgaW50ZXJjZXB0cHggKVxuICBAcmV0dXJuIHVucXVvdGUoXCJjbGFtcCgjeyRtaW5QeH1weCwgY2FsYygjeygkc2xvcGUgKiAxMDApfXZ3ICsgI3skaW50ZXJjZXB0fXB4KSwgI3skbWF4UHh9cHgpXCIpO1xufVxuXG4vLyDml6LlrZjjga7jgIzln7rmupbluYXjgavlr77jgZnjgotweOOAjeOCkuOBneOBruOBvuOBvua1geS9k+WMluOBl+OBn+OBhOOBqOOBjeOBruODmOODq+ODkVxuLy8gJG51bSDjgYwgJGJhc2VWVyDjga7jgajjgY3jga7lgKTjgajjgZfjgabjgIHkuIvpmZAv5LiK6ZmQ44Gu5YCN546H44Gn5YyF44KAXG4vLyDkvovvvIlmb250LXNpemU6IHB2LWNsYW1wKDE2LCAkYmFzZVZXOjM3NSk7ICAgICAgICAgLy8gMzc14oaSMTZweCDjgpLln7rmupbjgasgMC4544CcMS4yNeWAjeOBp+a1geS9k1xuLy8gICAgIGZvbnQtc2l6ZTogcHYtY2xhbXAoMjAsIDAuOCwgMS4zLCAxMzY2LCAxOTIwKTsgLy8gUEPluK/jgaDjgZHluoPjgoHjgatcbkBmdW5jdGlvbiBwdi1jbGFtcChcbiAgJG51bSwgICAgICAgICAgICAgICAgICAgICAgIC8vIOWfuua6luW5heOBp+OBruKAnHB455u45b2T4oCdXG4gICRtaW5TY2FsZTogLjksICAgICAgICAgICAgIC8vIOS4i+mZkOWAjeeOh1xuICAkbWF4U2NhbGU6IDEuMjUsICAgICAgICAgICAgLy8g5LiK6ZmQ5YCN546HXG4gICRtaW5WVzogMzc1LCAgICAgICAgICAgICAgICAvLyDmtYHkvZPplovlp4vluYXvvIhTUOaDs+Wumu+8iVxuICAkbWF4Vlc6IDEzNjYsICAgICAgICAgICAgICAgLy8g5rWB5L2T57WC5LqG5bmF77yIUEPmg7PlrprvvIlcbiAgJGJhc2VWVzogJG1pblZXICAgICAgICAgICAgIC8vICRudW0g44KS4oCc44GT44Gu5bmF44Gu44Go44GNICRudW0gcHjigJ3jgajjgZfjgabmibHjgYZcbikge1xuICAvLyAkbnVtIOOCkuWfuua6luOBq+S4i+mZkC/kuIrpmZBweOOCkuS9nOOCi1xuICAkbWluUHg6ICRudW0gKiAkbWluU2NhbGU7XG4gICRtYXhQeDogJG51bSAqICRtYXhTY2FsZTtcblxuICAvLyDigJzln7rmupbluYXihpIkbnVtIHB44oCdIOOCkue2reaMgeOBl+OBn+OBhOWgtOWQiOOAgeS/guaVsOOCkuW+ruiqv+aVtOOBmeOCi+OBquOCieOBk+OBk+OBp+iqv+aVtOOCguWPr1xuICAvLyDvvIjjgrfjg7Pjg5fjg6vjgavjgZ3jga7jgb7jgb7ov5TjgZnlrp/oo4XvvIlcbiAgQHJldHVybiBmbHVpZC1jbGFtcCgkbWluUHgsICRtYXhQeCwgJG1pblZXLCAkbWF4VlcpO1xufVxuXG4vLyDjgYLjgarjgZ/jga7ml6LlrZhBUEnjgavlr4TjgZvjgZ/jg6njg4Pjg5HvvIjku7vmhI/vvInvvJpTUC9QQyDnlKjjg4fjg5Xjgqnjg6vjg4jluYXjgpLliIbjgZHjgZ/jgYTloLTlkIhcbkBmdW5jdGlvbiBwdkNsYW1wKCRudW0sICRtaW5TY2FsZTogLjksICRtYXhTY2FsZTogMS4yNSwgJG1pblZXOiAzNjAsICRtYXhWVzogNzY4KSB7XG4gIEByZXR1cm4gcHYtY2xhbXAoJG51bSwgJG1pblNjYWxlLCAkbWF4U2NhbGUsICRtaW5WVywgJG1heFZXLCAkbWluVlcpO1xufVxuQGZ1bmN0aW9uIHB2UENDbGFtcCgkbnVtLCAkbWluU2NhbGU6IC45LCAkbWF4U2NhbGU6IDEuMjUsICRtaW5WVzogMTAyNCwgJG1heFZXOiAxOTIwKSB7XG4gIEByZXR1cm4gcHYtY2xhbXAoJG51bSwgJG1pblNjYWxlLCAkbWF4U2NhbGUsICRtaW5WVywgJG1heFZXLCAkbWluVlcpO1xufVxuXG5AZnVuY3Rpb24gcHYoJG51bSwgJHdpZHRoOiAzOTMpIHtcbiAgQHJldHVybiBjYWxjKDF2dyAqICRudW0gLyAkd2lkdGggKiAxMDApO1xufVxuXG5AZnVuY3Rpb24gcHZQQygkbnVtLCAkd2lkdGg6IDE0NDApIHtcbiAgQHJldHVybiBjYWxjKDF2dyAqICRudW0gLyAkd2lkdGggKiAxMDApO1xufVxuIiwiQHVzZSBcInNldHRpbmdcIiBhcyAqO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gdXRpbGl0eVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBsYXlvdXRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLy8gY2xlYXJmaXhcbi51X2NmIHtcbiAgQGluY2x1ZGUgY2Y7XG59XG5cbi8vIHBj44O7c3Ag5Ye644GX5YiG44GR77yIbWVkaWEtcXVlcnnjga/jgrXjgqTjg4jjga7ku5Xmp5jjgavlkIjjgo/jgZvjgablpInmm7TjgZnjgovjgZPjgajvvIlcbkBpbmNsdWRlIHBjX3RhYiB7XG4gIC51X3BjIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAmX2kge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgICAmX2liIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgJl9mIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgICZfaWYge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuICB9XG4gIC51X3NwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgICZfaSxcbiAgICAmX2liLFxuICAgICZfZixcbiAgICAmX2lmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHNwIHtcbiAgLnVfcGMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgJl9pLFxuICAgICZfaWIsXG4gICAgJl9mLFxuICAgICZfaWYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnVfc3Age1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICZfaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICAgICZfaWIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAmX2Yge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgJl9pZiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB9XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gY29udGVudF9zaXplXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51X2NvbnRlbnRfc2l6ZSB7XG4gIHBhZGRpbmc6IDAgJHNwX3NpZGVfcGFkZGluZztcblxuICBAaW5jbHVkZSBwY190YWIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6ICRjb250ZW50X3dpZHRoO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGZvbnRfMVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZm9udF8xIHtcbiAgZm9udC1mYW1pbHk6ICRmb250XzE7XG59XG4uZm9udF8yIHtcbiAgZm9udC1mYW1pbHk6ICRmb250XzI7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRleHRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVfdHh0XzEge1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIEBpbmNsdWRlIHBjX3RhYiB7XG4gIH1cbn1cblxuLnVfdHh0XzIge1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIEBpbmNsdWRlIHBjX3RhYiB7XG4gIH1cbn1cblxuLnVfdHh0XzMge1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIEBpbmNsdWRlIHBjX3RhYiB7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gdGV4dCB3ZWlnaHRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVfbGlnaHRlciB7XG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xufVxuXG4udV9ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRleHQgYWxpZ25cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVfdGFfYyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVfdGFfciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udV90YV9jbCB7XG4gIEBpbmNsdWRlIHNwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnVfdGFfbGMge1xuICBAaW5jbHVkZSBwY190YWIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4udV90YV9jciB7XG4gIEBpbmNsdWRlIHNwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQGluY2x1ZGUgcGNfdGFiIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4udV90YV9yYyB7XG4gIEBpbmNsdWRlIHNwIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAaW5jbHVkZSBwY190YWIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBwYXJhZ3JhcGggbWFyZ2luXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51X3BhcmFncmFwaCB7XG4gICYgKyAmIHtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGhvdmVyIGFuaW1hdGlvblxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udV9ob3Zlcl8xIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG5cbiAgQGluY2x1ZGUgcGMge1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGhvZ2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLy8gLnVfaG9nZSB7XG4vLyAgIGhvZ2Vcbi8vIH1cbiIsIkB1c2UgXCJzZXR0aW5nXCIgYXMgKjtcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBjb21wb25lbnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gdGl0bGVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtdHRsLTEge1xuICAmX19qYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogZmx1aWQtY2xhbXAoMTAsMTEsMzkzLDE0NDApO1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTIsMjAsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgZ2FwOiBwdigxMCk7XG4gICAgICBmb250LXNpemU6IHB2KDEyKTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhc3BlY3QtcmF0aW86IDI2IC8gMTA7XG4gICAgICB3aWR0aDogZmx1aWQtY2xhbXAoMTgsMjYsMzkzLDE0NDApO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29udGVudDogXCJcIjtcblxuICAgICAgQGluY2x1ZGUgc3Age1xuICAgICAgICB3aWR0aDogcHYoMTgpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLl9jb2wtdyB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmLl92ZXIxIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLl92ZXIyIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHF1YXRlcm5hcnlfY29sXzM7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2VuIHtcbiAgICBjb2xvcjogJHByaW1hcnlfY29sXzE7XG4gICAgZm9udC1zaXplOiBmbHVpZC1jbGFtcCg1MCwxMjAsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgZm9udC1zaXplOiBwdig1MCk7XG4gICAgfVxuICB9XG59XG5cbi5jLXR0bC0yIHtcbiAgJl9famEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IGZsdWlkLWNsYW1wKDEwLDExLDM5MywxNDQwKTtcbiAgICBmb250LXNpemU6IGZsdWlkLWNsYW1wKDEyLDIwLDM5MywxNDQwKTtcblxuICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgIGdhcDogcHYoMTApO1xuICAgICAgZm9udC1zaXplOiBwdigxMik7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYXNwZWN0LXJhdGlvOiAyNiAvIDEwO1xuICAgICAgd2lkdGg6IGZsdWlkLWNsYW1wKDE4LDI2LDM5MywxNDQwKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgICAgd2lkdGg6IHB2KDE4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5fY29sLXcge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgJi5fdmVyMSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5fdmVyMiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRxdWF0ZXJuYXJ5X2NvbF8zO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19lbiB7XG4gICAgY29sb3I6ICRwcmltYXJ5X2NvbF8xO1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoNDMsNjAsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgZm9udC1zaXplOiBwdig0Myk7XG4gICAgfVxuICB9XG59XG5cbi5jX3R0bF8zIHtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gYnV0dG9uc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jX2J0bl8xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAgMCBmbHVpZC1jbGFtcCg0NSw0NSwzOTMsMTQ0MCk7XG4gIHdpZHRoOiBmbHVpZC1jbGFtcCgyNzIsMjcyLDM5MywxNDQwKTtcbiAgaGVpZ2h0OiBmbHVpZC1jbGFtcCg2Miw2MiwzOTMsMTQ0MCk7XG4gIGJvcmRlci1yYWRpdXM6IGZsdWlkLWNsYW1wKDY0LDY0LDM5MywxNDQwKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICRzZWNvbmRhcnlfY29sXzEgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiBmbHVpZC1jbGFtcCgyMCwyMCwzOTMsMTQ0MCk7XG4gIGZvbnQtZmFtaWx5OiAkZm9udF8yO1xuXG4gIEBpbmNsdWRlIHNwIHtcbiAgICBwYWRkaW5nOiAwIDAgMCBwdig0NSk7XG4gICAgd2lkdGg6IHB2KDI3Mik7XG4gICAgaGVpZ2h0OiBwdig2Mik7XG4gICAgZm9udC1zaXplOiBwdigyMCk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogZmx1aWQtY2xhbXAoMjUsMjUsMzkzLDE0NDApO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgd2lkdGg6IGZsdWlkLWNsYW1wKDEzLDEzLDM5MywxNDQwKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnlfY29sXzE7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0cmFuc2l0aW9uOiAuNHMgYWxsIGVhc2U7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgcmlnaHQ6IHB2KDI1KTtcbiAgICAgIHdpZHRoOiBwdigxMyk7XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmNfYnRuXzIge1xufVxuXG4uY19idG5fMyB7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGljb25cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtaWNvLWNoZXZyb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICB3aWR0aDogZmx1aWQtY2xhbXAoNTIsNTIsMzkzLDE0NDApO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICRzZWNvbmRhcnlfY29sXzI7XG5cbiAgQGluY2x1ZGUgc3Age1xuICAgIHdpZHRoOiBwdig1Mik7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYXNwZWN0LXJhdGlvOiA5IC8gMTU7XG4gICAgd2lkdGg6IGZsdWlkLWNsYW1wKDksOSwzOTMsMTQ0MCk7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblxuICAgIG1hc2s6IHVybCguLi9pbWcvY29tbW9uL2ljby1jaGV2cm9uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgd2lkdGg6IHB2KDkpO1xuICAgIH1cbiAgfVxufVxuXG4uY19pY29fMiB7XG59XG5cbi5jX2ljb18zIHtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gdGFibGVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNfdGFibGVfMSB7XG59XG5cbi5jX3RhYmxlXzIge1xufVxuXG4uY190YWJsZV8zIHtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gbGlzdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vLyBjX2xpc3RfMVxuLmNfbGlzdF8xIHtcbn1cblxuLy8gY19saXN0XzJcbi5jX2xpc3RfMiB7XG59XG5cbi8vIGNfbGlzdF8zXG4uY19saXN0XzMge1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBpdGVtXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8vIGNfaXRlbV8xXG4uY19pdGVtXzEge1xufVxuXG4vLyBjX2l0ZW1fMlxuLmNfaXRlbV8yIHtcbn1cblxuLy8gY19pdGVtXzNcbi5jX2l0ZW1fMyB7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHNsaWRlclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uY19zbGlkZXIge1xuICAuc2xpY2stZG90cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzg4ODtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgIGxlZnQ6IDZweDtcbiAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jX3NsaWRlcl8xIHtcbn1cblxuLmNfc2xpZGVyXzIge1xufVxuXG4uY19zbGlkZXJfMyB7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHBhZ2VyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jX3BhZ2VyX251bSB7XG59XG5cbi5jX3BhZ2VyX3ByZXZfbmV4dCB7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGhvZ2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNfaG9nZSB7XG59XG4iLCJAdXNlIFwic2V0dGluZ1wiIGFzICo7XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gbGF5b3V0XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGwtY29udGFpbmVyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5sLWNvbnRhaW5lciB7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGwtaGVhZGVyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5sLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogZmx1aWQtY2xhbXAoMjAsNDAsMzkzLDE0NDApIGZsdWlkLWNsYW1wKDIwLDIwLDM5MywxNDQwKSAwO1xuICB3aWR0aDogMTAwJTtcblxuICAmX19pbnIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgbXFfbWF4KDEwMjUpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGdhcDogNDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gICYtbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogZmx1aWQtY2xhbXAoNSw0MCwzOTMsMTQ0MCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiBmbHVpZC1jbGFtcCg1LDE3LDM5MywxNDQwKTtcblxuICAgIEBpbmNsdWRlIG1xX21heCgxMDI1KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgICY6aG92ZXIgLmwtaGVhZGVyLW5hdl9fbGluazpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5X2NvbF8yO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNHMgYWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xvZ28ge1xuICAgIGZsZXg6IDAgMSBjbGFtcCgxNTRweCwgY2FsYygxNTRweCArICgyNDAgLSAxNTQpICogKCgxMDB2dyAtIDM5M3B4KSAvICgxNDQwIC0gMzkzKSkpLFxuICAgIDI0MHB4KTtcblxuICAgIEBpbmNsdWRlIG1xX21heCg0ODApIHtcbiAgICAgIGZsZXg6IDAgMSBwdigxNTQpO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJl9fYnRuLWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogZmx1aWQtY2xhbXAoOCwzMCwzOTMsMTQ0MCk7XG4gIH1cblxuICAmX19idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogZmx1aWQtY2xhbXAoNzAsMTM4LDM5MywxNDQwKTtcbiAgICBoZWlnaHQ6IGZsdWlkLWNsYW1wKDIyLDQ1LDM5MywxNDQwKTtcbiAgICBib3JkZXItcmFkaXVzOiBmbHVpZC1jbGFtcCg4MCw4MCwzOTMsMTQ0MCk7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTIsMTcsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgd2lkdGg6IHB2KDcwKTtcbiAgICAgIGhlaWdodDogcHYoMjIpO1xuICAgICAgZm9udC1zaXplOiBwdigxMik7XG4gICAgfVxuICAgICYuX3ZlcjEge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnlfY29sXzI7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeV9jb2xfMjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogJHByaW1hcnlfY29sXzIgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5fdmVyMiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGVydGlhcnlfY29sXzE7XG4gICAgICBiYWNrZ3JvdW5kOiAkdGVydGlhcnlfY29sXzE7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29sb3I6ICR0ZXJ0aWFyeV9jb2xfMSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2hhbS1idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDMwcHg7XG4gICAgcmlnaHQ6IGZsdWlkLWNsYW1wKDIwLDEwLDM5MywxNDQwKTtcbiAgICBhc3BlY3QtcmF0aW86IDI1IC8gOTtcbiAgICB3aWR0aDogZmx1aWQtY2xhbXAoMjUsNTAsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgdG9wOiAyNXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcV9taW4oMTAyNikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgLmJhciB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHRvcDogNTAlO1xuXG4gICAgICAgICAgcm90YXRlOiAoLTI1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgYm90dG9tOiA1MCU7XG5cbiAgICAgICAgICByb3RhdGU6ICgyNWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1jbG9uZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogLTEwMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHBhZGRpbmc6IGZsdWlkLWNsYW1wKDEwLDEwLDM5MywxNDQwKSBmbHVpZC1jbGFtcCgyMCwyMCwzOTMsMTQ0MCk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiAuNnMgYWxsIGVhc2U7XG4gICAgLmwtaGVhZGVyLW5hdl9fbGluayB7XG4gICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgLmwtaGVhZGVyX19oYW0tYnRuIHtcbiAgICAgIHRvcDogMjBweDtcblxuICAgICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgICB0b3A6IDE3cHg7XG4gICAgICB9XG4gICAgICAuYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmwtaGVhZGVyLW5hdi1kcm9wLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTUlO1xuICBsZWZ0OiA1MCU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcGFkZGluZzogMjBweCAwIDA7XG4gIG1pbi13aWR0aDogMTc1cHg7XG4gIG1heC13aWR0aDogaW5oZXJpdDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBmb250LXNpemU6IGZsdWlkLWNsYW1wKDEyLDE0LDM5MywxNDQwKTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxOTUsIDUxLCA1MSwgLjUpO1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuICB9XG59XG5cbi5sLWhlYWRlci1uYXZfX2l0ZW06aG92ZXIgLmwtaGVhZGVyLW5hdi1kcm9wLW1lbnUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubC1oYW1idXJnZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBhZGRpbmc6IGZsdWlkLWNsYW1wKDIwLDQwLDM5MywxNDQwKSBmbHVpZC1jbGFtcCgyMCwyMCwzOTMsMTQ0MCkgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwbHZoO1xuICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5X2NvbF8yO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBpbnNldDogMDtcbiAgQGluY2x1ZGUgbXFfbWluKDEwMjYpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIH1cblxuICAmX19sb2dvIHtcbiAgICBtYXJnaW46IDAgMCBmbHVpZC1jbGFtcCgyMCw0MCwzOTMsMTQ0MCk7XG4gICAgd2lkdGg6IGNsYW1wKDE1NHB4LCBjYWxjKDE1NHB4ICsgKDI0MCAtIDE1NCkgKiAoKDEwMHZ3IC0gMzkzcHgpIC8gKDE0NDAgLSAzOTMpKSksXG4gICAgMjQwcHgpO1xuXG4gICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgbWFyZ2luOiAwIDAgcHYoMzApO1xuICAgICAgd2lkdGg6IHB2KDE1NCk7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmLW5hdiB7XG4gICAgJl9faXRlbSB7XG4gICAgICBwYWRkaW5nOiAwIDAgZmx1aWQtY2xhbXAoMjAsMjAsMzkzLDE0NDApO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjQpO1xuXG4gICAgICBAaW5jbHVkZSBtcV9tYXgoNDgwKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCBwdigyMCk7XG4gICAgICB9XG4gICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgICBtYXJnaW46IGZsdWlkLWNsYW1wKDIwLDIwLDM5MywxNDQwKSAwIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgICAgIG1hcmdpbjogcHYoMjApIDAgMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmX19saW5rIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGZsdWlkLWNsYW1wKDMwLDMwLDM5MywxNDQwKTtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMjAsMjAsMzkzLDE0NDApO1xuXG4gICAgICBAaW5jbHVkZSBtcV9tYXgoNDgwKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcHYoMzApO1xuICAgICAgICBmb250LXNpemU6IHB2KDE0KTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgd2lkdGg6IGZsdWlkLWNsYW1wKDYsNiwzOTMsMTQ0MCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnlfY29sXzE7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICBAaW5jbHVkZSBtcV9tYXgoNDgwKSB7XG4gICAgICAgICAgd2lkdGg6IHB2KDYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICZfX3N1Ym5hdiB7XG4gICAgICBtYXJnaW4tdG9wOiBmbHVpZC1jbGFtcCgyMCwyMCwzOTMsMTQ0MCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGZsdWlkLWNsYW1wKDMwLDMwLDM5MywxNDQwKTtcblxuICAgICAgQGluY2x1ZGUgbXFfbWF4KDQ4MCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBwdigyMCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcHYoMzApO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19zdWJsaW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjYpICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTYsMTYsMzkzLDE0NDApO1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjIgLyAxMik7XG5cbiAgICAgIEBpbmNsdWRlIG1xX21heCg0ODApIHtcbiAgICAgICAgZm9udC1zaXplOiBwdigxMik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fYnRuLWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IGZsdWlkLWNsYW1wKDQwLDQwLDM5MywxNDQwKTtcbiAgICBtYXJnaW46IGZsdWlkLWNsYW1wKDQ1LDQ1LDM5MywxNDQwKSAwIDA7XG5cbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICBnYXA6IHB2KDQwKTtcbiAgICAgIG1hcmdpbjogcHYoNDYpIDAgMDtcbiAgICB9XG4gIH1cblxuICAmX19idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogZmx1aWQtY2xhbXAoMTQ2LDE0NiwzOTMsMTQ0MCk7XG4gICAgaGVpZ2h0OiBmbHVpZC1jbGFtcCg0Niw0NiwzOTMsMTQ0MCk7XG4gICAgYm9yZGVyLXJhZGl1czogZmx1aWQtY2xhbXAoODAsODAsMzkzLDE0NDApO1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IGZsdWlkLWNsYW1wKDE2LDE2LDM5MywxNDQwKTtcblxuICAgIEBpbmNsdWRlIG1xX21heCg0ODApIHtcbiAgICAgIHdpZHRoOiBwdigxNDYpO1xuICAgICAgaGVpZ2h0OiBwdig0Nik7XG4gICAgICBmb250LXNpemU6IHB2KDE2KTtcbiAgICB9XG4gICAgJi5fdmVyMSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeV9jb2xfMjtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5X2NvbF8yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeV9jb2xfMiAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmLl92ZXIyIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0ZXJ0aWFyeV9jb2xfMTtcbiAgICAgIGJhY2tncm91bmQ6ICR0ZXJ0aWFyeV9jb2xfMTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogJHRlcnRpYXJ5X2NvbF8xICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGwtYnJlYWRjcnVtYnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmwtYnJlYWRjcnVtYnMge1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBsLW1haW5fdmlzdWFsXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5sLW1haW4tdmlzdWFsLXRvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBsdmg7XG5cbiAgQGluY2x1ZGUgc3Age1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogcHYoMTAwKSBwdigyMCkgcHYoNDUpO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxNiwxMCw0NiwuOCk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gICZfX3R0bCB7XG4gICAgYXNwZWN0LXJhdGlvOiA2NTMgLyAzNTM7XG4gICAgd2lkdGg6IGZsdWlkLWNsYW1wKDIzNSw2NTMsMzkzLDE0NDApO1xuICAgIC5pbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gICZfX3R4dCB7XG4gICAgbWFyZ2luOiBmbHVpZC1jbGFtcCgyNSw2MCwzOTMsMTQ0MCkgMCAwO1xuICAgIGNvbG9yOiAkcHJpbWFyeV9jb2xfMTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTIsMjAsMzkzLDE0NDApO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICB9XG5cbiAgJl9fYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gICZfX3ZpZGVvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cbi5sLW1haW5fdmlzdWFsIHtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gbC1jdGFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmwtY3RhIHtcbiAgcGFkZGluZzogZmx1aWQtY2xhbXAoMTAwLDIwMCwzOTMsMTQ0MCkgZmx1aWQtY2xhbXAoMjAsODAsMzkzLDE0NDApO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAmX19pbnIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogZmx1aWQtY2xhbXAoMTAwLDcwLDM5MywxNDQwKSBmbHVpZC1jbGFtcCgwLDU1LDM5MywxNDQwKSBmbHVpZC1jbGFtcCgxMDAsMTAwLDM5MywxNDQwKSBmbHVpZC1jbGFtcCgzMCwxMTUsMzkzLDE0NDApO1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG5cbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gICZfX2luZm8ge1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTYsMjAsMzkzLDE0NDApO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDM4IC8gMjApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgbWFyZ2luOiBwdigyMCkgMCAwO1xuICAgICAgZm9udC1zaXplOiBwdigxNik7XG4gICAgICBsaW5lLWhlaWdodDogY2FsYygzOCAvIDE2KTtcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgbWFyZ2luOiBwdigzMCkgMCAwO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5X2NvbF8xO1xuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBsLWZvb3RlclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubC1mb290ZXIge1xuICBwYWRkaW5nOiBmbHVpZC1jbGFtcCgxMDAsMTAwLDM5MywxNDQwKSBmbHVpZC1jbGFtcCgyMCw4MCwzOTMsMTQ0MCkgZmx1aWQtY2xhbXAoMjUsNDAsMzkzLDE0NDApO1xuICBiYWNrZ3JvdW5kOiAkcXVhdGVybmFyeV9jb2xfMTtcblxuICAmX19sb2dvX2JveCB7XG4gICAgbWFyZ2luOiAwIDAgZmx1aWQtY2xhbXAoMzAsNDAsMzkzLDE0NDApO1xuICAgIHBhZGRpbmc6IDAgMCBmbHVpZC1jbGFtcCgzMCw0NSwzOTMsMTQ0MCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRxdWF0ZXJuYXJ5X2NvbF8yO1xuICB9XG5cbiAgJl9fbG9nbyB7XG4gICAgd2lkdGg6IGZsdWlkLWNsYW1wKDI0MCwyNDAsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgd2lkdGg6IHB2KDI0MCk7XG4gICAgfVxuICAgIC5pbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJl9faW5mbyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiBwdlBDKDE2KTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygzOCAvIDE2KTtcblxuICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgIGZvbnQtc2l6ZTogcHYoMTYpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiBmbHVpZC1jbGFtcCg0MCw5MCwzOTMsMTQ0MCk7XG5cbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAmX19uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiBmbHVpZC1jbGFtcCgxNSw2MCwzOTMsMTQ0MCk7XG5cbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwxZnIpO1xuICAgICAgZ2FwOiBwdig1KTtcbiAgICAgIG1hcmdpbjogcHYoNTApIDAgMDtcbiAgICB9XG4gICAgJi1pdGVtIHtcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBmbHVpZC1jbGFtcCgxNSwyMCwzOTMsMTQ0MCk7XG5cbiAgICAgICAgQGluY2x1ZGUgc3Age1xuICAgICAgICAgIG1hcmdpbi10b3A6IHB2KDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtbGluayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiBmbHVpZC1jbGFtcCgzMCwzMCwzOTMsMTQ0MCk7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IGZsdWlkLWNsYW1wKDE2LDE3LDM5MywxNDQwKTtcblxuICAgICAgQGluY2x1ZGUgc3Age1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHB2KDEyKTtcbiAgICAgICAgZm9udC1zaXplOiBwdigxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDQ1IC8gMTYpO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICB3aWR0aDogZmx1aWQtY2xhbXAoNiw2LDM5MywxNDQwKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeV9jb2xfMTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgICAgICB3aWR0aDogcHYoNik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1zdWIge1xuICAgICAgbWFyZ2luOiBmbHVpZC1jbGFtcCgxMCwxMCwzOTMsMTQ0MCkgMCAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiBmbHVpZC1jbGFtcCgzMCwzMCwzOTMsMTQ0MCk7XG5cbiAgICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHB2KDEyKTtcbiAgICAgIH1cbiAgICAgICYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNikgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiBmbHVpZC1jbGFtcCgxMiwxMiwzOTMsMTQ0MCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDIyIC8gMTIpO1xuXG4gICAgICAgIEBpbmNsdWRlIHNwIHtcbiAgICAgICAgICBmb250LXNpemU6IHB2KDEyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19idG4tYm94IHtcbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwxZnIpO1xuICAgICAgZ2FwOiBwdigzMCk7XG4gICAgICBtYXJnaW46IHB2KDQwKSAwIDA7XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiBmbHVpZC1jbGFtcCgxNjAsMTM4LDM5MywxNDQwKTtcbiAgICBoZWlnaHQ6IGZsdWlkLWNsYW1wKDQ1LDQ1LDM5MywxNDQwKTtcbiAgICBib3JkZXItcmFkaXVzOiBmbHVpZC1jbGFtcCg4MCw4MCwzOTMsMTQ0MCk7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogZmx1aWQtY2xhbXAoMTcsMTcsMzkzLDE0NDApO1xuXG4gICAgQGluY2x1ZGUgc3Age1xuICAgICAgd2lkdGg6IHB2KDE2MCk7XG4gICAgICBoZWlnaHQ6IHB2KDQ1KTtcbiAgICAgIGZvbnQtc2l6ZTogcHYoMTcpO1xuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLXRvcDogZmx1aWQtY2xhbXAoMzUsMzUsMzkzLDE0NDApO1xuXG4gICAgICBAaW5jbHVkZSBzcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5fdmVyMSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeV9jb2xfMjtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5X2NvbF8yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeV9jb2xfMiAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmLl92ZXIyIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0ZXJ0aWFyeV9jb2xfMTtcbiAgICAgIGJhY2tncm91bmQ6ICR0ZXJ0aWFyeV9jb2xfMTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogJHRlcnRpYXJ5X2NvbF8xICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29weXJpZ2h0IHtcbiAgICBtYXJnaW46IGZsdWlkLWNsYW1wKDUwLDM1LDM5MywxNDQwKSAwIDA7XG4gICAgY29sb3I6ICM3YjdiN2I7XG4gICAgZm9udC1zaXplOiBmbHVpZC1jbGFtcCgxMiwxMiwzOTMsMTQ0MCk7XG5cbiAgICBAaW5jbHVkZSBzcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gY29tbW9uIHN0eWxlIGluZGV4XG7jg7tyZXNldFxu44O7c2V0dGluZ1xu44O7YmFzZVxu44O7dXRpbGl0eVxu44O7Y29tcG9uZW50XG7jg7tsYXlvdXRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8g44Oq44K744OD44OIXG5AdXNlIFwicmVzZXRcIjtcblxuLy8g5aSJ5pWw5a6a576p44O744Of44OD44Kv44K544Kk44OzXG5AdXNlIFwic2V0dGluZ1wiO1xuXG4vLyDjg5njg7zjgrlcbkB1c2UgXCJiYXNlXCI7XG5cbi8vIOaxjueUqOOCr+ODqeOCuVxuQHVzZSBcInV0aWxpdHlcIjtcblxuLy8g44Kz44Oz44Od44O844ON44Oz44OIXG5AdXNlIFwiY29tcG9uZW50XCI7XG5cbi8vIOODrOOCpOOCouOCpuODiFxuQHVzZSBcImxheW91dFwiO1xuIl19 */
