html {
  scroll-behavior: smooth
}

body {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  position: relative;
  width: 100%;
  min-height: 100vh
}

*,
::after,
::before {
  box-sizing: border-box
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  font-size: 100%;
  font: inherit;
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline
}

:focus {
  outline: 0
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block
}

ol,
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

td:empty,
th:empty {
  opacity: 0
}

input:required,
input {
  box-shadow: none
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #fff inset
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
  -moz-appearance: none
}

input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
  box-sizing: content-box
}

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical
}

audio,
canvas,
video {
  display: inline-block;
  max-width: 100%
}

audio:not([controls]) {
  display: none;
  height: 0
}

[hidden] {
  display: none
}

a:active,
a:hover {
  outline: none
}

img {
  border: 0;
  max-width: 100%;
  display: inline-block;
  vertical-align: middle;
  height: auto
}

picture {
  display: inline-block
}

figure {
  margin: 0
}

button,
input {
  line-height: normal
}

button,
select {
  text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
  border: 0;
  background: rgba(0, 0, 0, 0)
}

button::-moz-focus-inner {
  border: 0
}

button[disabled],
html input[disabled] {
  cursor: default
}

input[type=checkbox],
input[type=radio] {
  padding: 0
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0
}

button {
  border: 0;
  background: rgba(0, 0, 0, 0)
}

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

hr {
  box-sizing: content-box;
  overflow: visible;
  background: #000;
  border: 0;
  height: 1px;
  line-height: 0;
  margin: 0;
  padding: 0;
  page-break-after: always;
  width: 100%
}

pre {
  font-family: monospace, monospace;
  font-size: 100%
}

a {
  background-color: rgba(0, 0, 0, 0)
}

abbr[title] {
  border-bottom: none;
  text-decoration: none
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 100%
}

small {
  font-size: 75%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -5px
}

sup {
  top: -5px
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1;
  margin: 0;
  padding: 0
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
  outline: 0
}

legend {
  color: inherit;
  white-space: normal;
  display: block;
  border: 0;
  max-width: 100%;
  width: 100%
}

fieldset {
  min-width: 0
}

body:not(:-moz-handler-blocked) fieldset {
  display: block
}

progress {
  vertical-align: baseline
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

summary {
  display: list-item
}

template {
  display: none
}

html,
body {
  font-family: dnp-shuei-gothic-gin-std, Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15px;
  line-height: 2;
  letter-spacing: .05em;
  color: #282828;
  background: #fff none;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
  scrollbar-gutter: stable
}

*::-moz-selection {
  background: rgba(0, 0, 0, .2)
}

*::selection {
  background: rgba(0, 0, 0, .2)
}

*::-moz-selection {
  background: rgba(0, 0, 0, .2)
}

img {
  max-width: 100%;
  height: auto
}

a {
  color: #111;
  text-decoration: none
}

.grecaptcha-badge {
  visibility: hidden
}

.oh-open {
  overflow: hidden;
  z-index: -1;
  width: 100%;
  height: 100%
}

.wrp {
  overflow: hidden
}

.bg_gray {
  background-color: #edf2f4
}

.contents {
  margin-bottom: 465px
}

@media(max-width: 767px) {
  .contents {
    margin-bottom: 285px
  }
}

@media screen and (min-width: 768px) {
  #wrapper {
    min-width: 1024px
  }

  #wrapper .w1000 {
    width: 1000px;
    margin-right: auto;
    margin-left: auto
  }
}

.block_subtxt {
  font-size: 12px
}

.link_txt {
  text-decoration: underline;
  color: #e3c627;
  font-weight: bold
}

.blockttl {
  text-align: center;
  letter-spacing: .08em;
  margin-bottom: 35px
}

.blockttl__main {
  font-size: 28px;
  line-height: 1.35;
  margin-bottom: 5px
}

@media(max-width: 767px) {
  .blockttl__main {
    font-size: 20px;
    margin-bottom: 5px
  }
}

.blockttl__sub {
  color: #ccd5d9;
  font-size: 15px;
  line-height: 1
}

@media(max-width: 767px) {
  .blockttl__sub {
    font-size: 12px
  }
}

.blockttl--wh,
.blockttl--wh .blockttl__sub {
  color: #fff
}

.wave-wrp {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 90px;
  width: 100%
}

.wave-wrp>canvas {
  width: 100%;
  height: 90px
}

.archive-wrp {
  width: 100%;
  padding: 130px 2%;
  margin: 0 auto;
  max-width: 1100px
}

@media(max-width: 767px) {
  .archive-wrp {
    padding: 60px 15px 15px
  }
}

.archive-list {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  margin-bottom: 60px
}

@media(max-width: 767px) {
  .archive-list {
    display: block;
    margin-bottom: 50px
  }
}

.archive-item {
  position: relative;
  margin: 0 4% 70px;
  width: 42%;
  transition: ease .5s
}

@media(max-width: 767px) {
  .archive-item {
    margin: 0 0 40px;
    width: 100%
  }
}

.archive-item__link {
  display: block;
  width: 100%;
  height: 100%
}

.archive-item__link:hover .archive-item__ttl {
  color: #c5b803
}

.archive-item__link:hover .archive-item__img-in {
  transform: scale(1.2);
  filter: grayscale(100%)
}

.archive-item__img {
  width: 100%;
  height: 243px;
  margin-bottom: 20px;
  position: relative;
  overflow: hidden
}

@media(max-width: 767px) {
  .archive-item__img {
    height: 178px;
    margin-bottom: 15px
  }
}

.archive-item__img-in {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/ogp.avif);
  transition: .5s ease
}

.archive-item__info {
  padding-bottom: 10px
}

.archive-item__ttl {
  font-size: 25px;
  line-height: 1.533;
  letter-spacing: 0;
  margin-bottom: 40px;
  transition: .5s ease
}

@media(max-width: 767px) {
  .archive-item__ttl {
    font-size: 20px;
    margin-bottom: 25px
  }
}

.archive-item-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%
}

@media(max-width: 767px) {
  .archive-item-meta {
    position: relative
  }
}

.archive-item__days {
  font-size: 12px;
  letter-spacing: 0
}

@media(max-width: 767px) {
  .archive-item__days {
    font-size: 11px
  }
}

[class^=caticon--] {
  display: block;
  font-size: 12px;
  font-weight: bold;
  background-color: #d0dade;
  color: #fff;
  padding: 3px 15px
}

@media(max-width: 767px) {
  [class^=caticon--] {
    font-size: 10px;
    padding: 3px 10px
  }
}

.sharebtn {
  margin: 40px 0 30px
}

@media(max-width: 767px) {
  .sharebtn {
    margin: 10px 0 50px
  }
}

.sharebtn-list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap
}

.sharebtn-list>li {
  margin: 0 7px
}

.sharebtn-list>li>a {
  font-size: 20px;
  width: 40px;
  height: 40px;
  background-color: #f4f4f4;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  color: #999;
  transition: .5s ease
}

@media screen and (min-width: 768px) {
  .sharebtn-list>li>a:hover {
    color: #fff
  }

  .sharebtn-item--fb:hover {
    background-color: #3b5998
  }

  .sharebtn-item--tw:hover {
    background-color: #1da1f2
  }

  .sharebtn-item--pkt:hover {
    background-color: #ef4056
  }

  .sharebtn-item--htn:hover {
    background-color: #00a4de
  }
}

.breadcrumb__list {
  padding: 15px 30px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  font-size: 14px
}

@media(max-width: 767px) {
  .breadcrumb__list {
    padding: 55px 0 10px;
    font-size: 12px
  }
}

.breadcrumb__list>li:not(:last-child)::after {
  content: ">";
  display: inline-block;
  position: relative;
  margin: 0 5px
}

.breadcrumb__list>li>a {
  text-decoration: underline
}

@media screen and (min-width: 768px) {
  .breadcrumb__list>li>a:hover {
    text-decoration: none
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important
  }
}

@media screen and (min-width: 769px) {
  .sp {
    display: none !important
  }
}

.dn {
  display: none
}

.tac {
  text-align: center
}

#header {
  position: fixed;
  right: 20px;
  top: 20px;
  z-index: 10001
}

@media(max-width: 767px) {
  #header {
    right: 10px;
    top: 10px
  }
}

#header .header-in {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  position: relative;
  z-index: 10001
}

#header .ham-wrap {
  width: 40px;
  height: 40px;
  background-color: #0d0d0d;
  margin-bottom: 10px
}

#header .ham-wrap.is-active .ham-menu__btn-l:nth-child(1) {
  top: 20px;
  transform: rotate(45deg)
}

#header .ham-wrap.is-active .ham-menu__btn-l:nth-child(2) {
  left: 20px;
  opacity: 0
}

#header .ham-wrap.is-active .ham-menu__btn-l:nth-child(3) {
  top: 20.4px;
  transform: rotate(-45deg)
}

@media(any-hover: hover) {
  #header .ham-wrap:not(.is-active):hover .ham-menu__btn-l:nth-child(1) {
    top: 14px
  }

  #header .ham-wrap:not(.is-active):hover .ham-menu__btn-l:nth-child(3) {
    top: 24px
  }
}

#header .ham-menu__btn-l {
  width: 15px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  display: block;
  transition: .3s ease
}

#header .ham-menu__btn-l:nth-child(1) {
  top: 12px
}

#header .ham-menu__btn-l:nth-child(2) {
  top: 19px
}

#header .ham-menu__btn-l:nth-child(3) {
  top: 26px
}

#header .header-contact {
  width: 40px;
  height: 40px;
  background-color: #f6e500;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-size: 18px;
  margin-bottom: 20px;
  transition: .5s ease
}

@media(any-hover: hover) {
  #header .header-contact:hover {
    background-color: #0d0d0d;
    color: #f6e500
  }
}

#header .header-logo {
  line-height: 1
}

#header .logo__link {
  letter-spacing: .3em;
  color: #fff;
  writing-mode: vertical-rl
}

#header .header__nav {
  width: 100%;
  height: 100vh;
  pointer-events: none;
  position: fixed;
  top: 0;
  right: 0;
  transition: visibility .7s ease;
  visibility: hidden;
  padding: 0 5vw;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  text-align: center
}

#header .header__nav::before,
#header .header__nav::after {
  content: "";
  width: 100%;
  height: 0%;
  position: absolute;
  top: 0;
  left: 0
}

#header .header__nav::before {
  transition: height .4s ease .4s;
  opacity: .8;
  background: linear-gradient(132deg, rgb(77, 135, 200) 0%, rgb(19, 149, 172) 78%)
}

#header .header__nav::after {
  transition: height .4s ease .3s;
  opacity: .2;
  background-color: #fff;
  z-index: 1
}

#header .header__nav .header__nav-list {
  position: relative;
  z-index: 2;
  color: #fff;
  opacity: 0;
  transition: opacity .2s ease .2s
}

#header .header__nav .header__nav-item {
  font-size: 1.4vw;
  letter-spacing: .08em;
  font-weight: 600;
  line-height: 1.2;
  opacity: 0;
  transform: translateX(50px);
  transition: .6s ease
}

@media(max-width: 767px) {
  #header .header__nav .header__nav-item {
    font-size: 5.4vw
  }
}

#header .header__nav .header__nav-item:not(:last-child) {
  margin-bottom: 1vw
}

@media(max-width: 767px) {
  #header .header__nav .header__nav-item:not(:last-child) {
    margin-bottom: 6vw
  }
}

#header .header__nav .header__nav-link {
  transition: .5s ease;
  position: relative;
  color: #fff
}

#header .header__nav .header__nav-link::before {
  content: "";
  width: 0;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transition: .5s ease
}

@media(any-hover: hover) {
  #header .header__nav .header__nav-link:hover {
    color: #f6e500;
    padding-left: 1.5em
  }

  #header .header__nav .header__nav-link:hover::before {
    width: 20px
  }
}

@media screen and (min-width: 768px) {
  #header .header__nav-link::before {
    content: "";
    width: 0;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transition: .5s ease
  }
}

@media screen and (min-width: 768px)and (any-hover: hover) {
  #header .header__nav-link:hover {
    color: #f6e500;
    padding-left: 1.5em
  }

  #header .header__nav-link:hover::before {
    width: 20px
  }
}

#header .header__nav.is-active {
  opacity: 1;
  pointer-events: auto;
  transition: visibility .7s ease;
  visibility: visible
}

#header .header__nav.is-active::before {
  height: 100%;
  transition: height .3s linear
}

#header .header__nav.is-active::after {
  height: 100%;
  transition: height .3s linear .3s
}

#header .header__nav.is-active .header__nav-list {
  opacity: 1;
  transition: opacity .2s ease
}

#header .header__nav.is-active .header__nav-item {
  transform: translateX(0);
  opacity: 1;
  transition: .3s ease .3s
}

#header .header__nav.is-active .header__nav-item:nth-child(1) {
  transition: .3s ease .2s
}

#header .header__nav.is-active .header__nav-item:nth-child(2) {
  transition: .3s ease .3s
}

#header .header__nav.is-active .header__nav-item:nth-child(3) {
  transition: .3s ease .4s
}

#header .header__nav.is-active .header__nav-item:nth-child(4) {
  transition: .3s ease .5s
}

#header .header__nav.is-active .header__nav-item:nth-child(5) {
  transition: .3s ease .6s
}

#header .header__nav.is-active .header__nav-item:nth-child(6) {
  transition: .3s ease .7s
}

.overlay {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 130%;
  background-color: rgba(0, 0, 0, .8)
}

#footer {
  color: #fff;
  position: fixed;
  background-color: #fff;
  bottom: 0;
  left: 0;
  width: 100%
}

.footer-in {
  width: 100%;
  height: 465px;
  background: url(../img/footer/bg_01.avif) center top/cover no-repeat;
  padding: 166px 0 0
}

@media(max-width: 767px) {
  .footer-in {
    height: 285px;
    padding: 126px 15px 0;
    background-position: center right 33%
  }
}

.footer-logo,
.footer-logo>img {
  display: block;
  width: 320px;
  margin: 0 auto
}

@media(max-width: 767px) {

  .footer-logo,
  .footer-logo>img {
    width: 170px
  }
}

.footer-txt {
  text-align: center;
  margin-top: 55px;
  margin-bottom: 85px
}

@media(max-width: 767px) {
  .footer-txt {
    margin-top: 25px;
    margin-bottom: 45px
  }
}

.footer-copy {
  text-align: center;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .08em;
  margin-top: 55px;
  color: #fff
}

@media(max-width: 767px) {
  .footer-copy {
    margin-top: 35px
  }
}

.index .lcl-main {
  width: 100%;
  height: 48vw;
  background: url(../img/main/bg_01.avif) left top/cover no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  overflow: hidden;
  z-index: 2
}

@media screen and (min-width: 768px) {
  .index .lcl-main {
    min-height: 550px;
    max-height: 950px
  }
}

.index .lcl-main__ttl {
  position: relative;
  z-index: 1
}

.index .lcl-main__ttl>svg {
  margin-bottom: 20px;
  width: 320px;
  fill: none;
  stroke: #fff;
  stroke-width: 8;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500;
  animation: hello 2s ease-in forwards 2s
}

@keyframes hello {
  0% {
    fill: rgba(0, 0, 0, 0)
  }

  50% {
    fill: rgba(0, 0, 0, 0)
  }

  100% {
    fill: #fff
  }
}

.index .lcl-main__ttl>em {
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  letter-spacing: .28em
}

.index .lcl-main-ico {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.index [class^=lcl-main-ico-item--] {
  position: absolute;
  display: block
}

.index .lcl-main-ico-item--01 {
  width: 165px;
  left: -10px;
  top: 4.1vw
}

.index .lcl-main-ico-item--02 {
  width: 77px;
  left: 125px;
  bottom: 41%
}

.index .lcl-main-ico-item--03 {
  width: 147px;
  right: 11vw;
  bottom: 34%
}

.index .lcl-main-ico-item--04 {
  width: 77px;
  right: 0
}

.index .lcl-lead {
  padding: 80px 0 180px;
  position: relative;
  background-color: #fff;
  z-index: 2
}

.index .lcl-lead .wave-wrp {
  bottom: auto;
  top: -90px
}

.index .lcl-lead__ttl {
  text-align: center;
  font-size: 34px;
  line-height: 1;
  letter-spacing: .08em;
  color: #1395ac;
  background: linear-gradient(132deg, rgb(77, 135, 200) 0%, rgb(19, 149, 172) 78%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0, 0, 0, 0);
  margin-bottom: 30px;
  position: relative;
  z-index: 2
}

.index .lcl-lead__txt {
  text-align: center;
  z-index: 2;
  position: relative
}

.index .lcl-lead-ico-wrp {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.index [class^=lcl-lead-ico-item--] {
  position: absolute;
  display: block
}

.index .lcl-lead-ico-item--01,
.index .lcl-lead-ico-item--03 {
  width: 115px
}

.index .lcl-lead-ico-item--02,
.index .lcl-lead-ico-item--04 {
  width: 72px
}

.index .lcl-lead-ico-item--01 {
  left: -10px;
  top: 2.1vw
}

.index .lcl-lead-ico-item--02 {
  left: 16vw;
  bottom: 29%
}

.index .lcl-lead-ico-item--03 {
  right: 6vw;
  bottom: 13.5vw
}

.index .lcl-lead-ico-item--04 {
  right: 18vw;
  top: 5.2vw
}

.index .lcl-works {
  padding: 80px 0 170px;
  position: relative;
  z-index: 2
}

.index .lcl-works .wave-wrp {
  bottom: auto;
  top: -90px
}

.index .lcl-works-list {
  width: 950px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap
}

.index .lcl-works-item__link {
  display: block;
  width: 100%;
  height: 100%;
  position: relative
}

.index .lcl-works-item-circle {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  margin-bottom: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  transition: .8s ease;
  position: relative
}

.index .lcl-works-item-circle::before,
.index .lcl-works-item-circle::after {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  opacity: 0;
  transition: .9s ease;
  transform: scale(0)
}

.index .lcl-works-item-circle::before {
  border: 2px solid #fff
}

.index .lcl-works-item-circle::after {
  background-color: #fff;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

.index .lcl-works-item-circle>span {
  opacity: 0;
  transition: .9s ease;
  position: relative;
  z-index: 1
}

.index .lcl-works-item-circle>span,
.index .lcl-works-item-circle>span>img {
  display: block;
  width: 129px
}

.index .lcl-works-item-txt {
  font-size: 18px;
  text-align: center;
  line-height: 1.4444;
  transform: translate(0, 50px);
  opacity: 0;
  transition: color .5s ease
}

.index [class^=lcl-works-item--].scr-anin--on .lcl-works-item-circle::before,
.index [class^=lcl-works-item--].scr-anin--on .lcl-works-item-circle::after {
  opacity: 1;
  transform: scale(1)
}

.index [class^=lcl-works-item--].scr-anin--on .lcl-works-item-circle>span {
  opacity: 1
}

.index [class^=lcl-works-item--].scr-anin--on .lcl-works-item-txt {
  transform: translate(0, 0);
  opacity: 1
}

@media screen and (min-width: 768px) {
  .index .lcl-works-item--01 .lcl-works-item-circle::before {
    transition-delay: .1s
  }

  .index .lcl-works-item--02 .lcl-works-item-circle::before {
    transition-delay: .6s
  }

  .index .lcl-works-item--03 .lcl-works-item-circle::before {
    transition-delay: .4s
  }

  .index .lcl-works-item--04 .lcl-works-item-circle::before {
    transition-delay: .3s
  }

  .index .lcl-works-item--05 .lcl-works-item-circle::before {
    transition-delay: .55s
  }

  .index .lcl-works-item--06 .lcl-works-item-circle::before {
    transition-delay: .45s
  }

  .index .lcl-works-item--07 .lcl-works-item-circle::before {
    transition-delay: .25s
  }

  .index .lcl-works-item--08 .lcl-works-item-circle::before {
    transition-delay: .75s
  }

  .index .lcl-works-item--01 .lcl-works-item-circle::after {
    transition-delay: .2s
  }

  .index .lcl-works-item--02 .lcl-works-item-circle::after {
    transition-delay: .7s
  }

  .index .lcl-works-item--03 .lcl-works-item-circle::after {
    transition-delay: .5s
  }

  .index .lcl-works-item--04 .lcl-works-item-circle::after {
    transition-delay: .4s
  }

  .index .lcl-works-item--05 .lcl-works-item-circle::after {
    transition-delay: .65s
  }

  .index .lcl-works-item--06 .lcl-works-item-circle::after {
    transition-delay: .55s
  }

  .index .lcl-works-item--07 .lcl-works-item-circle::after {
    transition-delay: .35s
  }

  .index .lcl-works-item--08 .lcl-works-item-circle::after {
    transition-delay: .85s
  }

  .index .lcl-works-item--01 .lcl-works-item-circle>span {
    transition-delay: .7s
  }

  .index .lcl-works-item--02 .lcl-works-item-circle>span {
    transition-delay: 1.2s
  }

  .index .lcl-works-item--03 .lcl-works-item-circle>span {
    transition-delay: 1s
  }

  .index .lcl-works-item--04 .lcl-works-item-circle>span {
    transition-delay: .9s
  }

  .index .lcl-works-item--05 .lcl-works-item-circle>span {
    transition-delay: 1.15s
  }

  .index .lcl-works-item--06 .lcl-works-item-circle>span {
    transition-delay: 1.05s
  }

  .index .lcl-works-item--07 .lcl-works-item-circle>span {
    transition-delay: .85s
  }

  .index .lcl-works-item--08 .lcl-works-item-circle>span {
    transition-delay: 1.35s
  }

  .index .lcl-works-item--01 .lcl-works-item-txt {
    transition: transform 1s ease .9s, opacity 1s ease .9s, color .5s ease
  }

  .index .lcl-works-item--02 .lcl-works-item-txt {
    transition: transform 1s ease 1.4s, opacity 1s ease 1.4s, color .5s ease
  }

  .index .lcl-works-item--03 .lcl-works-item-txt {
    transition: transform 1s ease 1.2s, opacity 1s ease 1.2s, color .5s ease
  }

  .index .lcl-works-item--04 .lcl-works-item-txt {
    transition: transform 1s ease 1.1s, opacity 1s ease 1.1s, color .5s ease
  }

  .index .lcl-works-item--05 .lcl-works-item-txt {
    transition: transform 1s ease 1.35s, opacity 1s ease 1.35s, color .5s ease
  }

  .index .lcl-works-item--06 .lcl-works-item-txt {
    transition: transform 1s ease 1.25s, opacity 1s ease 1.25s, color .5s ease
  }

  .index .lcl-works-item--07 .lcl-works-item-txt {
    transition: transform 1s ease 1.05s, opacity 1s ease 1.05s, color .5s ease
  }

  .index .lcl-works-item--08 .lcl-works-item-txt {
    transition: transform 1s ease 1.55s, opacity 1s ease 1.55s, color .5s ease
  }

  .index [class^=lcl-works-item--]:nth-child(-n+4) {
    margin-bottom: 40px
  }

  .index .lcl-works-item__link:hover .lcl-works-item-circle::after {
    transform: scale(0.9);
    transition: .5s ease
  }

  .index .lcl-works-item__link:hover .lcl-works-item-txt {
    transition: color .5s ease;
    color: #e3c627
  }
}

.index .lcl-design {
  padding: 45px 0 120px;
  position: relative;
  z-index: 2;
  background-color: #fff
}

.index .lcl-design .wave-wrp {
  bottom: auto;
  top: -90px
}

.index .lcl-design-in {
  width: 1060px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.index .lcl-design-txt {
  width: 23%;
  padding: 67px 0 0
}

.index .lcl-design-txt .blockttl {
  text-align: left
}

.index .lcl-design-archive {
  width: 77%
}

.index .lcl-slide {
  width: 720px;
  position: relative;
  margin: 0 auto 0
}

.index .lcl-slide .slick-list {
  padding-top: 65px
}

.index .lcl-slide {
  display: none
}

.index .lcl-slide.slick-initialized {
  display: block
}

.index .slick-slide {
  width: 200px;
  margin: 0 20px;
  position: relative;
  transition: .8s ease;
  top: -25px
}

.index .lcl-slide-item-img {
  width: 100%;
  height: 300px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #b5b5b5;
  margin-bottom: 8px;
  position: relative
}

.index .lcl-slide-item-img__ico {
  display: inline-block;
  background-color: #000;
  color: #fff;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  padding: 8px 17px
}

.index .lcl-slide-item__txt {
  font-size: 18px;
  text-align: center;
  line-height: 1.444
}

.index .lcl-slide .slick-arrow {
  position: absolute;
  top: 40px;
  bottom: 0;
  margin: auto;
  line-height: 1;
  height: 1em;
  font-size: 30px;
  z-index: 2;
  transition: .5s ease
}

.index .lcl-slide .slick-prev {
  left: -15px
}

.index .lcl-slide .slick-next {
  right: -15px
}

.index .lcl-slide .slick-current {
  top: 0
}

.index .lcl-slide .slick-current+.slick-active {
  top: -65px
}

@media screen and (min-width: 768px) {
  .index .lcl-slide .slick-arrow:hover {
    color: #1395ac
  }
}

.index .lcl-slide-item-img--01 {
  background-image: url(../img/design/img_01.avif)
}

.index .lcl-slide-item-img--02 {
  background-image: url(../img/design/img_02.avif)
}

.index .lcl-slide-item-img--03 {
  background-image: url(../img/design/img_03.avif)
}

.index .lcl-slide-item-img--04 {
  background-image: url(../img/design/img_04.avif)
}

.index .lcl-slide-item-img--05 {
  background-image: url(../img/design/img_05.avif)
}

.index .lcl-slide-item-img--06 {
  background-image: url(../img/design/img_06.avif)
}

.index .lcl-flow {
  background: #e3c627;
  background: linear-gradient(39deg, rgb(227, 198, 39) 10%, rgb(234, 209, 25) 74%);
  padding: 143px 0 170px;
  position: relative;
  z-index: 2
}

.index .lcl-flow-wave-01 {
  bottom: auto;
  top: 0;
  transform: rotateX(180deg)
}

.index .lcl-flow-list {
  width: 900px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 0 auto
}

.index [class^=lcl-flow-item--] {
  width: 250px;
  position: relative
}

.index [class^=lcl-flow-item--]:not(:last-child)::after {
  content: "";
  font-family: "Font Awesome 5 Free";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -40px;
  margin: auto;
  font-weight: bold;
  line-height: 1;
  height: 1em;
  color: #fff
}

.index .lcl-flow-item-img {
  width: 100%;
  height: 160px;
  background-color: #ccc;
  margin-bottom: 10px
}

.index .lcl-flow-item-txt {
  color: #fff
}

.index .lcl-flow-item-num {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px
}

.index .lcl-flow-item-num::after {
  content: "";
  width: 0%;
  height: 3px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: .5s ease
}

.index .lcl-flow-item-num__step {
  display: block;
  width: 55.5px;
  margin: 0 auto 13px
}

.index .lcl-flow-item-num__step>img {
  display: block
}

.index .lcl-flow-item-num__ico {
  display: block;
  margin: 0 auto 5px
}

.index .lcl-flow-item-num__ico>img {
  display: block
}

.index .lcl-flow-item--01 .lcl-flow-item-num__ico {
  width: 57px
}

.index .lcl-flow-item--02 .lcl-flow-item-num__ico {
  width: 63.5px
}

.index .lcl-flow-item--03 .lcl-flow-item-num__ico {
  width: 65px
}

.index [class^=lcl-flow-item--].scr-anin--on .lcl-flow-item-num::after {
  width: 100%
}

.index .lcl-flow-item--01 .lcl-flow-item-num::after {
  transition-delay: .2s
}

.index .lcl-flow-item--02 .lcl-flow-item-num::after {
  transition-delay: .9s
}

.index .lcl-flow-item--03 .lcl-flow-item-num::after {
  transition-delay: 1.6s
}

.index .lcl-flow-item--01 .lcl-flow-item-num__ico {
  transition-delay: .4s
}

.index .lcl-flow-item--02 .lcl-flow-item-num__ico {
  transition-delay: 1.2s
}

.index .lcl-flow-item--03 .lcl-flow-item-num__ico {
  transition-delay: 1.8s
}

.index .lcl-flow-item--01 .lcl-flow-item-txt {
  transition-delay: .6s
}

.index .lcl-flow-item--02 .lcl-flow-item-txt {
  transition-delay: 1.4s
}

.index .lcl-flow-item--03 .lcl-flow-item-txt {
  transition-delay: 2s
}

.index .lcl-contact {
  padding: 35px 0 90px;
  position: relative;
  z-index: 3;
  background-color: #fff
}

.index #mailform {
  width: 680px;
  margin: 0 auto
}

.index button,
.index input:not([type=checkbox]):not([type=radio]),
.index textarea {
  border: 0;
  border-radius: 0;
  outline: 0;
  background: rgba(0, 0, 0, 0);
  background-color: #f0f4f6;
  width: 100%;
  height: 50px;
  padding: 10px 20px
}

.index textarea {
  height: 265px;
  resize: vertical;
  padding: 25px 20px
}

.index .mailform-item {
  position: relative;
  margin: 0 0 20px
}

.index .mailform-item__ttl {
  color: #aebdc3;
  position: absolute;
  left: 20px;
  top: 12px;
  pointer-events: none;
  transition: all .1s ease
}

.index .mailform-item-2col {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 0 0 20px
}

.index .mailform-item-2col .mailform-item {
  width: 330px;
  margin-bottom: 0
}

.index .mailform-item input[type=radio] {
  margin-right: 5px
}

.index .mailform-label-txt {
  margin-right: 10px
}

.index .mailform-item__alert {
  font-size: 12px;
  text-align: center;
  color: #f04f4f;
  letter-spacing: .08em;
  line-height: 1;
  margin-bottom: 30px
}

.index .mailform-item.forcused .mailform-item__ttl {
  transform: scale(0.8);
  top: -14px;
  left: 10px
}

.index .mailform-item__txt.inputted~.mailform-item__ttl {
  transform: scale(0.8);
  top: -14px;
  left: 10px
}

.index .mailform-item–list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.index .mailform-item–list>li:not(:last-child) {
  margin-right: 30px
}

.index .contact-submit {
  text-align: center;
  position: relative
}

.index .contact-submit input[type=submit] {
  -webkit-appearance: none;
  width: 260px;
  height: 50px;
  border: 1px solid #2c5a6d;
  border-radius: 25px;
  background-color: #fff;
  margin: 0 auto;
  position: relative;
  transition: .5s ease;
  color: #2c5a6d;
  font-size: 1em
}

.index .contact-submit input[type=submit][disabled] {
  opacity: .6;
  cursor: default
}

.index .mailform-status {
  margin-top: 12px;
  min-height: 1.6em;
  text-align: center;
  color: #2c5a6d;
  font-size: 14px;
  line-height: 1.6
}

.index .mailform-status.is-error {
  color: #f04f4f
}

@media screen and (min-width: 768px) {
  .index .contact-submit input[type=submit]:hover {
    cursor: pointer;
    transition: .5s ease;
    background-color: #2c5a6d;
    color: #fff
  }
}

.index .contact-submit .wpcf7-spinner {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto
}

.index #dispmsg {
  text-align: center
}

.index #errmsg {
  font-weight: bold;
  color: #f04f4f;
  margin-top: 15px
}

.index .lcl-contact .wave-wrp {
  bottom: -90px;
  top: auto;
  transform: rotateX(180deg)
}

.index .lcl-blog {
  padding: 125px 0 90px;
  position: relative;
  z-index: 2
}

.index .lcl-blog–list {
  width: 750px;
  margin: 0 auto 40px
}

.index .lcl-blog .wave-wrp {
  bottom: -90px;
  top: auto;
  transform: rotateX(180deg);
  z-index: 2
}

.index .lcl-blog–item__link {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 15px
}

@media screen and (min-width: 768px) {
  .index .lcl-blog–item__link:hover {
    text-decoration: underline
  }

  .index .lcl-blog__link:hover {
    cursor: pointer;
    transition: .5s ease;
    background-color: #2c5a6d;
    color: #fff
  }
}

.index .lcl-blog–item__day {
  width: 20%
}

.index .lcl-blog–item__ttl {
  width: 80%;
  font-weight: bold
}

.index .lcl-blog__link {
  width: 260px;
  height: 50px;
  border: 1px solid #2c5a6d;
  border-radius: 25px;
  background-color: #fff;
  margin: 0 auto;
  position: relative;
  transition: .5s ease;
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap
}

.index .modaal-container {
  color: #333;
  max-width: 650px;
  box-shadow: none
}

.index .modal-block-in {
  padding: 20px 10px
}

.index .modal-block__ttl {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px
}

.index .modaal-close {
  display: none
}

@media screen and (max-width: 767px) {
  .index .lcl-main {
    height: 70vh
  }

  .index .lcl-main-ico-item--02,
  .index .lcl-main-ico-item--04 {
    display: none
  }

  .index .lcl-main__ttl>svg {
    width: 230px;
    margin: 0 auto 10px
  }

  .index .lcl-main__ttl>em {
    font-size: 12px;
    letter-spacing: .18em
  }

  .index .lcl-main-ico-item--01 {
    width: 85px;
    left: -5px;
    top: 14%
  }

  .index .lcl-main-ico-item--03 {
    width: 77px;
    right: 18px;
    bottom: 22%
  }

  .index .lcl-lead .wave-wrp {
    top: -88px
  }

  .index .lcl-lead__ttl {
    font-size: 21px;
    font-size: 6vw;
    margin-bottom: 20px
  }

  .index .lcl-lead__txt {
    line-height: 1.8
  }

  .index .lcl-lead-ico-item--02,
  .index .lcl-lead-ico-item--04 {
    display: none
  }

  .index .lcl-works .wave-wrp {
    top: -88px
  }

  .index .lcl-works-list {
    width: 100%;
    padding: 0 15px
  }

  .index [class^=lcl-works-item--] {
    width: 50%;
    padding: 0 10px;
    margin-bottom: 20px
  }

  .index .lcl-works-item-circle {
    width: 100%;
    height: 0;
    margin-bottom: 15px;
    padding-top: 100%
  }

  .index .lcl-works-item-circle>span {
    position: absolute;
    top: 0;
    bottom: auto;
    right: 0;
    left: 0;
    margin: auto;
    transform: translateY(20%)
  }

  .index .lcl-works-item-circle>span,
  .index .lcl-works-item-circle>span>img {
    width: 95px
  }

  .index .lcl-works-item-txt {
    font-size: 13px;
    line-height: 1.3444
  }

  .index .lcl-design {
    padding: 45px 0 80px
  }

  .index .lcl-design .wave-wrp {
    top: -88px
  }

  .index .lcl-design-in {
    width: 100%;
    display: block;
    padding: 0 15px
  }

  .index .lcl-design-txt .blockttl {
    margin-bottom: 15px
  }

  .index .lcl-design-txt {
    width: 100%;
    padding: 0;
    margin-bottom: 20px
  }

  .index .lcl-slide {
    width: 100%;
    position: relative;
    margin: 0 auto 0
  }

  .index .lcl-design-archive {
    width: 100%;
    padding: 0 10px
  }

  .index .lcl-slide .slick-list {
    padding-top: 35px
  }

  .index .lcl-slide .slick-arrow {
    font-size: 20px
  }

  .index .slick-slide {
    width: 200px;
    margin: 0 10px;
    top: -25px
  }

  .index .lcl-slide-item-img {
    height: 220px
  }

  .index .lcl-slide-item__txt {
    font-size: 13px
  }

  .index .lcl-slide .slick-current+.slick-active {
    top: -25px
  }

  .index .lcl-slide-item-img__ico {
    padding: 6px 12px;
    font-size: 11px
  }

  .index .lcl-flow-wave-01 {
    top: -2px
  }

  .index .lcl-flow-wave-02 {
    bottom: -2px
  }

  .index .lcl-flow-list {
    width: 100%;
    display: block;
    margin: 0 auto
  }

  .index [class^=lcl-flow-item--] {
    width: 80%;
    margin: 0 auto
  }

  .index [class^=lcl-flow-item--]:not(:last-child) {
    margin-bottom: 80px
  }

  .index [class^=lcl-flow-item--]:not(:last-child)::after {
    content: "";
    top: auto;
    bottom: -2.3em;
    left: 0;
    right: 0;
    width: 1em;
    font-size: 22px
  }

  .index .lcl-flow-item-num {
    padding-bottom: 15px;
    margin-bottom: 15px
  }

  .index .lcl-flow-item-num::after {
    height: 2px
  }

  .index .lcl-flow-item-num__step {
    width: 40.5px;
    margin: 0 auto 11px
  }

  .index .lcl-flow-item--01 .lcl-flow-item-num__ico {
    width: 44px
  }

  .index .lcl-flow-item--02 .lcl-flow-item-num__ico {
    width: 48.5px
  }

  .index .lcl-flow-item--03 .lcl-flow-item-num__ico {
    width: 50px
  }

  .index .lcl-contact {
    padding: 35px 0 60px
  }

  .index .lcl-contact .wave-wrp {
    bottom: -88px
  }

  .index #mailform {
    width: 100%;
    padding: 0 15px
  }

  .index button,
  .index input:not([type=checkbox]):not([type=radio]),
  .index textarea {
    font-size: 16px;
    padding: 5px 10px
  }

  .index textarea {
    height: 165px;
    padding: 20px 10px
  }

  .index .mailform-item {
    margin: 0 0 15px
  }

  .index .mailform-item-2col {
    display: block;
    margin: 0 0 15px
  }

  .index .mailform-item-2col .mailform-item {
    width: 100%
  }

  .index .mailform-item-2col .mailform-item:not(:last-child) {
    margin-bottom: 15px
  }

  .index .mailform-item__ttl {
    left: 10px;
    top: 16px
  }

  .index .mailform-item__txt:focus~.mailform-item__ttl,
  .index .mailform-item__txt.inputted~.mailform-item__ttl {
    transform: scale(0.9);
    top: -8px;
    left: 5px
  }

  .index .mailform-item–list {
    display: block
  }

  .index .mailform-item–list>li:not(:last-child) {
    margin: 0 0 10px
  }

  .index .contact-submit input[type=submit] {
    width: 220px;
    height: 40px;
    border-radius: 20px;
    font-size: 13px
  }

  .index .modal-block-in {
    padding: 0
  }

  .index .modal-block__ttl {
    font-size: 16px;
    margin-bottom: 15px
  }

  .index .lcl-blog–list {
    width: 100%;
    padding: 0 15px
  }

  .index .lcl-blog–item__link {
    display: block;
    margin-bottom: 15px
  }

  .index .lcl-blog–item__day {
    width: 100%;
    margin-bottom: 5px;
    display: block
  }

  .index .lcl-blog–item__ttl {
    width: 100%;
    font-weight: bold
  }
}

.blog {
  background: #edf2f4 none
}

.blog #header .logo__link {
  color: #1395ac
}

.blog .contents {
  margin-bottom: 0
}

.blog .entry-page {
  max-width: 1020px;
  margin: 0 auto;
  padding: 120px 0 70px
}

.blog .entry-header {
  padding: 10px 0 5px;
  margin-bottom: 30px
}

.blog .entry-header__time {
  font-size: .9em;
  display: block;
  text-align: right;
  color: #707070
}

.blog .entry-header>h1 {
  line-height: 1.4666;
  font-size: 2.5em;
  letter-spacing: .03em;
  color: #1395ac;
  background: linear-gradient(132deg, rgb(77, 135, 200) 0%, rgb(19, 149, 172) 78%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0, 0, 0, 0);
  margin-bottom: 30px;
  position: relative;
  z-index: 2;
  font-weight: 600
}

.blog .ad_block {
  display: block;
  margin: 50px auto 30px
}

.blog .tags-block {
  margin-bottom: 100px
}

.blog .tags-block>ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap
}

.blog .tags-block>ul>li {
  margin-right: 30px;
  margin-bottom: 20px
}

.blog .tags-block>ul a {
  border: 1px solid #707070;
  border-radius: 35px;
  display: inline-block;
  padding: 8px 45px;
  font-size: .9em;
  transition: .5s ease
}

@media screen and (min-width: 768px) {
  .blog .tags-block>ul a:hover {
    background-color: #707070;
    color: #fff
  }
}

.blog .pagination {
  margin: 50px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap
}

.blog .pagination-list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap
}

.blog .pagination-list__item {
  margin: 0 8px
}

.blog .pagination__link {
  font-size: 20px;
  position: relative;
  padding: 5px 5px 8px;
  display: inline-block;
  line-height: 1;
  transition: .5s ease
}

.blog .pagination-list__item .pagination__link::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0%;
  height: 2px;
  background-color: #333;
  transition: .5s ease
}

.blog .pagination-list__item.pagination-list__item--active .pagination__link {
  color: #3c9d9b
}

.blog .pagination-list__item.pagination-list__item--active .pagination__link::after {
  width: 100%
}

.blog .pagination-btn {
  font-size: 2em;
  padding: 15px;
  transition: .5s ease
}

@media screen and (min-width: 768px) {
  .blog .pagination-list__item .pagination__link:hover {
    color: #3c9d9b
  }

  .blog .pagination-list__item .pagination__link:hover::after {
    width: 100%
  }

  .blog .pagination-btn:hover {
    color: #3c9d9b
  }
}

.blog .eyecatch {
  width: 100%;
  height: 420px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat
}

.blog .entry-content {
  padding: 30px 0 50px
}

.blog .entry-page>.hentry {
  max-width: 750px;
  margin: 0 auto
}

.blog .entry-content>p {
  margin-bottom: 25px;
  word-break: break-all;
  font-size: 1.15em
}

.blog .wp-block-embed-wordpress {
  text-align: center
}

.blog .entry-content iframe.wp-embedded-content {
  max-width: 100% !important;
  width: 90%;
  margin: 0 auto;
  text-align: center;
  display: block
}

.blog .entry-content img {
  height: auto;
  margin: 40px 0;
  display: block
}

.blog .entry-content>h2,
.blog .entry-content>h3,
.blog .entry-content>h3,
.blog .entry-content>h4,
.blog .entry-content>h5,
.blog .entry-content>h6 {
  font-weight: bold;
  position: relative;
  margin-top: 70px;
  margin-bottom: 50px
}

.blog .entry-content>h2 {
  font-size: 1.7em;
  padding: 10px 20px 10px
}

.blog .entry-content>h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #333;
  width: 5px;
  height: 100%;
  border-radius: 5px;
  background: linear-gradient(132deg, rgb(77, 135, 200) 0%, rgb(19, 149, 172) 78%)
}

.blog .entry-content>h3 {
  font-size: 1.4em;
  color: #fff;
  background: rgba(19, 149, 172, .7);
  padding: 15px 20px
}

.blog .entry-content>h4 {
  font-size: 1.2em
}

.blog .entry-content>h5,
.blog .entry-content>h6 {
  font-size: 1em;
  text-decoration: underline
}

.blog .entry-content pre {
  background-color: #333;
  color: #fff;
  padding: 20px;
  margin-bottom: 30px;
  font-size: .9em
}

@media screen and (min-width: 768px) {
  .blog .wp-block-code>code {
    word-break: break-all;
    white-space: pre-wrap;
    word-wrap: break-word
  }
}

.blog .entry-content a:not(.wp-block-button__link):not(.entry-item__link) {
  text-decoration: underline;
  color: #3c9d9b
}

.blog .entry-content>ul,
.blog .entry-content>ol {
  background-color: #fff;
  padding: 20px 50px;
  margin-bottom: 40px
}

.blog .entry-content>ul li ul,
.blog .entry-content>ol li ol {
  padding-left: 1.5em
}

.blog .entry-content ul li {
  list-style: disc
}

.blog .entry-content ol li {
  list-style: decimal;
  list-style: decimal-leading-zero
}

.blog .entry-content blockquote {
  background-color: #fff;
  padding: 20px 50px;
  margin-bottom: 40px;
  position: relative
}

.blog .entry-content blockquote::before {
  content: "";
  font-family: fontawesome;
  position: absolute;
  top: 10px;
  left: 16px;
  line-height: 1;
  height: 1em;
  color: #999;
  font-size: 1.4em
}

.blog .entry-content blockquote cite {
  color: #444;
  font-size: .85em;
  margin-top: 10px;
  display: block
}

.blog .entry-content table {
  width: 100%;
  margin-bottom: 40px
}

.blog .entry-content table tr:nth-child(2n+1) {
  background-color: #fff
}

.blog .entry-content table td {
  padding: 7px 10px
}

.blog .entry-content table td:not(:last-child) {
  border-right: 1px solid #eee
}

.blog iframe.hatenablogcard {
  width: 100%
}

@media screen and (min-width: 768px) {
  .blog .entry-content a:hover {
    text-decoration: none
  }

  .blog .wp-block-button__link {
    transition: .5s ease
  }

  .blog .wp-block-button__link:hover {
    opacity: .6
  }

  .blog iframe.hatenablogcard {
    width: 49%
  }
}

.blog .toc {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 20px 30px;
  margin-bottom: 50px
}

.blog .toc__title {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 10px;
  display: block
}

.blog .toc__list>.toc__item .toc__list {
  display: none
}

.blog .entry-content ul.toc__list li {
  list-style: none;
  padding-left: 30px;
  position: relative
}

.blog .entry-content ul.toc__list li::before {
  content: "";
  width: 15px;
  height: 2px;
  background-color: #ccc;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto
}

.blog .entry-content ul.toc__list li:not(:last-child) {
  margin-bottom: 5px
}

.blog #jp-relatedposts h3.jp-relatedposts-headline {
  margin: 0 0 1em;
  display: block;
  float: none;
  font-size: 1.5em
}

.blog #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post span.jp-relatedposts-post-context {
  display: none
}

.blog .post-password-form {
  padding: 20px;
  text-align: center
}

.blog .post-password-form p {
  margin-bottom: 30px
}

.blog .post-password-form input:not([type=checkbox]):not([type=radio]) {
  border: 1px solid #888;
  padding: 5px 9px;
  height: 35px
}

.blog .post-password-form input[type=submit] {
  background-color: #333;
  color: #fff;
  font-size: 13px;
  vertical-align: top
}

.blog .pager-list {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  margin-bottom: 120px
}

.blog [class^=pager-item--] {
  width: 50%;
  position: relative
}

.blog [class^=pager-item--] .pager-item__link {
  padding: 20px 30px;
  position: relative;
  transition: .5s ease
}

.blog .pager-item--prev .pager-item__link::before,
.blog .pager-item--next .pager-item__link::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  line-height: 1;
  height: 1em;
  font-family: fontawesome;
  transition: .5s ease
}

.blog .pager-item--prev .pager-item__link::before {
  left: 15px
}

.blog .pager-item--next .pager-item__link::after {
  content: "";
  right: 15px
}

.blog .pager-item--prev::after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #ccc;
  position: absolute;
  top: 0;
  right: 0
}

.blog .pager-item__link {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.blog .pager-item__link>p {
  font-size: 14px
}

.blog .pager-item--next .pager-item__link {
  justify-content: flex-end
}

@media screen and (min-width: 768px) {
  .blog [class^=pager-item--] .pager-item__link:hover {
    background-color: #f4f4f4
  }

  .blog .pager-item--prev .pager-item__link:hover::before {
    left: 7px
  }

  .blog .pager-item--next .pager-item__link:hover::after {
    right: 7px
  }
}

.blog .entry-list {
  background-color: #fff;
  padding: 50px 60px;
  border-radius: 15px
}

.blog .entry-item {
  width: 100%;
  margin-bottom: 30px;
  min-height: 70px
}

.blog .entry-item__link {
  padding: 10px 20px 10px 90px;
  position: relative;
  transition: .5s ease;
  width: 100%;
  height: 100%;
  display: block;
  min-height: 70px
}

.blog .entry-item__link::before {
  content: "";
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #b5525c;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transition: .5s ease
}

.blog .entry-item-btm {
  width: 100%;
  position: relative;
  z-index: 2
}

.blog .entry-item__day {
  display: block;
  color: #777;
  font-size: .7em
}

.blog .entry-item__ttl {
  position: relative;
  line-height: 1.3
}

@media screen and (min-width: 768px) {
  .blog .entry-item__link:hover {
    color: #888
  }

  .blog .entry-item__link:hover::before {
    transform: scale(0.8)
  }
}

.blog .entry-item--wordpress .entry-item__link::before {
  background-color: #75b79e
}

.blog .entry-item--webservice .entry-item__link::before {
  background-color: #f7be16
}

.blog .sidebar-all .entry-page--thumbs .entry-item__bg {
  height: 132.188px
}

.blog .entry-page--thumbs .entry-item__bg::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  left: 0;
  transition: .5s ease
}

.blog .entry-page--thumbs .entry-item-btm {
  display: block;
  width: 100%;
  padding: 8px 10px 20px
}

.blog .entry-page--thumbs .entry-item__day {
  width: 100%;
  font-size: 13px
}

.blog .entry-page--thumbs .entry-item__ttl {
  width: 100%;
  padding-right: 0;
  font-size: 1.1em;
  font-weight: bold
}

.blog .entry-page--thumbs .entry-item:not(:last-child) {
  border-bottom: none
}

@media screen and (min-width: 768px) {
  .blog .entry-page--thumbs .entry-item__link:hover .entry-item__bg::before {
    background-color: rgba(0, 0, 0, .2)
  }
}

.blog .blogger_ttl {
  display: block;
  text-align: center;
  padding: 0 0 0;
  font-size: 2em;
  font-weight: bold;
  font-family: "Josefin Sans", sans-serif;
  margin-bottom: 50px
}

.blog .entry-footer {
  margin-bottom: 50px
}

.blog .entry-footer-list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-size: 12px
}

.blog .entry-footer-list>li:not(:last-child)::after {
  content: " / ";
  display: inline-block;
  position: relative;
  margin: 0 5px
}

.blog .comments-area {
  padding: 20px;
  margin-bottom: 50px
}

.blog .comment-reply-title {
  text-align: center;
  margin-bottom: 15px;
  font-size: 17px
}

.blog .logged-in-as {
  text-align: center;
  font-size: 12px
}

.blog .logged-in-as a {
  text-decoration: underline
}

.blog .comment-form-comment {
  margin: 20px 0;
  text-align: center
}

.blog .comment-form-comment>label {
  display: none
}

.blog .comment-form-comment textarea {
  width: 80%;
  height: 100px;
  margin: 0 auto;
  border: 1px solid #888;
  padding: 10px 20px;
  resize: vertical
}

.blog .form-submit .submit {
  width: 200px;
  border: 1px solid #888 !important;
  display: block;
  height: 45px;
  margin: auto;
  font-size: 13px;
  line-height: 1;
  transition: .5s ease
}

.blog #cancel-comment-reply-link {
  border: 1px solid #888;
  display: inline-block;
  border-radius: 10px;
  font-size: 11px;
  line-height: 1;
  padding: 3px 10px;
  position: relative;
  top: -2px;
  transition: .5s ease
}

.blog #respond {
  margin-top: 40px
}

.blog .comments-meta {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.blog .comments-meta .avatar {
  border: 1px solid #888;
  border-radius: 50%;
  padding: 5px
}

.blog .comments-meta-list {
  padding: 0px 10px 20px
}

.blog .comments-content {
  background-color: #eee;
  padding: 10px 20px;
  font-size: .85em;
  line-height: 1.5333
}

.blog .comments-date {
  font-size: 12px;
  color: #888
}

.blog .comments-reply {
  text-align: right;
  margin-top: 10px
}

.blog .comment-reply-link {
  display: inline-block;
  border: 1px solid #888;
  font-size: .85em;
  padding: 3px 10px;
  transition: .5s ease
}

.blog .comment .children {
  padding-left: 60px
}

@media screen and (min-width: 768px) {
  .blog .form-submit .submit:hover {
    background-color: #888;
    cursor: pointer
  }

  .blog .comment-reply-link:hover,
  .blog #cancel-comment-reply-link:hover {
    background-color: #888;
    color: #fff
  }
}

.blog .breadcrumb {
  width: 100%;
  margin: 10px auto
}

.blog .breadcrumb-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.blog .breadcrumb-item {
  font-size: 12px
}

.blog .breadcrumb-item:not(:last-child)::after {
  content: " > ";
  display: inline-block;
  margin: 0 5px;
  text-decoration: none
}

.blog .breadcrumb-item a {
  transition: .5s ease;
  display: inline-block
}

@media screen and (min-width: 768px) {
  .blog .breadcrumb-item>a:hover {
    text-decoration: none
  }

  .blog .breadcrumb-item a:hover {
    color: #3c9d9b
  }
}

.blog .yarpp-related {
  margin: 5em 0 0 !important
}

.blog .yarpp-related .entry-page--thumbs {
  width: 100%
}

.blog .yarpp-related h3 {
  padding: 8px 15px !important;
  font-size: 1.25em !important;
  margin: 0 0 15px !important;
  background-color: #333;
  color: #fff
}

.blog .sharebtn {
  margin: 40px 0 30px
}

.blog .sharebtn-list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap
}

.blog .sharebtn-list>li {
  margin: 0 7px
}

.blog .sharebtn-list>li>a {
  font-size: 20px;
  width: 40px;
  height: 40px;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  color: #888;
  transition: .5s ease
}

@media screen and (min-width: 768px) {
  .blog .sharebtn-list>li>a:hover {
    color: #fff
  }

  .blog .sharebtn-item--fb:hover {
    background-color: #3b5998
  }

  .blog .sharebtn-item--tw:hover {
    background-color: #1da1f2
  }

  .blog .sharebtn-item--pkt:hover {
    background-color: #ef4056
  }

  .blog .sharebtn-item--htn:hover {
    background-color: #00a4de
  }
}

.blog .pr_area {
  width: 70%;
  height: auto;
  background: #e3c627;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  text-align: center;
  flex-direction: column;
  color: #fff;
  margin: 0 auto;
  font-size: 1.5em;
  line-height: 1.3;
  border-radius: 60px;
  font-weight: bold;
  transition: .5s ease
}

.blog .pr_area>a {
  padding: 25px 0;
  display: block;
  width: 100%;
  height: 100%
}

@media screen and (min-width: 768px) {
  .blog .pr_area:hover {
    background: #888
  }
}

.blog .blog-linkarea {
  position: fixed;
  bottom: -270px;
  right: -270px;
  width: 270px;
  height: 270px;
  border-radius: 50%;
  background-color: #f6e500;
  z-index: 10;
  transition: .8s ease;
  transform: scale(0)
}

.blog .blog-linkarea.fixed {
  bottom: -50px;
  right: -50px;
  transform: scale(1)
}

.blog .blog-linkarea>a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  padding: 0 60px 20px 15px;
  font-size: 1.4em;
  line-height: 1.5;
  font-weight: bold
}

@media screen and (min-width: 768px) {
  .blog .blog-linkarea:hover {
    background-color: #2c5a6d;
    transform: scale(1.1);
    color: #fff
  }
}

.blog #footer {
  position: relative;
  color: #333
}

.blog .site-info {
  font-size: 11px;
  width: 100%;
  padding: 25px 0;
  text-align: center
}

@media screen and (max-width: 767px) {
  .blog .site-content-hero {
    margin-top: 0
  }

  .blog .blogger_ttl {
    font-size: 1.7em;
    margin-bottom: 30px
  }

  .blog .pickup-slide {
    padding: 15px 40px
  }

  .blog .pickup-slide-item {
    margin: 0
  }

  .blog .pickup-slide .slick-prev {
    left: 13px
  }

  .blog .pickup-slide .slick-next {
    right: 13px
  }

  .blog .hero-block {
    height: 200px
  }

  .blog .home .hero-block {
    height: 340px
  }

  .blog .hero-block__in>a {
    display: block
  }

  .blog .hero-block__in svg {
    width: 150px;
    margin-bottom: 0
  }

  .blog .wave-wrp {
    display: none
  }

  .blog .home .wave-wrp {
    display: block
  }

  .blog .tags-block>ul>li {
    margin-right: 10px;
    margin-bottom: 10px
  }

  .blog .tags-block>ul a {
    border-radius: 25px;
    padding: 8px 20px
  }

  .blog .sidebar-all,
  .blog .sidebar-list,
  .blog .single-post .sidebar-single {
    display: block;
    margin-top: 20px
  }

  .blog .sidebar-all #main,
  .blog .sidebar-list #main,
  .blog .single-post .sidebar-single #main {
    width: 100%
  }

  .blog .sidebar-all .entry-page,
  .blog .sidebar-list .entry-page,
  .blog .single-post .sidebar-single .entry-page {
    padding-right: 15px
  }

  .blog #sidebar {
    width: 100%;
    padding: 0 15px
  }

  .blog .tags-block {
    margin-bottom: 60px
  }

  .blog .entry-page {
    width: 100%;
    padding: 20px 15px 50px
  }

  .blog .entry-header {
    padding: 5px 45px 5px 0;
    margin-bottom: 0
  }

  .blog .entry-header>h1 {
    font-size: 22px
  }

  .blog .eyecatch {
    height: 174.063px
  }

  .blog .ad_block {
    margin: 30px auto 50px
  }

  .blog .entry-content>h2,
  .blog .entry-content>h3,
  .blog .entry-content>h3,
  .blog .entry-content>h4,
  .blog .entry-content>h5,
  .blog .entry-content>h6 {
    margin-top: 50px;
    margin-bottom: 30px
  }

  .blog .entry-content>h2 {
    font-size: 1.5em;
    padding: 5px 15px
  }

  .blog .entry-content>h2::before {
    width: 4px
  }

  .blog .entry-content>ul,
  .blog .entry-content>ol {
    padding: 15px 35px
  }

  .blog .entry-content pre {
    padding: 20px 40px 20px 20px;
    overflow-x: scroll
  }

  .blog .entry-content blockquote {
    padding: 15px 20px
  }

  .blog .entry-content blockquote::before {
    top: 5px;
    left: -2px;
    font-size: 1.2em
  }

  .blog .toc {
    padding: 15px 5px;
    margin-bottom: 40px
  }

  .blog .entry-content ul.toc__list li {
    padding-left: 20px
  }

  .blog .entry-content ul.toc__list li::before {
    width: 10px
  }

  .blog .comments-area {
    padding: 20px 0px;
    margin-bottom: 30px
  }

  .blog .comments-meta .avatar {
    padding: 3px
  }

  .blog .comments-wrapper {
    margin-bottom: 12px
  }

  .blog .comments-content {
    padding: 8px 10px
  }

  .blog .comment .children {
    padding-left: 30px
  }

  .blog .comment-form-comment textarea {
    width: 100%;
    height: 90px;
    padding: 5px 10px
  }

  .blog .form-submit .submit {
    width: 175px;
    height: 37px;
    font-size: 12px
  }

  .blog .sharebtn {
    margin: 10px 0 50px
  }

  .blog .pager-list {
    display: block;
    margin-bottom: 100px
  }

  .blog [class^=pager-item--] {
    width: 100%
  }

  .blog .pager-item__link>p {
    font-size: 13px
  }

  .blog [class^=pager-item--] .pager-item__link {
    padding: 15px 20px
  }

  .blog .pager-item--prev .pager-item__link::before {
    left: 8px
  }

  .blog .pager-item--next .pager-item__link::after {
    right: 8px
  }

  .blog .pager-item--prev::after {
    width: 100%;
    height: 1px;
    top: auto;
    right: auto;
    bottom: 0
  }

  .blog .entry-list {
    padding: 30px 10px;
    border-radius: 10px
  }

  .blog .entry-item {
    margin-bottom: 15px;
    min-height: 40px
  }

  .blog .entry-item__link {
    padding: 5px 10px 5px 55px;
    min-height: 40px
  }

  .blog .entry-item__link::before {
    width: 40px;
    height: 40px
  }

  .blog .entry-item__ttl {
    font-size: .95em
  }

  .blog .entry-page--thumbs .entry-list {
    display: block
  }

  .blog .entry-page--thumbs .entry-item {
    width: 100%
  }

  .blog .entry-page--thumbs .entry-item__bg,
  .blog .sidebar-all .entry-page--thumbs .entry-item__bg {
    height: 194.063px
  }

  .blog .item {
    width: 33.3%;
    padding-top: 33.3%
  }

  .blog .item__content img {
    padding: 10px
  }

  .blog .breadcrumb {
    margin: 20px auto
  }

  .blog .breadcrumb-item {
    font-size: 11px
  }

  .blog .pr_area {
    width: 100%
  }

  .blog .blog-linkarea {
    bottom: -150px;
    right: -150px;
    width: 150px;
    height: 150px
  }

  .blog .blog-linkarea>a {
    padding: 0 25px 10px 15px;
    font-size: .9em
  }

  .blog .blog-linkarea.fixed {
    bottom: -22px;
    right: -22px;
    transform: scale(1)
  }

  .blog .site-info {
    padding: 25px 20px;
    text-align: left
  }
}

.work {
  background: #edf2f4 none
}

.work .loader-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  background: linear-gradient(132deg, rgb(77, 135, 200) 0%, rgb(19, 149, 172) 78%);
  display: flex;
  justify-content: center;
  align-items: center
}

.work .loader>div {
  background-color: #fff;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  margin: 1px;
  animation-fill-mode: both;
  display: inline-block
}

.work .loader>div:nth-child(1) {
  animation: ball-pulse-sync .6s -0.14s infinite ease-in-out
}

.work .loader>div:nth-child(2) {
  animation: ball-pulse-sync .6s -0.07s infinite ease-in-out
}

.work .loader>div:nth-child(3) {
  animation: ball-pulse-sync .6s 0s infinite ease-in-out
}

@keyframes ball-pulse-sync {
  33% {
    transform: translateY(10px)
  }

  66% {
    transform: translateY(-10px)
  }

  100% {
    transform: translateY(0)
  }
}

.work #header .logo__link {
  color: #1395ac
}

.work .contents {
  margin-bottom: 0
}

.work #footer {
  position: relative;
  color: #333
}

.work .worksPage-head {
  margin-bottom: 90px
}

@media(max-width: 767px) {
  .work .worksPage-head {
    margin-bottom: 50px
  }
}

.work .worksPage-head .worksPage-head-ttl {
  line-height: 1.4666;
  font-size: 2.5em;
  letter-spacing: .03em;
  color: #0d0d0d;
  position: relative;
  z-index: 2;
  font-weight: 600;
  margin-bottom: 24px
}

.work .worksPage-head .worksPage-head-y,
.work .worksPage-head .worksPage-head-cat {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px
}

@media(max-width: 767px) {

  .work .worksPage-head .worksPage-head-y,
  .work .worksPage-head .worksPage-head-cat {
    gap: 8px 4px
  }
}

.work .worksPage-head .worksPage-head-cat {
  margin-top: 24px
}

@media(max-width: 767px) {
  .work .worksPage-head .worksPage-head-cat {
    margin-top: 12px
  }
}

.work .worksPage-sort-btn>li {
  padding-bottom: 0px;
  background-image: linear-gradient(#fff, #fff);
  background-repeat: no-repeat;
  background-position: 0% 100%;
  background-size: 0% 100%;
  transition: all .3s;
  padding: 0px 10px
}

@media(max-width: 767px) {
  .work .worksPage-sort-btn>li {
    padding: 0px 8px;
    font-size: .9em
  }
}

.work .worksPage-sort-btn>li:hover,
.work .worksPage-sort-btn>li.active {
  background-size: 100% 100%;
  font-weight: 600
}

@media(any-hover: hover) {
  .work .worksPage-sort-btn>li:hover {
    cursor: pointer
  }
}

.work .worksPage {
  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
  padding: 120px 12px 70px;
  min-height: 120vh
}

@media(max-width: 767px) {
  .work .worksPage {
    padding: 70px 24px
  }
}

.work .worksPage .worksPage-ttl {
  font-size: 1.5em;
  font-weight: 600;
  margin-bottom: 12px;
  letter-spacing: .1em;
  line-height: 1.53;
  margin-top: 10px;
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-ttl {
    font-size: 1.2em
  }
}

.work .worksPage .worksPage-list {
  position: relative
}

.work .worksPage .worksPage-list .worksPage-item-inner {
  display: grid;
  gap: 40px;
  grid-template-columns: 60% 1fr;
  align-items: flex-start;
  min-height: -moz-fit-content;
  min-height: fit-content
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-list .worksPage-item-inner {
    gap: 20px;
    grid-template-columns: 1fr
  }
}

.work .worksPage .worksPage-list .worksPage-item {
  margin-bottom: 80px;
  position: absolute;
  min-height: -moz-fit-content;
  min-height: fit-content;
  width: 100%
}

.work .worksPage .worksPage-thumbs {
  display: grid;
  gap: 10px;
  grid-template-columns: 70% 1fr;
  align-items: flex-start
}

.work .worksPage .worksPage-thumbs .worksPage-thumbs-item {
  background-color: #fff;
  border-radius: 16px;
  overflow: hidden;
  border: 2px solid #0d0d0d;
  position: relative
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-thumbs .worksPage-thumbs-item {
    border-radius: 8px
  }
}

.work .worksPage .worksPage-thumbs .worksPage-thumbs-item::before {
  content: "";
  width: 100%;
  display: block;
  padding-top: 60.9375%
}

.work .worksPage .worksPage-thumbs .worksPage-thumbs-item.worksPage-thumbs-item--sp::before {
  padding-top: 216.40625%
}

.work .worksPage .worksPage-thumbs .worksPage-thumbs-item>img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center top;
  object-position: center top
}

.work .worksPage .worksPage-item-cnt {
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-item-cnt {
    height: auto
  }
}

.work .worksPage .worksPage-detail {
  display: grid;
  gap: 7px 6px;
  grid-template-columns: 40% 1fr;
  width: 100%
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-detail {
    grid-template-columns: 30% 1fr
  }
}

.work .worksPage .worksPage-detail>dt {
  font-weight: 600
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-detail>dt {
    font-size: .8em
  }
}

.work .worksPage .worksPage-detail>dd {
  font-size: .9em
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-detail>dd {
    font-size: .8em
  }
}

.work .worksPage .worksPage-detail .worksPage-detail-url>a {
  padding-bottom: 3px;
  background-image: linear-gradient(#f6e500, #f6e500);
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 1px;
  transition: background-size .3s;
  word-break: break-all
}

@media(any-hover: hover) {
  .work .worksPage .worksPage-detail .worksPage-detail-url>a:hover {
    background-position: 100% 100%;
    background-size: 100% 100%;
    color: #0d0d0d
  }
}

.work .worksPage .worksPage-detail-btn {
  width: 100%;
  background-color: #fff;
  display: block;
  border-radius: 4px;
  padding: 12px 0;
  font-weight: 600;
  letter-spacing: .08em;
  margin-top: auto;
  transition: all .5s;
  color: #0d0d0d
}

@media(max-width: 767px) {
  .work .worksPage .worksPage-detail-btn {
    margin-top: 24px
  }
}

@media(any-hover: hover) {
  .work .worksPage .worksPage-detail-btn:hover {
    background-color: #f6e500
  }
}

.work .worksPage .worksPage-item-comment {
  margin-top: .8em;
  width: 100%;
  border-top: 2px solid #fff;
  padding-top: .8em
}

.work .worksPage .worksPage-item-comment>h5 {
  font-weight: 600
}

.work .worksPage .worksPage-detail-scope {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap
}

.work .worksPage .worksPage-detail-scope li:not(:last-child)::after {
  content: "/";
  display: inline-block;
  margin: 0 .1em
}

.work .worksPage .tag {
  background: #1395ac;
  color: #fff;
  line-height: 1;
  padding: 5px 10px;
  font-size: .8em
}

.work .worksPage .tag.logo,
.work .worksPage .tag.graphic {
  background-color: #f6e500;
  color: #0d0d0d
}

.lcl-company {
  padding: 140px 0;
  position: relative;
  z-index: 2;
  background-color: #edf2f4;
}

.lcl-company-inner {
  width: 100%;
  max-width: 600px;
  margin-inline: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}



.lcl-company-wave {
  bottom: -88px;
  top: auto;
  transform: rotateX(180deg);
}

.lcl-company-inner th {
  text-align: left;
  padding: 10px 0;
}

.lcl-company-inner td {
  padding-left: 2em;
}

@media (max-width: 767px) {
  .lcl-company-inner {
    max-width: 100%;
    padding: 0 20px;
  }

  .lcl-company-inner th {
    display: block;
    width: 100%;
  }

  .lcl-company-inner td {
    padding-left: 1em;
    display: block;
    width: 100%;
    font-size: 13px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpZy9fcmVzZXQuc2NzcyIsImNvbmZpZy9fYmFzZS5zY3NzIiwiY29uZmlnL191dGlsLnNjc3MiLCJjb21wb25lbnQvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50L19mb290ZXIuc2NzcyIsInBhZ2VzL19pbmRleC5zY3NzIiwicGFnZXMvX2Jsb2cuc2NzcyIsInBhZ2VzL193b3JrLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkNBcUhBLEtBRUUsdUJBR0YsS0FDRSxzQkFDQSxrQkFFQSxXQUNBLGlCQUtGLG1CQUdFLHNCQUtGLGVBQ0UsOEJBWUYsMlpBaUZFLGVBQ0EsYUFDQSxTQUNBLFVBQ0EsU0FDQSx3QkFJRixPQUNFLFVBSUYsbUZBWUUsY0FHRixNQUVFLGdCQUdGLGFBRUUsWUFFQSxvREFFRSxXQUNBLGFBSUosTUFDRSx5QkFDQSxpQkFNQSxrQkFDRSxVQVFKLHFCQUVFLGdCQUdGLCtHQUlFLHlDQUdGLHVNQUlFLHdCQUNBLHFCQUdGLG1CQUNFLHdCQUNBLHFCQUNBLCtCQUNBLDRCQUNBLHVCQUdGLFNBQ0UsY0FDQSxtQkFDQSxnQkFNRixtQkFHRSxxQkFDQSxlQVFGLHNCQUNFLGFBQ0EsU0FPRixTQUNFLGFBTUYsaUJBRUUsYUFJRixJQUNFLFNBQ0EsZUFDQSxxQkFDQSxzQkFDQSxZQUlGLFFBQ0UscUJBT0YsT0FDRSxTQVNGLGFBRUUsbUJBVUYsY0FFRSxvQkFHRixvRUFJRSwwQkFDQSxlQUNBLFNBQ0EseUJBR0YseUJBQ0UsU0FRRixzQ0FFRSxlQU1GLHVDQUVFLFVBU0YsbUJBQ0UsNkJBQ0EsNEJBQ0EsK0JBQ0EsdUJBUUYsK0ZBRUUsd0JBT0YsaURBRUUsU0FDQSxVQUdGLE9BQ0UsU0FDQSx5QkFRRixTQUNFLGNBRUEsbUJBR0EsZ0JBTUYsTUFDRSx5QkFDQSxpQkFTRixHQUNFLHVCQUNBLGlCQUNBLGdCQUNBLFNBQ0EsV0FDQSxjQUNBLFNBQ0EsVUFDQSx3QkFDQSxXQU9GLElBQ0UsZ0NBQ0EsZUFNRixFQUNFLCtCQVFGLFlB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LHlEQUVFLHlCQUNBIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVzZXQgTWl4aW5nXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIERpc2FibGUgQW5pbWF0aW9uXG4gKi9cbiBAbWl4aW4gZGlzYWJsZUFuaW1hdGlvbiB7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuXG4gIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuXG4gIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIERpc2FibGUgYW5pbWF0aW9uIGRlcGVuZHMgb24gQnJvd3NlciBvciBPcGVyYXRpb24gU3lzdGVtIGNvbmZpZ3VyYXRpb25cbiAqL1xuQG1peGluIGFjRGlzYWJsZUFuaW1hdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZUFuaW1hdGlvbjtcbiAgfVxufVxuXG4vKipcbiAqIEFjY2Vzc2FiaWxpdHkuIEJsYWNrIGFuZCBXaGl0ZSBNb2RlXG4gKi9cbkBtaXhpbiBhY01vZGVCVyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xufVxuXG4vKipcbiAqIEFjY2Vzc2FiaWxpdHkuIEludmVyc2UgTW9kZVxuICovXG5AbWl4aW4gYWNNb2RlQ29udHJhc3Qge1xuICBmaWx0ZXI6IGludmVydCgxMDAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogTWV0ZXIgcmVzZXRcbiAqL1xuQG1peGluIG1ldGVyUmVzZXQge1xuICBtZXRlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICA6Oi1tb3otbWV0ZXItYmFyIHtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmVcbiAgfVxuXG4gIDotbW96LW1ldGVyLW9wdGltdW06Oi1tb3otbWV0ZXItYmFyLFxuICA6LW1vei1tZXRlci1zdWItb3B0aW11bTo6LW1vei1tZXRlci1iYXIsXG4gIDotbW96LW1ldGVyLXN1Yi1zdWItb3B0aW11bTo6LW1vei1tZXRlci1iYXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmVcbiAgfVxuXG5cbiAgbWV0ZXI6Oi13ZWJraXQtbWV0ZXItYmFyLFxuICBtZXRlcjo6LXdlYmtpdC1tZXRlci1vcHRpbXVtLXZhbHVlLFxuICBtZXRlcjo6LXdlYmtpdC1tZXRlci1zdWJvcHRpbXVtLXZhbHVlLFxuICBtZXRlcjo6LXdlYmtpdC1tZXRlci1ldmVuLWxlc3MtZ29vZC12YWx1ZSxcbiAgbWV0ZXI6Oi13ZWJraXQtbWV0ZXItaW5uZXItZWxlbWVudCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gcHJvZ3Jlc3NSZXNldCB7XG5cbiAgLyoqXG4gICAqIFByb2dyZXNzIEJhciBSZXNldFxuICAgKlxuICAgKi9cbiAgcHJvZ3Jlc3MsXG4gIHByb2dyZXNzW3JvbGVdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLyogUmVzZXQgRGVmYXVsdHMgKi9cbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIC8qIE5lZWRzIHRvIGJlIGluIGhlcmUgZm9yIFNhZmFyaSBwb2x5ZmlsbCBzbyBiYWNrZ3JvdW5kIGltYWdlcyB3b3JrIGFzIGV4cGVjdGVkLiAqL1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0bztcbiAgfVxuXG4gIC8qIFBvbHlmaWxsICovXG4gIHByb2dyZXNzW3JvbGVdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIC8qIHJlbW92ZXMgZGVmYXVsdCBiYWNrZ3JvdW5kIGZyb20gcG9seWZpbGwgKi9cbiAgfVxuXG4gIC8qIEVuc3VyZSBmYWxsYmFjayB0ZXh0IGRvZXNuJ3QgYXBwZWFyIGluIHBvbHlmaWxsICovXG4gIHByb2dyZXNzW3JvbGVdIHN0cm9uZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi8qKlxuICogTW9kZXJuIENTUyBSZXNldCBUd2Vha3NcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmh0bWwge1xuICAvLyBTbW9vdGggc2Nyb2xsXG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5ib2R5IHtcbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuXG4vKiBCb3ggc2l6aW5nIG5vcm1hbGl6YXRpb24gKi9cbiosXG46OmFmdGVyLFxuOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8qIEVsZW1lbnRzIHRoYXQgZG9uJ3QgaGF2ZSBhIGNsYXNzIGdldCBkZWZhdWx0IHN0eWxlcyAqL1xuYTpub3QoW2NsYXNzXSkge1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87XG59XG5cblxuLyoqXG4gKiBDU1MgUmVzZXQgVHdlYWtzXG4gKlxuICogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC9cbiAqIHYyLjAtbW9kaWZpZWQgfCAyMDExMDEyNlxuICogTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiAqL1xuXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5hcHBsZXQsXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmEsXG5hYmJyLFxuYWNyb255bSxcbmFkZHJlc3MsXG5iaWcsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuaW1nLFxuaW5zLFxua2JkLFxucSxcbnMsXG5zYW1wLFxuc21hbGwsXG5zdHJpa2UsXG5zdHJvbmcsXG5zdWIsXG5zdXAsXG50dCxcbnZhcixcbmIsXG51LFxuaSxcbmNlbnRlcixcbmRsLFxuZHQsXG5kZCxcbm9sLFxudWwsXG5saSxcbmZpZWxkc2V0LFxuZm9ybSxcbmxhYmVsLFxubGVnZW5kLFxudGFibGUsXG5jYXB0aW9uLFxudGJvZHksXG50Zm9vdCxcbnRoZWFkLFxudHIsXG50aCxcbnRkLFxuYXJ0aWNsZSxcbmFzaWRlLFxuY2FudmFzLFxuZGV0YWlscyxcbmVtYmVkLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5vdXRwdXQsXG5ydWJ5LFxuc2VjdGlvbixcbnN1bW1hcnksXG50aW1lLFxubWFyayxcbmF1ZGlvLFxudmlkZW8ge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIG1ha2Ugc3VyZSB0byBzZXQgc29tZSBmb2N1cyBzdHlsZXMgZm9yIGFjY2Vzc2liaWxpdHkgKi9cbjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbm1haW4sXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbm9sLFxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIHF1b3Rlczogbm9uZTtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG4vKiBIaWRlIGVtcHR5IGNlbGwgKi9cbnRkLFxudGgge1xuICAmOmVtcHR5IHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cblxuLyoqXG4gKiBJbnB1dCBSZXNldFxuICovXG5pbnB1dDpyZXF1aXJlZCxcbmlucHV0IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDMwcHggd2hpdGUgaW5zZXQ7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qKlxuICogQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgNy84LzksIEZpcmVmb3ggMywgYW5kIFNhZmFyaSA0LlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyogTWFrZSBpbWFnZXMgZWFzaWVyIHRvIHdvcmsgd2l0aCAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKiBNYWtlIHBpY3R1cmVzIGVhc2llciB0byB3b3JrIHdpdGggKi9cbnBpY3R1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgNi83LzgvOSwgU2FmYXJpIDUsIGFuZCBPcGVyYSAxMS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggMysgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gQ2hyb21lLCBTYWZhcmkgNSssIGFuZCBJRSA2Ky5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCA0KyBhbmQgT3BlcmEuXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGNvbnRlbnQtYm94IGluIElFIDgvOS5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiBvbiBPUyBYLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCAzKy5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgNi83LzgvOS5cbiAqIDIuIEltcHJvdmUgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAvKiAyICovXG5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cblxuLyoqXG4gKiBCYXNlZCBvbiBub3JtYWxpemUuY3NzIHY4LjAuMVxuICogZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcGFnZS1icmVhay1hZnRlcjogYWx3YXlzO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTVweDtcbn1cblxuc3VwIHtcbiAgdG9wOiAtNXB4O1xufVxuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG59XG5cblxubGVnZW5kIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbmJvZHk6bm90KDotbW96LWhhbmRsZXItYmxvY2tlZCkgZmllbGRzZXQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qXG4gKiBNaXNjXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gKiBCYXNlXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCxcbmJvZHkge1xuICBmb250LWZhbWlseTogZG5wLXNodWVpLWdvdGhpYy1naW4tc3RkLCBIaXJhZ2lubyBTYW5zLCBcIuODkuODqeOCruODjuinkuOCtOOCt+ODg+OCr1wiLFxuICAgIEhpcmFnaW5vIEtha3UgR290aGljIFByb04sIFwi44OS44Op44Ku44OO6KeS44K0IFByb04gVzNcIiwgXCLjg6HjgqTjg6rjgqpcIiwgTWVpcnlvLFxuICAgIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgY29sb3I6ICMyODI4Mjg7XG4gIGJhY2tncm91bmQ6ICNmZmYgbm9uZTtcblxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICBzY3JvbGwtcGFkZGluZy10b3A6IDEwMHB4O1xuICBzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGU7XG59XG5cbio6Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4qOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbio6Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuYSB7XG4gIGNvbG9yOiAjMTExO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmluZGV4XG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ub2gtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuaW5kZXhcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLndycCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5iZ19ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZjJmNDtcbn1cblxuLmNvbnRlbnRzIHtcbiAgbWFyZ2luLWJvdHRvbTogNDY1cHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjg1cHg7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmluZGV4XG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN3cmFwcGVyIHtcbiAgICBtaW4td2lkdGg6IDEwMjRweDtcbiAgfVxuXG4gICN3cmFwcGVyIC53MTAwMCB7XG4gICAgd2lkdGg6IDEwMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmluZGV4XG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5ibG9ja19zdWJ0eHQge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5saW5rX3R4dCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogcmdiKDIyNywgMTk4LCAzOSk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYmxvY2t0dGwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7XG59XG5cbi5ibG9ja3R0bF9fbWFpbiB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi5ibG9ja3R0bF9fc3ViIHtcbiAgY29sb3I6ICNjY2Q1ZDk7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbi8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4uYmxvY2t0dGwtLXdoLFxuLmJsb2NrdHRsLS13aCAuYmxvY2t0dGxfX3N1YiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxud2F2ZVxuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ud2F2ZS13cnAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA5MHB4O1xuICB3aWR0aDogMTAwJTtcblxuICA+Y2FudmFzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDkwcHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09ICNhcmNoaXZlID09PT09PT09PT09PT0qL1xuXG4uYXJjaGl2ZS13cnAge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTMwcHggMiU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDExMDBweDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBwYWRkaW5nOiA2MHB4IDE1cHggMTVweDtcbiAgfVxufVxuXG4uYXJjaGl2ZS1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbn1cblxuLmFyY2hpdmUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDQlIDcwcHg7XG4gIHdpZHRoOiA0MiU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogZWFzZSAwLjVzO1xuICB0cmFuc2l0aW9uOiBlYXNlIDAuNXM7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luOiAwIDAgNDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYXJjaGl2ZS1pdGVtX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgJjpob3ZlciB7XG4gICAgLmFyY2hpdmUtaXRlbV9fdHRsIHtcbiAgICAgIGNvbG9yOiAjYzViODAzO1xuICAgIH1cblxuICAgIC5hcmNoaXZlLWl0ZW1fX2ltZy1pbiB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICB9XG4gIH1cbn1cblxuLmFyY2hpdmUtaXRlbV9faW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjQzcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBoZWlnaHQ6IDE3OHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuLmFyY2hpdmUtaXRlbV9faW1nLWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL29ncC5wbmcpO1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG59XG5cbi8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4uYXJjaGl2ZS1pdGVtX19pbmZvIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5hcmNoaXZlLWl0ZW1fX3R0bCB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTMzO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi5hcmNoaXZlLWl0ZW0tbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5hcmNoaXZlLWl0ZW1fX2RheXMge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuXG5bY2xhc3NePVwiY2F0aWNvbi0tXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMGRhZGU7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzcHggMTVweDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgcGFkZGluZzogM3B4IDEwcHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09ICNzaGFyZWJ0biA9PT09PT09PT09PT09Ki9cbi5zaGFyZWJ0biB7XG4gIG1hcmdpbjogNDBweCAwIDMwcHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgbWFyZ2luOiAxMHB4IDAgNTBweDtcbiAgfVxufVxuXG4uc2hhcmVidG4tbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5zaGFyZWJ0bi1saXN0PmxpIHtcbiAgbWFyZ2luOiAwIDdweDtcbn1cblxuLnNoYXJlYnRuLWxpc3Q+bGk+YSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBjb2xvcjogIzk5OTtcbiAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2hhcmVidG4tbGlzdD5saT5hOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5zaGFyZWJ0bi1pdGVtLS1mYjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5ODtcbiAgfVxuXG4gIC5zaGFyZWJ0bi1pdGVtLS10dzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFkYTFmMjtcbiAgfVxuXG4gIC5zaGFyZWJ0bi1pdGVtLS1wa3Q6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZjQwNTY7XG4gIH1cblxuICAuc2hhcmVidG4taXRlbS0taHRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNGRlO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PSAjYnJlYWRjcnVtYiA9PT09PT09PT09PT09Ki9cblxuLmJyZWFkY3J1bWJfX2xpc3Qge1xuICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgcGFkZGluZzogNTVweCAwIDEwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cblxuLmJyZWFkY3J1bWJfX2xpc3Q+bGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIj5cIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5icmVhZGNydW1iX19saXN0PmxpPmEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJyZWFkY3J1bWJfX2xpc3Q+bGk+YTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4iLCIvKipcbiAqIFV0aWxcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbSkge1xuICAucGMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAoJG0rMSkpIHtcbiAgLnNwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRhYyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5IZWFkZXJcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMjBweDtcbiAgei1pbmRleDogMTAwMDE7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICB9XG5cbiAgLmhlYWRlci1pbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwMDE7XG4gIH1cblxuICAuaGFtLXdyYXAge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQwZDBkO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW0tbWVudV9fYnRuLWwge1xuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgdG9wOiAyMC40cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5pcy1hY3RpdmUpIHtcbiAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAuaGFtLW1lbnVfX2J0bi1sIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgdG9wOiAxNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGFtLW1lbnVfX2J0bi1sIHtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXG4gICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiAxMnB4O1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRvcDogMTlweDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICB0b3A6IDI2cHg7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlci1jb250YWN0IHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZTUwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcblxuICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDBkMGQ7XG4gICAgICAgIGNvbG9yOiAjZjZlNTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXItbG9nbyB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAubG9nb19fbGluayB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuM2VtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIC1tcy13cml0aW5nLW1vZGU6IHRiLXJsO1xuICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2hlYWRlcl9fbmF2ID09PT09PT09PT09PT0qL1xuICAuaGVhZGVyX19uYXYge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuN3MgZWFzZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcGFkZGluZzogMCA1dnc7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjRzIGVhc2UgMC40cztcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzMmRlZyxcbiAgICAgICAgICByZ2JhKDc3LCAxMzUsIDIwMCwgMSkgMCUsXG4gICAgICAgICAgcmdiYSgxOSwgMTQ5LCAxNzIsIDEpIDc4JSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTMyZGVnLFxuICAgICAgICAgIHJnYmEoNzcsIDEzNSwgMjAwLCAxKSAwJSxcbiAgICAgICAgICByZ2JhKDE5LCAxNDksIDE3MiwgMSkgNzglKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC40cyBlYXNlIDAuM3M7XG4gICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAuaGVhZGVyX19uYXYtbGlzdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UgMC4ycztcbiAgICB9XG5cbiAgICAuaGVhZGVyX19uYXYtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDEuNHZ3O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogMC42cyBlYXNlO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiA1LjR2dztcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXZ3O1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZ2dztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXJfX25hdi1saW5rIHtcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmNmU1MDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlYWRlcl9fbmF2LWxpbmsge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjZjZlNTAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmhlYWRlcl9fbmF2IHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuN3MgZWFzZTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgbGluZWFyIDAuM3M7XG4gICAgICB9XG5cbiAgICAgIC5oZWFkZXJfX25hdi1saXN0IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgIC5oZWFkZXJfX25hdi1pdGVtIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlIDAuM3M7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5oZWFkZXJfX25hdi5pcy1hY3RpdmUgLmhlYWRlcl9fbmF2LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgMC4ycztcbiAgfVxuXG4gIC5oZWFkZXJfX25hdi5pcy1hY3RpdmUgLmhlYWRlcl9fbmF2LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgMC4zcztcbiAgfVxuXG4gIC5oZWFkZXJfX25hdi5pcy1hY3RpdmUgLmhlYWRlcl9fbmF2LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgMC40cztcbiAgfVxuXG4gIC5oZWFkZXJfX25hdi5pcy1hY3RpdmUgLmhlYWRlcl9fbmF2LWl0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgMC41cztcbiAgfVxuXG4gIC5oZWFkZXJfX25hdi5pcy1hY3RpdmUgLmhlYWRlcl9fbmF2LWl0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UgMC42cztcbiAgfVxufVxuXG4vKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuLm92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTMwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuIiwiLyoqXG4gKiBGb290ZXJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiNmb290ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyLWluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDY1cHg7XG4gIGJhY2tncm91bmQ6IHVybCh7e3BhdGhOYW1lfX1pbWcvZm9vdGVyL2JnXzAxLmpwZykgY2VudGVyIHRvcC8gY292ZXIgbm8tcmVwZWF0O1xuICBwYWRkaW5nOiAxNjZweCAwIDA7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVpZ2h0OiAyODVweDtcbiAgICBwYWRkaW5nOiAxMjZweCAxNXB4IDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDMzJTtcbiAgfVxufVxuXG4uZm9vdGVyLWxvZ28sXG4uZm9vdGVyLWxvZ28+aW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICB9XG59XG5cbi5mb290ZXItdHh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA1NXB4O1xuICBtYXJnaW4tYm90dG9tOiA4NXB4O1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuXG4uZm9vdGVyLWNvcHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIG1hcmdpbi10b3A6IDU1cHg7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cbn1cbiIsIi8qKlxuICogSW5kZXhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uaW5kZXgge1xuICAubGNsLW1haW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDh2dztcbiAgICAvKmJhY2tncm91bmQ6IHVybCguLi9pbWcvbWFpbi9iZ18wMS5qcGcpIGxlZnQgdG9wLyBjb3ZlciBuby1yZXBlYXQ7Ki9cbiAgICBiYWNrZ3JvdW5kOiB1cmwoe3twYXRoTmFtZX19aW1nL21haW4vYmdfMDEuanBnKSBsZWZ0IHRvcC8gY292ZXIgbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmxjbC1tYWluIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xuICAgICAgbWF4LWhlaWdodDogOTUwcHg7XG4gICAgfVxuICB9XG5cbiAgLmxjbC1tYWluX190dGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLmxjbC1tYWluX190dGw+c3ZnIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogI2ZmZjtcbiAgICBzdHJva2Utd2lkdGg6IDg7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDE1MDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDE1MDA7XG4gICAgYW5pbWF0aW9uOiBoZWxsbyAycyBlYXNlLWluIGZvcndhcmRzIDJzO1xuICB9XG5cbiAgQGtleWZyYW1lcyBoZWxsbyB7XG4gICAgMCUge1xuICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgZmlsbDogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAubGNsLW1haW5fX3R0bD5lbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4yOGVtO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmxjbC1tYWluLWljbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIFtjbGFzc149XCJsY2wtbWFpbi1pY28taXRlbS0tXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAubGNsLW1haW4taWNvLWl0ZW0tLTAxIHtcbiAgICB3aWR0aDogMTY1cHg7XG4gICAgbGVmdDogLTEwcHg7XG4gICAgdG9wOiA0LjF2dztcbiAgfVxuXG4gIC5sY2wtbWFpbi1pY28taXRlbS0tMDIge1xuICAgIHdpZHRoOiA3N3B4O1xuICAgIGxlZnQ6IDEyNXB4O1xuICAgIGJvdHRvbTogNDElO1xuICB9XG5cbiAgLmxjbC1tYWluLWljby1pdGVtLS0wMyB7XG4gICAgd2lkdGg6IDE0N3B4O1xuICAgIHJpZ2h0OiAxMXZ3O1xuICAgIGJvdHRvbTogMzQlO1xuICB9XG5cbiAgLmxjbC1tYWluLWljby1pdGVtLS0wNCB7XG4gICAgd2lkdGg6IDc3cHg7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2xlYWQgPT09PT09PT09PT09PSovXG4gIC5sY2wtbGVhZCB7XG4gICAgLyptYXJnaW4tdG9wOiA0OHZ3OyovXG4gICAgcGFkZGluZzogODBweCAwIDE4MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAubGNsLWxlYWQgLndhdmUtd3JwIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAtOTBweDtcbiAgfVxuXG4gIC5sY2wtbGVhZF9fdHRsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgY29sb3I6ICMxMzk1YWM7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTMyZGVnLFxuICAgICAgICByZ2JhKDc3LCAxMzUsIDIwMCwgMSkgMCUsXG4gICAgICAgIHJnYmEoMTksIDE0OSwgMTcyLCAxKSA3OCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzJkZWcsXG4gICAgICAgIHJnYmEoNzcsIDEzNSwgMjAwLCAxKSAwJSxcbiAgICAgICAgcmdiYSgxOSwgMTQ5LCAxNzIsIDEpIDc4JSk7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAubGNsLWxlYWRfX3R4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmxjbC1sZWFkLWljby13cnAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBbY2xhc3NePVwibGNsLWxlYWQtaWNvLWl0ZW0tLVwiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmxjbC1sZWFkLWljby1pdGVtLS0wMSxcbiAgLmxjbC1sZWFkLWljby1pdGVtLS0wMyB7XG4gICAgd2lkdGg6IDExNXB4O1xuICB9XG5cbiAgLmxjbC1sZWFkLWljby1pdGVtLS0wMixcbiAgLmxjbC1sZWFkLWljby1pdGVtLS0wNCB7XG4gICAgd2lkdGg6IDcycHg7XG4gIH1cblxuICAubGNsLWxlYWQtaWNvLWl0ZW0tLTAxIHtcbiAgICBsZWZ0OiAtMTBweDtcbiAgICB0b3A6IDIuMXZ3O1xuICB9XG5cbiAgLmxjbC1sZWFkLWljby1pdGVtLS0wMiB7XG4gICAgbGVmdDogMTZ2dztcbiAgICBib3R0b206IDI5JTtcbiAgfVxuXG4gIC5sY2wtbGVhZC1pY28taXRlbS0tMDMge1xuICAgIHJpZ2h0OiA2dnc7XG4gICAgYm90dG9tOiAxMy41dnc7XG4gIH1cblxuICAubGNsLWxlYWQtaWNvLWl0ZW0tLTA0IHtcbiAgICByaWdodDogMTh2dztcbiAgICB0b3A6IDUuMnZ3O1xuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICN3b3JrcyA9PT09PT09PT09PT09Ki9cbiAgLmxjbC13b3JrcyB7XG4gICAgcGFkZGluZzogODBweCAwIDE3MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmxjbC13b3JrcyAud2F2ZS13cnAge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IC05MHB4O1xuICB9XG5cbiAgLmxjbC13b3Jrcy1saXN0IHtcbiAgICB3aWR0aDogOTUwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmxjbC13b3Jrcy1pdGVtX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZSB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyovXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB0cmFuc2l0aW9uOiAwLjhzIGVhc2U7XG4gICAgLyp0cmFuc2Zvcm06IHNjYWxlKDApOyovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YmVmb3JlLFxuICAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IDAuOXMgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG5cbiAgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YmVmb3JlIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICB9XG5cbiAgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdG9wOiAycHg7XG4gICAgbGVmdDogMnB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjlzIGVhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlPnNwYW4sXG4gIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3Bhbj5pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMjlweDtcbiAgfVxuXG4gIC5sY2wtd29ya3MtaXRlbS10eHQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDQ0NDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDUwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDUwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC41cyBlYXNlO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgW2NsYXNzXj1cImxjbC13b3Jrcy1pdGVtLS1cIl0uc2NyLWFuaW4tLW9uIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmJlZm9yZSxcbiAgW2NsYXNzXj1cImxjbC13b3Jrcy1pdGVtLS1cIl0uc2NyLWFuaW4tLW9uIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICBbY2xhc3NePVwibGNsLXdvcmtzLWl0ZW0tLVwiXS5zY3ItYW5pbi0tb24gLmxjbC13b3Jrcy1pdGVtLWNpcmNsZT5zcGFuIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgW2NsYXNzXj1cImxjbC13b3Jrcy1pdGVtLS1cIl0uc2NyLWFuaW4tLW9uIC5sY2wtd29ya3MtaXRlbS10eHQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5sY2wtd29ya3MtaXRlbS0tMDEgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wMiAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC42cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTAzIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDQgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNSAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC41NXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNiAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC40NXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNyAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wOCAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC43NXM7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTAxIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wMiAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDMgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YWZ0ZXIge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA0IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNSAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjY1cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA2IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU6OmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNTVzO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDcgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZTo6YWZ0ZXIge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zNXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wOCAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjg1cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTAxIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDIgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZT5zcGFuIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDEuMnM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wMyAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlPnNwYW4ge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNCAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlPnNwYW4ge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC45cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA1IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjE1cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA2IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjA1cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA3IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjg1cztcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA4IC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjM1cztcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5sY2wtd29ya3MtaXRlbS0tMDEgLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAwLjlzLCBvcGFjaXR5IDFzIGVhc2UgMC45cyxcbiAgICAgICAgY29sb3IgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDIgLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAxLjRzLCBvcGFjaXR5IDFzIGVhc2UgMS40cyxcbiAgICAgICAgY29sb3IgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDMgLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAxLjJzLCBvcGFjaXR5IDFzIGVhc2UgMS4ycyxcbiAgICAgICAgY29sb3IgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDQgLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAxLjFzLCBvcGFjaXR5IDFzIGVhc2UgMS4xcyxcbiAgICAgICAgY29sb3IgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDUgLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAxLjM1cywgb3BhY2l0eSAxcyBlYXNlIDEuMzVzLFxuICAgICAgICBjb2xvciAwLjVzIGVhc2U7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtLS0wNiAubGNsLXdvcmtzLWl0ZW0tdHh0IHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlIDEuMjVzLCBvcGFjaXR5IDFzIGVhc2UgMS4yNXMsXG4gICAgICAgIGNvbG9yIDAuNXMgZWFzZTtcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tLTA3IC5sY2wtd29ya3MtaXRlbS10eHQge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIGVhc2UgMS4wNXMsIG9wYWNpdHkgMXMgZWFzZSAxLjA1cyxcbiAgICAgICAgY29sb3IgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS0tMDggLmxjbC13b3Jrcy1pdGVtLXR4dCB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSAxLjU1cywgb3BhY2l0eSAxcyBlYXNlIDEuNTVzLFxuICAgICAgICBjb2xvciAwLjVzIGVhc2U7XG4gICAgfVxuXG4gICAgW2NsYXNzXj1cImxjbC13b3Jrcy1pdGVtLS1cIl06bnRoLWNoaWxkKC1uICsgNCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5sY2wtd29ya3MtaXRlbV9fbGluazpob3ZlciAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgfVxuXG4gICAgLmxjbC13b3Jrcy1pdGVtX19saW5rOmhvdmVyIC5sY2wtd29ya3MtaXRlbS10eHQge1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC41cyBlYXNlO1xuICAgICAgY29sb3I6IHJnYigyMjcsIDE5OCwgMzkpO1xuICAgIH1cbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjZGVzaWduID09PT09PT09PT09PT0qL1xuICAubGNsLWRlc2lnbiB7XG4gICAgcGFkZGluZzogNDVweCAwIDEyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cblxuICAubGNsLWRlc2lnbiAud2F2ZS13cnAge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IC05MHB4O1xuICB9XG5cbiAgLmxjbC1kZXNpZ24taW4ge1xuICAgIHdpZHRoOiAxMDYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmxjbC1kZXNpZ24tdHh0IHtcbiAgICB3aWR0aDogMjMlO1xuICAgIHBhZGRpbmc6IDY3cHggMCAwO1xuICB9XG5cbiAgLmxjbC1kZXNpZ24tdHh0IC5ibG9ja3R0bCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5sY2wtZGVzaWduLXR4dF9fZGVzYyB7fVxuXG4gIC5sY2wtZGVzaWduLWFyY2hpdmUge1xuICAgIHdpZHRoOiA3NyU7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAubGNsLXNsaWRlIHtcbiAgICB3aWR0aDogNzIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCBhdXRvIDA7XG4gIH1cblxuICAubGNsLXNsaWRlIC5zbGljay1saXN0IHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgfVxuXG4gIC5sY2wtc2xpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubGNsLXNsaWRlLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5zbGljay1zbGlkZSB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjhzIGVhc2U7XG4gICAgdG9wOiAtMjVweDtcbiAgfVxuXG4gIC5sY2wtc2xpZGUtaXRlbS1pbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzAwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I1YjViNTtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmxjbC1zbGlkZS1pdGVtLWltZ19faWNvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogOHB4IDE3cHg7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW1fX3R4dCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS40NDQ7XG4gIH1cblxuICAubGNsLXNsaWRlIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDBweDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5sY2wtc2xpZGUgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0xNXB4O1xuICB9XG5cbiAgLmxjbC1zbGlkZSAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0xNXB4O1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmxjbC1zbGlkZSAuc2xpY2stY3VycmVudCB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLmxjbC1zbGlkZSAuc2xpY2stY3VycmVudCsuc2xpY2stYWN0aXZlIHtcbiAgICB0b3A6IC02NXB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubGNsLXNsaWRlIC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgICBjb2xvcjogIzEzOTVhYztcbiAgICB9XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wMSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzAxLmpwZyk7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wMiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzAyLmpwZyk7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wMyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzAzLmpwZyk7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wNCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzA0LmpwZyk7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wNSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzA1LmpwZyk7XG4gIH1cblxuICAubGNsLXNsaWRlLWl0ZW0taW1nLS0wNiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7cGF0aE5hbWV9fWltZy9kZXNpZ24vaW1nXzA2LmpwZyk7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2Zsb3cgPT09PT09PT09PT09PSovXG4gIC5sY2wtZmxvdyB7XG4gICAgYmFja2dyb3VuZDogcmdiKDIyNywgMTk4LCAzOSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM5ZGVnLFxuICAgICAgICByZ2JhKDIyNywgMTk4LCAzOSwgMSkgMTAlLFxuICAgICAgICByZ2JhKDIzNCwgMjA5LCAyNSwgMSkgNzQlKTtcbiAgICBwYWRkaW5nOiAxNDNweCAwIDE3MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmxjbC1mbG93LXdhdmUtMDEge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAubGNsLWZsb3ctbGlzdCB7XG4gICAgd2lkdGg6IDkwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIFtjbGFzc149XCJsY2wtZmxvdy1pdGVtLS1cIl0ge1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBbY2xhc3NePVwibGNsLWZsb3ctaXRlbS0tXCJdOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTQwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0taW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLXR4dCB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAubGNsLWZsb3ctaXRlbS1udW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0tbnVtOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0tbnVtX19zdGVwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTUuNXB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDEzcHg7XG4gIH1cblxuICAubGNsLWZsb3ctaXRlbS1udW1fX3N0ZXA+aW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLW51bV9faWNvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byA1cHg7XG4gIH1cblxuICAubGNsLWZsb3ctaXRlbS1udW1fX2ljbz5pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0tLTAxIC5sY2wtZmxvdy1pdGVtLW51bV9faWNvIHtcbiAgICB3aWR0aDogNTdweDtcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLS0wMiAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgd2lkdGg6IDYzLjVweDtcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLS0wMyAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgd2lkdGg6IDY1cHg7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICBbY2xhc3NePVwibGNsLWZsb3ctaXRlbS0tXCJdLnNjci1hbmluLS1vbiAubGNsLWZsb3ctaXRlbS1udW06OmFmdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLS0wMSAubGNsLWZsb3ctaXRlbS1udW06OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0tLTAyIC5sY2wtZmxvdy1pdGVtLW51bTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuOXM7XG4gIH1cblxuICAubGNsLWZsb3ctaXRlbS0tMDMgLmxjbC1mbG93LWl0ZW0tbnVtOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS42cztcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5sY2wtZmxvdy1pdGVtLS0wMSAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLS0wMiAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS4ycztcbiAgfVxuXG4gIC5sY2wtZmxvdy1pdGVtLS0wMyAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMS44cztcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5sY2wtZmxvdy1pdGVtLS0wMSAubGNsLWZsb3ctaXRlbS10eHQge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7XG4gIH1cblxuICAubGNsLWZsb3ctaXRlbS0tMDIgLmxjbC1mbG93LWl0ZW0tdHh0IHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxLjRzO1xuICB9XG5cbiAgLmxjbC1mbG93LWl0ZW0tLTAzIC5sY2wtZmxvdy1pdGVtLXR4dCB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMnM7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7fVxuXG4gIC8qPT09PT09PT09PT09PSAjY29udGFjdCA9PT09PT09PT09PT09Ki9cbiAgLmxjbC1jb250YWN0IHtcbiAgICBwYWRkaW5nOiAzNXB4IDAgOTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgI21haWxmb3JtIHtcbiAgICB3aWR0aDogNjgwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICBidXR0b24sXG4gIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksXG4gIHRleHRhcmVhIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDI2NXB4O1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG4gICAgcGFkZGluZzogMjVweCAyMHB4O1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLm1haWxmb3JtLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICB9XG5cbiAgLm1haWxmb3JtLWl0ZW1fX3R0bCB7XG4gICAgY29sb3I6ICNhZWJkYzM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgdG9wOiAxMnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xuICB9XG5cbiAgLm1haWxmb3JtLWl0ZW0tMmNvbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gIH1cblxuICAubWFpbGZvcm0taXRlbS0yY29sIC5tYWlsZm9ybS1pdGVtIHtcbiAgICB3aWR0aDogMzMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5tYWlsZm9ybS1pdGVtIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAubWFpbGZvcm0tbGFiZWwtdHh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAubWFpbGZvcm0taXRlbV9fYWxlcnQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmMDRmNGY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLm1haWxmb3JtLWl0ZW0uZm9yY3VzZWQgLm1haWxmb3JtLWl0ZW1fX3R0bCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdG9wOiAtMTRweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG5cbiAgLm1haWxmb3JtLWl0ZW1fX3R4dC5pbnB1dHRlZH4ubWFpbGZvcm0taXRlbV9fdHRsIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0b3A6IC0xNHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAubWFpbGZvcm0taXRlbeKAk2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC5tYWlsZm9ybS1pdGVt4oCTbGlzdD5saTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuY29udGFjdC1zdWJtaXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuY29udGFjdC1zdWJtaXQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIHdpZHRoOiAyNjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzJjNWE2ZDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICBjb2xvcjogIzJjNWE2ZDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNvbnRhY3Qtc3VibWl0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjNWE2ZDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWN0LXN1Ym1pdCAud3BjZjctc3Bpbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gICNkaXNwbXNnIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAjZXJybXNnIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogI2YwNGY0ZjtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmxjbC1jb250YWN0IC53YXZlLXdycCB7XG4gICAgYm90dG9tOiAtOTBweDtcbiAgICB0b3A6IGF1dG87XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2Jsb2cgPT09PT09PT09PT09PSovXG4gIC5sY2wtYmxvZyB7XG4gICAgcGFkZGluZzogMTI1cHggMCA5MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmxjbC1ibG9n4oCTbGlzdCB7XG4gICAgd2lkdGg6IDc1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XG4gIH1cblxuICAubGNsLWJsb2cgLndhdmUtd3JwIHtcbiAgICBib3R0b206IC05MHB4O1xuICAgIHRvcDogYXV0bztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgLmxjbC1ibG9n4oCTaXRlbV9fbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5sY2wtYmxvZ+KAk2l0ZW1fX2xpbms6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLmxjbC1ibG9nX19saW5rOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzVhNmQ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAubGNsLWJsb2figJNpdGVtX19kYXkge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cblxuICAubGNsLWJsb2figJNpdGVtX190dGwge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAubGNsLWJsb2dfX2xpbmsge1xuICAgIHdpZHRoOiAyNjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzJjNWE2ZDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjbW9kYWwgPT09PT09PT09PT09PSovXG4gIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAubW9kYWwtYmxvY2staW4ge1xuICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgfVxuXG4gIC5tb2RhbC1ibG9ja19fdHRsIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAubW9kYWwtYmxvY2stdHh0IHt9XG5cbiAgLm1vZGFhbC1jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU1AgLS0tLSAqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuXG4gICAgLyo9PT09PT09PT09PT09ICNtYWluID09PT09PT09PT09PT0qL1xuICAgIC5sY2wtbWFpbiB7XG4gICAgICBoZWlnaHQ6IDcwdmg7XG4gICAgfVxuXG4gICAgLmxjbC1tYWluLWljby1pdGVtLS0wMixcbiAgICAubGNsLW1haW4taWNvLWl0ZW0tLTA0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmxjbC1tYWluX190dGw+c3ZnIHtcbiAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDEwcHg7XG4gICAgfVxuXG4gICAgLmxjbC1tYWluX190dGw+ZW0ge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMThlbTtcbiAgICB9XG5cbiAgICAubGNsLW1haW4taWNvLWl0ZW0tLTAxIHtcbiAgICAgIHdpZHRoOiA4NXB4O1xuICAgICAgbGVmdDogLTVweDtcbiAgICAgIHRvcDogMTQlO1xuICAgIH1cblxuICAgIC5sY2wtbWFpbi1pY28taXRlbS0tMDMge1xuICAgICAgd2lkdGg6IDc3cHg7XG4gICAgICByaWdodDogMThweDtcbiAgICAgIGJvdHRvbTogMjIlO1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjbGVhZCA9PT09PT09PT09PT09Ki9cbiAgICAubGNsLWxlYWQgLndhdmUtd3JwIHtcbiAgICAgIHRvcDogLTg4cHg7XG4gICAgfVxuXG4gICAgLmxjbC1sZWFkX190dGwge1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgZm9udC1zaXplOiA2dnc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5sY2wtbGVhZF9fdHh0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgfVxuXG4gICAgLmxjbC1sZWFkLWljby1pdGVtLS0wMixcbiAgICAubGNsLWxlYWQtaWNvLWl0ZW0tLTA0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICN3b3JrcyA9PT09PT09PT09PT09Ki9cbiAgICAubGNsLXdvcmtzIC53YXZlLXdycCB7XG4gICAgICB0b3A6IC04OHB4O1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtbGlzdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG5cbiAgICBbY2xhc3NePVwibGNsLXdvcmtzLWl0ZW0tLVwiXSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICAgIH1cblxuICAgIC5sY2wtd29ya3MtaXRlbS1jaXJjbGU+c3BhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAlKTtcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tY2lyY2xlPnNwYW4sXG4gICAgLmxjbC13b3Jrcy1pdGVtLWNpcmNsZT5zcGFuPmltZyB7XG4gICAgICB3aWR0aDogOTVweDtcbiAgICB9XG5cbiAgICAubGNsLXdvcmtzLWl0ZW0tdHh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM0NDQ7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNkZXNpZ24gPT09PT09PT09PT09PSovXG4gICAgLmxjbC1kZXNpZ24ge1xuICAgICAgcGFkZGluZzogNDVweCAwIDgwcHg7XG4gICAgfVxuXG4gICAgLmxjbC1kZXNpZ24gLndhdmUtd3JwIHtcbiAgICAgIHRvcDogLTg4cHg7XG4gICAgfVxuXG4gICAgLmxjbC1kZXNpZ24taW4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG5cbiAgICAubGNsLWRlc2lnbi10eHQgLmJsb2NrdHRsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gICAgLmxjbC1kZXNpZ24tdHh0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLmxjbC1zbGlkZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDA7XG4gICAgfVxuXG4gICAgLmxjbC1kZXNpZ24tYXJjaGl2ZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB9XG5cbiAgICAubGNsLXNsaWRlIC5zbGljay1saXN0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgIH1cblxuICAgIC5sY2wtc2xpZGUgLnNsaWNrLWFycm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICB0b3A6IC0yNXB4O1xuICAgIH1cblxuICAgIC5sY2wtc2xpZGUtaXRlbS1pbWcge1xuICAgICAgaGVpZ2h0OiAyMjBweDtcbiAgICB9XG5cbiAgICAubGNsLXNsaWRlLWl0ZW1fX3R4dCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgLmxjbC1zbGlkZSAuc2xpY2stY3VycmVudCsuc2xpY2stYWN0aXZlIHtcbiAgICAgIHRvcDogLTI1cHg7XG4gICAgfVxuXG4gICAgLmxjbC1zbGlkZS1pdGVtLWltZ19faWNvIHtcbiAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjZmxvdyA9PT09PT09PT09PT09Ki9cbiAgICAubGNsLWZsb3ctd2F2ZS0wMSB7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgfVxuXG4gICAgLmxjbC1mbG93LXdhdmUtMDIge1xuICAgICAgYm90dG9tOiAtMnB4O1xuICAgIH1cblxuICAgIC5sY2wtZmxvdy1saXN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBbY2xhc3NePVwibGNsLWZsb3ctaXRlbS0tXCJdIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBbY2xhc3NePVwibGNsLWZsb3ctaXRlbS0tXCJdOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICB9XG5cbiAgICBbY2xhc3NePVwibGNsLWZsb3ctaXRlbS0tXCJdOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IC0yLjNlbTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxZW07XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgfVxuXG4gICAgLmxjbC1mbG93LWl0ZW0tbnVtIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICAubGNsLWZsb3ctaXRlbS1udW06OmFmdGVyIHtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgIH1cblxuICAgIC5sY2wtZmxvdy1pdGVtLW51bV9fc3RlcCB7XG4gICAgICB3aWR0aDogNDAuNXB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMTFweDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5sY2wtZmxvdy1pdGVtLS0wMSAubGNsLWZsb3ctaXRlbS1udW1fX2ljbyB7XG4gICAgICB3aWR0aDogNDRweDtcbiAgICB9XG5cbiAgICAubGNsLWZsb3ctaXRlbS0tMDIgLmxjbC1mbG93LWl0ZW0tbnVtX19pY28ge1xuICAgICAgd2lkdGg6IDQ4LjVweDtcbiAgICB9XG5cbiAgICAubGNsLWZsb3ctaXRlbS0tMDMgLmxjbC1mbG93LWl0ZW0tbnVtX19pY28ge1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNtYWlsZm9ybSA9PT09PT09PT09PT09Ki9cbiAgICAubGNsLWNvbnRhY3Qge1xuICAgICAgcGFkZGluZzogMzVweCAwIDYwcHg7XG4gICAgfVxuXG4gICAgLmxjbC1jb250YWN0IC53YXZlLXdycCB7XG4gICAgICBib3R0b206IC04OHB4O1xuICAgIH1cblxuICAgICNtYWlsZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInJhZGlvXCJdKSxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IDE2NXB4O1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgIH1cblxuICAgIC5tYWlsZm9ybS1pdGVtIHtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgfVxuXG4gICAgLm1haWxmb3JtLWl0ZW0tMmNvbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgfVxuXG4gICAgLm1haWxmb3JtLWl0ZW0tMmNvbCAubWFpbGZvcm0taXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubWFpbGZvcm0taXRlbS0yY29sIC5tYWlsZm9ybS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICAubWFpbGZvcm0taXRlbV9fdHRsIHtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDE2cHg7XG4gICAgfVxuXG4gICAgLm1haWxmb3JtLWl0ZW1fX3R4dDpmb2N1c34ubWFpbGZvcm0taXRlbV9fdHRsLFxuICAgIC5tYWlsZm9ybS1pdGVtX190eHQuaW5wdXR0ZWR+Lm1haWxmb3JtLWl0ZW1fX3R0bCB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICB0b3A6IC04cHg7XG4gICAgICBsZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAubWFpbGZvcm0taXRlbeKAk2xpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm1haWxmb3JtLWl0ZW3igJNsaXN0PmxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5jb250YWN0LXN1Ym1pdCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNtb2RhbCA9PT09PT09PT09PT09Ki9cbiAgICAubW9kYWwtYmxvY2staW4ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubW9kYWwtYmxvY2tfX3R0bCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjd3JhcHBlciA9PT09PT09PT09PT09Ki9cbiAgICAubGNsLWJsb2figJNsaXN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgIH1cblxuICAgIC5sY2wtYmxvZ+KAk2l0ZW1fX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIC5sY2wtYmxvZ+KAk2l0ZW1fX2RheSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5sY2wtYmxvZ+KAk2l0ZW1fX3R0bCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2cge1xuICBiYWNrZ3JvdW5kOiAjZWRmMmY0IG5vbmU7XG5cbiAgLyo9PT09PT09PT09PT09ICNnZW5lcmFsID09PT09PT09PT09PT0qL1xuICAjaGVhZGVyIHtcbiAgICAubG9nb19fbGluayB7XG4gICAgICBjb2xvcjogIzEzOTVhYztcbiAgICB9XG5cbiAgfVxuXG4gIC5jb250ZW50cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjZW50cnktcGFnZSA9PT09PT09PT09PT09Ki9cbiAgLmVudHJ5LXBhZ2Uge1xuICAgIG1heC13aWR0aDogMTAyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDEyMHB4IDAgNzBweDtcbiAgfVxuXG4gIC5lbnRyeS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMCA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5lbnRyeS1oZWFkZXJfX3RpbWUge1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgY29sb3I6ICM3MDcwNzA7XG4gIH1cblxuICAuZW50cnktaGVhZGVyPmgxIHtcbiAgICBsaW5lLWhlaWdodDogMS40NjY2O1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICBjb2xvcjogIzEzOTVhYztcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxMzJkZWcsXG4gICAgICAgIHJnYmEoNzcsIDEzNSwgMjAwLCAxKSAwJSxcbiAgICAgICAgcmdiYSgxOSwgMTQ5LCAxNzIsIDEpIDc4JSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzMmRlZyxcbiAgICAgICAgcmdiYSg3NywgMTM1LCAyMDAsIDEpIDAlLFxuICAgICAgICByZ2JhKDE5LCAxNDksIDE3MiwgMSkgNzglKTtcbiAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICN3cmFwcGVyID09PT09PT09PT09PT0qL1xuXG4gIC5hZF9ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiA1MHB4IGF1dG8gMzBweDtcbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjdGFncyA9PT09PT09PT09PT09Ki9cbiAgLnRhZ3MtYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICB9XG5cbiAgLnRhZ3MtYmxvY2s+dWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLnRhZ3MtYmxvY2s+dWw+bGkge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLnRhZ3MtYmxvY2s+dWwgYSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzcwNzA3MDtcbiAgICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA4cHggNDVweDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnRhZ3MtYmxvY2s+dWwgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICNwYWdpbmF0aW9uID09PT09PT09PT09PT0qL1xuICAucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC5wYWdpbmF0aW9uLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAucGFnaW5hdGlvbi1saXN0X19pdGVtIHtcbiAgICBtYXJnaW46IDAgOHB4O1xuICB9XG5cbiAgLnBhZ2luYXRpb25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNXB4IDVweCA4cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5wYWdpbmF0aW9uLWxpc3RfX2l0ZW0gLnBhZ2luYXRpb25fX2xpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgLnBhZ2luYXRpb24tbGlzdF9faXRlbS5wYWdpbmF0aW9uLWxpc3RfX2l0ZW0tLWFjdGl2ZSAucGFnaW5hdGlvbl9fbGluayB7XG4gICAgY29sb3I6ICMzYzlkOWI7XG4gIH1cblxuICAucGFnaW5hdGlvbi1saXN0X19pdGVtLnBhZ2luYXRpb24tbGlzdF9faXRlbS0tYWN0aXZlIC5wYWdpbmF0aW9uX19saW5rOjphZnRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAucGFnaW5hdGlvbi1idG4ge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucGFnaW5hdGlvbi1saXN0X19pdGVtIC5wYWdpbmF0aW9uX19saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjM2M5ZDliO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLWxpc3RfX2l0ZW0gLnBhZ2luYXRpb25fX2xpbms6aG92ZXI6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLWJ0bjpob3ZlciB7XG4gICAgICBjb2xvcjogIzNjOWQ5YjtcbiAgICB9XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2VudHJ5LXBhZ2UgPT09PT09PT09PT09PSovXG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmV5ZWNhdGNoIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQyMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuZW50cnktY29udGVudCB7XG4gICAgcGFkZGluZzogMzBweCAwIDUwcHg7XG4gIH1cblxuICAuZW50cnktcGFnZT4uaGVudHJ5IHtcbiAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQ+cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgZm9udC1zaXplOiAxLjE1ZW07XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAud3AtYmxvY2stZW1iZWQtd29yZHByZXNzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZW50cnktY29udGVudCBpZnJhbWUud3AtZW1iZWRkZWQtY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuZW50cnktY29udGVudCBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDQwcHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5lbnRyeS1jb250ZW50PmgyLFxuICAuZW50cnktY29udGVudD5oMyxcbiAgLmVudHJ5LWNvbnRlbnQ+aDMsXG4gIC5lbnRyeS1jb250ZW50Pmg0LFxuICAuZW50cnktY29udGVudD5oNSxcbiAgLmVudHJ5LWNvbnRlbnQ+aDYge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cblxuICAuZW50cnktY29udGVudD5oMiB7XG4gICAgZm9udC1zaXplOiAxLjdlbTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweDtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50PmgyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzMmRlZyxcbiAgICAgICAgcmdiYSg3NywgMTM1LCAyMDAsIDEpIDAlLFxuICAgICAgICByZ2JhKDE5LCAxNDksIDE3MiwgMSkgNzglKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTMyZGVnLFxuICAgICAgICByZ2JhKDc3LCAxMzUsIDIwMCwgMSkgMCUsXG4gICAgICAgIHJnYmEoMTksIDE0OSwgMTcyLCAxKSA3OCUpO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQ+aDMge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxOSwgMTQ5LCAxNzIsIDAuNyk7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQ+aDQge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cblxuICAuZW50cnktY29udGVudD5oNSxcbiAgLmVudHJ5LWNvbnRlbnQ+aDYge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgLmVudHJ5LWNvbnRlbnQgcHJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAud3AtYmxvY2stY29kZT5jb2RlIHtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuZW50cnktY29udGVudCBhOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLmVudHJ5LWl0ZW1fX2xpbmspIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjogIzNjOWQ5YjtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50PnVsLFxuICAuZW50cnktY29udGVudD5vbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAyMHB4IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50PnVsIGxpIHVsLFxuICAuZW50cnktY29udGVudD5vbCBsaSBvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHVsIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgb2wgbGkge1xuICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbC1sZWFkaW5nLXplcm87XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDIwcHggNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYxMGRcIjtcbiAgICBmb250LWZhbWlseTogZm9udGF3ZXNvbWU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gIH1cblxuICAuZW50cnktY29udGVudCBibG9ja3F1b3RlIGNpdGUge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGZvbnQtc2l6ZTogMC44NWVtO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuZW50cnktY29udGVudCB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgdGFibGUgdGQge1xuICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgdGFibGUgdGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbiAgfVxuXG4gIGlmcmFtZS5oYXRlbmFibG9nY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5lbnRyeS1jb250ZW50IGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgIH1cblxuICAgIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gICAgaWZyYW1lLmhhdGVuYWJsb2djYXJkIHtcbiAgICAgIHdpZHRoOiA0OSU7XG4gICAgfVxuICB9XG5cbiAgLyogLS0tLS0tIHRvYy9tb2t1amkgLS0tLS0tICovXG4gIC50b2Mge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG5cbiAgLnRvY19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAudG9jX19saXN0Pi50b2NfX2l0ZW0gLnRvY19fbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHVsLnRvY19fbGlzdCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgdWwudG9jX19saXN0IGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHVsLnRvY19fbGlzdCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAjanAtcmVsYXRlZHBvc3RzIGgzLmpwLXJlbGF0ZWRwb3N0cy1oZWFkbGluZSB7XG4gICAgbWFyZ2luOiAwIDAgMWVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cblxuICAjanAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0IHNwYW4uanAtcmVsYXRlZHBvc3RzLXBvc3QtY29udGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5wb3N0LXBhc3N3b3JkLWZvcm0ge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnBvc3QtcGFzc3dvcmQtZm9ybSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4O1xuICAgIHBhZGRpbmc6IDVweCA5cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICB9XG5cbiAgLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICNwYWdlciA9PT09PT09PT09PT09Ki9cbiAgLnBhZ2VyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMjBweDtcbiAgfVxuXG4gIFtjbGFzc149XCJwYWdlci1pdGVtLS1cIl0ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgW2NsYXNzXj1cInBhZ2VyLWl0ZW0tLVwiXSAucGFnZXItaXRlbV9fbGluayB7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIH1cblxuICAucGFnZXItaXRlbS0tcHJldiAucGFnZXItaXRlbV9fbGluazo6YmVmb3JlLFxuICAucGFnZXItaXRlbS0tbmV4dCAucGFnZXItaXRlbV9fbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMTA0XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIH1cblxuICAucGFnZXItaXRlbS0tcHJldiAucGFnZXItaXRlbV9fbGluazo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VyLWl0ZW0tLW5leHQgLnBhZ2VyLWl0ZW1fX2xpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgLnBhZ2VyLWl0ZW0tLXByZXY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC5wYWdlci1pdGVtX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAucGFnZXItaXRlbV9fbGluaz5wIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucGFnZXItaXRlbS0tbmV4dCAucGFnZXItaXRlbV9fbGluayB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgW2NsYXNzXj1cInBhZ2VyLWl0ZW0tLVwiXSAucGFnZXItaXRlbV9fbGluazpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgIH1cblxuICAgIC5wYWdlci1pdGVtLS1wcmV2IC5wYWdlci1pdGVtX19saW5rOmhvdmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogN3B4O1xuICAgIH1cblxuICAgIC5wYWdlci1pdGVtLS1uZXh0IC5wYWdlci1pdGVtX19saW5rOmhvdmVyOjphZnRlciB7XG4gICAgICByaWdodDogN3B4O1xuICAgIH1cbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjZW50cnktbGlzdCA9PT09PT09PT09PT09Ki9cbiAgLmVudHJ5LWxpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogNTBweCA2MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIH1cblxuICAuZW50cnktaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtaW4taGVpZ2h0OiA3MHB4O1xuICB9XG5cbiAgLmVudHJ5LWl0ZW1fX2xpbmsge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDkwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLWhlaWdodDogNzBweDtcbiAgfVxuXG4gIC5lbnRyeS1pdGVtX19saW5rOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjU1MjVjO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5lbnRyeS1pdGVtLWJ0bSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAuZW50cnktaXRlbV9fZGF5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXNpemU6IDAuN2VtO1xuICB9XG5cbiAgLmVudHJ5LWl0ZW1fX3R0bCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5lbnRyeS1pdGVtX19saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjODg4O1xuICAgIH1cblxuICAgIC5lbnRyeS1pdGVtX19saW5rOmhvdmVyOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIH1cbiAgfVxuXG4gIC8qIC0tLS0tLSBvcHRpb24gLS0tLS0tICovXG4gIC5lbnRyeS1pdGVtLS13b3JkcHJlc3MgLmVudHJ5LWl0ZW1fX2xpbms6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc1Yjc5ZTtcbiAgfVxuXG4gIC5lbnRyeS1pdGVtLS13ZWJzZXJ2aWNlIC5lbnRyeS1pdGVtX19saW5rOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2JlMTY7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI25ld3MgPT09PT09PT09PT09PSovXG5cbiAgLyoqL1xuICAuc2lkZWJhci1hbGwgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbV9fYmcge1xuICAgIGhlaWdodDogMTMyLjE4OHB4O1xuICB9XG5cbiAgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbV9fYmc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbS1idG0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDhweCAxMHB4IDIwcHg7XG4gIH1cblxuICAuZW50cnktcGFnZS0tdGh1bWJzIC5lbnRyeS1pdGVtX19kYXkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuXG4gIC5lbnRyeS1wYWdlLS10aHVtYnMgLmVudHJ5LWl0ZW1fX3R0bCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZW50cnktcGFnZS0tdGh1bWJzIC5lbnRyeS1pdGVtX19saW5rOmhvdmVyIC5lbnRyeS1pdGVtX19iZzo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB9XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuYmxvZ2dlcl90dGwtd3JwIHt9XG5cbiAgLmJsb2dnZXJfdHRsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAwIDA7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1mYW1pbHk6IFwiSm9zZWZpbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjZW50cnktZm9vdGVyID09PT09PT09PT09PT0qL1xuICAuZW50cnktZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG5cbiAgLmVudHJ5LWZvb3Rlci1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5lbnRyeS1mb290ZXItbGlzdD5saTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgY29udGVudDogXCIgLyBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCA1cHg7XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2NvbW1lbnRzID09PT09PT09PT09PT0qL1xuICAuY29tbWVudHMtYXJlYSB7XG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWYzOyovXG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG5cbiAgLmNvbW1lbnQtcmVwbHktdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgfVxuXG4gIC5sb2dnZWQtaW4tYXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAubG9nZ2VkLWluLWFzIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuY29tbWVudC1mb3JtLWNvbW1lbnQ+bGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY29tbWVudC1mb3JtLWNvbW1lbnQgdGV4dGFyZWEge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4O1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICB9XG5cbiAgLmZvcm0tc3VibWl0IC5zdWJtaXQge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODg4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbmsge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgI3Jlc3BvbmQge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cblxuICAuY29tbWVudHMtbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmNvbW1lbnRzLW1ldGEgLmF2YXRhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG5cbiAgLmNvbW1lbnRzLW1ldGEtbGlzdCB7XG4gICAgcGFkZGluZzogMHB4IDEwcHggMjBweDtcbiAgfVxuXG4gIC5jb21tZW50cy1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZjtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgZm9udC1zaXplOiAwLjg1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTMzMztcbiAgfVxuXG4gIC5jb21tZW50cy1kYXRlIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6ICM4ODg7XG4gIH1cblxuICAuY29tbWVudHMtcmVwbHkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cblxuICAuY29tbWVudC1yZXBseS1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcbiAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIH1cblxuICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAuY29tbWVudCAuY2hpbGRyZW4ge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvcm0tc3VibWl0IC5zdWJtaXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuY29tbWVudC1yZXBseS1saW5rOmhvdmVyLFxuICAgICNjYW5jZWwtY29tbWVudC1yZXBseS1saW5rOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4ODg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAvKj09PT09PT09PT09PT0gI2JyZWFkY3J1bWIgPT09PT09PT09PT09PSovXG4gIC5icmVhZGNydW1iIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgfVxuXG4gIC5icmVhZGNydW1iLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5icmVhZGNydW1iLWl0ZW06bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiID4gXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmJyZWFkY3J1bWItaXRlbSBhIHtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLyogcGMtb25seSAtLS0tLS0tLS0tLS0qL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5icmVhZGNydW1iLWl0ZW0+YTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWItaXRlbSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjM2M5ZDliO1xuICAgIH1cbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjeWFycHAgPT09PT09PT09PT09PSovXG4gIC55YXJwcC1yZWxhdGVkIHtcbiAgICBtYXJnaW46IDVlbSAwIDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC55YXJwcC1yZWxhdGVkIC5lbnRyeS1wYWdlLS10aHVtYnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnlhcnBwLXJlbGF0ZWQgaDMge1xuICAgIHBhZGRpbmc6IDhweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxLjI1ZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC8qPT09PT09PT09PT09PSAjc2hhcmVidG4gPT09PT09PT09PT09PSovXG4gIC5zaGFyZWJ0biB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMzBweDtcbiAgfVxuXG4gIC5zaGFyZWJ0bi1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLnNoYXJlYnRuLWxpc3Q+bGkge1xuICAgIG1hcmdpbjogMCA3cHg7XG4gIH1cblxuICAuc2hhcmVidG4tbGlzdD5saT5hIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgY29sb3I6ICM4ODg7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2hhcmVidG4tbGlzdD5saT5hOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC5zaGFyZWJ0bi1pdGVtLS1mYjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I1OTk4O1xuICAgIH1cblxuICAgIC5zaGFyZWJ0bi1pdGVtLS10dzpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWRhMWYyO1xuICAgIH1cblxuICAgIC5zaGFyZWJ0bi1pdGVtLS1wa3Q6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmNDA1NjtcbiAgICB9XG5cbiAgICAuc2hhcmVidG4taXRlbS0taHRuOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGE0ZGU7XG4gICAgfVxuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICNwcl9hcmVhID09PT09PT09PT09PT0qL1xuICAucHJfYXJlYSB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMjcsIDE5OCwgMzksIDEpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBib3JkZXItcmFkaXVzOiA2MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5wcl9hcmVhPmEge1xuICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wcl9hcmVhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICM4ODg7XG4gICAgfVxuICB9XG5cbiAgLyo9PT09PT09PT09PT09ICNibG9nLWxpbmthcmVhID09PT09PT09PT09PT0qL1xuICAuYmxvZy1saW5rYXJlYSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogLTI3MHB4O1xuICAgIHJpZ2h0OiAtMjcwcHg7XG4gICAgd2lkdGg6IDI3MHB4O1xuICAgIGhlaWdodDogMjcwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmU1MDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgdHJhbnNpdGlvbjogMC44cyBlYXNlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICAuYmxvZy1saW5rYXJlYS5maXhlZCB7XG4gICAgYm90dG9tOiAtNTBweDtcbiAgICByaWdodDogLTUwcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIC5ibG9nLWxpbmthcmVhPmEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgNjBweCAyMHB4IDE1cHg7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYmxvZy1saW5rYXJlYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM1YTZkO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgZm9vdGVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICNmb290ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogIzMzMztcbiAgfVxuXG4gIC5zaXRlLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTUCAtLS0tICovXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcblxuICAgIC8qPT09PT09PT09PT09PSAjbWFpbiA9PT09PT09PT09PT09Ki9cbiAgICAuc2l0ZS1jb250ZW50IHt9XG5cbiAgICAuc2l0ZS1jb250ZW50LWhlcm8ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI3dyYXBwZXIgPT09PT09PT09PT09PSovXG4gICAgLmJsb2dnZXJfdHRsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjcGlja3VwID09PT09PT09PT09PT0qL1xuICAgIC5waWNrdXAtc2xpZGUge1xuICAgICAgcGFkZGluZzogMTVweCA0MHB4O1xuICAgIH1cblxuICAgIC5waWNrdXAtc2xpZGUtaXRlbSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLnBpY2t1cC1zbGlkZSAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAxM3B4O1xuICAgIH1cblxuICAgIC5waWNrdXAtc2xpZGUgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNoZXJvLWJsb2NrICA9PT09PT09PT09PT09Ki9cbiAgICAuaGVyby1ibG9jayB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIH1cblxuICAgIC5ob21lIC5oZXJvLWJsb2NrIHtcbiAgICAgIGhlaWdodDogMzQwcHg7XG4gICAgfVxuXG4gICAgLmhlcm8tYmxvY2tfX2luPmEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmhlcm8tYmxvY2tfX2luIHN2ZyB7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC53YXZlLXdycCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ob21lIC53YXZlLXdycCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI3RhZ3MtYmxvY2sgPT09PT09PT09PT09PSovXG4gICAgLnRhZ3MtYmxvY2s+dWw+bGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAudGFncy1ibG9jaz51bCBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI3NpZGViYXIgPT09PT09PT09PT09PSovXG4gICAgLnNpZGViYXItYWxsLFxuICAgIC5zaWRlYmFyLWxpc3QsXG4gICAgLnNpbmdsZS1wb3N0IC5zaWRlYmFyLXNpbmdsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLnNpZGViYXItYWxsICNtYWluLFxuICAgIC5zaWRlYmFyLWxpc3QgI21haW4sXG4gICAgLnNpbmdsZS1wb3N0IC5zaWRlYmFyLXNpbmdsZSAjbWFpbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1hbGwgLmVudHJ5LXBhZ2UsXG4gICAgLnNpZGViYXItbGlzdCAuZW50cnktcGFnZSxcbiAgICAuc2luZ2xlLXBvc3QgLnNpZGViYXItc2luZ2xlIC5lbnRyeS1wYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgI3NpZGViYXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICN0YWdzID09PT09PT09PT09PT0qL1xuICAgIC50YWdzLWJsb2NrIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNlbnRyeS1wYWdlID09PT09PT09PT09PT0qL1xuICAgIC5lbnRyeS1wYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMjBweCAxNXB4IDUwcHg7XG4gICAgfVxuXG4gICAgLmVudHJ5LWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiA1cHggNDVweCA1cHggMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmVudHJ5LWhlYWRlcj5oMSB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAuZXllY2F0Y2gge1xuICAgICAgaGVpZ2h0OiAxNzQuMDYzcHg7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAuYWRfYmxvY2sge1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gNTBweDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5lbnRyeS1jb250ZW50PnAge31cblxuICAgIC5lbnRyeS1jb250ZW50PmgyLFxuICAgIC5lbnRyeS1jb250ZW50PmgzLFxuICAgIC5lbnRyeS1jb250ZW50PmgzLFxuICAgIC5lbnRyeS1jb250ZW50Pmg0LFxuICAgIC5lbnRyeS1jb250ZW50Pmg1LFxuICAgIC5lbnRyeS1jb250ZW50Pmg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50PmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICB9XG5cbiAgICAuZW50cnktY29udGVudD5oMjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAuZW50cnktY29udGVudD51bCxcbiAgICAuZW50cnktY29udGVudD5vbCB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tIG9wdGlvbiAtLS0tLS0gKi9cbiAgICAuZW50cnktY29udGVudCBwcmUge1xuICAgICAgcGFkZGluZzogMjBweCA0MHB4IDIwcHggMjBweDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0gb3B0aW9uIC0tLS0tLSAqL1xuICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUge1xuICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gICAgICB0b3A6IDVweDtcbiAgICAgIGxlZnQ6IC0ycHg7XG4gICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLSB0b2MgLS0tLS0tICovXG4gICAgLnRvYyB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQgdWwudG9jX19saXN0IGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAuZW50cnktY29udGVudCB1bC50b2NfX2xpc3QgbGk6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI2NvbW1lbnRzID09PT09PT09PT09PT0qL1xuICAgIC5jb21tZW50cy1hcmVhIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICAuY29tbWVudHMtbWV0YSAuYXZhdGFyIHtcbiAgICAgIHBhZGRpbmc6IDNweDtcbiAgICB9XG5cbiAgICAuY29tbWVudHMtd3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIH1cblxuICAgIC5jb21tZW50cy1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIH1cblxuICAgIC5jb21tZW50IC5jaGlsZHJlbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuXG4gICAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgfVxuXG4gICAgLmZvcm0tc3VibWl0IC5zdWJtaXQge1xuICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjc2hhcmVidG4gPT09PT09PT09PT09PSovXG4gICAgLnNoYXJlYnRuIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIDUwcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNwYWdlci1saXN0ICA9PT09PT09PT09PT09Ki9cbiAgICAucGFnZXItbGlzdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIH1cblxuICAgIFtjbGFzc149XCJwYWdlci1pdGVtLS1cIl0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnBhZ2VyLWl0ZW1fX2xpbms+cCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuXG4gICAgW2NsYXNzXj1cInBhZ2VyLWl0ZW0tLVwiXSAucGFnZXItaXRlbV9fbGluayB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgfVxuXG4gICAgLnBhZ2VyLWl0ZW0tLXByZXYgLnBhZ2VyLWl0ZW1fX2xpbms6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgfVxuXG4gICAgLnBhZ2VyLWl0ZW0tLW5leHQgLnBhZ2VyLWl0ZW1fX2xpbms6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiA4cHg7XG4gICAgfVxuXG4gICAgLnBhZ2VyLWl0ZW0tLXByZXY6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI2VudHJ5LWl0ZW0gPT09PT09PT09PT09PSovXG4gICAgLmVudHJ5LWxpc3Qge1xuICAgICAgcGFkZGluZzogMzBweCAxMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB9XG5cbiAgICAuZW50cnktaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAuZW50cnktaXRlbV9fbGluayB7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggNTVweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgLmVudHJ5LWl0ZW1fX2xpbms6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAuZW50cnktaXRlbV9fdHRsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45NWVtO1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjdGh1bWJzID09PT09PT09PT09PT0qL1xuICAgIC5lbnRyeS1wYWdlLS10aHVtYnMgLmVudHJ5LWxpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZW50cnktcGFnZS0tdGh1bWJzIC5lbnRyeS1pdGVtX19iZyxcbiAgICAuc2lkZWJhci1hbGwgLmVudHJ5LXBhZ2UtLXRodW1icyAuZW50cnktaXRlbV9fYmcge1xuICAgICAgaGVpZ2h0OiAxOTQuMDYzcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNpdGVtID09PT09PT09PT09PT0qL1xuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAzMy4zJTtcbiAgICAgIHBhZGRpbmctdG9wOiAzMy4zJTtcbiAgICB9XG5cbiAgICAuaXRlbV9fY29udGVudCBpbWcge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG5cbiAgICAvKj09PT09PT09PT09PT0gI2JyZWFkY3J1bWIgPT09PT09PT09PT09PSovXG4gICAgLmJyZWFkY3J1bWIge1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgfVxuXG4gICAgLyo9PT09PT09PT09PT09ICNwcl9hcmVhID09PT09PT09PT09PT0qL1xuICAgIC5wcl9hcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjbGlua2FyZWEgPT09PT09PT09PT09PSovXG4gICAgLmJsb2ctbGlua2FyZWEge1xuICAgICAgYm90dG9tOiAtMTUwcHg7XG4gICAgICByaWdodDogLTE1MHB4O1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG5cbiAgICAuYmxvZy1saW5rYXJlYT5hIHtcbiAgICAgIHBhZGRpbmc6IDAgMjVweCAxMHB4IDE1cHg7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cblxuICAgIC5ibG9nLWxpbmthcmVhLmZpeGVkIHtcbiAgICAgIGJvdHRvbTogLTIycHg7XG4gICAgICByaWdodDogLTIycHg7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cblxuICAgIC8qPT09PT09PT09PT09PSAjbm90LWZvdW5kIDQwNCA9PT09PT09PT09PT09Ki9cbiAgICAvKj09PT09PT09PT09PT0gI2Zvb3RlciA9PT09PT09PT09PT09Ki9cbiAgICAuc2l0ZS1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG59XG4iLCIud29yayB7XG4gIGJhY2tncm91bmQ6ICNlZGYyZjQgbm9uZTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICBsb2FkaW5nXG5cbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgLmxvYWRlci1iZyB7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDAxO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzJkZWcsIHJnYig3NywgMTM1LCAyMDApIDAlLCByZ2IoMTksIDE0OSwgMTcyKSA3OCUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5sb2FkZXIge1xuICAgID5kaXYge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBhbmltYXRpb246IGJhbGwtcHVsc2Utc3luYyAwLjZzIC0wLjE0cyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBhbmltYXRpb246IGJhbGwtcHVsc2Utc3luYyAwLjZzIC0wLjA3cyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBhbmltYXRpb246IGJhbGwtcHVsc2Utc3luYyAwLjZzIDBzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgYmFsbC1wdWxzZS1zeW5jIHtcbiAgICAzMyUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgNjYlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gIH1cblxuXG5cbiAgLyo9PT09PT09PT09PT09ICNnZW5lcmFsID09PT09PT09PT09PT0qL1xuICAjaGVhZGVyIHtcbiAgICAubG9nb19fbGluayB7XG4gICAgICBjb2xvcjogIzEzOTVhYztcbiAgICB9XG4gIH1cblxuICAuY29udGVudHMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAjZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMzMzM7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuICBoZWFkXG5cbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgLndvcmtzUGFnZS1oZWFkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtaGVhZC10dGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDY2NjtcbiAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjAzZW07XG4gICAgICBjb2xvcjogIzBkMGQwZDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICB9XG5cbiAgICAud29ya3NQYWdlLWhlYWQteSxcbiAgICAud29ya3NQYWdlLWhlYWQtY2F0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogMjBweDtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGdhcDogOHB4IDRweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtaGVhZC1jYXQge1xuICAgICAgbWFyZ2luLXRvcDogMjRweDtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndvcmtzUGFnZS1zb3J0LWJ0biB7XG4gICAgPmxpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMCUgMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICBwYWRkaW5nOiAwcHggMTBweDtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIHBhZGRpbmc6IDBweCA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgaW5kZXhcblxuICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuICAud29ya3NQYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAxMjBweCAxMnB4IDcwcHg7XG4gICAgbWluLWhlaWdodDogMTIwdmg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIHBhZGRpbmc6IDcwcHggMjRweDtcbiAgICB9XG5cbiAgICAud29ya3NQYWdlLXR0bCB7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtbGlzdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC53b3Jrc1BhZ2UtaXRlbS1pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogNDBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2MCUgMWZyO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgbWluLWhlaWdodDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53b3Jrc1BhZ2UtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWluLWhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtdGh1bWJzIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDcwJSAxZnI7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgLndvcmtzUGFnZS10aHVtYnMtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwZDBkMGQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA2MC45Mzc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYud29ya3NQYWdlLXRodW1icy1pdGVtLS1zcCB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMTYuNDA2MjUlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID5pbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAud29ya3NQYWdlLWl0ZW0tY250IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndvcmtzUGFnZS1kZXRhaWwge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdhcDogN3B4IDZweDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDAlIDFmcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMCUgMWZyO1xuICAgICAgfVxuXG4gICAgICA+ZHQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICA+ZGQge1xuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvcmtzUGFnZS1kZXRhaWwtdXJsIHtcbiAgICAgICAgPmEge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCNmNmU1MDAsICNmNmU1MDApO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDAuM3M7XG4gICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuXG4gICAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICAgICAgY29sb3I6ICMwZDBkMGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtZGV0YWlsLWJ0biB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgY29sb3I6ICMwZDBkMGQ7XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZTUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC53b3Jrc1BhZ2UtaXRlbS1jb21tZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDAuOGVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2ZmZjtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjhlbTtcblxuICAgICAgPmg1IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cblxuXG4gICAgfVxuXG4gICAgLndvcmtzUGFnZS1kZXRhaWwtc2NvcGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICBsaSB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJy8nO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAuMWVtO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhZyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTM5NWFjO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcblxuICAgICAgLy8gJi5zZXJ2aWNlIHtcbiAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogIzBkMGQwZDtcbiAgICAgIC8vIH1cblxuICAgICAgJi5sb2dvLFxuICAgICAgJi5ncmFwaGljIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZTUwMDtcbiAgICAgICAgY29sb3I6ICMwZDBkMGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxufVxuIl19 */
