﻿@charset "UTF-8";
:root {
  --pc-contents-max-width:1200px;
  --z-index-header:1000;
  --hover-opacity-duration:.2s;
  --hover-opacity-ease:ease;
  --color-white:#FFFFFF;
  --color-black:#000000;
  --color-gray900:#222222;
  --color-gray800:#323232;
  --color-gray600:#505050;
  --color-gray500:#666666;
  --color-gray400:#B0B0B0;
  --color-gray300:#D7D7D7;
  --color-gray200:#EDEDED;
  --color-gray100:#F0F0F0;
  --color-blue1200:#1D60B0;
  --color-blue1000:#2588FE;
  --color-blue900:#2577D8;
  --color-blue800:#4085D6;
  --color-blue400:#A6C5E5;
  --color-blue300:#C0D9F2;
  --color-blue200:#EAF3FC;
  --color-blue100:#F0F6FB;
  --color-green100:#DDF1D9;
  --color-red900:#EE2F34;
}

/*
pxをvwに変換
*/
/************************************************************
header用
*************************************************************/
/*
メディアクエリ
記述例
body{
  @include mixin.ms-w('max',1200){
    background-color: red;
  }
}
*/
/*
フォームリセット
*/
/*
ICON FONT
*/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
@keyframes mv-carousel-title-num-in {
  0% {
    transform: translateY(120%);
  }
  100% {
    transform: translateY(0%);
  }
}
@keyframes mv-carousel-title-num-out {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-120%);
  }
}
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
.mv__carousels {
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width:769px) {
  .mv__carousels {
    height: 39.0625vw;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousels {
    height: 43.8461538462vw;
  }
}
@media only screen and (min-width:769px) {
  .mv__carousel {
    width: 78.125vw;
    height: 100%;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousel {
    width: 87.6923076923vw;
    height: 100%;
  }
}
.mv__carousel .swiper, .mv__carousel .swiper-wrapper, .mv__carousel .swiper-img {
  width: 100%;
  height: 100%;
}
.mv__carousel .swiper-slide {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.mv__carousel .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mv__carousel--left a, .mv__carousel--right a {
  pointer-events: none;
}
.mv__carousel--left {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-151.3%);
  cursor: pointer;
}
.mv__carousel--center {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.mv__carousel--right {
  position: absolute;
  top: 0;
  right: 50%;
  transform: translateX(151.3%);
  cursor: pointer;
}
.mv__carousel-nav-wrapper {
  margin-top: 2.4rem;
  margin-bottom: 3.2rem;
  position: relative;
}
@media only screen and (min-width:769px) and (max-width: 1060px) {
  .mv__carousel-nav-wrapper {
    margin-bottom: 6.2rem;
  }
}
.mv__carousel-titles {
  position: relative;
  overflow: hidden;
}
.mv__carousel-title {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}
@media only screen and (min-width:769px) {
  .mv__carousel-title {
    display: flex;
    gap: 3.2rem;
  }
}
.mv__carousel-title.-standby {
  visibility: visible;
}
.mv__carousel-title.-standby .mv__carousel-title-num span, .mv__carousel-title.-standby .mv__carousel-title-name span, .mv__carousel-title.-standby .mv__carousel-title-desc span {
  transform: translateY(100%);
}
.mv__carousel-title.-in {
  visibility: visible;
}
.mv__carousel-title.-in .mv__carousel-title-num span, .mv__carousel-title.-in .mv__carousel-title-name span, .mv__carousel-title.-in .mv__carousel-title-desc span {
  animation: mv-carousel-title-num-in ease-out 0.2s forwards;
}
.mv__carousel-title.-out {
  visibility: visible;
}
.mv__carousel-title.-out .mv__carousel-title-num span, .mv__carousel-title.-out .mv__carousel-title-name span, .mv__carousel-title.-out .mv__carousel-title-desc span {
  animation: mv-carousel-title-num-out ease-in 0.2s forwards;
}
.mv__carousel-title-num, .mv__carousel-title-name, .mv__carousel-title-desc {
  overflow: hidden;
}
.mv__carousel-title-num span, .mv__carousel-title-name span, .mv__carousel-title-desc span {
  display: block;
  will-change: transform;
}
.mv__carousel-title-num {
  color: var(--color-blue900);
  line-height: 1;
  height: fit-content;
}
@media only screen and (min-width:769px) {
  .mv__carousel-title-num {
    font-size: 5.2rem;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousel-title-num {
    font-size: 2.4rem;
  }
}
@media only screen and (min-width:769px) {
  .mv__carousel-title-num {
    min-width: 6.3rem;
    transform: translateY(0.7rem);
  }
}
@media only screen and (min-width:769px) {
  .mv__carousel-title-body {
    padding-right: 13.5rem;
  }
}
@media only screen and (min-width:769px) and (max-width: 1060px) {
  .mv__carousel-title-body {
    padding-right: 0;
  }
}
.mv__carousel-title-name {
  color: var(--color-black);
  font-weight: 500;
  line-height: 1.5;
}
@media only screen and (min-width:769px) {
  .mv__carousel-title-name {
    font-size: 3rem;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousel-title-name {
    font-size: 2.4rem;
  }
}
.mv__carousel-title-desc {
  color: var(--color-black);
  line-height: 1.5;
}
@media only screen and (min-width:769px) {
  .mv__carousel-title-desc {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousel-title-desc {
    font-size: 1.2rem;
  }
}
.mv__carousel-nav {
  display: flex;
  align-items: center;
  z-index: 10;
  /*&-dot{
    width:  1.6rem;
    height: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    @include media.hover{
      &::before{
        background-color: var(--color-blue1000) !important;
      }
    }
    &--current{
      &::before{
        background-color: var(--color-blue900) !important;
      }
    }
    &::before{
      content: "";
      display: block;
      width: .8rem;
      height: .8rem;
      background-color: var(--color-gray300);
      border-radius: 50%;
    }
  }*/
}
@media only screen and (min-width:769px) {
  .mv__carousel-nav {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
@media only screen and (min-width:769px) and (max-width: 1060px) {
  .mv__carousel-nav {
    bottom: -4rem;
  }
}
@media only screen and (max-width:768px) {
  .mv__carousel-nav {
    position: absolute;
    top: -0.3rem;
    right: 0;
  }
}
.mv__carousel-nav-prev, .mv__carousel-nav-next {
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.mv__carousel-nav-prev .icons-arrow-2, .mv__carousel-nav-next .icons-arrow-2 {
  font-size: 1.2rem;
  color: var(--color-blue900);
  line-height: 1em;
  transition: color 0.2s, transform 0.2s;
}
@media (hover: hover) {
  .mv__carousel-nav-prev:hover .icons-arrow-2 {
    color: var(--color-blue1000);
    transform: translateX(-0.3em) rotate(180deg);
  }
}
.mv__carousel-nav-prev .icons-arrow-2 {
  transform: rotate(180deg);
}
@media (hover: hover) {
  .mv__carousel-nav-next:hover .icons-arrow-2 {
    color: var(--color-blue1000);
    transform: translateX(0.3em);
  }
}
.mv__carousel-nav-dots {
  display: flex;
  width: auto !important;
}
.mv__carousel-nav-dots .swiper-pagination-bullet {
  margin: 0 !important;
  background: none;
  opacity: 1;
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
@media (hover: hover) {
  .mv__carousel-nav-dots .swiper-pagination-bullet:hover::before {
    background-color: var(--color-blue1000) !important;
  }
}
.mv__carousel-nav-dots .swiper-pagination-bullet::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  background-color: var(--color-gray300);
  border-radius: 50%;
  transition: background-color var(--hover-opacity-duration) var(--hover-opacity-ease);
}
.mv__carousel-nav-dots .swiper-pagination-bullet-active::before {
  background-color: var(--color-blue900) !important;
}
.mv__carousel-progress {
  background-color: var(--color-gray300);
  width: 100%;
  height: 1px;
  position: relative;
  overflow: hidden;
}
.mv__carousel-progress-bar {
  background-color: var(--color-blue900);
  width: 100%;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition-timing-function: linear;
  transition-property: transform;
  will-change: transform;
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
[class^=icons-], [class*=" icons-"] {
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icons-arrow-1:before {
  content: "\ea01";
}

.icons-arrow-2:before {
  content: "\ea02";
}

.icons-search:before {
  content: "\ea03";
}

.icons-lang:before {
  content: "\ea04";
}

.icons-circle-plus:before {
  content: "\ea05";
}

.icons-check:before {
  content: "\ea06";
}

.icons-close:before {
  content: "\ea07";
}

.icons-slash:before {
  content: "\ea08";
}

.icons-download:before {
  content: "\ea09";
}

.icons-blank:before {
  content: "\ea0a";
}

.icons-circle-minus:before {
  content: "\ea0b";
}

.icons-bldg:before {
  content: "\ea0c";
}

.icons-pen:before {
  content: "\ea0d";
}

.icons-flow:before {
  content: "\ea0e";
}

.icons-prize:before {
  content: "\ea0f";
}

.icons-global:before {
  content: "\ea10";
}

.icons-strength:before {
  content: "\ea11";
}

.icons-tel:before {
  content: "\ea12";
}

.icons-mail:before {
  content: "\ea13";
}

.icons-wakaba:before {
  content: "\ea14";
}

.icons-faq:before {
  content: "\ea15";
}

.icons-x:before {
  content: "\ea16";
}

.icons-facebook:before {
  content: "\ea17";
}

.icons-instagram:before {
  content: "\ea18";
}

.icons-youtube:before {
  content: "\ea19";
}

.icons-line:before {
  content: "\ea1a";
}

/*
mixin
*/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
@media only screen and (min-width:769px) {
  .top-news {
    padding: 6.4rem 0;
  }
}
@media only screen and (max-width:768px) {
  .top-news {
    padding: 5.6rem 0;
  }
}
.top-news__frame {
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(29, 96, 176, 0.2);
  color: var(--color-blue900);
}
@media only screen and (min-width:769px) {
  .top-news__frame {
    padding: 0 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .top-news__frame {
    padding: 1.6rem 1.6rem 0;
  }
}
@media only screen and (min-width:769px) {
  .top-news__frame {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .top-news__frame {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 1.6rem;
  }
}
.top-news__title-text {
  color: var(--color-blue900);
  line-height: 1;
}
@media only screen and (min-width:769px) {
  .top-news__title-text {
    font-size: 2rem;
  }
}
@media only screen and (max-width:768px) {
  .top-news__title-text {
    font-size: 1.6rem;
  }
}
.top-news__item-date {
  color: var(--color-gray500);
  font-size: 1.4rem;
  line-height: 1.5;
}
.top-news__item-desc {
  font-size: 1.4rem;
  line-height: 1.5;
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  transition: color var(--hover-opacity-duration) var(--hover-opacity-ease);
  color: var(--color-gray900);
}
@media only screen and (min-width:769px) {
  .top-news__item-desc {
    padding-right: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .top-news__item-desc {
    padding-right: 1.6rem;
  }
}
@media (hover: hover) {
  .top-news__item-desc:hover {
    color: var(--color-blue1000);
  }
  .top-news__item-desc:hover .top-news__item-desc-link {
    text-decoration-color: var(--color-white);
  }
  .top-news__item-desc:hover .top-news__item-desc-arrow span {
    animation: arrow-on 0.4s ease-in-out;
  }
}
.top-news__item-desc-link {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  transition: text-decoration-color var(--hover-opacity-duration) var(--hover-opacity-ease);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  max-width: 100%;
}
@media only screen and (min-width:769px) {
  .top-news__item-desc-link {
    padding: 2.4rem 0;
  }
}
@media only screen and (max-width:768px) {
  .top-news__item-desc-link {
    padding: 1.6rem 0;
  }
}
.top-news__item-desc-arrow {
  font-size: 1.2rem;
  color: var(--color-blue900);
  text-decoration: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "\ea02";
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
@media only screen and (min-width:769px) {
  .casestudy {
    padding-top: 15.2rem;
  }
}
@media only screen and (max-width:768px) {
  .casestudy {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width:769px) {
  .casestudy {
    padding-bottom: 15.2rem;
  }
}
@media only screen and (max-width:768px) {
  .casestudy {
    padding-bottom: 9.6rem;
  }
}
@media only screen and (min-width:769px) {
  .casestudy__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3.0188679245%;
    padding-top: 8rem;
  }
}
@media only screen and (max-width:768px) {
  .casestudy__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 3.2rem;
    padding-top: 4rem;
  }
}
@media only screen and (min-width:769px) {
  .casestudy__item:nth-child(2n) {
    transform: translateY(-4rem);
  }
  .casestudy__item:nth-child(3n) {
    transform: translateY(-8rem);
  }
}
.casestudy__item-link {
  display: block;
}
@media (hover: hover) {
  .casestudy__item-link:hover .casestudy__item-desc {
    color: var(--color-blue1000);
  }
}
.casestudy__item-img-wrapper {
  padding-top: 66.66%;
  position: relative;
}
.casestudy__item-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.casestudy__item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.casestudy__item-body {
  padding-top: 2.4rem;
}
.casestudy__item-desc {
  color: var(--color-black);
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 170%;
  transition: color var(--hover-opacity-duration) var(--hover-opacity-ease);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.casestudy__item-tags {
  margin-top: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.casestudy__item-tag {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5em;
  padding: 0.4rem 0.8rem;
  border-radius: 4px;
  transition: opacity var(--hover-opacity-duration) var(--hover-opacity-ease);
}
.casestudy__item-tag--category {
  color: var(--color-blue900);
  background-color: var(--color-white);
  border: 1px solid var(--color-blue900);
}
@media (hover: hover) {
  .casestudy__item-tag--category:hover {
    opacity: 0.7;
  }
}
.casestudy__item-tag--tag {
  background-color: var(--color-gray100);
}
@media only screen and (min-width:769px) {
  .casestudy__btn-wrapper {
    margin-top: 0;
    height: 0;
  }
}
@media only screen and (max-width:768px) {
  .casestudy__btn-wrapper {
    margin-top: 6.4rem;
  }
}
.casestudy__btn {
  width: 24rem;
  height: 5.6rem;
}
@media only screen and (min-width:769px) {
  .casestudy__btn {
    margin-left: auto;
  }
}
@media only screen and (max-width:768px) {
  .casestudy__btn {
    margin-inline: auto;
  }
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
.aboutus {
  position: relative;
}
@media only screen and (min-width:769px) {
  .aboutus {
    padding: 15.2rem 0;
  }
}
@media only screen and (max-width:768px) {
  .aboutus {
    padding: 8rem 0 9.6rem;
  }
}
.aboutus__bg-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.aboutus__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@media only screen and (min-width:769px) {
  .aboutus__bg {
    height: 115%;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__bg {
    height: 105%;
  }
}
.aboutus__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width:768px) {
  .aboutus__bg img {
    object-position: top;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__title span, .aboutus__title h2 {
    color: var(--color-white) !important;
  }
}
.aboutus__inner {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width:769px) {
  .aboutus__list {
    margin-top: 4.8rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__list {
    margin-top: 4rem;
  }
}
@media only screen and (min-width:769px) {
  .aboutus__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 0.8rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }
}
.aboutus__item {
  background-color: var(--color-white);
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
@media only screen and (min-width:769px) {
  .aboutus__item {
    padding: 2.4rem 2.4rem 2.4rem 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__item {
    padding: 1.6rem 1.6rem 1.6rem 2.4rem;
  }
}
@media (hover: hover) {
  .aboutus__item:hover .aboutus__item-name {
    color: var(--color-blue1000);
  }
  .aboutus__item:hover .aboutus__item-arrow .icons-arrow-2 {
    color: var(--color-blue1000);
  }
}
.aboutus__item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--color-blue100);
  color: var(--color-blue900);
  font-size: 3.2rem;
  font-weight: 600;
}
@media only screen and (min-width:769px) {
  .aboutus__item-icon {
    width: 7.2rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__item-icon {
    width: 5.6rem;
  }
}
@media only screen and (min-width:769px) {
  .aboutus__item-icon {
    min-width: 7.2rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__item-icon {
    min-width: 5.6rem;
  }
}
@media only screen and (min-width:769px) {
  .aboutus__item-icon {
    height: 7.2rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__item-icon {
    height: 5.6rem;
  }
}
@media only screen and (max-width:768px) {
  .aboutus__item-icon [class^=icons-] {
    transform: scale(0.8);
  }
}
.aboutus__item-icon .icons-bldg {
  font-size: 3.8rem;
}
.aboutus__item-icon .icons-pen {
  font-size: 3.2rem;
}
.aboutus__item-icon .icons-flow {
  font-size: 3.6rem;
}
.aboutus__item-icon .icons-prize {
  font-size: 4rem;
}
.aboutus__item-icon .icons-global {
  font-size: 3.2rem;
}
.aboutus__item-icon .icons-strength {
  font-size: 3.9rem;
}
.aboutus__item-name {
  color: var(--color-gray900);
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  transition: color var(--hover-opacity-duration) var(--hover-opacity-ease);
}
.aboutus__item-arrow {
  margin-left: auto;
  min-width: 1rem;
}
.aboutus__item-arrow .icons-arrow-2 {
  font-size: 1.4rem;
  color: var(--color-blue900);
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
@media only screen and (min-width:769px) {
  .news {
    padding: 15.2rem 0;
  }
}
@media only screen and (max-width:768px) {
  .news {
    padding: 9.6rem 0;
  }
}
.news__title {
  margin-bottom: 4.8rem;
}
@media only screen and (min-width:769px) {
  .news__title {
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .news__title {
    margin-bottom: 3.2rem;
  }
}
@media only screen and (min-width:769px) {
  .news__columns {
    display: grid;
    grid-template-columns: 32ch 1fr;
    gap: 7.5471698113%;
  }
}
@media only screen and (min-width:769px) {
  .news__categories {
    margin-top: 4.8rem;
  }
}
@media only screen and (max-width:768px) {
  .news__categories {
    margin-top: 3.2rem;
  }
}
@media only screen and (min-width:769px) {
  .news__categories {
    display: flex;
    gap: 0.8rem;
    flex-direction: column;
  }
}
@media only screen and (max-width:768px) {
  .news__categories {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
  }
}
.news__category-btn {
  display: inline-block;
  background-color: var(--color-white);
  border: 1px solid var(--color-gray300);
  border-radius: 4px;
  color: var(--color-gray900);
  font-size: 1.4rem;
  line-height: 1.5;
  padding: 0.4rem 1.6rem;
  cursor: pointer;
  transition: opacity var(--hover-opacity-duration) var(--hover-opacity-ease);
}
@media (hover: hover) {
  .news__category-btn:hover:not(.-current) {
    opacity: 0.7;
  }
}
.news__category-btn.-current {
  border: 1px solid var(--color-blue900);
  color: var(--color-blue900);
}
.news__list {
  display: none;
  opacity: 0;
  will-change: opacity, transform;
  transition: opacity 0.4s ease-out, transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media only screen and (min-width:769px) {
  .news__list {
    margin-top: 1rem;
  }
}
@media only screen and (max-width:768px) {
  .news__list {
    margin-top: 4rem;
  }
}
@media only screen and (min-width:769px) {
  .news__list {
    transform: translateX(5%);
  }
}
@media only screen and (max-width:768px) {
  .news__list {
    transform: translateY(30px);
  }
}
.news__list.-current {
  display: block;
}
.news__list.-show {
  opacity: 1;
  transform: translateX(0) translateY(0);
}
.news__list-category-name {
  display: none;
}
.news__list-item {
  border-bottom: 1px solid var(--color-gray300);
  padding-top: 2.4rem;
}
.news__list-item:first-child {
  padding-top: 0;
}
.news__list-item-header {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.news__list-item-date {
  color: var(--color-gray500);
  font-size: 1.4rem;
  line-height: 1.5;
}
.news__list-item-category {
  color: var(--color-gray900);
  font-size: 1.2rem;
  line-height: 1.5;
  display: flex;
  align-items: center;
  padding: 0.2rem 0.8rem;
  border-radius: 4px;
  border: 1px solid var(--color-gray300);
  transition: opacity var(--hover-opacity-duration) var(--hover-opacity-ease);
}
@media (hover: hover) {
  .news__list-item-category:hover {
    opacity: 0.7;
  }
}
.news__list-item-body {
  padding-top: 1.6rem;
  padding-bottom: 2.4rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (hover: hover) {
  .news__list-item-body:hover .news__list-item-desc {
    color: var(--color-blue1000);
  }
  .news__list-item-body:hover .news__list-item-arrow {
    color: var(--color-blue1000);
  }
  .news__list-item-body:hover .news__list-item-arrow span {
    animation: arrow-on 0.4s ease-in-out;
  }
}
.news__list-item-desc {
  width: 100%;
  color: var(--color-gray900);
  font-size: 1.6rem;
  line-height: 1.5;
  transition: color var(--hover-opacity-duration) var(--hover-opacity-ease);
}
@media only screen and (min-width:769px) {
  .news__list-item-desc {
    padding-right: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .news__list-item-desc {
    padding-right: 1.6rem;
  }
}
.news__list-item-arrow {
  font-size: 1.2rem;
  color: var(--color-blue900);
}
@media only screen and (min-width:769px) {
  .news__btn-wrapper {
    margin-top: 5.6rem;
  }
}
@media only screen and (max-width:768px) {
  .news__btn-wrapper {
    margin-top: 4rem;
  }
}
@media only screen and (min-width:769px) {
  .news__btn-wrapper {
    text-align: right;
  }
}
@media only screen and (max-width:768px) {
  .news__btn-wrapper {
    text-align: center;
  }
}
.news__btn {
  width: 24rem;
  height: 5.6rem;
  margin-inline: auto;
  text-align: center;
}
@media only screen and (min-width:769px) {
  .news__btn {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .news__btn {
    margin-top: 3.2rem;
  }
}
@media only screen and (min-width:769px) {
  .news__btn {
    display: inline-flex;
  }
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
@media only screen and (min-width:769px) {
  .search {
    padding-top: 15.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search {
    padding-top: 9.6rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition {
    margin-top: 4.8rem;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(29, 96, 176, 0.2);
    background-color: var(--color-white);
  }
}
@media only screen and (max-width:768px) {
  .search__condition {
    margin-top: 4rem;
    width: 100%;
  }
}
.search__condition-title {
  color: var(--color-white);
  line-height: 1.5;
  background-color: var(--color-gray800);
}
@media only screen and (min-width:769px) {
  .search__condition-title {
    font-size: 2rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-title {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-title {
    padding: 2.4rem 3.2rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-title {
    padding: 1.8rem 2.4rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-title {
    border-radius: 16px 16px 0 0;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-selects {
    padding: 3.2rem 3.2rem 4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-selects {
    width: 87.6923076923vw;
    margin-inline: auto;
    padding-bottom: 3.2rem;
  }
}
.search__condition-interface-header {
  display: flex;
  align-items: center;
}
@media only screen and (min-width:769px) {
  .search__condition-interface-header {
    justify-content: flex-start;
    gap: 1.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-interface-header {
    justify-content: space-between;
    padding-top: 2.4rem;
  }
}
.search__condition-interface-title {
  color: var(--color-gray900);
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}
.search__condition-interface-btns {
  display: flex;
  gap: 0.4rem;
}
.search__condition-interface-btn {
  color: var(--design-palette-blue900, #2577D8);
  font-size: 1.2rem;
  line-height: 1.5;
  font-weight: 400;
  border-radius: 4px;
  padding: 0.4rem 0.8rem;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: inherit;
  transition: opacity var(--hover-opacity-duration) var(--hover-opacity-ease);
  cursor: pointer;
}
.search__condition-interface-btn--reset {
  color: var(--color-blue900);
  border: 1px solid var(--color-blue900);
  background-color: var(--color-white);
}
.search__condition-interface-btn--all {
  color: var(--color-white);
  background-color: var(--color-blue900);
  border: 1px solid var(--color-blue900);
}
@media (hover: hover) {
  .search__condition-interface-btn:hover {
    opacity: 0.7;
  }
}
.search__condition-interface-list {
  margin-top: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.search__condition-interface-item {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  border-radius: 4px;
  border: 1px solid var(--color-gray300);
  transition: border var(--hover-opacity-duration) var(--hover-opacity-ease);
}
.search__condition-interface-item:has(.search__condition-interface-input:checked) {
  border: 1px solid var(--color-blue900);
}
@media (hover: hover) {
  .search__condition-interface-item:hover {
    border: 1px solid var(--color-blue1000);
  }
  .search__condition-interface-item:hover .search__condition-interface-label {
    color: var(--color-blue1000);
  }
}
.search__condition-interface-label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  cursor: pointer;
  color: var(--color-gray900);
  padding: 0.8rem;
  line-height: 1.5;
  font-weight: 400;
  transition: color var(--hover-opacity-duration) var(--hover-opacity-ease);
}
@media only screen and (min-width:769px) {
  .search__condition-interface-label {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-interface-label {
    font-size: 1.2rem;
  }
}
.search__condition-interface-input {
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background-color: var(--color-white);
  border: 1px solid var(--color-gray300);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}
.search__condition-interface-input::before {
  transition: 0.3s ease-in;
  width: 1.6rem;
  height: 1.6rem;
}
.search__condition-interface-input:checked {
  background-color: var(--color-blue900);
  border: 1px solid var(--color-blue900);
}
.search__condition-interface-input:checked::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background-color: var(--color-white);
}
@media only screen and (min-width:769px) {
  .search__condition-options {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options {
    margin-top: 3.2rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-options-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.8rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8rem;
  }
}
@media only screen and (max-width:768px) and (min-width: 700px) {
  .search__condition-options-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
.search__condition-options-box {
  position: relative;
  display: flex;
  flex-direction: column;
}
.search__condition-options-box:has(.search__condition-options-box-list-wrapper.is-active) .search__condition-options-box-name {
  border: 1px solid var(--color-blue1000);
  color: var(--color-blue1000);
}
.search__condition-options-box:has(.search__condition-options-box-list-wrapper.is-active) .search__condition-options-box-name::after {
  transform: rotate(-90deg);
}
@media only screen and (max-width:768px) {
  .search__condition-options-box:nth-child(2n) .search__condition-options-box-list-wrapper {
    left: calc(-43.8461538462vw - 0.4rem);
  }
}
@media only screen and (max-width:768px) and (min-width: 700px) {
  .search__condition-options-box:nth-child(4n-2) .search__condition-options-box-list-wrapper {
    left: calc(-21.9230769231vw - 0.2rem);
  }
  .search__condition-options-box:nth-child(4n-1) .search__condition-options-box-list-wrapper {
    left: calc(-43.8461538462vw - 0.4rem);
  }
  .search__condition-options-box:nth-child(4n) .search__condition-options-box-list-wrapper {
    left: calc(-65.7692307692vw - 0.6rem);
  }
}
.search__condition-options-box-name {
  height: 100%;
  order: 1;
  color: var(--color-gray900);
  line-height: 1.5;
  font-weight: 500;
  padding: 0.8rem 1.6rem;
  border-radius: 4px;
  border: 1px solid var(--color-gray300);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  white-space: nowrap;
  transition: border var(--hover-opacity-duration) var(--hover-opacity-ease), color var(--hover-opacity-duration) var(--hover-opacity-ease);
}
@media only screen and (min-width:769px) {
  .search__condition-options-box-name {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options-box-name {
    font-size: 1.2rem;
  }
}
@media (hover: hover) {
  .search__condition-options-box-name:hover {
    color: var(--color-blue1000);
    border: 1px solid var(--color-blue1000);
  }
}
@media only screen and (min-width:769px) and (min-width: 1200px) {
  .search__condition-options-box-name br {
    display: none;
  }
}
@media only screen and (max-width:768px) and (min-width: 500px) {
  .search__condition-options-box-name br {
    display: none;
  }
}
@media only screen and (max-width:768px) and (min-width: 700px) {
  .search__condition-options-box-name br {
    display: block;
  }
}
.search__condition-options-box-name::after {
  content: "\ea02";
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: rotate(90deg);
  font-size: 1rem;
  color: var(--color-blue900);
  transition: transform 0.3s;
  will-change: transform;
}
.search__condition-options-box-list-wrapper {
  order: 2;
  visibility: hidden;
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease-out, visibility 0.3s;
}
@media only screen and (min-width:769px) {
  .search__condition-options-box-list-wrapper {
    position: absolute;
    top: calc(100% + 0.8rem);
    left: 0;
    z-index: 10;
    width: 100%;
    background-color: var(--color-white);
    border-radius: 4px;
    border: 1px solid var(--color-gray300);
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options-box-list-wrapper {
    position: absolute;
    top: calc(100% + 0.8rem);
    left: 0;
    z-index: 10;
    width: 87.6923076923vw;
    background-color: var(--color-white);
    border-radius: 4px;
    border: 1px solid var(--color-gray300);
  }
}
.search__condition-options-box-list-wrapper.is-active {
  visibility: visible;
  display: grid;
  grid-template-rows: 1fr;
}
.search__condition-options-box-list-wrapper:has(input:checked) + .search__condition-options-box-name {
  border: 1px solid var(--color-blue900);
}
.search__condition-options-box-list-inner {
  overflow: hidden;
  overflow-y: auto;
  padding-top: 1.6rem;
}
@media only screen and (min-width:769px) {
  .search__condition-options-box-list-inner {
    max-height: 30rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options-box-list-inner {
    max-height: 30svh;
  }
}
.search__condition-options-box-list-inner::-webkit-scrollbar {
  width: 4px;
}
.search__condition-options-box-list-inner::-webkit-scrollbar-thumb {
  background-color: var(--color-gray300);
  border-radius: 4px;
}
.search__condition-options-box-list {
  display: flex;
  flex-direction: column;
  padding: 0 1.6rem 1.6rem;
}
@media only screen and (max-width:768px) {
  .search__condition-options-box-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 0.8rem;
  }
}
.search__condition-options-box-list-name {
  color: var(--color-gray900);
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 500;
  padding: 0 1.6rem;
}
.search__condition-options-box-list-name + .search__condition-options-box-list {
  padding-top: 0.4rem;
}
.search__condition-options-box-item-label {
  display: flex;
  gap: 0.8rem;
  cursor: pointer;
  color: var(--color-gray900);
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 400;
  padding: 0.4rem 0;
}
.search__condition-options-box-item-input {
  width: 1.6rem;
  min-width: 1.6rem;
  height: 1.6rem;
  border-radius: 4px;
  background-color: var(--color-white);
  border: 1px solid var(--color-gray300);
  transform: translateY(0.2rem);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: background-color 0.2s, border 0.2s;
}
.search__condition-options-box-item-input::before {
  content: "\ea06";
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.8rem;
  color: var(--color-white);
  opacity: 1;
  transform: translateY(-200%);
  transition: opacity 0.2s, transform 0.3s;
}
.search__condition-options-box-item-input:checked {
  background-color: var(--color-blue900);
  border: 1px solid var(--color-blue900);
}
.search__condition-options-box-item-input:checked::before {
  opacity: 1;
  transform: translateY(0);
}
.search__condition-options-selected {
  margin-top: 1.6rem;
}
.search__condition-options-selected-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.search__condition-options-selected-item {
  border-radius: 4px;
  background-color: var(--color-gray200);
  display: inline-flex;
  align-items: center;
  padding: 0.8rem;
  gap: 0.4rem;
  cursor: pointer;
  transition: 0.3s;
}
@media (hover: hover) {
  .search__condition-options-selected-item:hover {
    opacity: 0.7;
  }
}
.search__condition-options-selected-item::after {
  content: "\ea07";
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.7rem;
  color: var(--color-gray900);
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--color-white);
}
.search__condition-options-selected-item-name {
  color: var(--color-gray900);
  line-height: 1.5;
  font-weight: 400;
}
@media only screen and (min-width:769px) {
  .search__condition-options-selected-item-name {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-options-selected-item-name {
    font-size: 1.2rem;
  }
}
.search__condition-btns {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width:769px) {
  .search__condition-btns {
    gap: 1.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-btns {
    gap: 0.8rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-btns {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-btns {
    margin-top: 3.2rem;
  }
}
.search__condition-btn {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
@media only screen and (min-width:769px) {
  .search__condition-btn {
    width: 24rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-btn {
    width: 100%;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-btn {
    height: 5.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-btn {
    height: 4.8rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-btn {
    max-width: 24rem;
  }
}
.search__condition-keyword {
  border-top: 1px solid var(--color-gray300);
}
@media only screen and (min-width:769px) {
  .search__condition-keyword {
    padding: 2.4rem 3.2rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-keyword {
    padding: 2.4rem 2.4rem 3.2rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-keyword {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-keyword {
    border-bottom: 1px solid var(--color-gray300);
  }
}
.search__condition-keyword-title {
  color: var(--color-gray900);
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  white-space: nowrap;
}
@media only screen and (max-width:768px) {
  .search__condition-keyword-title {
    padding-bottom: 0.8rem;
  }
}
.search__condition-keyword-form {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.search__condition-keyword-form-inner {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.search__condition-keyword-input {
  width: 100%;
  height: 5.6rem;
  border-radius: 4px 0 0 4px;
  border-top: 1px solid var(--color-gray300);
  border-left: 1px solid var(--color-gray300);
  border-bottom: 1px solid var(--color-gray300);
  border-right: none;
  padding: 0 1em;
  background-color: var(--color-white);
  position: relative;
  z-index: 2;
}
.search__condition-keyword-input::placeholder {
  color: var(--color-gray400);
}
@media only screen and (max-width:768px) {
  .search__condition-keyword-input::placeholder {
    font-size: clamp(1rem, 3.4615384615vw, 1.5rem);
  }
}
.search__condition-keyword-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 4px 4px 0;
  border: 1px solid var(--color-blue900);
  background-color: var(--color-blue900);
  transition: background-color var(--hover-opacity-duration) var(--hover-opacity-ease);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}
@media only screen and (min-width:769px) {
  .search__condition-keyword-btn {
    width: 5.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-keyword-btn {
    width: 5.6rem;
  }
}
@media only screen and (min-width:769px) {
  .search__condition-keyword-btn {
    height: 5.6rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-keyword-btn {
    height: 5.6rem;
  }
}
@media (hover: hover) {
  .search__condition-keyword-btn:hover {
    background-color: var(--color-blue1000);
  }
}
.search__condition-keyword-icon {
  color: var(--color-white);
}
@media only screen and (min-width:769px) {
  .search__condition-keyword-icon {
    font-size: 2.3rem;
  }
}
@media only screen and (max-width:768px) {
  .search__condition-keyword-icon {
    font-size: 2.3rem;
  }
}
.search__categories {
  margin-top: 4.8rem;
}
.search__categories-title {
  color: var(--color-gray900);
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (min-width:769px) {
  .search__categories-title {
    font-size: 2rem;
  }
}
@media only screen and (max-width:768px) {
  .search__categories-title {
    font-size: 1.8rem;
  }
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
.strength {
  position: relative;
}
@media only screen and (min-width:769px) {
  .strength {
    background-color: #e6ebef;
  }
}
@media only screen and (max-width:768px) {
  .strength {
    background-color: #f3f7fa;
  }
}
.strength__bg-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.strength .plx-target {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@media only screen and (min-width:769px) {
  .strength .plx-target {
    height: 115%;
  }
}
@media only screen and (max-width:768px) {
  .strength .plx-target {
    height: 105%;
  }
}
@media only screen and (min-width:769px) {
  .strength .plx-target {
    min-width: 110rem;
  }
}
.strength__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (min-width:769px) {
  .strength__bg img {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    max-width: none !important;
    height: 100%;
  }
}
@media only screen and (max-width:768px) {
  .strength__bg img {
    width: 100%;
    height: auto;
  }
}
.strength__inner {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width:769px) {
  .strength__inner {
    padding: 13.6rem 0;
  }
}
@media only screen and (max-width:768px) {
  .strength__inner {
    padding: 51.2820512821vw 0 8rem;
  }
}
@media only screen and (min-width:769px) {
  .strength__title-text {
    width: 41.8rem;
  }
}
@media only screen and (max-width:768px) {
  .strength__title-text {
    width: 28.3rem;
  }
}
@media only screen and (min-width:769px) {
  html:lang(en) .strength__title-text {
    width: 61.2rem;
  }
}
@media only screen and (max-width:768px) {
  html:lang(en) .strength__title-text {
    width: 32rem;
  }
}
@media only screen and (min-width:769px) {
  .strength__title-text:lang(zh-hans) {
    width: 25.1rem;
  }
}
@media only screen and (max-width:768px) {
  .strength__title-text:lang(zh-hans) {
    width: 17rem;
  }
}
.strength__title-text img {
  width: 100%;
  height: auto;
}
@media only screen and (min-width:769px) {
  .strength__subtitle {
    margin-top: 6rem;
  }
}
@media only screen and (max-width:768px) {
  .strength__subtitle {
    margin-top: 4rem;
  }
}
.strength__subtitle-text {
  color: var(--color-gray900);
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 2.4px;
}
@media only screen and (min-width:769px) {
  .strength__subtitle-text {
    font-size: 2.8rem;
  }
}
@media only screen and (max-width:768px) {
  .strength__subtitle-text {
    font-size: 2.4rem;
  }
}
.strength__boxes {
  padding-top: 0.8rem;
}
@media only screen and (min-width:769px) {
  .strength__boxes {
    width: 31.4285714286vw;
    min-width: 40rem;
  }
}
.strength__box {
  border-bottom: 0.5px solid var(--color-gray400);
  padding: 2.4rem 0;
}
.strength__box-header {
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
}
.strength__box-num {
  color: var(--color-blue900);
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.5em;
  letter-spacing: -0.48px;
}
.strength__box-title {
  color: var(--color-gray900);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 2px;
  transform: translateY(0.12em);
}
.strength__box-body {
  margin-top: 0.8rem;
}
.strength__box-text {
  color: var(--color-gray900);
  font-size: 1.4rem;
  line-height: 170%;
  letter-spacing: 1.4px;
}

/************************************************************
SCREEN SP
*************************************************************/
/************************************************************
SCREEN PC
*************************************************************/
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJfZm91bmRhdGlvbi9fdmFycy5zY3NzIiwiX2ZvdW5kYXRpb24vX2Z1bmN0aW9uLnNjc3MiLCJfZm91bmRhdGlvbi9fbWVkaWEuc2NzcyIsIl9mb3VuZGF0aW9uL19taXhpbi5zY3NzIiwicGFnZXMvaG9tZS9pbmRleF9zdHlsZXMvX2dlbmVyYWwuc2NzcyIsInBhZ2VzL2hvbWUvaW5kZXhfc3R5bGVzL19tdi5zY3NzIiwiX2ZvdW5kYXRpb24vX2ljb25mb250LnNjc3MiLCJwYWdlcy9ob21lL2luZGV4X3N0eWxlcy9fdG9wLW5ld3Muc2NzcyIsInBhZ2VzL2hvbWUvaW5kZXhfc3R5bGVzL19jYXNlc3R1ZHkuc2NzcyIsInBhZ2VzL2hvbWUvaW5kZXhfc3R5bGVzL19hYm91dHVzLnNjc3MiLCJwYWdlcy9ob21lL2luZGV4X3N0eWxlcy9fbmV3cy5zY3NzIiwicGFnZXMvaG9tZS9pbmRleF9zdHlsZXMvX3NlYXJjaC5zY3NzIiwicGFnZXMvaG9tZS9pbmRleF9zdHlsZXMvX3N0cmVuZ3RoLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQU1BO0VBQ0U7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUMvQkY7QUFBQTtBQUFBO0FDbUJBO0FBQUE7QUFBQTtBQ2xCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlQTtBQUFBO0FBQUE7QUFpQ0E7QUFBQTtBQUFBO0FDOUNBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQ1pBO0VBQ0U7SUFDRTs7RUFFRjtJQUNFOzs7QUFHSjtFQUNFO0lBQ0U7O0VBRUY7SUFDRTs7O0FBR0o7QUFBQTtBQUFBO0FBS0U7RUFDRTtFQUNBOztBSHpCRjtFR3VCQTtJQUlJ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O0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFFQTtFQUNBOztBVGhiUjtFUzRhTTtJVHRhUSxXU3dhd0I7OztBVDNhdEM7RVN5YU07SVRyYVEsV1N1YStCOzs7QUFPM0M7RUFDRTtFQUNBOztBVHZiSjtFU3FiRTtJVC9hWSxLU2tiYzs7O0FUcmI1QjtFU2tiRTtJVDlhWSxLU2licUI7OztBVHhibkM7RVNxYkU7SVQvYVksWVNtYnFCOzs7QVR0Ym5DO0VTa2JFO0lUOWFZLFlTa2IwQjs7O0FBRXRDO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVRuY0o7RVMyYkU7SVRyYlksT1M4YmdCOzs7QVRqYzlCO0VTd2JFO0lUcGJZLE9TNmJzQjs7O0FUcGNwQztFUzJiRTtJVHJiWSxRUytiaUI7OztBVGxjL0I7RVN3YkU7SVRwYlksUVM4YndCOzs7QVRsY3RDO0VTd2JFO0lBWUk7OztBQUlKO0VBQ0U7O0FUNWNKO0VTMmNFO0lUcmNZLFNTdWNrQjs7O0FUMWNoQztFU3djRTtJVHBjWSxTU3NjZ0M7OztBVDdjOUM7RVMyY0U7SUFJSTtJQUNBO0lBQ0E7SUFDQTs7O0FUL2NOO0VTd2NFO0lBVUk7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVR6ZE47RVNvZEk7SUFPSTs7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFOztBVHZmUjtFU3NmTTtJQUdJOzs7QUFJTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVQ3Z0JOO0VTZ2dCSTtJVDFmVSxPU3dnQmtCOzs7QVQzZ0JoQztFUzZmSTtJVHpmVSxPU3VnQnlCOzs7QVQ5Z0J2QztFU2dnQkk7SVQxZlUsUVN5Z0JtQjs7O0FUNWdCakM7RVM2Zkk7SVR6ZlUsUVN3Z0IwQjs7O0FUcGdCeEM7RUFDRTtJU3FnQk07OztBQUdKO0VBQ0U7O0FUcmhCTjtFU29oQkk7SVQ5Z0JVLFdTZ2hCc0I7OztBVG5oQnBDO0VTaWhCSTtJVDdnQlUsV1MrZ0I2Qjs7O0FBSzNDO0VBQ0U7O0FBQ0E7RUFDRTtFQUVBO0VBQ0E7RUFDQTs7QVRsaUJKO0VTNmhCRTtJVHZoQlksV1N5aEJvQjs7O0FUNWhCbEM7RVMwaEJFO0lUdGhCWSxXU3doQnlCOzs7O0FBUXpDO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQzFpQkE7QUFBQTtBQUFBO0FBSUE7RUFDRTs7QVZSQTtFVU9GO0lWRGdCLGtCVUd1Qjs7O0FWTnJDO0VVSUY7SVZBZ0Isa0JVRStCOzs7QUFDN0M7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QVZ0QkY7RVVrQkE7SVZaYyxRVWlCZTs7O0FWcEI3QjtFVWVBO0lWWGMsUVVnQm9COzs7QVZ2QmxDO0VVa0JBO0lBT0k7OztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QVZqQ0Y7RVVtQ0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBVnRDTjtFVTBDSTtJQUNFO0lBQ0E7OztBQUlOO0VBQ0U7RUFDQTs7QVZyREY7RVVtREE7SVY3Q2MsU1VnRGdCOzs7QVZuRDlCO0VVZ0RBO0lWNUNjLFNVK0MwQjs7O0FWdER4QztFVXlERTtJVm5EWSxPVW9EZ0I7OztBVnZEOUI7RVVzREU7SVZsRFksT1VtRHdCOzs7QVYxRHRDO0VVMkRJO0lWckRVLE9Vc0RrQjs7O0FWekRoQztFVXdESTtJVnBEVSxPVXFEMEI7OztBVjVEeEM7RVU4REk7SVZ4RFUsT1V5RGtCOzs7QVY1RGhDO0VVMkRJO0lWdkRVLE9Vd0QwQjs7O0FBRXBDO0VBQ0U7RUFDQTs7QVZuRU47RVV1RUE7SVZqRWMsWVVrRW1COzs7QVZyRWpDO0VVb0VBO0lWaEVjLFlVaUV3Qjs7O0FBQ3BDO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FWN0VKO0VVeUVFO0lWbkVZLFdVd0VvQjs7O0FWM0VsQztFVXNFRTtJVmxFWSxXVXVFMkI7OztBQUd6QztFQUNFOztBVmxGRjtFVWlGQTtJQUdJO0lBQ0E7OztBQUdKO0VBQ0U7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFLTjtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUEiLCJmaWxlIjoicGFnZXMvaG9tZS9pbmRleC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIkc2NyZWVuX3NwOlwic2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2OHB4KVwiO1xuJHNjcmVlbl9wYzpcInNjcmVlbiBhbmQgKG1pbi13aWR0aDo3NjlweClcIjtcblxuJHNjcmVlbl9oZWFkZXJfc3A6XCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTA4MHB4KVwiO1xuJHNjcmVlbl9oZWFkZXJfcGM6XCJzY3JlZW4gYW5kIChtaW4td2lkdGg6MTA4MXB4KVwiO1xuXG46cm9vdCB7XG4gIC0tcGMtY29udGVudHMtbWF4LXdpZHRoOjEyMDBweDsgLy9QQ+OBruOCs+ODs+ODhuODs+ODhOW5heOBruacgOWkp1xuICAtLXotaW5kZXgtaGVhZGVyOjEwMDA7IC8v44OY44OD44OA44O844Guei1pbmRleFxuXG4gIC8v6YCP6YGO44KE6Imy5aSJ5pu057O744Gu44Ki44OL44Oh44O844K344On44Oz5YCkXG4gIC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbjouMnM7XG4gIC0taG92ZXItb3BhY2l0eS1lYXNlOmVhc2U7XG5cbiAgLS1jb2xvci13aGl0ZTojRkZGRkZGO1xuICAtLWNvbG9yLWJsYWNrOiMwMDAwMDA7XG4gIC0tY29sb3ItZ3JheTkwMDojMjIyMjIyO1xuICAtLWNvbG9yLWdyYXk4MDA6IzMyMzIzMjtcbiAgLS1jb2xvci1ncmF5NjAwOiM1MDUwNTA7XG4gIC0tY29sb3ItZ3JheTUwMDojNjY2NjY2O1xuICAtLWNvbG9yLWdyYXk0MDA6I0IwQjBCMDtcbiAgLS1jb2xvci1ncmF5MzAwOiNEN0Q3RDc7XG4gIC0tY29sb3ItZ3JheTIwMDojRURFREVEO1xuICAtLWNvbG9yLWdyYXkxMDA6I0YwRjBGMDtcbiAgLS1jb2xvci1ibHVlMTIwMDojMUQ2MEIwO1xuICAtLWNvbG9yLWJsdWUxMDAwOiMyNTg4RkU7XG4gIC0tY29sb3ItYmx1ZTkwMDojMjU3N0Q4O1xuICAtLWNvbG9yLWJsdWU4MDA6IzQwODVENjtcbiAgLS1jb2xvci1ibHVlNDAwOiNBNkM1RTU7XG4gIC0tY29sb3ItYmx1ZTMwMDojQzBEOUYyO1xuICAtLWNvbG9yLWJsdWUyMDA6I0VBRjNGQztcbiAgLS1jb2xvci1ibHVlMTAwOiNGMEY2RkI7XG4gIC0tY29sb3ItZ3JlZW4xMDA6I0RERjFEOTtcbiAgLS1jb2xvci1yZWQ5MDA6I0VFMkYzNDtcbn1cblxuXG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8qXG5weOOCknZ344Gr5aSJ5o+bXG4qL1xuQGZ1bmN0aW9uIGdldHZ3KCRzaXplLCAkdmlld3BvcnQ6MzkwKXtcbiAgJHJhdGU6IG1hdGguZGl2KDEwMCwkdmlld3BvcnQpO1xuICBAcmV0dXJuICRyYXRlICogJHNpemUgKiAxdnc7XG59XG5cbi8v77yF44KS6L+U44GZXG5AZnVuY3Rpb24gZ2V0cGVyKCRzaXplLCAkcGFyZW50KXtcbiAgJHJhdGU6IG1hdGguZGl2KDEwMCwkcGFyZW50KTtcbiAgQHJldHVybiAkcmF0ZSAqICRzaXplICogMSU7XG59XG5cbi8v5Y2K5YiG44Gu44K144Kk44K644KScHjjgafov5TjgZlcbkBmdW5jdGlvbiBnZXRoYWxmKCRzaXplKXtcbiAgQHJldHVybiAkc2l6ZSAqIDAuNXB4O1xufVxuXG4vL3JlbeOCkui/lOOBmVxuQGZ1bmN0aW9uIGdldHJlbSgkc2l6ZSwgJGJhc2U6IDE2KSB7XG5cdEByZXR1cm4gbWF0aC5kaXYoJHNpemUsICRiYXNlKSArIHJlbTtcbn1cblxuLy9saW5lLWhlaWdodOOBrmVt44KS6KiI566XXG5AZnVuY3Rpb24gZ2V0bGhlbSgkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcblx0QHJldHVybiBtYXRoLmRpdigkbGluZS1oZWlnaHQsJGZvbnQtc2l6ZSkgKyBlbTtcbn1cblxuLy9sZXR0ZXItc3BhY2luZ+OBrmVt44KS6KiI566XXG5AZnVuY3Rpb24gZ2V0bHNlbSgkZm9udC1zaXplLCAkcHgpIHtcblx0QHJldHVybiBtYXRoLmRpdigkcHgsJGZvbnQtc2l6ZSkgKyBlbTtcbn0iLCJAdXNlIFwiLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5cbkBtaXhpbiBwYyB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX3BjfSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gc3Age1xuICBAbWVkaWEgb25seSAje3ZhcnMuJHNjcmVlbl9zcH0geyBAY29udGVudDsgfVxufVxuQG1peGluIHJlc3AoJGF0ciwgJHBjLCAkc3ApIHtcbiAgQGluY2x1ZGUgcGMgeyAjeyRhdHJ9OiAkcGM7IH1cbiAgQGluY2x1ZGUgc3AgeyAjeyRhdHJ9OiAkc3A7IH1cbn1cblxuQG1peGluIGhvdmVye1xuICBAbWVkaWEoaG92ZXI6aG92ZXIpIHtcbiAgICAmOmhvdmVye1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmhlYWRlcueUqFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1peGluIGhlYWRlcl9wYyB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX2hlYWRlcl9wY30geyBAY29udGVudDsgfVxufVxuQG1peGluIGhlYWRlcl9zcCB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX2hlYWRlcl9zcH0geyBAY29udGVudDsgfVxufVxuQG1peGluIGhlYWRlcl9yZXNwKCRhdHIsICRwYywgJHNwKSB7XG4gIEBpbmNsdWRlIGhlYWRlcl9wYyB7ICN7JGF0cn06ICRwYzsgfVxuICBAaW5jbHVkZSBoZWFkZXJfc3AgeyAjeyRhdHJ9OiAkc3A7IH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbkB1c2UgXCIuL21lZGlhXCIgYXMgbWVkaWE7XG5cbi8qXG7jg6Hjg4fjgqPjgqLjgq/jgqjjg6pcbuiomOi/sOS+i1xuYm9keXtcbiAgQGluY2x1ZGUgbWl4aW4ubXMtdygnbWF4JywxMjAwKXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIH1cbn1cbiovXG5AbWl4aW4gbXMtdygkbWF4bWluLCR2YWwpe1xuICBAbWVkaWEgc2NyZWVuIGFuZCAoI3skbWF4bWlufS13aWR0aDojeyR2YWx9cHgpe1xuICAgIEBjb250ZW50O1xuICB9O1xufVxuXG4vKlxu44OV44Kp44O844Og44Oq44K744OD44OIXG4qL1xuQG1peGluIGZvcm0tcmVzZXR7XG4gIGJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgY29sb3I6aW5oZXJpdDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgdGV4dGFyZWF7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuXG4vKlxuSUNPTiBGT05UXG4qL1xuXG5AbWl4aW4gaWNvbnMtZm9udHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJpY29uc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1peGluIGljb25zLXh7IGNvbnRlbnQ6IFwiXFxFQTA0XCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1mYWNlYm9va3sgY29udGVudDogXCJcXEVBMDVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWluc3RhZ3JhbXsgY29udGVudDogXCJcXEVBMDZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXlvdXR1YmV7IGNvbnRlbnQ6IFwiXFxFQTA3XCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1saW5leyBjb250ZW50OiBcIlxcRUEwOFwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5cbkBtaXhpbiBkcm9wc2hhZG93RnJhbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmcsNHJlbSwyLjRyZW0gMS42cmVtKTtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMjAwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMS42cmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjZyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC44cmVtO1xuICAgIGxlZnQ6IDAuOHJlbTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbn1cblxuQG1peGluIGhpZGUge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufSIsIkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi92YXJzXCIgYXMgdmFycztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9mdW5jdGlvblwiIGFzIGZ1bmM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWl4aW5cIiBhcyBtaXhpbjtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9tZWRpYVwiIGFzIG1lZGlhO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUkVTUE9OU0lWRVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBTUFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3NwfXt9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBQQ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3BjfXt9XG4iLCJAdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vZnVuY3Rpb25cIiBhcyBmdW5jO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21peGluXCIgYXMgbWl4aW47XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWVkaWFcIiBhcyBtZWRpYTtcblxuQGtleWZyYW1lcyBtdi1jYXJvdXNlbC10aXRsZS1udW0taW4ge1xuICAwJXtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIDEyMCUpO1xuICB9XG4gIDEwMCV7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBtdi1jYXJvdXNlbC10aXRsZS1udW0tb3V0IHtcbiAgMCV7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuICAxMDAle1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTIwJSk7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubXZ7XG4gICZfX2Nhcm91c2Vsc3tcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIGhlaWdodDpmdW5jLmdldHZ3KDUwMCwxMjgwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICBoZWlnaHQ6ZnVuYy5nZXR2dygxNzEpO1xuICAgIH1cbiAgfVxuICAmX19jYXJvdXNlbHtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIHdpZHRoOiBmdW5jLmdldHZ3KDEwMDAsMTI4MCk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgd2lkdGg6IGZ1bmMuZ2V0dncoMzQyKTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLnN3aXBlciwuc3dpcGVyLXdyYXBwZXIsLnN3aXBlci1pbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZXtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGltZ3tcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICAgICYtLWxlZnQsJi0tcmlnaHR7XG4gICAgICBhe1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi0tbGVmdHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUxLjMlKTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgJi0tY2VudGVye1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgICAmLS1yaWdodHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTUxLjMlKTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgLy/jgr/jgqTjg4jjg6vjgajjg4rjg5PjgrLjg7zjgrfjg6fjg7Pjgqjjg6rjgqLjg6njg4Pjg5Hjg7xcbiAgJl9fY2Fyb3VzZWwtbmF2LXdyYXBwZXJ7XG4gICAgbWFyZ2luLXRvcDoyLjRyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIEBpbmNsdWRlIG1peGluLm1zLXcoJ21heCcsMTA2MCl7XG4gICAgICAgIG1hcmdpbi1ib3R0b206Ni4ycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvL+OCv+OCpOODiOODq+OCqOODquOColxuICAmX19jYXJvdXNlbC10aXRsZXN7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy9oZWlnaHQ6IDEwMHB4O1xuICB9XG4gIC8v44K/44Kk44OI44OrXG4gICZfX2Nhcm91c2VsLXRpdGxle1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiAzLjJyZW07XG4gICAgfVxuICAgICYuLXN0YW5kYnl7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgLm12X19jYXJvdXNlbC10aXRsZS1udW0sLm12X19jYXJvdXNlbC10aXRsZS1uYW1lLC5tdl9fY2Fyb3VzZWwtdGl0bGUtZGVzY3tcbiAgICAgICAgc3BhbntcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi4taW57XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgLm12X19jYXJvdXNlbC10aXRsZS1udW0sLm12X19jYXJvdXNlbC10aXRsZS1uYW1lLC5tdl9fY2Fyb3VzZWwtdGl0bGUtZGVzY3tcbiAgICAgICAgc3BhbntcbiAgICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAvL3RyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICAgICAgYW5pbWF0aW9uOiBtdi1jYXJvdXNlbC10aXRsZS1udW0taW4gZWFzZS1vdXQgLjJzIGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuLW91dHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAubXZfX2Nhcm91c2VsLXRpdGxlLW51bSwubXZfX2Nhcm91c2VsLXRpdGxlLW5hbWUsLm12X19jYXJvdXNlbC10aXRsZS1kZXNje1xuICAgICAgICBzcGFue1xuICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICAvL3RyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICAgICAgYW5pbWF0aW9uOiBtdi1jYXJvdXNlbC10aXRsZS1udW0tb3V0IGVhc2UtaW4gLjJzIGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtbnVtLCYtbmFtZSwmLWRlc2N7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgc3BhbntcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuICAgICYtbnVte1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWU5MDApOyAgICAgICAgXG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGZvbnQtc2l6ZSw1LjJyZW0sMi40cmVtKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgICBtaW4td2lkdGg6IDYuM3JlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC43cmVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1ib2R5e1xuICAgICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEzLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIG1peGluLm1zLXcoJ21heCcsMTA2MCl7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLW5hbWV7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGZvbnQtc2l6ZSwzcmVtLDIuNHJlbSk7XG4gICAgfVxuICAgICYtZGVzY3tcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcChmb250LXNpemUsMS40cmVtLDEuMnJlbSk7XG4gICAgfVxuICB9XG4gIC8v44OK44OTXG4gICZfX2Nhcm91c2VsLW5hdntcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgei1pbmRleDogMTA7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIEBpbmNsdWRlIG1peGluLm1zLXcoJ21heCcsMTA2MCl7XG4gICAgICAgIGJvdHRvbTotNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0uM3JlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICAmLXByZXYsJi1uZXh0e1xuICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC5pY29ucy1hcnJvdy0ye1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgY29sb3I6dmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyx0cmFuc2Zvcm0gLjJzO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXByZXZ7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgLmljb25zLWFycm93LTJ7XG4gICAgICAgICAgY29sb3I6dmFyKC0tY29sb3ItYmx1ZTEwMDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtLjNlbSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pY29ucy1hcnJvdy0ye1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLW5leHR7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgLmljb25zLWFycm93LTJ7XG4gICAgICAgICAgY29sb3I6dmFyKC0tY29sb3ItYmx1ZTEwMDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCguM2VtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWRvdHN7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6YXV0byAhaW1wb3J0YW50O1xuICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB3aWR0aDogIDEuNnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMDAwKSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogLjhyZW07XG4gICAgICAgICAgaGVpZ2h0OiAuOHJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZXtcbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWU5MDApICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLyomLWRvdHtcbiAgICAgIHdpZHRoOiAgMS42cmVtO1xuICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQGluY2x1ZGUgbWVkaWEuaG92ZXJ7XG4gICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMTAwMCkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi0tY3VycmVudHtcbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWU5MDApICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAuOHJlbTtcbiAgICAgICAgaGVpZ2h0OiAuOHJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cbiAgICB9Ki9cbiAgfVxuICAvL+ODl+ODreOCsOODrOOCueODkOODvFxuICAmX19jYXJvdXNlbC1wcm9ncmVzc3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX19jYXJvdXNlbC1wcm9ncmVzcy1iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8vdHJhbnNpdGlvbjogbGVmdCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBTUFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3NwfXt9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBQQ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3BjfXt9XG4iLCJbY2xhc3NePVwiaWNvbnMtXCJdLCBbY2xhc3MqPVwiIGljb25zLVwiXXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbnNcIjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLmljb25zLWFycm93LTE6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMDFcIiB9XG4uaWNvbnMtYXJyb3ctMjpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwMlwiIH1cbi5pY29ucy1zZWFyY2g6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMDNcIiB9XG4uaWNvbnMtbGFuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNFwiIH1cbi5pY29ucy1jaXJjbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNVwiIH1cbi5pY29ucy1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNlwiIH1cbi5pY29ucy1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwN1wiIH1cbi5pY29ucy1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwOFwiIH1cbi5pY29ucy1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwOVwiIH1cbi5pY29ucy1ibGFuazpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwQVwiIH1cbi5pY29ucy1jaXJjbGUtbWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMEJcIiB9XG4uaWNvbnMtYmxkZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwQ1wiIH1cbi5pY29ucy1wZW46YmVmb3JlIHsgY29udGVudDogXCJcXEVBMERcIiB9XG4uaWNvbnMtZmxvdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwRVwiIH1cbi5pY29ucy1wcml6ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwRlwiIH1cbi5pY29ucy1nbG9iYWw6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTBcIiB9XG4uaWNvbnMtc3RyZW5ndGg6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTFcIiB9XG4uaWNvbnMtdGVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTEyXCIgfVxuLmljb25zLW1haWw6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTNcIiB9XG4uaWNvbnMtd2FrYWJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE0XCIgfVxuLmljb25zLWZhcTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUExNVwiIH1cbi5pY29ucy14OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE2XCIgfVxuLmljb25zLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE3XCIgfVxuLmljb25zLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUExOFwiIH1cbi5pY29ucy15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE5XCIgfVxuLmljb25zLWxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMUFcIiB9XG5cblxuLypcbm1peGluXG4qL1xuXG5AbWl4aW4gaWNvbnMtZm9udHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbnNcIjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gaWNvbnMtYXJyb3ctMSB7IGNvbnRlbnQ6IFwiXFxFQTAxXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1hcnJvdy0yIHsgY29udGVudDogXCJcXEVBMDJcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXNlYXJjaCB7IGNvbnRlbnQ6IFwiXFxFQTAzXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1sYW5nIHsgY29udGVudDogXCJcXEVBMDRcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNpcmNsZS1wbHVzIHsgY29udGVudDogXCJcXEVBMDVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNoZWNrIHsgY29udGVudDogXCJcXEVBMDZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNsb3NlIHsgY29udGVudDogXCJcXEVBMDdcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXNsYXNoIHsgY29udGVudDogXCJcXEVBMDhcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWRvd25sb2FkIHsgY29udGVudDogXCJcXEVBMDlcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWJsYW5rIHsgY29udGVudDogXCJcXEVBMEFcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNpcmNsZS1taW51cyB7IGNvbnRlbnQ6IFwiXFxFQTBCXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1ibGRnIHsgY29udGVudDogXCJcXEVBMENcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXBlbiB7IGNvbnRlbnQ6IFwiXFxFQTBEXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1mbG93IHsgY29udGVudDogXCJcXEVBMEVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXByaXplIHsgY29udGVudDogXCJcXEVBMEZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWdsb2JhbCB7IGNvbnRlbnQ6IFwiXFxFQTEwXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1zdHJlbmd0aCB7IGNvbnRlbnQ6IFwiXFxFQTExXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy10ZWwgeyBjb250ZW50OiBcIlxcRUExMlwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtbWFpbCB7IGNvbnRlbnQ6IFwiXFxFQTEzXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy13YWthYmEgeyBjb250ZW50OiBcIlxcRUExNFwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtZmFxIHsgY29udGVudDogXCJcXEVBMTVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXggeyBjb250ZW50OiBcIlxcRUExNlwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtZmFjZWJvb2sgeyBjb250ZW50OiBcIlxcRUExN1wiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtaW5zdGFncmFtIHsgY29udGVudDogXCJcXEVBMThcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXlvdXR1YmUgeyBjb250ZW50OiBcIlxcRUExOVwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtbGluZSB7IGNvbnRlbnQ6IFwiXFxFQTFBXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cblxuIiwiQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL3ZhcnNcIiBhcyB2YXJzO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL2Z1bmN0aW9uXCIgYXMgZnVuYztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9taXhpblwiIGFzIG1peGluO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21lZGlhXCIgYXMgbWVkaWE7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vaWNvbmZvbnRcIiBhcyBpY29ucztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFJFU1BPTlNJVkVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50b3AtbmV3c3tcbiAgQGluY2x1ZGUgbWVkaWEucmVzcChwYWRkaW5nLDYuNHJlbSAwLDUuNnJlbSAwKTtcbiAgJl9fZnJhbWV7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgyOSw5NiwxNzYsMC4yKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgQGluY2x1ZGUgbWVkaWEucmVzcChwYWRkaW5nLDAgMi40cmVtLDEuNnJlbSAxLjZyZW0gMCk7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOjAgMS42cmVtO1xuICAgIH1cbiAgfVxuICAmX190aXRsZXtcbiAgICAmLXRleHR7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoZm9udC1zaXplLDJyZW0sMS42cmVtKTtcbiAgICB9XG4gIH1cbiAgJl9faXRlbXtcbiAgICAmLWRhdGV7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTUwMCk7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgICYtZGVzY3tcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjpjb2xvciB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICAgICAgY29sb3I6dmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmctcmlnaHQsMi40cmVtLDEuNnJlbSk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgY29sb3I6dmFyKC0tY29sb3ItYmx1ZTEwMDApO1xuICAgICAgICAudG9wLW5ld3NfX2l0ZW0tZGVzYy1saW5re1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgICAgIC50b3AtbmV3c19faXRlbS1kZXNjLWFycm93e1xuICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICBhbmltYXRpb246IGFycm93LW9uIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWxpbmt7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4zcmVtO1xuICAgICAgICB0cmFuc2l0aW9uOnRleHQtZGVjb3JhdGlvbi1jb2xvciB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICBcbiAgICAgICAgLy/vvJHooYzooajnpLrjgacz54K544Oq44O844OA44O844Gr44GZ44KLXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcChwYWRkaW5nLDIuNHJlbSAwLDEuNnJlbSAwKTtcbiAgICAgIH1cbiAgICAgICYtYXJyb3d7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgaWNvbnMuaWNvbnMtYXJyb3ctMjtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gIH0gXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBTUFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3NwfXt9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBQQ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3BjfXt9XG4iLCJAdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vZnVuY3Rpb25cIiBhcyBmdW5jO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21peGluXCIgYXMgbWl4aW47XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWVkaWFcIiBhcyBtZWRpYTtcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFJFU1BPTlNJVkVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5jYXNlc3R1ZHl7XG4gIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZy10b3AsMTUuMnJlbSw5LjZyZW0pO1xuICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmctYm90dG9tLDE1LjJyZW0sOS42cmVtKTtcbiAgJl9fbGlzdHtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLDFmcik7XG4gICAgICBnYXA6IGZ1bmMuZ2V0cGVyKDMyLDEwNjApO1xuICAgICAgcGFkZGluZy10b3A6IDhyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCxtaW5tYXgoMjQwcHgsMWZyKSk7XG4gICAgICBnYXA6IDMuMnJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgIH1cbiAgfVxuICAmX19pdGVte1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgJjpudGgtY2hpbGQoMm4pe1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRyZW0pO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoM24pe1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThyZW0pO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWxpbmt7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAuY2FzZXN0dWR5X19pdGVtLWRlc2N7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWltZy13cmFwcGVye1xuICAgICAgcGFkZGluZy10b3A6IDY2LjY2JTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgJi1pbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBpbWd7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1ib2R5e1xuICAgICAgcGFkZGluZy10b3A6IDIuNHJlbTtcbiAgICB9XG4gICAgJi1kZXNje1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKTtcbiAgICAgIC8v77yT6KGM5Lul5LiK44GnM+eCueODquODvOODgOODvFxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cbiAgICAmLXRhZ3N7XG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZ2FwOiAuOHJlbTtcbiAgICB9XG4gICAgJi10YWd7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBwYWRkaW5nOiAuNHJlbSAuOHJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKTtcbiAgICAgICYtLWNhdGVnb3J5e1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAgIG9wYWNpdHk6IC43O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLS10YWd7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkxMDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19idG4td3JhcHBlcntcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgbWFyZ2luLXRvcDogNi40cmVtO1xuICAgIH1cbiAgfVxuICAmX19idG57XG4gICAgd2lkdGg6IDI0cmVtO1xuICAgIGhlaWdodDogNS42cmVtO1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgLy9tYXJnaW4tdG9wOiAtNS42cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFNQXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AbWVkaWEgI3t2YXJzLiRzY3JlZW5fc3B9e31cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFBDXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AbWVkaWEgI3t2YXJzLiRzY3JlZW5fcGN9e31cbiIsIkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi92YXJzXCIgYXMgdmFycztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9mdW5jdGlvblwiIGFzIGZ1bmM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWl4aW5cIiBhcyBtaXhpbjtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9tZWRpYVwiIGFzIG1lZGlhO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL2ljb25mb250XCIgYXMgaWNvbnM7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uYWJvdXR1c3tcbiAgQGluY2x1ZGUgbWVkaWEucmVzcChwYWRkaW5nLDE1LjJyZW0gMCw4cmVtIDAgOS42cmVtKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmX19iZy13cmFwcGVye1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmX19iZ3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgbWVkaWEucmVzcChoZWlnaHQsMTE1JSwxMDUlKTtcbiAgICBpbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX190aXRsZXtcbiAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgIHNwYW4saDJ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9faW5uZXJ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgJl9fbGlzdHtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNC44cmVtLDRyZW0pO1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LG1pbm1heCgzMnJlbSwxZnIpKTtcbiAgICAgIGdhcDogLjhyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IC44cmVtO1xuICAgIH1cbiAgfVxuICAmX19pdGVteyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmcsMi40cmVtIDIuNHJlbSAyLjRyZW0gMi40cmVtLDEuNnJlbSAxLjZyZW0gMS42cmVtIDIuNHJlbSk7XG4gICAgQGluY2x1ZGUgbWVkaWEuaG92ZXJ7XG4gICAgICAuYWJvdXR1c19faXRlbS1uYW1le1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTEwMDApO1xuICAgICAgfVxuICAgICAgLmFib3V0dXNfX2l0ZW0tYXJyb3d7XG4gICAgICAgIC5pY29ucy1hcnJvdy0ye1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMTAwMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1pY29ue1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3Aod2lkdGgsNy4ycmVtLDUuNnJlbSk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1pbi13aWR0aCw3LjJyZW0sNS42cmVtKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoaGVpZ2h0LDcuMnJlbSw1LjZyZW0pO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTEwMCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgW2NsYXNzXj1cImljb25zLVwiXXtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmljb25zLWJsZGd7XG4gICAgICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgICAgfVxuICAgICAgLmljb25zLXBlbntcbiAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICB9XG4gICAgICAuaWNvbnMtZmxvd3sgIFxuICAgICAgICBmb250LXNpemU6IDMuNnJlbTtcbiAgICAgIH1cbiAgICAgIC5pY29ucy1wcml6ZXtcbiAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgfVxuICAgICAgLmljb25zLWdsb2JhbHsgIFxuICAgICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgIH1cbiAgICAgIC5pY29ucy1zdHJlbmd0aHtcbiAgICAgICAgZm9udC1zaXplOiAzLjlyZW07XG4gICAgICB9XG4gICAgfSBcbiAgICAmLW5hbWV7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKTtcbiAgICB9XG4gICAgJi1hcnJvd3tcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAxcmVtO1xuICAgICAgLmljb25zLWFycm93LTJ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBTUFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3NwfXt9XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBQQ1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhICN7dmFycy4kc2NyZWVuX3BjfXt9XG4iLCJAdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vZnVuY3Rpb25cIiBhcyBmdW5jO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21peGluXCIgYXMgbWl4aW47XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWVkaWFcIiBhcyBtZWRpYTtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9pY29uZm9udFwiIGFzIGljb25zO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUkVTUE9OU0lWRVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm5ld3N7XG4gIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZywxNS4ycmVtIDAsOS42cmVtIDApO1xuICAmX190aXRsZXtcbiAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XG4gICAgQGluY2x1ZGUgbWVkaWEucmVzcChtYXJnaW4tYm90dG9tLDRyZW0sMy4ycmVtKTtcbiAgfVxuICAmX19jb2x1bW5ze1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNzBweCAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMyY2ggMWZyO1xuICAgICAgZ2FwOiBmdW5jLmdldHBlcig4MCwxMDYwKTtcbiAgICB9XG4gIH1cbiAgJl9fY2F0ZWdvcmllc3tcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNC44cmVtLDMuMnJlbSk7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAuOHJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogLjhyZW07XG4gICAgfVxuICB9XG4gICZfX2NhdGVnb3J5e1xuICAgIFxuICB9XG4gICZfX2NhdGVnb3J5LWJ0bntcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nOiAuNHJlbSAxLjZyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKTtcbiAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICY6bm90KC4tY3VycmVudCl7XG4gICAgICAgIG9wYWNpdHk6IC43O1xuICAgICAgfVxuICAgIH1cbiAgICAmLi1jdXJyZW50e1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgfVxuICB9XG4gICZfX2xpc3R7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gICAgQGluY2x1ZGUgbWVkaWEucmVzcChtYXJnaW4tdG9wLDFyZW0sNHJlbSk7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICB9XG4gICAgJi4tY3VycmVudHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLi1zaG93e1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xuICAgICAgXG4gICAgfVxuICAgICYtY2F0ZWdvcnktbmFtZXtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYtaXRlbXtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjRyZW07XG4gICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgICYtaGVhZGVye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEuNnJlbTtcbiAgICAgIH1cbiAgICAgICYtZGF0ZXtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXk1MDApO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIH1cbiAgICAgICYtY2F0ZWdvcnl7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IC4ycmVtIC44cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWhvdmVyLW9wYWNpdHktZHVyYXRpb24pIHZhcigtLWhvdmVyLW9wYWNpdHktZWFzZSk7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAgIG9wYWNpdHk6IC43O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWJvZHl7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjZyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjRyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgICAubmV3c19fbGlzdC1pdGVtLWRlc2N7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTEwMDApO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubmV3c19fbGlzdC1pdGVtLWFycm93e1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgIGFuaW1hdGlvbjogYXJyb3ctb24gMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtZGVzY3tcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWhvdmVyLW9wYWNpdHktZHVyYXRpb24pIHZhcigtLWhvdmVyLW9wYWNpdHktZWFzZSk7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZy1yaWdodCwyLjRyZW0sMS42cmVtKTtcbiAgICAgIH1cbiAgICAgICYtYXJyb3d7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8v44Oc44K/44OzXG4gICZfX2J0bi13cmFwcGVye1xuICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCw1LjZyZW0sNHJlbSk7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gICZfX2J0bntcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNHJlbSwzLjJyZW0pO1xuICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHJlbTtcbiAgICBoZWlnaHQ6IDUuNnJlbTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIH1cbiAgfVxufSAgIFxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gU1BcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSAje3ZhcnMuJHNjcmVlbl9zcH17fVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUENcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSAje3ZhcnMuJHNjcmVlbl9wY317fVxuIiwiQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL3ZhcnNcIiBhcyB2YXJzO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL2Z1bmN0aW9uXCIgYXMgZnVuYztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9taXhpblwiIGFzIG1peGluO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21lZGlhXCIgYXMgbWVkaWE7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vaWNvbmZvbnRcIiBhcyBpY29ucztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFJFU1BPTlNJVkVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8vc3Djg5/jg4njg6vjgrXjgqTjgrrjga7jg5bjg6zjg7zjgq/jg53jgqTjg7Pjg4hcbiRzZWFyY2hfbV9icmVhazo3MDA7XG5cbi5zZWFyY2h7XG4gIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZy10b3AsMTUuNnJlbSw5LjZyZW0pO1xuICAvL0NPTkRJVElPTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fY29uZGl0aW9ue1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgbWFyZ2luLXRvcDo0LjhyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggMTZweCByZ2JhKDI5LDk2LDE3NiwwLjIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgIG1hcmdpbi10b3A6NHJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAmLXRpdGxle1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5ODAwKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoZm9udC1zaXplLDJyZW0sMS44cmVtKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZywyLjRyZW0gMy4ycmVtLDEuOHJlbSAyLjRyZW0pO1xuICAgICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHggMTZweCAwIDA7XG4gICAgICB9XG4gICAgfVxuICAgICYtc2VsZWN0c3tcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgICBwYWRkaW5nOiAzLjJyZW0gMy4ycmVtIDRyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgd2lkdGg6ZnVuYy5nZXR2dygzNDIpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy4ycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAvL0lOVEVSRkFDRSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAmLWludGVyZmFjZXtcbiAgICAgICYtaGVhZGVye1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAyLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtdGl0bGV7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG4gICAgICAmLWJ0bnN7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogLjRyZW07XG4gICAgICB9XG4gICAgICAmLWJ0bntcbiAgICAgICAgY29sb3I6IHZhcigtLWRlc2lnbi1wYWxldHRlLWJsdWU5MDAsICMyNTc3RDgpO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBwYWRkaW5nOiAuNHJlbSAuOHJlbTtcblxuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgY29sb3I6aW5oZXJpdDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICYtLXJlc2V0e1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgJi0tYWxse1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEuaG92ZXJ7XG4gICAgICAgICAgb3BhY2l0eTogLjc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtbGlzdHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogLjhyZW07XG4gICAgICB9XG4gICAgICAmLWl0ZW17XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IC44cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXIgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKTtcbiAgICAgICAgJjpoYXMoLnNlYXJjaF9fY29uZGl0aW9uLWludGVyZmFjZS1pbnB1dDpjaGVja2VkKXtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlMTAwMCk7XG4gICAgICAgICAgLnNlYXJjaF9fY29uZGl0aW9uLWludGVyZmFjZS1sYWJlbHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMTAwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWxhYmVse1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IC40cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgcGFkZGluZzogLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWhvdmVyLW9wYWNpdHktZHVyYXRpb24pIHZhcigtLWhvdmVyLW9wYWNpdHktZWFzZSk7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoZm9udC1zaXplLDEuNHJlbSwxLjJyZW0pO1xuICAgICAgfVxuICAgICAgJi1pbnB1dHsgIFxuICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluO1xuICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpjaGVja2Vke1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWU5MDApO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWU5MDApO1xuICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogLjZyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IC42cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvL09QVElPTlMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgJi1vcHRpb25ze1xuICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcChtYXJnaW4tdG9wLDRyZW0sMy4ycmVtKTtcbiAgICAgICYtbGlzdHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LDFmcik7XG4gICAgICAgICAgZ2FwOiAuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsbWlubWF4KDE1MHB4LDFmcikpO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsMWZyKTtcbiAgICAgICAgICBnYXA6IC44cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIG1peGluLm1zLXcoJ21pbicsJHNlYXJjaF9tX2JyZWFrKXtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsMWZyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtYm94e1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICY6aGFzKC5zZWFyY2hfX2NvbmRpdGlvbi1vcHRpb25zLWJveC1saXN0LXdyYXBwZXIuaXMtYWN0aXZlKXtcbiAgICAgICAgICAuc2VhcmNoX19jb25kaXRpb24tb3B0aW9ucy1ib3gtbmFtZXtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMTAwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aGFzKC5zZWFyY2hfX2NvbmRpdGlvbi1vcHRpb25zLWJveC1saXN0LXdyYXBwZXIuaXMtYWN0aXZlKXtcbiAgICAgICAgICAuc2VhcmNoX19jb25kaXRpb24tb3B0aW9ucy1ib3gtbmFtZXtcbiAgICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgICAmOm50aC1jaGlsZCgybil7XG4gICAgICAgICAgICAuc2VhcmNoX19jb25kaXRpb24tb3B0aW9ucy1ib3gtbGlzdC13cmFwcGVye1xuICAgICAgICAgICAgICBsZWZ0OmNhbGMoZnVuYy5nZXR2dygtMTcxKSAtIC40cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgbWl4aW4ubXMtdygnbWluJywkc2VhcmNoX21fYnJlYWspe1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4tMil7XG4gICAgICAgICAgICAgIC5zZWFyY2hfX2NvbmRpdGlvbi1vcHRpb25zLWJveC1saXN0LXdyYXBwZXJ7XG4gICAgICAgICAgICAgICAgbGVmdDpjYWxjKGZ1bmMuZ2V0dncoLTg1LjUpIC0gLjJyZW0pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bi0xKXtcbiAgICAgICAgICAgICAgLnNlYXJjaF9fY29uZGl0aW9uLW9wdGlvbnMtYm94LWxpc3Qtd3JhcHBlcntcbiAgICAgICAgICAgICAgICBsZWZ0OmNhbGMoZnVuYy5nZXR2dygtMTcxKSAtIC40cmVtKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4pe1xuICAgICAgICAgICAgICAuc2VhcmNoX19jb25kaXRpb24tb3B0aW9ucy1ib3gtbGlzdC13cmFwcGVye1xuICAgICAgICAgICAgICAgIGxlZnQ6Y2FsYyhmdW5jLmdldHZ3KC0yNTYuNSkgLSAuNnJlbSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1uYW1le1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvcmRlcjoxO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgcGFkZGluZzouOHJlbSAxLjZyZW07XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgdHJhbnNpdGlvbjpib3JkZXIgdmFyKC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbikgdmFyKC0taG92ZXItb3BhY2l0eS1lYXNlKSxjb2xvciB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoZm9udC1zaXplLDEuNHJlbSwxLjJyZW0pO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICAgICAgICBAaW5jbHVkZSBtaXhpbi5tcy13KCdtaW4nLDEyMDApe1xuICAgICAgICAgICAgICBicntcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgICAgICAgQGluY2x1ZGUgbWl4aW4ubXMtdygnbWluJyw1MDApe1xuICAgICAgICAgICAgICBicntcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtaXhpbi5tcy13KCdtaW4nLCRzZWFyY2hfbV9icmVhayl7XG4gICAgICAgICAgICAgIGJye1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgQGluY2x1ZGUgaWNvbnMuaWNvbnMtYXJyb3ctMjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvL2Ryb3Bkb3duXG4gICAgICAgICYtbGlzdC13cmFwcGVye1xuICAgICAgICAgIG9yZGVyOjI7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAwZnI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogZ3JpZC10ZW1wbGF0ZS1yb3dzIDAuM3MgZWFzZS1vdXQsdmlzaWJpbGl0eSAuM3M7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6Y2FsYygxMDAlICsgLjhyZW0pO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDpjYWxjKDEwMCUgKyAuOHJlbSk7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIHdpZHRoOiBmdW5jLmdldHZ3KDM0Mik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5pcy1hY3RpdmV7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhhcyhpbnB1dDpjaGVja2VkKSArIC5zZWFyY2hfX2NvbmRpdGlvbi1vcHRpb25zLWJveC1uYW1leyAvL+ODgeOCp+ODg+OCr+OBjOWFpeOBo+OBn+OCieaeoOe3muOCkumdkuOBq+OBmeOCi1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtbGlzdC1pbm5lcntcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWF4LWhlaWdodCwzMHJlbSwzMHN2aCk7XG4gICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICBwYWRkaW5nLXRvcDoxLjZyZW07XG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXJ7XG4gICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWxpc3R7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHBhZGRpbmc6MCAxLjZyZW0gMS42cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsMWZyKTtcbiAgICAgICAgICAgIGdhcDowIC44cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWxpc3QtbmFtZXtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIHBhZGRpbmc6MCAxLjZyZW07XG4gICAgICAgICAgJiArIC5zZWFyY2hfX2NvbmRpdGlvbi1vcHRpb25zLWJveC1saXN0e1xuICAgICAgICAgICAgcGFkZGluZy10b3A6LjRyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtaXRlbXtcbiAgICAgICAgICAmLWxhYmVse1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogLjhyZW07XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgcGFkZGluZzogLjRyZW0gMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1pbnB1dHtcbiAgICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEuNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS42cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLjJyZW0pO1xuXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjJzLGJvcmRlciAuMnM7XG4gICAgICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGljb25zLmljb25zLWNoZWNrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOm9wYWNpdHkgLjJzLHRyYW5zZm9ybSAuM3M7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmNoZWNrZWR7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWU5MDApO1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vT1BUSU9OUyBTRUxFQ1RFRCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAmLW9wdGlvbnMtc2VsZWN0ZWR7XG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICAmLWxpc3R7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAuOHJlbTtcbiAgICAgIH1cbiAgICAgICYtaXRlbXtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5MjAwKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IC44cmVtO1xuICAgICAgICBnYXA6LjRyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5ob3ZlcntcbiAgICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICBAaW5jbHVkZSBpY29ucy5pY29ucy1jbG9zZTtcbiAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICAgIGhlaWdodDogMS42cmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgICAgICYtbmFtZXtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcChmb250LXNpemUsMS40cmVtLDEuMnJlbSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8v5qSc57Si44CA44Oq44K744OD44OI44CA44Oc44K/44OzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYtYnRuc3tcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoZ2FwLDEuNnJlbSwuOHJlbSk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNHJlbSwzLjJyZW0pO1xuICAgIH1cbiAgICAmLWJ0bntcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcCh3aWR0aCwyNHJlbSwxMDAlKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AoaGVpZ2h0LDUuNnJlbSw0LjhyZW0pO1xuICAgICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICAgIG1heC13aWR0aDogMjRyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC8v44Kt44O844Ov44O844OJ44Gn5qSc57SiIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYta2V5d29yZHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZywyLjRyZW0gMy4ycmVtLDIuNHJlbSAyLjRyZW0gMy4ycmVtKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDoyLjRyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgfVxuICAgICAgJi10aXRsZXtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXk5MDApO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEuc3B7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IC44cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWZvcm17XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJi1pbm5lcntcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWlucHV0e1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1LjZyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5NDAwKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpjbGFtcCgxcmVtLGZ1bmMuZ2V0dncoMTMuNSksMS41cmVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtYnRue1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWU5MDApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlOTAwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1ob3Zlci1vcGFjaXR5LWR1cmF0aW9uKSB2YXIoLS1ob3Zlci1vcGFjaXR5LWVhc2UpO1xuICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcCh3aWR0aCw1LjZyZW0sNS42cmVtKTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEucmVzcChoZWlnaHQsNS42cmVtLDUuNnJlbSk7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVye1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMDAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1pY29ue1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGZvbnQtc2l6ZSwyLjNyZW0sMi4zcmVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy9DQVRFR09SSUVTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmX19jYXRlZ29yaWVze1xuICAgIG1hcmdpbi10b3A6NC44cmVtO1xuICAgICYtdGl0bGV7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGZvbnQtc2l6ZSwycmVtLDEuOHJlbSk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFNQXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AbWVkaWEgI3t2YXJzLiRzY3JlZW5fc3B9e31cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFBDXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AbWVkaWEgI3t2YXJzLiRzY3JlZW5fcGN9e31cbiIsIkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi92YXJzXCIgYXMgdmFycztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9mdW5jdGlvblwiIGFzIGZ1bmM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWl4aW5cIiBhcyBtaXhpbjtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9tZWRpYVwiIGFzIG1lZGlhO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL2ljb25mb250XCIgYXMgaWNvbnM7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uc3RyZW5ndGh7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgbWVkaWEucmVzcChiYWNrZ3JvdW5kLWNvbG9yLCNlNmViZWYsI2YzZjdmYSk7XG4gICZfX2JnLXdyYXBwZXJ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5wbHgtdGFyZ2V0e1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGhlaWdodCwxMTUlLDEwNSUpO1xuICAgIEBpbmNsdWRlIG1lZGlhLnBje1xuICAgICAgbWluLXdpZHRoOiAxMTByZW07XG4gICAgfVxuICB9XG4gICZfX2Jne1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgbWVkaWEucGN7XG4gICAgICBpbWd7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLnNwe1xuICAgICAgaW1ne1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19pbm5lcntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmcsMTMuNnJlbSAwLGZ1bmMuZ2V0dncoMjAwKSAwIDhyZW0pO1xuICB9XG4gICZfX3RpdGxle1xuICAgICYtdGV4dHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3Aod2lkdGgsNDEuOHJlbSwyOC4zcmVtKTtcbiAgICAgIGh0bWw6bGFuZyhlbikgJiB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3Aod2lkdGgsNjEuMnJlbSwzMnJlbSk7XG4gICAgICB9XG4gICAgICAmOmxhbmcoemgtaGFucykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKHdpZHRoLDI1LjFyZW0sMTdyZW0pO1xuICAgICAgfVxuICAgICAgaW1ne1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19zdWJ0aXRsZXtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNnJlbSw0cmVtKTtcbiAgICAmLXRleHR7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMi40cHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKGZvbnQtc2l6ZSwyLjhyZW0sMi40cmVtKTtcbiAgICB9XG4gIH1cbiAgJl9fYm94ZXN7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMy4ycmVtIC0gMi40cmVtKTtcbiAgICBAaW5jbHVkZSBtZWRpYS5wY3tcbiAgICAgIHdpZHRoOiBmdW5jLmdldHZ3KDQ0MCwxNDAwKTtcbiAgICAgIG1pbi13aWR0aDogNDByZW07XG4gICAgfVxuICB9XG4gICZfX2JveHtcbiAgICBib3JkZXItYm90dG9tOiAuNXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXk0MDApO1xuICAgIHBhZGRpbmc6Mi40cmVtIDA7XG4gICAgJi1oZWFkZXJ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IDEuNnJlbTtcbiAgICB9XG4gICAgJi1udW17XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZTkwMCk7XG4gICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNDhweDtcbiAgICB9XG4gICAgJi10aXRsZXtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLjEyZW0pO1xuICAgIH1cbiAgICAmLWJvZHl7XG4gICAgICBtYXJnaW4tdG9wOiAuOHJlbTtcbiAgICB9XG4gICAgJi10ZXh0e1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXk5MDApO1xuICAgICAgZm9udC1zaXplOjEuNHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gU1BcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSAje3ZhcnMuJHNjcmVlbl9zcH17fVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUENcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSAje3ZhcnMuJHNjcmVlbl9wY317fVxuIl19 */