@charset "UTF-8";
/**************************************

main.scss

***************************************/
/* ---------------------------------------------------------
foundation
----------------------------------------------------------*/
/**************************************

reset.scss

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

/*html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align:baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
*/
h1, h2, h3, h4, h5, h6, td, th, p, ul, li, dt, dd {
  font-size: 1em;
}

ul li {
  list-style: none;
}

article, header, footer, aside, figure, figcaption, nav, section {
  display: block;
}

body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: bottom;
}

/**************************************

webfont.scss

***************************************/
/* ---------------------------------------------------------
webfont
----------------------------------------------------------*/
/*--  --*/
/**************************************

variables.scss

***************************************/
/* ---------------------------------------------------------
utility用
----------------------------------------------------------*/
/* ---------------------------------------------------------
break point
----------------------------------------------------------*/
/*$wideSize: 1400px;
$pcSize: 1278px;
$notepcSize: 1080px;
$tabletSize: 768px;
$mobileSize: 640px;*/
/* ---------------------------------------------------------
color
----------------------------------------------------------*/
/* ---------------------------------------------------------
font family
----------------------------------------------------------*/
/**************************************

mixins.scss

***************************************/
/* ---------------------------------------------------------
media queries
----------------------------------------------------------*/
/* ---------------------------------------------------------
clearfix
----------------------------------------------------------*/
/* ---------------------------------------------------------
font-size
----------------------------------------------------------*/
/* ---------------------------------------------------------
opacity
----------------------------------------------------------*/
/* ---------------------------------------------------------
border-radius
----------------------------------------------------------*/
/* ---------------------------------------------------------
transform
----------------------------------------------------------*/
/*-- translate--*/
/*-- translateY--*/
/*-- translateX--*/
/* ---------------------------------------------------------
backface-visibility
----------------------------------------------------------*/
/* ---------------------------------------------------------
flexbox
----------------------------------------------------------*/
/**************************************

base.scss

***************************************/
/* ---------------------------------------------------------
初期設定
----------------------------------------------------------*/
html {
  font-size: 62.5%;
  color: #231815;
  background-color: #ffffff;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
}

@media screen and (max-width: 640px) {
  html {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  height: 100%;
}

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

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

/**************************************

function.scss

***************************************/
/*------------------------------------------------
     wCon($width, $parentWidth : $columnWidth);

    幅の計算 (x / y * 100) をしてくれる関数

    property : wCon(%にしたいwidth, 直近の親要素のwidth※デフォルトはコンテンツ幅;


    [例1] コンテンツ幅(1024px)が直近の親要素の285pxの要素
    ●Sass   width : wCon(285);
    ●css    width : 27.83203%;

    [例2] 550pxが直近の親要素の380pxの要素
    ●Sass   width : wCon(380,550);
    ●css    width : 69.09091%;

		maginも同様

------------------------------------------------*/
/* ---------------------------------------------------------
layout
----------------------------------------------------------*/
/**************************************

common.scss

***************************************/
/* ---------------------------------------------------------
大枠のレイアウト
----------------------------------------------------------*/
/*--  --*/
#mainContainer {
  color: #231815;
}

.container {
  width: 960px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 960px) {
  .container {
    width: 87.5%;
  }
}

@media screen and (max-width: 640px) {
  .container {
    width: 87.5%;
  }
}

/**************************************

header.scss

***************************************/
.header {
  width: 100%;
  padding: 20px 0;
  background-color: #fff;
  position: fixed;
  z-index: 100;
}

@media screen and (max-width: 768px) {
  .header {
    padding: 15px 0;
  }
}

.header .header__inner {
  max-width: 952px;
  width: 70.51852%;
  margin: 0 auto;
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  　-webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  align-items: center;
  position: relative;
}

@media screen and (max-width: 768px) {
  .header .header__inner {
    width: 88.28125%;
  }
}

.header .header__inner .header__logo {
  width: 8.40336%;
}

@media screen and (max-width: 768px) {
  .header .header__inner .header__logo {
    width: 75px;
  }
}

.header .header__inner .header__logo img {
  width: 100%;
  height: auto;
}

.header .header__inner .header__nav {
  width: 74.36975%;
}

.header .header__inner .header__nav .header__navTeams {
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  　-webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .header .header__inner .header__nav .header__navTeams {
    display: none;
  }
}

.header .header__inner .header__nav .header__navTeams .header__navTeam a {
  width: 100%;
  display: block;
  color: #1A3456;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
}

.header .header__inner .header__nav .header__navTeams .header__navTeam a:hover {
  opacity: 0.8;
  transition: opacity 0.4s;
}

@media screen and (max-width: 1280px) {
  .header .header__inner .header__nav .header__navTeams .header__navTeam a {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 960px) {
  .header .header__inner .header__nav .header__navTeams .header__navTeam a {
    font-size: 16px;
    font-size: 1rem;
  }
}

.header .header__inner .header__hamburger {
  display: none;
}

@media screen and (max-width: 768px) {
  .header .header__inner .header__hamburger {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    position: relative;
    width: 30px;
    height: 25px;
  }
  .header .header__inner .header__hamburger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #1A3456;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
  }
  .header .header__inner .header__hamburger span:nth-of-type(1) {
    top: 0;
  }
  .header .header__inner .header__hamburger span:nth-of-type(2) {
    top: 10px;
  }
  .header .header__inner .header__hamburger span:nth-of-type(3) {
    bottom: 0px;
  }
}

.header .header__inner--sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .header .header__inner--sp {
    width: 100%;
    background-color: #1A3456;
    position: absolute;
    top: 0;
    z-index: 100;
  }
}

.header .header__inner--sp .header__inner--spInner {
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  　-webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  width: 88.28125%;
  margin: 20px auto;
}

.header .header__inner--sp .header__inner--spInner .header__logo--sp {
  width: 75px;
}

.header .header__inner--sp .header__inner--spInner .header__logo--sp img {
  width: 100%;
  height: auto;
}

.header .header__inner--sp .header__inner--spInner .header__hamburger--sp {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  position: relative;
  width: 25px;
  height: 25px;
  margin-top: 8px;
}

.header .header__inner--sp .header__inner--spInner .header__hamburger--sp span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
}

.header .header__inner--sp .header__inner--spInner .header__hamburger--sp span:nth-of-type(1) {
  top: -9px;
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(20px) rotate(-45deg);
}

.header .header__inner--sp .header__inner--spInner .header__hamburger--sp span:nth-of-type(2) {
  display: none;
}

.header .header__inner--sp .header__inner--spInner .header__hamburger--sp span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-20px) rotate(45deg);
  bottom: -10px;
}

.header .header__inner--sp .header__nav--sp .header__navTeams--sp {
  text-align: center;
}

.header .header__inner--sp .header__nav--sp .header__navTeams--sp .header__navTeam--sp {
  border-top: 1px solid #fff;
}

.header .header__inner--sp .header__nav--sp .header__navTeams--sp .header__navTeam--sp a {
  width: 100%;
  display: block;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  padding: 15px 0;
}

.header__scroll {
  background-color: rgba(255, 255, 255, 0.7);
}

/* ---------------------------------------------------------

----------------------------------------------------------*/
/*--  --*/
/**************************************

footer.scss

***************************************/
.footer {
  width: 100%;
  background-color: #1A3456;
  padding: 40px 0;
  color: #fff;
}

.footer .footer__inner {
  max-width: 743px;
  width: 55.03704%;
  margin: 0 auto 70px;
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  　-webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .footer .footer__inner {
    width: 96.74479%;
    margin-bottom: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.footer .footer__inner .footer__tit {
  font-size: 26px;
  font-size: 1.625rem;
  width: 46.43338%;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .footer .footer__inner .footer__tit {
    width: 100%;
  }
}

@media screen and (max-width: 960px) {
  .footer .footer__inner .footer__tit {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media screen and (max-width: 640px) {
  .footer .footer__inner .footer__tit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.footer .footer__inner .footer__tit .footer__titBr {
  display: none;
}

@media screen and (max-width: 1400px) {
  .footer .footer__inner .footer__tit .footer__titBr {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .footer .footer__inner .footer__tit .footer__titBr {
    display: none;
  }
}

.footer .footer__inner .footer__teams {
  width: 32.30148%;
}

@media screen and (max-width: 768px) {
  .footer .footer__inner .footer__teams {
    width: 100%;
  }
}

.footer .footer__inner .footer__teams .footer__team {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2;
}

@media screen and (max-width: 640px) {
  .footer .footer__inner .footer__teams .footer__team {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 1400px) {
  .footer .footer__inner .footer__teams .footer__team span {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .footer .footer__inner .footer__teams .footer__team span {
    display: inline-block;
  }
}

.footer .footer__inner .footer__teams .footer__team span:last-child {
  margin-left: 15px;
}

@media screen and (max-width: 1400px) {
  .footer .footer__inner .footer__teams .footer__team span:last-child {
    margin-left: 0px;
  }
}

@media screen and (max-width: 768px) {
  .footer .footer__inner .footer__teams .footer__team span:last-child {
    margin-left: 15px;
  }
}

.footer .footer__inner .footer__teams .footer__team a {
  color: #fff;
}

.footer .footer__copy {
  text-align: center;
  font-size: 12px;
  font-size: 0.75rem;
}

@media screen and (max-width: 768px) {
  .footer .footer__copy {
    text-align: left;
  }
}

/* ---------------------------------------------------------

----------------------------------------------------------*/
/*--  --*/
/**************************************

main.scss

***************************************/
/* ---------------------------------------------------------

----------------------------------------------------------*/
/*-- 状態変化など --*/
/* ---------------------------------------------------------
object
----------------------------------------------------------*/
/*-- component --*/
/**************************************

component.scss

***************************************/
/* ---------------------------------------------------------
テキスト装飾
----------------------------------------------------------*/
/*-- 各ページの見出し --*/
.c-band {
  width: 100%;
  text-align: center;
  color: #fff;
  background-color: #1A3456;
  font-size: 24px;
  font-size: 1.5rem;
  padding: 40px 0;
}

@media screen and (max-width: 768px) {
  .c-band {
    font-size: 16px;
    font-size: 1rem;
    padding: 20px 0;
  }
}

.c-smallTit {
  color: #333;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: bold;
  padding-bottom: 25px;
  margin-bottom: 20px;
  border-bottom: 1px solid #1A3456;
}

@media screen and (max-width: 768px) {
  .c-smallTit {
    font-size: 16px;
    font-size: 1rem;
    padding-bottom: 12px;
    margin-bottom: 10px;
  }
}

/*-- リード文--*/
/*-- project --*/
/*-- utility --*/
/* vertical-align - utility
--------------------------------------------------------- */
.u-va-t {
  vertical-align: top !important;
}

.u-va-m {
  vertical-align: middle !important;
}

.u-va-b {
  vertical-align: bottom !important;
}

/* border - utility
--------------------------------------------------------- */
/* border-radius */
.u-br-4 {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
}

.u-br-8 {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
}

.u-br-12 {
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}

.u-br-16 {
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -ms-border-radius: 16px;
  border-radius: 16px;
}

/* border-none */
.u-br-0 {
  border: none;
}

.u-br-t-0 {
  border-top: none;
}

.u-br-r-0 {
  border-right: none;
}

.u-br-b-0 {
  border-bottom: none;
}

.u-br-l-0 {
  border-left: none;
}

/* clearfix - utility
--------------------------------------------------------- */
.u-cf::before, .u-cf::after {
  content: '';
  display: table;
}

.u-cf::after {
  clear: both;
}

/* display - utility
--------------------------------------------------------- */
.u-d-tb {
  display: table !important;
}

.u-d-tbc {
  display: table-cell !important;
}

.u-d-b {
  display: block !important;
}

.u-d-ib {
  display: inline-block !important;
}

.u-d-n {
  display: none !important;
}

/* ---------------------------------------------------------
breakpoint毎の表示切り替え
----------------------------------------------------------*/
.u-d-b-pc {
  display: block !important;
}

@media screen and (max-width: 960px) {
  .u-d-b-pc {
    display: none !important;
  }
}

.u-d-b-npc {
  display: none !important;
}

@media screen and (max-width: 960px) {
  .u-d-b-npc {
    display: block !important;
  }
}

.u-d-b-tb {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .u-d-b-tb {
    display: block !important;
  }
}

.u-d-b-sp {
  display: none !important;
}

@media screen and (max-width: 640px) {
  .u-d-b-sp {
    display: block !important;
  }
}

.u-d-b-sps {
  display: none !important;
}

@media screen and (max-width: 400px) {
  .u-d-b-sps {
    display: block !important;
  }
}

.u-d-n-pc {
  display: none !important;
}

@media screen and (max-width: 960px) {
  .u-d-n-pc {
    display: block !important;
  }
}

.u-d-n-npc {
  display: block !important;
}

@media screen and (max-width: 960px) {
  .u-d-n-npc {
    display: none !important;
  }
}

.u-d-n-tb {
  display: block !important;
}

@media screen and (max-width: 768px) {
  .u-d-n-tb {
    display: none !important;
  }
}

.u-d-n-sp {
  display: block !important;
}

@media screen and (max-width: 640px) {
  .u-d-n-sp {
    display: none !important;
  }
}

.u-d-n-sps {
  display: block !important;
}

@media screen and (max-width: 400px) {
  .u-d-n-sps {
    display: none !important;
  }
}

/* float - utility
--------------------------------------------------------- */
.u-fl-l {
  float: left !important;
}

.u-fl-r {
  float: right !important;
}

/* font-size - utility
--------------------------------------------------------- */
.u-fz-10 {
  font-size: 10px !important;
}

.u-fz-12 {
  font-size: 12px !important;
}

.u-fz-14 {
  font-size: 14px !important;
}

.u-fz-16 {
  font-size: 16px !important;
}

.u-fz-18 {
  font-size: 18px !important;
}

.u-fz-20 {
  font-size: 20px !important;
}

.u-fz-22 {
  font-size: 22px !important;
}

.u-fz-24 {
  font-size: 24px !important;
}

.u-fz-26 {
  font-size: 26px !important;
}

/* line-clamp - utility
--------------------------------------------------------- */
.u-lc {
  display: box;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* margin - utility
--------------------------------------------------------- */
/* auto margin */
.u-m-c {
  margin-right: auto !important;
  margin-left: auto !important;
}

/* Top margin */
.u-mt-0 {
  margin-top: 0px !important;
}

.u-mt-8 {
  margin-top: 8px !important;
}

.u-mt-16 {
  margin-top: 16px !important;
}

.u-mt-24 {
  margin-top: 24px !important;
}

.u-mt-32 {
  margin-top: 32px !important;
}

.u-mt-40 {
  margin-top: 40px !important;
}

.u-mt-48 {
  margin-top: 48px !important;
}

.u-mt-56 {
  margin-top: 56px !important;
}

.u-mt-64 {
  margin-top: 64px !important;
}

/* Right margin */
.u-mr-0 {
  margin-right: 0px !important;
}

.u-mr-8 {
  margin-right: 8px !important;
}

.u-mr-16 {
  margin-right: 16px !important;
}

.u-mr-24 {
  margin-right: 24px !important;
}

.u-mr-32 {
  margin-right: 32px !important;
}

.u-mr-40 {
  margin-right: 40px !important;
}

.u-mr-48 {
  margin-right: 48px !important;
}

.u-mr-56 {
  margin-right: 56px !important;
}

.u-mr-64 {
  margin-right: 64px !important;
}

/* Bottom margin */
.u-mb-0 {
  margin-bottom: 0px !important;
}

.u-mb-8 {
  margin-bottom: 8px !important;
}

.u-mb-16 {
  margin-bottom: 16px !important;
}

.u-mb-24 {
  margin-bottom: 24px !important;
}

.u-mb-32 {
  margin-bottom: 32px !important;
}

.u-mb-40 {
  margin-bottom: 40px !important;
}

.u-mb-48 {
  margin-bottom: 48px !important;
}

.u-mb-56 {
  margin-bottom: 56px !important;
}

.u-mb-64 {
  margin-bottom: 64px !important;
}

/* Left margin */
.u-ml-0 {
  margin-left: 0px !important;
}

.u-ml-8 {
  margin-left: 8px !important;
}

.u-ml-16 {
  margin-left: 16px !important;
}

.u-ml-24 {
  margin-left: 24px !important;
}

.u-ml-32 {
  margin-left: 32px !important;
}

.u-ml-40 {
  margin-left: 40px !important;
}

.u-ml-48 {
  margin-left: 48px !important;
}

.u-ml-56 {
  margin-left: 56px !important;
}

.u-ml-64 {
  margin-left: 64px !important;
}

/* misc - utility
--------------------------------------------------------- */
.u-ws-nowrap {
  white-space: nowrap;
}

.u-mx-img {
  max-width: 100%;
}

.u-tx-inside {
  text-indent: -1em;
  margin-left: 1em;
}

/* padding - utility
--------------------------------------------------------- */
/* Top padding */
.u-pt-0 {
  margin-top: 0px !important;
}

.u-pt-8 {
  margin-top: 8px !important;
}

.u-pt-16 {
  margin-top: 16px !important;
}

.u-pt-24 {
  margin-top: 24px !important;
}

.u-pt-32 {
  margin-top: 32px !important;
}

.u-pt-40 {
  margin-top: 40px !important;
}

.u-pt-48 {
  margin-top: 48px !important;
}

.u-pt-56 {
  margin-top: 56px !important;
}

.u-pt-64 {
  margin-top: 64px !important;
}

/* Right padding */
.u-pr-0 {
  padding-right: 0px !important;
}

.u-pr-8 {
  padding-right: 8px !important;
}

.u-pr-16 {
  padding-right: 16px !important;
}

.u-pr-24 {
  padding-right: 24px !important;
}

.u-pr-32 {
  padding-right: 32px !important;
}

.u-pr-40 {
  padding-right: 40px !important;
}

.u-pr-48 {
  padding-right: 48px !important;
}

.u-pr-56 {
  padding-right: 56px !important;
}

.u-pr-64 {
  padding-right: 64px !important;
}

/* Bottom padding */
.u-pb-0 {
  padding-bottom: 0px !important;
}

.u-pb-8 {
  padding-bottom: 8px !important;
}

.u-pb-16 {
  padding-bottom: 16px !important;
}

.u-pb-24 {
  padding-bottom: 24px !important;
}

.u-pb-32 {
  padding-bottom: 32px !important;
}

.u-pb-40 {
  padding-bottom: 40px !important;
}

.u-pb-48 {
  padding-bottom: 48px !important;
}

.u-pb-56 {
  padding-bottom: 56px !important;
}

.u-pb-64 {
  padding-bottom: 64px !important;
}

/* Left padding */
.u-pl-0 {
  padding-left: 0px !important;
}

.u-pl-8 {
  padding-left: 8px !important;
}

.u-pl-16 {
  padding-left: 16px !important;
}

.u-pl-24 {
  padding-left: 24px !important;
}

.u-pl-32 {
  padding-left: 32px !important;
}

.u-pl-40 {
  padding-left: 40px !important;
}

.u-pl-48 {
  padding-left: 48px !important;
}

.u-pl-56 {
  padding-left: 56px !important;
}

.u-pl-64 {
  padding-left: 64px !important;
}

/* position - utility
--------------------------------------------------------- */
.u-pos-a {
  position: absolute !important;
}

.u-pos-r {
  position: relative !important;
}

/* text-align - utility
--------------------------------------------------------- */
.u-ta-l {
  text-align: left !important;
}

.u-ta-c {
  text-align: center !important;
}

.u-ta-r {
  text-align: right !important;
}

/* text-decoration - utility
--------------------------------------------------------- */
.u-fw-n {
  font-weight: normal !important;
}

.u-fw-b {
  font-weight: bold !important;
}

.u-td-u {
  text-decoration: underline !important;
}

/* text-truncate - utility
--------------------------------------------------------- */
.u-tt {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  /* for IE 8/9 */
}

/* width - utility
--------------------------------------------------------- */
.u-w-auto {
  width: auto !important;
}

.u-w-full {
  width: 100% !important;
}

.u-w-half {
  width: 50% !important;
}

/* ---------------------------------------------------------
pages
----------------------------------------------------------*/
/**************************************

top.scss

***************************************/
.top {
  padding-top: 68px;
}

@media screen and (max-width: 768px) {
  .top {
    padding-top: 55px;
  }
}

.top img {
  width: 100%;
}

.top .top__mainVisual {
  position: relative;
  width: 100%;
  height: 523px;
  background-image: url(../img/top/top__bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 65px;
}

@media screen and (max-width: 768px) {
  .top .top__mainVisual {
    height: 400px;
    margin-bottom: 45px;
  }
}

@media screen and (max-width: 640px) {
  .top .top__mainVisual {
    height: 200px;
    margin-bottom: 20px;
  }
}

.top .top__mainVisual .top__mainVisualTxt {
  font-size: 39px;
  font-size: 2.4375rem;
  font-weight: bold;
  line-height: 1.7;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 30%;
  right: 0;
  left: 0;
  -webkit-transform: translateY(30%);
  -moz-transform: translateY(30%);
  -ms-transform: translateY(30%);
  transform: translateY(30%);
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .top .top__mainVisual .top__mainVisualTxt {
    font-size: 32px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 640px) {
  .top .top__mainVisual .top__mainVisualTxt {
    font-size: 25px;
    font-size: 1.5625rem;
  }
}

@media screen and (max-width: 400px) {
  .top .top__mainVisual .top__mainVisualTxt {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.top .top__nav {
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .top .top__nav {
    margin-bottom: 65px;
  }
}

@media screen and (max-width: 640px) {
  .top .top__nav {
    margin-bottom: 15px;
  }
}

.top .top__nav .top__navTeam {
  width: 70.51852%;
  max-width: 952px;
  margin: 0 auto;
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  　-webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  /*--- IE10用 ---*/
  -webkit-flex-wrap: wrap;
  /*--- safari（PC）用 ---*/
  flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam {
    width: 93.75%;
  }
}

.top .top__nav .top__navTeam .top__navTeams {
  width: 31.93277%;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam .top__navTeams {
    width: 48.61111%;
  }
  .top .top__nav .top__navTeam .top__navTeams:nth-of-type(4) {
    margin-bottom: 4.28571%;
  }
}

.top .top__nav .top__navTeam .top__navTeams a {
  display: block;
  transition-duration: 0.3s;
}

.top .top__nav .top__navTeam .top__navTeams a:hover {
  -webkit-transform: scale(1.1);
  /*画像の拡大率*/
  -moz-transform: scale(1.1);
  /*画像の拡大率*/
  -o-transform: scale(1.1);
  /*画像の拡大率*/
  -ms-transform: scale(1.1);
  /*画像の拡大率*/
  transform: scale(1.1);
  /*画像の拡大率*/
  -webkit-transition-duration: 0.3s;
  /*変化に掛かる時間*/
  -moz-transition-duration: 0.3s;
  /*変化に掛かる時間*/
  -o-transition-duration: 0.3s;
  /*変化に掛かる時間*/
  transition-duration: 0.3s;
  /*変化に掛かる時間*/
}

.top .top__nav .top__navTeam .top__navTeams:nth-of-type(1) {
  margin-bottom: 2.10084%;
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam .top__navTeams:nth-of-type(1) {
    margin-bottom: 4.28571%;
  }
}

.top .top__nav .top__navTeam .top__navTeams:nth-of-type(2) {
  margin-bottom: 2.10084%;
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam .top__navTeams:nth-of-type(2) {
    margin-bottom: 4.28571%;
  }
}

.top .top__nav .top__navTeam .top__navTeams:nth-of-type(3) {
  margin-bottom: 2.10084%;
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam .top__navTeams:nth-of-type(3) {
    margin-bottom: 4.28571%;
  }
}

.top .top__nav .top__navTeam .top__navTeams .top__navTxt {
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 70.72368%;
  margin: 17.43421% auto;
  text-align: center;
  padding: 6.57895% 0;
  color: #1A3456;
  font-weight: bold;
  background-color: #fff;
  opacity: .8;
  font-size: 20px;
  font-size: 1.25rem;
}

@media screen and (max-width: 1280px) {
  .top .top__nav .top__navTeam .top__navTeams .top__navTxt {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 960px) {
  .top .top__nav .top__navTeam .top__navTeams .top__navTxt {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 768px) {
  .top .top__nav .top__navTeam .top__navTeams .top__navTxt {
    font-size: 18px;
    font-size: 1.125rem;
    width: 85.71429%;
  }
}

@media screen and (max-width: 400px) {
  .top .top__nav .top__navTeam .top__navTeams .top__navTxt {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.top .top__partner {
  width: 100%;
  padding: 55px 0;
  background-color: #F5F5F5;
  margin-bottom: 80px;
}

@media screen and (max-width: 640px) {
  .top .top__partner {
    margin-bottom: 30px;
    padding: 35px 0;
  }
}

.top .top__partner .top__partnerTit {
  font-size: 35px;
  font-size: 2.1875rem;
  text-align: center;
  color: #1A3456;
  font-weight: bold;
  margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
  .top .top__partner .top__partnerTit {
    margin-bottom: 40px;
  }
}

.top .top__partner .top__partnerInner {
  width: 76.59259%;
  max-width: 1034px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .top .top__partner .top__partnerInner {
    width: 91.14583%;
  }
}

.top .top__partner .top__partnerInner .top__partnerTeams {
  font-size: 20px;
  font-size: 1.25rem;
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  -ms-flex-wrap: wrap;
  /*--- IE10用 ---*/
  -webkit-flex-wrap: wrap;
  /*--- safari（PC）用 ---*/
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin-bottom: 40px;
}

@media screen and (max-width: 1280px) {
  .top .top__partner .top__partnerInner .top__partnerTeams {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media screen and (max-width: 960px) {
  .top .top__partner .top__partnerInner .top__partnerTeams {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 640px) {
  .top .top__partner .top__partnerInner .top__partnerTeams {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 5px;
    font-size: 18px;
    font-size: 1.125rem;
    text-align: center;
    line-height: 2;
  }
}

.top .top__partner .top__partnerInner .top__partnerTeams:last-child {
  margin-bottom: 0;
}

.top .top__contactRoot {
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .top .top__contactRoot {
    margin-bottom: 40px;
  }
}

.top .top__contactRoot .top__contactRootTxt {
  width: 57.62963%;
  max-width: 778px;
  margin: 0 auto 35px;
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7;
}

@media screen and (max-width: 768px) {
  .top .top__contactRoot .top__contactRootTxt {
    width: 91.14583%;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 640px) {
  .top .top__contactRoot .top__contactRootTxt {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.top .top__contactRoot .top__contactBtn {
  max-width: 322px;
  width: 23.85185%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .top .top__contactRoot .top__contactBtn {
    width: 91.14583%;
  }
}

.top .top__contactRoot .top__contactBtn a {
  width: 100%;
  display: block;
  text-align: center;
  padding: 9.31677% 0;
  border: 1px solid #35A1C9;
  box-sizing: border-box;
  background-color: #35A1C9;
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
}

.top .top__contactRoot .top__contactBtn a:hover {
  background-color: #fff;
  color: #35A1C9;
  transition: .5s;
}

@media screen and (max-width: 768px) {
  .top .top__contactRoot .top__contactBtn a {
    padding: 5.71429% 0;
  }
}

/*--  --*/
/**************************************

company.scss

***************************************/
.company {
  padding-top: 68px;
}

@media screen and (max-width: 768px) {
  .company {
    padding-top: 55px;
  }
}

.company .c-band {
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .company .c-band {
    margin-bottom: 0px;
  }
}

.company .company__inner {
  max-width: 905px;
  width: 67.03704%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .company .company__inner {
    width: 95.05208%;
  }
}

.company .company__visual {
  display: flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
  .company .company__visual {
    -ms-flex-direction: column-reverse;
    /*IE10*/
    -webkit-box-direction: reverse;
    /* Android4.3以下、Safari3.1〜6.0 */
    -webkit-flex-direction: column-reverse;
    /* Safari6.1以降 */
    flex-direction: column-reverse;
    margin-bottom: 25px;
  }
}

.company .company__visual .company__visualTxt {
  font-size: 16px;
  font-size: 1rem;
  color: #1A3456;
  text-align: center;
  width: 57.67956%;
  margin: 0 auto;
  line-height: 1.6;
}

@media screen and (max-width: 768px) {
  .company .company__visual .company__visualTxt {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    line-height: 1.7;
    width: 100%;
  }
}

.company .company__visual .company__visualTxt .company__txtTop {
  font-weight: bold;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .company .company__visual .company__visualTxt .company__txtTop {
    margin-bottom: 35px;
  }
}

.company .company__visual .company__visualTxt .company__txtBottom {
  font-weight: bold;
  margin-bottom: 45px;
}

.company .company__visual .company__visualImg {
  max-width: 395px;
  width: 43.64641%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .company .company__visual .company__visualImg {
    max-width: 100%;
    width: 100%;
    margin: 0 0 25px 0;
  }
}

.company .company__visual .company__visualImg img {
  width: 100%;
  height: auto;
}

.company .company__detail {
  margin-bottom: 75px;
}

@media screen and (max-width: 768px) {
  .company .company__detail {
    margin-bottom: 60px;
  }
}

.company .company__detail .company__detailList {
  margin-bottom: 90px;
}

.company .company__detail .company__detailList :last-child {
  margin-bottom: 0px;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList {
    margin-bottom: 80px;
  }
}

.company .company__detail .company__detailList .c-smallTit {
  position: relative;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .c-smallTit {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6;
  }
}

.company .company__detail .company__detailList .c-smallTit::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 21px;
  background-color: #1A3456;
  margin-right: 15px;
  vertical-align: bottom;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .c-smallTit::before {
    vertical-align: sub;
  }
}

.company .company__detail .company__detailList .company__detailListTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.7;
  padding-left: 1.65746%;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailListTxt {
    font-size: 14px;
    font-size: 0.875rem;
    padding-left: 0;
  }
}

.company .company__detail .company__detailList .company__detailCaste {
  width: 75.58011%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailCaste {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailListTxt--top {
    margin-bottom: 35px;
  }
}

.company .company__detail .company__detailList .company__detailListTxt--bottom {
  margin-bottom: 30px;
}

.company .company__detail .company__detailList .company__detailName {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: right;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailName {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.company .company__detail .company__detailList .company__detailTable {
  width: 65.74586%;
  margin: 0 auto;
  display: table;
  padding: 2.20994% 0;
  border-bottom: 1px solid #c2c2c2;
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailTable {
    width: 100%;
  }
  .company .company__detail .company__detailList .company__detailTable::before {
    border-bottom: none;
  }
}

.company .company__detail .company__detailList .company__detailTable .company__detailTitle {
  width: 16.80672%;
  display: table-cell;
  color: #1A3456;
  font-weight: bold;
  line-height: 1.9;
  font-size: 14px;
  font-size: 0.875rem;
}

@media screen and (max-width: 1280px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailTitle {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 960px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailTitle {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailTitle {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 480px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailTitle {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 400px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailTitle {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

.company .company__detail .company__detailList .company__detailTable .company__detailName {
  width: 68.23529%;
  padding-left: 8.40336%;
  display: table-cell;
  text-align: left;
  line-height: 1.9;
  font-size: 14px;
  font-size: 0.875rem;
}

@media screen and (max-width: 1280px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailName {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 960px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailName {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

@media screen and (max-width: 768px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailName {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 480px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailName {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 400px) {
  .company .company__detail .company__detailList .company__detailTable .company__detailName {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

/*--  --*/
/**************************************

business.scss

***************************************/
.business {
  padding-top: 68px;
}

@media screen and (max-width: 768px) {
  .business {
    padding-top: 55px;
  }
}

.business img {
  width: 100%;
}

.business .business__mainVisual {
  width: 100%;
  height: 370px;
  background-image: url(../img/business/business__pic1.jpg);
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .business .business__mainVisual {
    height: 310px;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 640px) {
  .business .business__mainVisual {
    height: 155px;
    margin-bottom: 20px;
  }
}

.business .business__mainVisual .business__mainVisualTxt {
  color: #1A3456;
  font-weight: bold;
  line-height: 1.6;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  position: absolute;
  top: 15%;
  right: 0;
  left: 0;
  -webkit-transform: translateY(15%);
  -moz-transform: translateY(15%);
  -ms-transform: translateY(15%);
  transform: translateY(15%);
  max-width: 824px;
  width: 61.03704%;
  padding: 30px 60px;
  box-sizing: border-box;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  box-sizing: border-box;
  border: 4px solid #1A3456;
}

@media screen and (max-width: 960px) {
  .business .business__mainVisual .business__mainVisualTxt {
    top: 10%;
    -webkit-transform: translateY(10%);
    -moz-transform: translateY(10%);
    -ms-transform: translateY(10%);
    transform: translateY(10%);
  }
}

.business .business__copy--sp {
  max-width: 725px;
  width: 94.40104%;
  margin: 0 auto 20px;
}

.business .business__copy--sp .business__copy--spTxt {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #1A3456;
  font-weight: bold;
  box-sizing: border-box;
  border: 4px solid #1A3456;
  padding: 2.06897%;
}

.business .business__copy {
  text-align: center;
  max-width: 735px;
  width: 54.44444%;
  margin: 0 auto 60px;
}

@media screen and (max-width: 768px) {
  .business .business__copy {
    margin: 0 auto 75px;
    width: 94.40104%;
    text-align: left;
  }
}

.business .business__copy .business__copyTxt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
}

.business .business__detail {
  max-width: 907px;
  width: 67.18519%;
  margin: 0 auto 100px;
}

@media screen and (max-width: 768px) {
  .business .business__detail {
    width: 100%;
  }
}

.business .business__detail .c-band {
  padding: 13px 0 10px;
}

.business .business__detail .business__detailTxt--sp {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  width: 94.40104%;
  margin: 0 auto;
}

.business .business__detail .business__detailRoad {
  position: relative;
  width: 94.04631%;
  margin-left: auto;
  margin-bottom: 41.34509%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRoad {
    width: 100%;
    margin-bottom: 60px;
    margin-left: 0;
  }
}

.business .business__detail .business__detailRoad .business__detailRoadName {
  width: 61.54748%;
  position: absolute;
  right: 0;
  bottom: -17%;
  margin: 0 auto;
  padding: 3.517% 3.517% 4.68933% 3.517%;
  background-color: #1A3456;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRoad .business__detailRoadName {
    position: static;
  }
}

.business .business__detail .business__detailRoad .business__detailRoadName .business__detailRoadTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailRoad .business__detailRoadName .business__detailRoadTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailRoad .business__detailRoadName .business__detailRoadTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailRoad .business__detailRoadName .business__detailRoadTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailRoad .business__detailRoadImg {
  width: 58.61665%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRoad .business__detailRoadImg {
    width: 100%;
    margin-bottom: 10px;
  }
}

.business .business__detail .business__detailWeeding {
  position: relative;
  width: 84.23374%;
  margin-bottom: 5.73319%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailWeeding {
    width: 100%;
    margin-bottom: 60px;
  }
}

.business .business__detail .business__detailWeeding .business__detailWeedingName {
  width: 68.71728%;
  padding: 3.9267% 3.9267% 5.2356% 3.9267%;
  background-color: #1A3456;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.business .business__detail .business__detailWeeding .business__detailWeedingName .business__detailWeedingTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailWeeding .business__detailWeedingName .business__detailWeedingTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailWeeding .business__detailWeedingName .business__detailWeedingTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailWeeding .business__detailWeedingName .business__detailWeedingTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailWeeding .business__detailWeedingImg {
  width: 65.44503%;
  position: absolute;
  right: 0%;
  bottom: 38%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailWeeding .business__detailWeedingImg {
    width: 100%;
    margin-bottom: 10px;
    position: static;
  }
}

.business .business__detail .business__detailRivers {
  position: relative;
  width: 100%;
  margin-bottom: 34.17861%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRivers {
    width: 100%;
    margin-bottom: 60px;
  }
}

.business .business__detail .business__detailRivers .business__detailRiversName {
  max-width: 525px;
  width: 57.88313%;
  position: absolute;
  right: 0;
  bottom: 14%;
  margin: 0 auto;
  padding: 3.30761% 3.30761% 4.41014% 3.30761%;
  background-color: #1A3456;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRivers .business__detailRiversName {
    position: static;
  }
}

.business .business__detail .business__detailRivers .business__detailRiversName .business__detailRiversTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailRivers .business__detailRiversName .business__detailRiversTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailRivers .business__detailRiversName .business__detailRiversTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailRivers .business__detailRiversName .business__detailRiversTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailRivers .business__detailRiversImg {
  width: 55.12679%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailRivers .business__detailRiversImg {
    width: 100%;
    margin-bottom: 10px;
  }
}

.business .business__detail .business__detailBridgedam {
  position: relative;
  width: 82.69019%;
  margin-left: 7.71775%;
  margin-bottom: 7.71775%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailBridgedam {
    width: 100%;
    margin-left: 0;
    margin-bottom: 60px;
  }
}

.business .business__detail .business__detailBridgedam .business__detailBridgedamName {
  width: 70%;
  padding: 4% 4% 5.33333% 4%;
  background-color: #1A3456;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.business .business__detail .business__detailBridgedam .business__detailBridgedamName .business__detailBridgedamTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailBridgedam .business__detailBridgedamName .business__detailBridgedamTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailBridgedam .business__detailBridgedamName .business__detailBridgedamTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailBridgedam .business__detailBridgedamName .business__detailBridgedamTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailBridgedam .business__detailBridgedamImg {
  width: 66.66667%;
  position: absolute;
  right: 0%;
  bottom: 50%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailBridgedam .business__detailBridgedamImg {
    width: 100%;
    margin-bottom: 10px;
    position: static;
  }
}

.business .business__detail .business__detailLand {
  position: relative;
  width: 92.3925%;
  margin-left: 7.71775%;
  margin-bottom: 42.44763%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailLand {
    width: 100%;
    margin-left: 0;
    margin-bottom: 60px;
  }
}

.business .business__detail .business__detailLand .business__detailLandName {
  width: 62.87425%;
  position: absolute;
  right: 0%;
  bottom: -11%;
  margin: 0 auto;
  padding: 3.59281% 3.59281% 4.79042% 3.59281%;
  background-color: #1A3456;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailLand .business__detailLandName {
    position: static;
  }
}

.business .business__detail .business__detailLand .business__detailLandName .business__detailLandTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailLand .business__detailLandName .business__detailLandTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailLand .business__detailLandName .business__detailLandTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailLand .business__detailLandName .business__detailLandTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailLand .business__detailLandImg {
  width: 59.88024%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailLand .business__detailLandImg {
    width: 100%;
    margin-bottom: 10px;
  }
}

.business .business__detail .business__detailWatersupply {
  position: relative;
  width: 84.23374%;
  margin-bottom: 5.51268%;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailWatersupply {
    width: 100%;
    margin-bottom: 0;
  }
}

.business .business__detail .business__detailWatersupply .business__detailWatersupplyName {
  width: 68.71728%;
  padding: 3.9267% 3.9267% 5.2356% 3.9267%;
  background-color: #1A3456;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.business .business__detail .business__detailWatersupply .business__detailWatersupplyName .business__detailWatersupplyTit {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailWatersupply .business__detailWatersupplyName .business__detailWatersupplyTit {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.business .business__detail .business__detailWatersupply .business__detailWatersupplyName .business__detailWatersupplyTxt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #fff;
}

@media screen and (max-width: 960px) {
  .business .business__detail .business__detailWatersupply .business__detailWatersupplyName .business__detailWatersupplyTxt {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.5;
  }
}

.business .business__detail .business__detailWatersupply .business__detailWatersupplyImg {
  width: 65.44503%;
  position: absolute;
  right: 0%;
  bottom: 74%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .business .business__detail .business__detailWatersupply .business__detailWatersupplyImg {
    width: 100%;
    margin-bottom: 10px;
    position: static;
  }
}

/*--  --*/
/**************************************

contact.scss

***************************************/
.contact {
  padding-top: 68px;
}

@media screen and (max-width: 768px) {
  .contact {
    padding-top: 55px;
  }
}

.contact .c-band {
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .contact .c-band {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 640px) {
  .contact .c-band {
    margin-bottom: 20px;
  }
}

.contact .contactForm__caution {
  color: #DE3E3E;
}

.contact .contactForm {
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .contact .contactForm {
    margin-bottom: 80px;
  }
}

@media screen and (max-width: 640px) {
  .contact .contactForm {
    margin-bottom: 60px;
  }
}

.contact .contactForm .contactForm__copy {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 65px;
}

@media screen and (max-width: 768px) {
  .contact .contactForm .contactForm__copy {
    width: 94.40104%;
    margin: 0 auto 50px;
    text-align: left;
  }
}

.contact .contactForm .contactForm__table {
  max-width: 570px;
  width: 42.22222%;
  margin: 0 auto;
}

@media screen and (max-width: 1280px) {
  .contact .contactForm .contactForm__table {
    width: 78.125%;
  }
}

@media screen and (max-width: 768px) {
  .contact .contactForm .contactForm__table {
    max-width: 725px;
    width: 94.40104%;
  }
}

.contact .contactForm .contactForm__table .contactForm__impact {
  font-size: 14px;
  font-size: 0.875rem;
  color: #888888;
  margin-bottom: 30px;
}

.contact .contactForm .contactForm__table .contactForm__tableInner {
  width: 100%;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .contact .contactForm .contactForm__table .contactForm__tableInner {
    margin-bottom: 20px;
  }
}

.contact .contactForm .contactForm__table .contactForm__tableInner tr:last-child th, .contact .contactForm .contactForm__table .contactForm__tableInner tr:last-child td {
  padding-bottom: 0px;
}

@media screen and (max-width: 640px) {
  .contact .contactForm .contactForm__table .contactForm__tableInner tr:last-child th {
    padding-bottom: 17px;
  }
}

.contact .contactForm .contactForm__table .contactForm__tableInner th, .contact .contactForm .contactForm__table .contactForm__tableInner td {
  font-size: 14px;
  font-size: 0.875rem;
  padding-bottom: 17px;
}

@media screen and (max-width: 640px) {
  .contact .contactForm .contactForm__table .contactForm__tableInner th, .contact .contactForm .contactForm__table .contactForm__tableInner td {
    width: 100%;
    display: block;
  }
}

.contact .contactForm .contactForm__table .contactForm__tableInner th {
  text-align: left;
  vertical-align: top;
  font-weight: bold;
}

.contact .contactForm .contactForm__table .contactForm__tableInner td .contactForm__inputText {
  width: 100%;
}

.contact .contactForm .contactForm__table .contactForm__tableInner td .contactForm__inputText--h {
  height: 200px;
}

.contact .contactForm .contactForm__submit {
  text-align: center;
}

.contact .contactForm .contactForm__submit .contactForm__submitBtn {
  width: 164px;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background-color: #35A1C9;
  border: 1px solid #35A1C9;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  cursor: pointer;
}

.contact .contactForm .contactForm__submit .contactForm__submitBtn:hover {
  background-color: #fff;
  color: #35A1C9;
  transition: .5s;
}

.contact .contactForm .contactForm__return {
  text-align: center;
  margin-bottom: 10px;
}

.contact .contactForm .contactForm__return .contactForm__return--product {
  width: 164px;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background-color: #DE3E3E;
  border: 1px solid #DE3E3E;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  cursor: pointer;
}

.contact .contactForm .contactForm__return .contactForm__return--product:hover {
  background-color: #fff;
  color: #DE3E3E;
  transition: .5s;
}

.contact .contactForm .contactFinish__btnsWrap {
  width: 260px;
  margin: 50px auto 0;
  text-align: center;
}

.contact .contactForm .contactFinish__btnsWrap .contactFinishBtn:first-child {
  margin-bottom: 20px;
}

.contact .contactForm .contactFinish__btnsWrap .contactFinishBtn a {
  width: 260px;
  padding: 15px 0;
  border: 1px solid #35A1C9;
  display: block;
  color: #fff;
  background-color: #35A1C9;
  box-sizing: border-box;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  font-weight: bold;
}

.contact .contactForm .contactFinish__btnsWrap .contactFinishBtn a:hover {
  background-color: #fff;
  color: #35A1C9;
  transition: .5s;
}

/*--  --*/
/**************************************

adopt.scss

***************************************/
.adopt {
  padding-top: 68px;
  background-image: url(../img/adopt/adopt__pic1.jpg);
  background-image: #fff;
}

@media screen and (max-width: 768px) {
  .adopt {
    padding-top: 55px;
  }
}

@media screen and (max-width: 768px) {
  .adopt {
    background-image: none;
  }
}

.adopt .adopt__outer {
  width: 100%;
  padding: 60px 0 95px;
}

@media screen and (max-width: 768px) {
  .adopt .adopt__outer {
    padding: 0;
    margin-bottom: 60px;
  }
}

.adopt .adopt__copy {
  text-align: center;
  font-size: 20px;
  font-size: 1.25rem;
  color: #1A3456;
  margin-bottom: 65px;
}

@media screen and (max-width: 768px) {
  .adopt .adopt__copy {
    position: relative;
    background-image: url(../img/common/common__pic1.jpg);
    height: 310px;
    font-size: 18px;
    font-size: 1.125rem;
    color: #fff;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 640px) {
  .adopt .adopt__copy {
    font-size: 16px;
    font-size: 1rem;
    background-position: center;
    height: 155px;
  }
}

.adopt .adopt__copy .adopt__txt {
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .adopt .adopt__copy .adopt__txt {
    position: absolute;
    top: 30%;
    right: 0;
    left: 0;
    -webkit-transform: translateY(30%);
    -moz-transform: translateY(30%);
    -ms-transform: translateY(30%);
    transform: translateY(30%);
    margin: 0 auto;
    line-height: 1.6;
  }
}

.adopt .adopt__detail {
  max-width: 905px;
  width: 67.03704%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .adopt .adopt__detail {
    width: 100%;
  }
}

.adopt .adopt__detail .adopt__detailTable {
  width: 100%;
  display: table;
  box-sizing: border-box;
  font-size: 14px;
  font-size: 0.875rem;
  border-top: 1px solid #A1A1A1;
  border-left: 1px solid #A1A1A1;
  border-right: 1px solid #A1A1A1;
}

.adopt .adopt__detail .adopt__detailTable:last-child {
  border-bottom: 1px solid #A1A1A1;
}

@media screen and (max-width: 768px) {
  .adopt .adopt__detail .adopt__detailTable:last-child {
    border: none;
  }
}

@media screen and (max-width: 1400px) {
  .adopt .adopt__detail .adopt__detailTable {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 768px) {
  .adopt .adopt__detail .adopt__detailTable {
    display: block;
    border: none;
  }
}

.adopt .adopt__detail .adopt__detailTable .adopt__detailTitle {
  width: 12.37569%;
  display: table-cell;
  padding: 2.20994%;
  color: #1A3456;
  font-weight: bold;
  background-color: #F5F5F5;
  text-align: center;
}

@media screen and (max-width: 1280px) {
  .adopt .adopt__detail .adopt__detailTable .adopt__detailTitle {
    width: 17.67956%;
  }
}

@media screen and (max-width: 960px) {
  .adopt .adopt__detail .adopt__detailTable .adopt__detailTitle {
    width: 16.57459%;
    line-height: 2.2;
  }
}

@media screen and (max-width: 768px) {
  .adopt .adopt__detail .adopt__detailTable .adopt__detailTitle {
    width: 97.7900552%;
    display: block;
    text-align: left;
    padding: 2.20994% 0 2.20994% 2.20994%;
  }
}

.adopt .adopt__detail .adopt__detailTable .adopt__detailTxt {
  width: 88.1768%;
  display: table-cell;
  padding: 1.10497% 0 1.10497% 3.31492%;
  background-color: #fff;
}

@media screen and (max-width: 960px) {
  .adopt .adopt__detail .adopt__detailTable .adopt__detailTxt {
    line-height: 2.2;
  }
}

@media screen and (max-width: 768px) {
  .adopt .adopt__detail .adopt__detailTable .adopt__detailTxt {
    width: 95.58011005%;
    display: block;
    padding: 1.10497% 2.20994% 3.31492% 2.20994%;
  }
}

/*--  --*/
/**************************************

privacy.scss

***************************************/
.privacy {
  padding-top: 68px;
}

@media screen and (max-width: 768px) {
  .privacy {
    padding-top: 55px;
  }
}

.privacy .c-band {
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .privacy .c-band {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 640px) {
  .privacy .c-band {
    margin-bottom: 20px;
  }
}

.privacy .privacy__inner {
  max-width: 904px;
  width: 66.96296%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner {
    width: 97.65625%;
  }
}

.privacy .privacy__inner .privacy__txt {
  width: 69.69027%;
  margin: 0 auto;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.7;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner .privacy__txt {
    font-size: 14px;
    font-size: 0.875rem;
    width: 100%;
  }
}

@media screen and (max-width: 640px) {
  .privacy .privacy__inner .privacy__txt {
    text-align: left;
  }
}

.privacy .privacy__inner .privacy__txt .privacy__txt1 {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner .privacy__txt .privacy__txt1 {
    margin-bottom: 35px;
  }
}

.privacy .privacy__inner .privacy__txt .privacy__txt2 {
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner .privacy__txt .privacy__txt2 {
    margin-bottom: 75px;
  }
}

.privacy .privacy__inner .privacy__rule {
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner .privacy__rule {
    margin-bottom: 70px;
  }
}

.privacy .privacy__inner .privacy__rule .privacy__list {
  margin-bottom: 75px;
}

.privacy .privacy__inner .privacy__rule .privacy__list:last-child {
  margin-bottom: 0px;
}

.privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.7;
}

@media screen and (max-width: 1280px) {
  .privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner {
  margin-bottom: 35px;
  padding-left: 3.31858%;
}

@media screen and (max-width: 768px) {
  .privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner {
    padding-left: 0;
  }
}

.privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner:last-child {
  margin-bottom: 0px;
}

.privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner .privacy__detailNum {
  vertical-align: top;
}

.privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner .privacy__detailTxt {
  display: inline-block;
}

@media screen and (max-width: 1280px) {
  .privacy .privacy__inner .privacy__rule .privacy__list .privacy__detail .privacy__detailInner .privacy__detailTxt {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
  }
}

/*--  --*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsImZvdW5kYXRpb24vX3Jlc2V0LnNjc3MiLCJmb3VuZGF0aW9uL193ZWJmb250LnNjc3MiLCJmb3VuZGF0aW9uL192YXJpYWJsZXMuc2NzcyIsImZvdW5kYXRpb24vX21peGlucy5zY3NzIiwiZm91bmRhdGlvbi9fYmFzZS5zY3NzIiwiZm91bmRhdGlvbi9fZnVuY3Rpb24uc2NzcyIsImxheW91dC9fY29tbW9uLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fbWFpbi5zY3NzIiwib2JqZWN0L2NvbXBvbmVudC9fY29tcG9uZW50LnNjc3MiLCJvYmplY3QvdXRpbGl0eS9fdmVydGljYWwtYWxpZ24uc2NzcyIsIm9iamVjdC91dGlsaXR5L19ib3JkZXIuc2NzcyIsIm9iamVjdC91dGlsaXR5L19jbGVhcmZpeC5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX2Rpc3BsYXkuc2NzcyIsIm9iamVjdC91dGlsaXR5L19mbG9hdC5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX2ZvbnQtc2l6ZS5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX2xpbmUtY2xhbXAuc2NzcyIsIm9iamVjdC91dGlsaXR5L19tYXJnaW4uc2NzcyIsIm9iamVjdC91dGlsaXR5L19taXNjLnNjc3MiLCJvYmplY3QvdXRpbGl0eS9fcGFkZGluZy5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX3Bvc2l0aW9uLnNjc3MiLCJvYmplY3QvdXRpbGl0eS9fdGV4dC1hbGlnbi5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX3RleHQtZGVjb3JhdGlvbi5zY3NzIiwib2JqZWN0L3V0aWxpdHkvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIm9iamVjdC91dGlsaXR5L193aWR0aC5zY3NzIiwicGFnZXMvX3RvcC5zY3NzIiwicGFnZXMvX2NvbXBhbnkuc2NzcyIsInBhZ2VzL19idXNpbmVzcy5zY3NzIiwicGFnZXMvX2NvbnRhY3Quc2NzcyIsInBhZ2VzL19hZG9wdC5zY3NzIiwicGFnZXMvX3ByaXZhY3kuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxubWFpbi5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuZm91bmRhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiZm91bmRhdGlvbi9yZXNldFwiO1xuQGltcG9ydCBcImZvdW5kYXRpb24vd2ViZm9udFwiO1xuQGltcG9ydCBcImZvdW5kYXRpb24vdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiZm91bmRhdGlvbi9taXhpbnNcIjtcbkBpbXBvcnQgXCJmb3VuZGF0aW9uL2Jhc2VcIjtcbkBpbXBvcnQgXCJmb3VuZGF0aW9uL2Z1bmN0aW9uXCI7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmxheW91dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibGF5b3V0L2NvbW1vblwiO1xuQGltcG9ydCBcImxheW91dC9oZWFkZXJcIjtcbkBpbXBvcnQgXCJsYXlvdXQvZm9vdGVyXCI7XG5AaW1wb3J0IFwibGF5b3V0L21haW5cIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5vYmplY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLSBjb21wb25lbnQgLS0qL1xuQGltcG9ydCBcIm9iamVjdC9jb21wb25lbnQvY29tcG9uZW50XCI7XG4vKi0tIHByb2plY3QgLS0qL1xuXG4vKi0tIHV0aWxpdHkgLS0qL1xuQGltcG9ydCBcIm9iamVjdC91dGlsaXR5L3ZlcnRpY2FsLWFsaWduXCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvYm9yZGVyXCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS9kaXNwbGF5XCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvZmxvYXRcIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS9mb250LXNpemVcIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS9saW5lLWNsYW1wXCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvbWFyZ2luXCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvbWlzY1wiO1xuQGltcG9ydCBcIm9iamVjdC91dGlsaXR5L3BhZGRpbmdcIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS9wb3NpdGlvblwiO1xuQGltcG9ydCBcIm9iamVjdC91dGlsaXR5L3RleHQtYWxpZ25cIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS90ZXh0LWRlY29yYXRpb25cIjtcbkBpbXBvcnQgXCJvYmplY3QvdXRpbGl0eS90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwib2JqZWN0L3V0aWxpdHkvd2lkdGhcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5wYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwicGFnZXMvdG9wXCI7XG5AaW1wb3J0IFwicGFnZXMvY29tcGFueVwiO1xuQGltcG9ydCBcInBhZ2VzL2J1c2luZXNzXCI7XG5AaW1wb3J0IFwicGFnZXMvY29udGFjdFwiO1xuQGltcG9ydCBcInBhZ2VzL2Fkb3B0XCI7XG5AaW1wb3J0IFwicGFnZXMvcHJpdmFjeVwiOyIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5yZXNldC5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXN0eWxlOm5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4vL+KGk+S4gOW6puS9v+OBo+OBpuOBv+OBpuOCguiJr+OBleOBneOBhlxuLypodG1sLCBib2R5LCBoMSwgaDIsIGgzLCBoNCwgdWwsIG9sLCBkbCwgbGksIGR0LCBkZCwgcCwgZGl2LCBzcGFuLCBpbWcsIGEsIHRhYmxlLCB0ciwgdGgsIHRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246YmFzZWxpbmU7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuKi9cblxuaDEsaDIsaDMsaDQsaDUsaDYsdGQsdGgscCx1bCxsaSxkdCxkZCB7XG4gICAgZm9udC1zaXplOiAxZW07XG59XG5cbnVsIGxpe1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5hcnRpY2xlLCBoZWFkZXIsIGZvb3RlciwgYXNpZGUsIGZpZ3VyZSwgZmlnY2FwdGlvbiwgbmF2LCBzZWN0aW9uIHsgXG4gIGRpc3BsYXk6YmxvY2s7XG59XG5cbmJvZHkge1xuICBsaW5lLWhlaWdodDogMTtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuaW1ne1xuXHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxud2ViZm9udC5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxud2ViZm9udFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tICAtLSovXG5cblxuXG5cblxuLy9AZm9udC1mYWNlIHtcbi8vXHRmb250LWZhbWlseTogJyc7XG4vLyAgICBzcmM6ICB1cmwoJy4uL2ZvbnQvLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbi8vICAgIHVybCgnLi4vZm9udC8uZW90JykgZm9ybWF0KCdlb3QnKSxcbi8vICAgIHVybCgnLi4vZm9udC8udHRmJykgZm9ybWF0KCd0dGYnKTtcbi8vICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAgICBmb250LXN0eWxlOiBub3JtYWw7XG4vL31cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG52YXJpYWJsZXMuc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbnV0aWxpdHnnlKhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJGJhc2Utc2l6ZTogODtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5icmVhayBwb2ludFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4kd2lkZVNpemU6IDE0MDBweDtcbiRwY1NpemU6IDEyODBweDtcbiRub3RlcGNTaXplOiA5NjBweDtcbiR0YWJsZXRTaXplOiA3NjhweDtcbiRtb2JpbGVTaXplOiA2NDBweDtcbiRtb2JpbGVTaXplX206IDQ4MHB4O1xuJG1vYmlsZVNpemVfczogNDAwcHg7XG4vKiR3aWRlU2l6ZTogMTQwMHB4O1xuJHBjU2l6ZTogMTI3OHB4O1xuJG5vdGVwY1NpemU6IDEwODBweDtcbiR0YWJsZXRTaXplOiA3NjhweDtcbiRtb2JpbGVTaXplOiA2NDBweDsqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmNvbG9yXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8vIOWIneacn+ioreWumlxuJGJnQ29sb3JNYWluOiAjZmZmZmZmO1xuJGJnQ29sb3JTdWI6ICNFNUU1RTU7XG4kZm9udENvbG9yTWFpbjogIzIzMTgxNTtcbiRmb250Q29sb3JTdWI6ICNmZmZmZmY7XG4kZm9udENvbG9yQnRuU3ViOiAjNzI3MTcxO1xuLy8g5Li744Gq44Kr44Op44O86Kit5a6aXG4kd2hpdGU6ICNmZmY7XG4kZGVlcEJsdWU6ICMxQTM0NTY7XG4kYXF1YTogIzM1QTFDOTtcbiRibGFjazogIzMzMztcbiRncmV5OiAjRjVGNUY1O1xuLy8gJGZvbnRDb2xvckhlYWRpbmc6ICMwMDAwMDA7XG4vLyAkZm9udENvbG9ySGVhZGluZzI6ICM0RDRENEQ7XG4vLyAkZm9udENvbG9ySGVhZGluZzM6ICNDOTE0NUE7XG4vLyAkaGVhZGVyQmFzZUNvbG9yOiByZ2JhKDE2OCwxNjgsMTY4LDAuOCk7XG4vLyAkaGVhZGVyU3ViQ29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC44KTtcbi8vICRmb290ZXJCYXNlQ29sb3I6ICNFN0U3RTc7XG4vLyAkYWNjZW50Q29sb3IwMTogI0FEMzAwRTtcbi8vICRhY2NlbnRDb2xvcjAyOiAjQjA4RTM5O1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuZm9udCBmYW1pbHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJGZvbnRGYW1pbHlCYXNlOiAn44OS44Op44Ku44OO6KeS44K0IFBybyBXMycsICdIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm8nLCAn44Oh44Kk44Oq44KqJywgTWVpcnlvLCBPc2FrYSwgJ++8re+8syDvvLDjgrTjgrfjg4Pjgq8nLCAnTVMgUCBHb3RoaWMnLCBzYW5zLXNlcmlmO1xuLy8gJGZvbnRGYW1pbHlCYXNlQm9sZDogJ+ODkuODqeOCruODjuinkuOCtCBQcm8gVzYnLCAnSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvJywgJ+ODoeOCpOODquOCqicsIE1laXJ5bywgT3Nha2EsICfvvK3vvLMg77yw44K044K344OD44KvJywgJ01TIFAgR290aGljJywgc2Fucy1zZXJpZjtcbiRmb250RmFtaWx5SGVhZGluZzogXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvTiBXM1wiLCBcIkhpcmFNaW5Qcm9OLVczXCIsIFwiSEfmmI7mnJ1FXCIsIFwi77yt77yzIO+8sOaYjuacnVwiLCBcIk1TIFBNaW5jaG9cIiwgXCJNUyDmmI7mnJ1cIiwgc2VyaWY7XG4kZm9udEZhbWlseUdvdGg6ICfjg5Ljg6njgq7jg47op5LjgrQgUHJvIFczJywgJ0hpcmFnaW5vIEtha3UgR290aGljIFBybycsICfjg6HjgqTjg6rjgqonLCBNZWlyeW8sIE9zYWthLCAn77yt77yzIO+8sOOCtOOCt+ODg+OCrycsICdNUyBQIEdvdGhpYycsIHNhbnMtc2VyaWY7XG4kZm9udEZhbWlseU1pbjogXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvTiBXM1wiLCBcIkhpcmFNaW5Qcm9OLVczXCIsIFwiSEfmmI7mnJ1FXCIsIFwi77yt77yzIO+8sOaYjuacnVwiLCBcIk1TIFBNaW5jaG9cIiwgXCJNUyDmmI7mnJ1cIiwgc2VyaWY7XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxubWl4aW5zLnNjc3NcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5tZWRpYSBxdWVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBtZWRpYSgkYnJlYWtQb2ludCl7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha1BvaW50KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmNsZWFyZml4XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBjbGVhcmZpeCgpe1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlcntcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cbiAgICAmOjphZnRlcntcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmZvbnQtc2l6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWl4aW4gZm9udHNpemUoJHNpemU6IDE2LCAkYmFzZTogMTYpIHtcbiAgZm9udC1zaXplOiAkc2l6ZSArIHB4O1xuICBmb250LXNpemU6ICgkc2l6ZSAvICRiYXNlKSAqIDFyZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxub3BhY2l0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWl4aW4gb3BhKCl7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5ib3JkZXItcmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAtbW96LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG5cdC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXHRib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbnRyYW5zZm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tIHRyYW5zbGF0ZS0tKi9cbkBtaXhpbiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14LCR0cmFuc2xhdGUteSkge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwkdHJhbnNsYXRlLXkpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwkdHJhbnNsYXRlLXkpO1xuXHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14LCR0cmFuc2xhdGUteSk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwkdHJhbnNsYXRlLXkpO1xufVxuXG4vKi0tIHRyYW5zbGF0ZVktLSovXG5AbWl4aW4gdHJhbnNsYXRlWSgkdHJhbnNsYXRlWSkge1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkdHJhbnNsYXRlWSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2xhdGVZKTtcblx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkdHJhbnNsYXRlWSk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkdHJhbnNsYXRlWSk7XG59XG5cbi8qLS0gdHJhbnNsYXRlWC0tKi9cbkBtaXhpbiB0cmFuc2xhdGVYKCR0cmFuc2xhdGVYKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR0cmFuc2xhdGVYKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHRyYW5zbGF0ZVgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR0cmFuc2xhdGVYKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR0cmFuc2xhdGVYKTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5iYWNrZmFjZS12aXNpYmlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCRidikge1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICgkYnYpO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiAoJGJ2KTtcbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmZsZXhib3hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWl4aW4gZmxleCgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgZGlzcGxheTogLW8tZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7LyotLS0gQW5kcm9pZOODluODqeOCpuOCtueUqCAtLS0qL1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDsvKi0tLSBJRTEwIC0tLSovXG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDsvKi0tLSBzYWZhcmnvvIhQQ++8ieeUqCAtLS0qL1xufVxuXG5AbWl4aW4ganVzdGlmeSgpIHtcbuOAgC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7ICAvKi0tLSBBbmRyb2lk44OW44Op44Km44K255SoIC0tLSovXG4tbXMtZmxleC1wYWNrOiBqdXN0aWZ5OyAgLyotLS0gSUUxMCAtLS0qL1xuLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47ICAvKi0tLSBzYWZhcmnvvIhQQ++8ieeUqCAtLS0qL1xuanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5cbkBtaXhpbiBmbGV4LXN0YXJ0KCkge1xuLXdlYmtpdC1ib3gtcGFjazogZmxleC1zdGFydDsgIC8qLS0tIEFuZHJvaWTjg5bjg6njgqbjgrbnlKggLS0tKi9cbiAgLW1zLWZsZXgtcGFjazogZmxleC1zdGFydDsgIC8qLS0tIElFMTAgLS0tKi9cbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7ICAvKi0tLSBzYWZhcmnvvIhQQ++8ieeUqCAtLS0qL1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbkBtaXhpbiBjb250ZW50KCkge1xuLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWl4aW4gd3JhcCgpIHtcbi1tcy1mbGV4LXdyYXA6d3JhcDsvKi0tLSBJRTEw55SoIC0tLSovXG4td2Via2l0LWZsZXgtd3JhcDp3cmFwOy8qLS0tIHNhZmFyae+8iFBD77yJ55SoIC0tLSovXG5mbGV4LXdyYXA6d3JhcDtcbn1cblxuQG1peGluIGNvbHVtbigpIHtcbi13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4td2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbkBtaXhpbiBjb2x1bW4tcmV2ZXJzZSgpIHtcbi1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IC8qSUUxMCovXG4td2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7IC8qIEFuZHJvaWQ0LjPku6XkuIvjgIFTYWZhcmkzLjHjgJw2LjAgKi9cbi13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyAvKiBTYWZhcmk2LjHku6XpmY0gKi9cbmZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCkge1xuZmxleC1kaXJlY3Rpb246IHJvdztcbi1tcy1mbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZTsgLypJRTEwKi9cbi13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7IC8qb2xkIHdlYmtpdCBicm93c2VyKi9cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5iYXNlLnNjc3NcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG7liJ3mnJ/oqK3lrppcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaHRtbCB7XG5cdGZvbnQtc2l6ZTogNjIuNSU7XG5cdGNvbG9yOiAkZm9udENvbG9yTWFpbjtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3JNYWluO1xuXHRAaW5jbHVkZSBmb250c2l6ZSgxNik7XG5cdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcblx0XHRAaW5jbHVkZSBmb250c2l6ZSgxNCk7XG5cdH1cbn1cbmJvZHkge1xuXHRmb250LWZhbWlseTogJGZvbnRGYW1pbHlHb3RoO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5he1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGNvbG9yOiAkZm9udENvbG9yTWFpbjtcbn1cbmltZ3tcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuZnVuY3Rpb24uc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vLyAqRnVuY3Rpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgIHdDb24oJHdpZHRoLCAkcGFyZW50V2lkdGggOiAkY29sdW1uV2lkdGgpO1xuXG4gICAg5bmF44Gu6KiI566XICh4IC8geSAqIDEwMCkg44KS44GX44Gm44GP44KM44KL6Zai5pWwXG5cbiAgICBwcm9wZXJ0eSA6IHdDb24oJeOBq+OBl+OBn+OBhHdpZHRoLCDnm7Tov5Hjga7opqropoHntKDjga53aWR0aOKAu+ODh+ODleOCqeODq+ODiOOBr+OCs+ODs+ODhuODs+ODhOW5hTtcblxuXG4gICAgW+S+izFdIOOCs+ODs+ODhuODs+ODhOW5hSgxMDI0cHgp44GM55u06L+R44Gu6Kaq6KaB57Sg44GuMjg1cHjjga7opoHntKBcbiAgICDil49TYXNzICAgd2lkdGggOiB3Q29uKDI4NSk7XG4gICAg4pePY3NzICAgIHdpZHRoIDogMjcuODMyMDMlO1xuXG4gICAgW+S+izJdIDU1MHB444GM55u06L+R44Gu6Kaq6KaB57Sg44GuMzgwcHjjga7opoHntKBcbiAgICDil49TYXNzICAgd2lkdGggOiB3Q29uKDM4MCw1NTApO1xuICAgIOKXj2NzcyAgICB3aWR0aCA6IDY5LjA5MDkxJTtcblxuXHRcdG1hZ2lu44KC5ZCM5qeYXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vLyB3aWR0aOOBruaoquW5heioiOeul1xuQGZ1bmN0aW9uIHdDb24oJHdpZHRoLCRwYXJlbnRXaWR0aDokY29sdW1uV2lkdGgpIHtcbiAgICBAcmV0dXJuICR3aWR0aCAvICRwYXJlbnRXaWR0aCAqIDEwMCU7XG59XG5cbi8vIG1hZ2lu44Gu5qiq5bmF6KiI566XXG4vLyBAZnVuY3Rpb24gbUNvbigkd2lkdGgsJHBhcmVudFdpZHRoOiRjb2x1bW5XaWR0aCkge1xuLy8gICAgIEByZXR1cm4gJHdpZHRoIC8gJHBhcmVudFdpZHRoICogMTAwJTtcbi8vIH1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5jb21tb24uc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbuWkp+aeoOOBruODrOOCpOOCouOCpuODiFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tICAtLSovXG4jbWFpbkNvbnRhaW5lcntcblx0Y29sb3I6ICRmb250Q29sb3JNYWluO1xufVxuXG4uY29udGFpbmVye1xuXHR3aWR0aDogOTYwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcblx0XHR3aWR0aDogODcuNSU7XG5cdH1cblx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuXHRcdHdpZHRoOiA4Ny41JTtcblx0fVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmhlYWRlci5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oZWFkZXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwO1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgIH1cbiAgICAuaGVhZGVyX19pbm5lciB7XG4gICAgICAgbWF4LXdpZHRoOiA5NTJweDtcbiAgICAgICB3aWR0aDogd0Nvbig5NTIsMTM1MCk7XG4gICAgICAgbWFyZ2luOiAgMCBhdXRvO1xuICAgICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICAgICBAaW5jbHVkZSBqdXN0aWZ5KCk7XG4gICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICB3aWR0aDogd0Nvbig2NzgsNzY4KTtcbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IHdDb24oODAsOTUyKTtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICB9ICAgIFxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgfVxuICAgICAgIC5oZWFkZXJfX25hdiB7XG4gICAgICAgIHdpZHRoOiB3Q29uKDcwOCw5NTIpO1xuICAgICAgICAuaGVhZGVyX19uYXZUZWFtcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBqdXN0aWZ5KCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICAgICAgLmhlYWRlcl9fbmF2VGVhbSB7XG4gICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMjApO1xuICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgb3BhKCk7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5oZWFkZXJfX2hhbWJ1cmdlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXJfX2lubmVyLS1zcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXJfX2lubmVyLS1zcElubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGp1c3RpZnkoKTsgXG4gICAgICAgICAgICB3aWR0aDogd0Nvbig2NzgsNzY4KTtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgICAgICAuaGVhZGVyX19sb2dvLS1zcCB7XG4gICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICAgICAuaGVhZGVyX19oYW1idXJnZXItLXNwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC05cHg7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICB9XG4gICAgICAgICAgIH0gICBcbiAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyX19uYXYtLXNwIHtcbiAgICAgICAgICAgIC5oZWFkZXJfX25hdlRlYW1zLS1zcCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIC5oZWFkZXJfX25hdlRlYW0tLXNwIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICAgXG4gICAgICAgICB9ICAgIFxuICAgICAgfVxuICAgIH1cbiAgICAvLyDjgrnjgq/jg63jg7zjg6vmmYLjgavog4zmma/jgpLlpInljJbjgZXjgZvjgotcbiAgICAuaGVhZGVyX19zY3JvbGwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7XG4gICAgfVxuXG5cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tICAtLSovXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuZm9vdGVyLnNjc3NcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZvb3RlcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcEJsdWU7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgLmZvb3Rlcl9faW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDc0M3B4O1xuICAgICAgICB3aWR0aDogd0Nvbig3NDMsMTM1MCk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDcwcHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICAgICAgQGluY2x1ZGUganVzdGlmeSgpO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICB3aWR0aDogd0Nvbig3NDMsNzY4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oKTtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyX190aXQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMjYpO1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oMzQ1LDc0Myk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDIwKTtcbiAgICAgICAgICAgIH0gXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZvb3Rlcl9fdGl0QnIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHdpZGVTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9ICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyX190ZWFtcyB7XG4gICAgICAgICAgICB3aWR0aDogd0NvbigyNDAsNzQzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb290ZXJfX3RlYW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR3aWRlU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR3aWRlU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5mb290ZXJfX2NvcHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfSAgICAgICAgICAgICAgXG4gICAgfVxufVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKi0tICAtLSovIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbm1haW4uc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tIOeKtuaFi+WkieWMluOBquOBqSAtLSovIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmNvbXBvbmVudC5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxu44OG44Kt44K544OI6KOF6aO+XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0g5ZCE44Oa44O844K444Gu6KaL5Ye644GXIC0tKi9cbi5jLWJhbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwQmx1ZTtcbiAgICBAaW5jbHVkZSBmb250c2l6ZSgyNCk7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTYpO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgfVxufVxuXG4uYy1zbWFsbFRpdCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBAaW5jbHVkZSBmb250c2l6ZSgyNCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRlZXBCbHVlO1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTYpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG59XG5cbi8qLS0g44Oq44O844OJ5paHLS0qL1xuIiwiLyogdmVydGljYWwtYWxpZ24gLSB1dGlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnUtdmEtdCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xufVxuXG4udS12YS1tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG59XG5cbi51LXZhLWIge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn0iLCIvKiBib3JkZXIgLSB1dGlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogYm9yZGVyLXJhZGl1cyAqL1xuLnUtYnItNCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xufVxuXG4udS1ici04IHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDhweCk7XG59XG5cbi51LWJyLTEyIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEycHgpO1xufVxuXG4udS1ici0xNiB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxNnB4KTtcbn1cblxuXG4vKiBib3JkZXItbm9uZSAqL1xuXG4udS1ici0wIHtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi51LWJyLXQtMCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnUtYnItci0wIHtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi51LWJyLWItMCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnUtYnItbC0wIHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbn0iLCIvKiBjbGVhcmZpeCAtIHV0aWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udS1jZntcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbn0iLCIvKiBkaXNwbGF5IC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udS1kLXRiIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xufVxuXG4udS1kLXRiYyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xufVxuXG4udS1kLWIge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi51LWQtaWIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4udS1kLW57XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmJyZWFrcG9pbnTmr47jga7ooajnpLrliIfjgormm7/jgYhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnUtZC1iLXBjIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi51LWQtYi1ucGMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0QGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuXHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLnUtZC1iLXRiIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcblx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi51LWQtYi1zcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxufVxuXG4udS1kLWItc3BzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplX3Mpe1xuXHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLnUtZC1uLXBjIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcblx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi51LWQtbi1ucGMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLnUtZC1uLXRiIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi51LWQtbi1zcCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4udS1kLW4tc3BzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZV9zKXtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn0iLCIvKiBmbG9hdCAtIHV0aWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udS1mbC1sIHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4udS1mbC1yIHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn0iLCIvKiBmb250LXNpemUgLSB1dGlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmb3IgJHZhbHVlIGZyb20gMSB0byAxMCB7XG4gICAgLnUtZnotI3skdmFsdWUgKiAyICsgOH0ge1xuICAgICAgICBmb250LXNpemU6IDJweCAqICR2YWx1ZSArIDggIWltcG9ydGFudDtcbiAgICB9XG59IiwiLyogbGluZS1jbGFtcCAtIHV0aWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udS1sYyB7XG4gICAgZGlzcGxheTogYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG59IiwiLyogbWFyZ2luIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIGF1dG8gbWFyZ2luICovXG5cbi51LW0tYyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuXG4vKiBUb3AgbWFyZ2luICovXG5AZm9yICR2YWx1ZSBmcm9tIDEgdG8gMTAge1xuICAgIC51LW10LSN7JHZhbHVlICogJGJhc2Utc2l6ZSAtICRiYXNlLXNpemV9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGJhc2Utc2l6ZSAqICR2YWx1ZSAtICRiYXNlLXNpemUgKyBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogUmlnaHQgbWFyZ2luICovXG5AZm9yICR2YWx1ZSBmcm9tIDEgdG8gMTAge1xuICAgIC51LW1yLSN7JHZhbHVlICogJGJhc2Utc2l6ZSAtICRiYXNlLXNpemV9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYmFzZS1zaXplICogJHZhbHVlIC0gJGJhc2Utc2l6ZSArIHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKiBCb3R0b20gbWFyZ2luICovXG5AZm9yICR2YWx1ZSBmcm9tIDEgdG8gMTAge1xuICAgIC51LW1iLSN7JHZhbHVlICogJGJhc2Utc2l6ZSAtICRiYXNlLXNpemV9IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJhc2Utc2l6ZSAqICR2YWx1ZSAtICRiYXNlLXNpemUgKyBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogTGVmdCBtYXJnaW4gKi9cbkBmb3IgJHZhbHVlIGZyb20gMSB0byAxMCB7XG4gICAgLnUtbWwtI3skdmFsdWUgKiAkYmFzZS1zaXplIC0gJGJhc2Utc2l6ZX0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogJGJhc2Utc2l6ZSAqICR2YWx1ZSAtICRiYXNlLXNpemUgKyBweCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIvKiBtaXNjIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi51LXdzLW5vd3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnUtbXgtaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi51LXR4LWluc2lkZSB7XG4gICAgdGV4dC1pbmRlbnQ6IC0xZW07XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbn0iLCIvKiBwYWRkaW5nIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIFRvcCBwYWRkaW5nICovXG5AZm9yICR2YWx1ZSBmcm9tIDEgdG8gMTAge1xuICAgIC51LXB0LSN7JHZhbHVlICogJGJhc2Utc2l6ZSAtICRiYXNlLXNpemV9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGJhc2Utc2l6ZSAqICR2YWx1ZSAtICRiYXNlLXNpemUgKyBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogUmlnaHQgcGFkZGluZyAqL1xuQGZvciAkdmFsdWUgZnJvbSAxIHRvIDEwIHtcbiAgICAudS1wci0jeyR2YWx1ZSAqICRiYXNlLXNpemUgLSAkYmFzZS1zaXplfSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRiYXNlLXNpemUgKiAkdmFsdWUgLSAkYmFzZS1zaXplICsgcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIEJvdHRvbSBwYWRkaW5nICovXG5AZm9yICR2YWx1ZSBmcm9tIDEgdG8gMTAge1xuICAgIC51LXBiLSN7JHZhbHVlICogJGJhc2Utc2l6ZSAtICRiYXNlLXNpemV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRiYXNlLXNpemUgKiAkdmFsdWUgLSAkYmFzZS1zaXplICsgcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIExlZnQgcGFkZGluZyAqL1xuQGZvciAkdmFsdWUgZnJvbSAxIHRvIDEwIHtcbiAgICAudS1wbC0jeyR2YWx1ZSAqICRiYXNlLXNpemUgLSAkYmFzZS1zaXplfSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGJhc2Utc2l6ZSAqICR2YWx1ZSAtICRiYXNlLXNpemUgKyBweCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIvKiBwb3NpdGlvbiAtIHV0aWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udS1wb3MtYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi51LXBvcy1yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn0iLCIvKiB0ZXh0LWFsaWduIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi51LXRhLWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnUtdGEtYyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi51LXRhLXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59IiwiLyogdGV4dC1kZWNvcmF0aW9uIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi51LWZ3LW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnUtZnctYiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbn1cblxuLnUtdGQtdSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn0iLCIvKiB0ZXh0LXRydW5jYXRlIC0gdXRpbGl0eVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi51LXR0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd29yZC13cmFwOiBub3JtYWw7IC8qIGZvciBJRSA4LzkgKi9cbn0iLCIvKiB3aWR0aCAtIHV0aWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udS13LWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvIWltcG9ydGFudDtcbn1cblxuLnUtdy1mdWxsIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4udS13LWhhbGYge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxudG9wLnNjc3NcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4udG9wIHtcbiAgICAvLyDlhbHpgJogLy9cbiAgICBwYWRkaW5nLXRvcDogNjhweDtcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLy8vLyBtYWluVmlzdWFsIC8vLy9cbiAgICAudG9wX19tYWluVmlzdWFsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1MjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy90b3AvdG9wX19iZy5qcGcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyAgICBcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgIFxuICAgICAgICB9XG4gICAgICAgIC50b3BfX21haW5WaXN1YWxUeHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMzkpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZVkoMzAlKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDMyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZV9zKXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8vLyB0b3BfX25hdiAvLy8vXG4gICAgLnRvcF9fbmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC50b3BfX25hdlRlYW0ge1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oOTUyLDEzNTApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NTJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgpO1xuICAgICAgICAgICAgQGluY2x1ZGUganVzdGlmeSgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgd3JhcCgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcyMCw3NjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRvcF9fbmF2VGVhbXMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDMwNCw5NTIpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHdDb24oMzUwLDcyMCk7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0NvbigxNSwzNTApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7LyrnlLvlg4/jga7mi6HlpKfnjocqL1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSk7LyrnlLvlg4/jga7mi6HlpKfnjocqL1xuICAgICAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjEpOy8q55S75YOP44Gu5ouh5aSn546HKi9cbiAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7LyrnlLvlg4/jga7mi6HlpKfnjocqL1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1x0LyrnlLvlg4/jga7mi6HlpKfnjocqL1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOy8q5aSJ5YyW44Gr5o6b44GL44KL5pmC6ZaTKi9cbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsvKuWkieWMluOBq+aOm+OBi+OCi+aZgumWkyovXG4gICAgICAgICAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOy8q5aSJ5YyW44Gr5o6b44GL44KL5pmC6ZaTKi9cbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7LyrlpInljJbjgavmjpvjgYvjgovmmYLplpMqL1xuICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9ICBcbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0NvbigyMCw5NTIpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB3Q29uKDE1LDM1MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHdDb24oMjAsOTUyKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0NvbigxNSwzNTApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHdDb24oMjAsOTUyKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0NvbigxNSwzNTApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnRvcF9fbmF2VHh0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogd0NvbigyMTUsMzA0KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB3Q29uKDUzLDMwNCkgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB3Q29uKDIwLDMwNCkgMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDIwKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxOCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDMwMCwzNTApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgIEBpbmNsdWRlIGZvbnRzaXplKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZV9zKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLy8vIHRvcF9fcGFydG5lci8vLy9cbiAgICAudG9wX19wYXJ0bmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDU1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnRvcF9fcGFydG5lclRpdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgzNSk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICB9ICAgIFxuICAgICAgICB9XG4gICAgICAgIC50b3BfX3BhcnRuZXJJbm5lciB7XG4gICAgICAgICAgICB3aWR0aDogd0NvbigxMDM0LDEzNTApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDM0cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig3MDAsNzY4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50b3BfX3BhcnRuZXJUZWFtcyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMjApO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB3cmFwKCk7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7ICAgIFxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICAgICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4oKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxOCk7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgICAgICAgICAgfSAgIFxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vLy8gdG9wX19jb250YWN0Um9vdFR4dC8vLy9cbiAgICAudG9wX19jb250YWN0Um9vdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRvcF9fY29udGFjdFJvb3RUeHQge1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oNzc4LDEzNTApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NzhweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDM1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcwMCw3NjgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50b3BfX2NvbnRhY3RCdG4ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMjJweDtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDMyMiwxMzUwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcwMCw3NjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMzAsMzIyKSAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhcXVhO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFxdWE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYXF1YTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oNDAsNzAwKSAwO1xuICAgICAgICAgICAgICAgIH0gICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyotLSAgLS0qL1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmNvbXBhbnkuc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5jb21wYW55IHtcbiAgICAgICAgLy8g5YWx6YCaIC8vXG4gICAgICAgIHBhZGRpbmctdG9wOiA2OHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICAgICAgfSAgICBcbiAgICAvLyBjLWJhbmRcbiAgICAuYy1iYW5kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGNvbXBhbnlfX2lubmVyXG4gICAgLmNvbXBhbnlfX2lubmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTA1cHg7XG4gICAgICAgICAgICB3aWR0aDogd0Nvbig5MDUsMTM1MCk7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig3MzAsNzY4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIC8vIGNvbXBhbnlfX3Zpc3VhbFxuICAgIC5jb21wYW55X192aXN1YWwge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KCk7XG4gICAgICAgIEBpbmNsdWRlIGNvbHVtbigpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW4tcmV2ZXJzZSgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgICAgICAuY29tcGFueV9fdmlzdWFsVHh0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE2KTtcbiAgICAgICAgICAgIGNvbG9yOiAkZGVlcEJsdWU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogd0Nvbig1MjIsOTA1KTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNCk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbXBhbnlfX3R4dFRvcCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbXBhbnlfX3R4dEJvdHRvbSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29tcGFueV9fdmlzdWFsSW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzk1cHg7XG4gICAgICAgICAgICB3aWR0aDogd0NvbigzOTUsOTA1KTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBjb21wYW55X19kZXRhaWxcbiAgICAuY29tcGFueV9fZGV0YWlsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgICAgICAuY29tcGFueV9fZGV0YWlsTGlzdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICAgICAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmMtc21hbGxUaXQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbXBhbnlfX2RldGFpbExpc3RUeHQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogd0NvbigxNSw5MDUpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbXBhbnlfX2RldGFpbENhc3RlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig2ODQsOTA1KTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb21wYW55X19kZXRhaWxMaXN0VHh0LS10b3Age1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29tcGFueV9fZGV0YWlsTGlzdFR4dC0tYm90dG9tIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbXBhbnlfX2RldGFpbE5hbWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29tcGFueV9fZGV0YWlsVGFibGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDU5NSw5MDUpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMjAsOTA1KSAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzJjMmMyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb21wYW55X19kZXRhaWxUaXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDEwMCw1OTUpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZV9tKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEyKTtcbiAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemVfcyl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxMCk7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29tcGFueV9fZGV0YWlsTmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDQwNiw1OTUpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHdDb24oNTAsNTk1KTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplX20pe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTIpO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZV9zKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEwKTtcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKi0tICAtLSovXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuYnVzaW5lc3Muc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5idXNpbmVzcyB7XG4gICAgLy8g5YWx6YCaIC8vXG4gICAgcGFkZGluZy10b3A6IDY4cHg7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC8vIC5idXNpbmVzc19fZGV0YWlsSGVpZ2h0IHtcbiAgICAvLyAgICAgOjpiZWZvcmUge1xuICAgIC8vICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAvLyAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAvLyAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgIC8vICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG4gICAgLy8gYnVzaW5lc3NfX21haW5WaXN1YWxcbiAgICAuYnVzaW5lc3NfX21haW5WaXN1YWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzNzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9idXNpbmVzcy9idXNpbmVzc19fcGljMS5qcGcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgaGVpZ2h0OiAzMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgaGVpZ2h0OiAxNTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAuYnVzaW5lc3NfX21haW5WaXN1YWxUeHQge1xuICAgICAgICAgICBjb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTYpO1xuICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGVZKDE1JSk7XG4gICAgICAgICAgIG1heC13aWR0aDogODI0cHg7XG4gICAgICAgICAgIHdpZHRoOiB3Q29uKDgyNCwxMzUwKTtcbiAgICAgICAgLy8gcGFkZGluZzogd0NvbigyMCw4MjQpIHdDb24oMzAsODI0KTtcbiAgICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4O1xuICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkZGVlcEJsdWU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlWSgxMCUpOyAgICAgXG4gICAgICAgICAgIH1cbiAgICAgICB9XG4gICAgfVxuICAgIC8vIGJ1c2luZXNzX19jb3B5LS1zcFxuICAgIC5idXNpbmVzc19fY29weS0tc3Age1xuICAgICAgICBtYXgtd2lkdGg6IDcyNXB4O1xuICAgICAgICB3aWR0aDogd0Nvbig3MjUsNzY4KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgIC5idXNpbmVzc19fY29weS0tc3BUeHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIGNvbG9yOiAkZGVlcEJsdWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAkZGVlcEJsdWU7XG4gICAgICAgICAgICBwYWRkaW5nOiB3Q29uKDE1LDcyNSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gYnVzaW5lc3NfX2NvcHlcbiAgICAuYnVzaW5lc3NfX2NvcHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNzM1cHg7XG4gICAgICAgIHdpZHRoOiB3Q29uKDczNSwxMzUwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gNjBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNzVweDtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcyNSw3NjgpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuYnVzaW5lc3NfX2NvcHlUeHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTYpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBidXNpbmVzc19fZGV0YWlsXG4gICAgLmJ1c2luZXNzX19kZXRhaWwge1xuICAgICAgICBtYXgtd2lkdGg6IDkwN3B4O1xuICAgICAgICB3aWR0aDogd0Nvbig5MDcsMTM1MCk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAvLyDlhbHpgJrjg6zjgqTjgqLjgqbjg4hcbiAgICAgICAgLmMtYmFuZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDAgMTBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFR4dC0tc3Age1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcyNSw3NjgpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLy8gYnVzaW5lc3NfX2RldGFpbFJvYWRcbiAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxSb2FkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDg1Myw5MDcpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB3Q29uKDM3NSw5MDcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFJvYWROYW1lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MjUsODUzKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgLy8gdG9wOiAwO1xuICAgICAgICAgICAgICAgIC8vIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTclO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMzAsODUzKSB3Q29uKDMwLDg1Mykgd0Nvbig0MCw4NTMpIHdDb24oMzAsODUzKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcEJsdWU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsUm9hZFRpdCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyMCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFJvYWRUeHQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNSk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDEzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFJvYWRJbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDUwMCw4NTMpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gYnVzaW5lc3NfX2RldGFpbFdlZWRpbmdcbiAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxXZWVkaW5nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDc2NCw5MDcpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0Nvbig1Miw5MDcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFdlZWRpbmdOYW1lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MjUsNzY0KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB3Q29uKDMwLDc2NCkgd0NvbigzMCw3NjQpIHdDb24oNDAsNzY0KSB3Q29uKDMwLDc2NCk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxXZWVkaW5nVGl0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDIwKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsV2VlZGluZ1R4dCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsV2VlZGluZ0ltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHdDb24oNTAwLDc2NCk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIC8vIHRvcDogMDtcbiAgICAgICAgICAgICAgICAvLyBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwJTtcbiAgICAgICAgICAgICAgICBib3R0b206IDM4JTsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICB9ICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBidXNpbmVzc19fZGV0YWlsUml2ZXJzXG4gICAgICAgIC5idXNpbmVzc19fZGV0YWlsUml2ZXJzIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0NvbigzMTAsOTA3KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxSaXZlcnNOYW1lIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUyNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDUyNSw5MDcpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAvLyB0b3A6IDA7XG4gICAgICAgICAgICAgICAgLy8gbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDE0JTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB3Q29uKDMwLDkwNykgd0NvbigzMCw5MDcpIHdDb24oNDAsOTA3KSB3Q29uKDMwLDkwNyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFJpdmVyc1RpdCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyMCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFJpdmVyc1R4dCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsUml2ZXJzSW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MDAsOTA3KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGJ1c2luZXNzX19kZXRhaWxCcmlkZ2VkYW1cbiAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxCcmlkZ2VkYW0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oNzUwLDkwNyk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogd0Nvbig3MCw5MDcpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0Nvbig3MCw5MDcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbEJyaWRnZWRhbU5hbWUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDUyNSw3NTApO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMzAsNzUwKSB3Q29uKDMwLDc1MCkgd0Nvbig0MCw3NTApIHdDb24oMzAsNzUwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcEJsdWU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbEJyaWRnZWRhbVRpdCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgyMCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbEJyaWRnZWRhbVR4dCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsQnJpZGdlZGFtSW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MDAsNzUwKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgLy8gdG9wOiAwO1xuICAgICAgICAgICAgICAgIC8vIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogNTAlOyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGJ1c2luZXNzX19kZXRhaWxMYW5kXG4gICAgICAgIC5idXNpbmVzc19fZGV0YWlsTGFuZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogd0Nvbig4MzgsOTA3KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB3Q29uKDcwLDkwNyk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB3Q29uKDM4NSw5MDcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbExhbmROYW1lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MjUsODM1KTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgLy8gdG9wOiAwO1xuICAgICAgICAgICAgICAgIC8vIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTExJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB3Q29uKDMwLDgzNSkgd0NvbigzMCw4MzUpIHdDb24oNDAsODM1KSB3Q29uKDMwLDgzNSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBCbHVlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbExhbmRUaXQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMjApO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxOCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxMYW5kVHh0IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTUpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxMyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxMYW5kSW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig1MDAsODM1KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGJ1c2luZXNzX19kZXRhaWxXYXRlcnN1cHBseVxuICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFdhdGVyc3VwcGx5IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDc2NCw5MDcpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogd0Nvbig1MCw5MDcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnVzaW5lc3NfX2RldGFpbFdhdGVyc3VwcGx5TmFtZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHdDb24oNTI1LDc2NCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogd0NvbigzMCw3NjQpIHdDb24oMzAsNzY0KSB3Q29uKDQwLDc2NCkgd0NvbigzMCw3NjQpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsV2F0ZXJzdXBwbHlUaXQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMjApO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxOCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJ1c2luZXNzX19kZXRhaWxXYXRlcnN1cHBseVR4dCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE1KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG5vdGVwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXNpbmVzc19fZGV0YWlsV2F0ZXJzdXBwbHlJbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDUwMCw3NjQpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAvLyB0b3A6IDA7XG4gICAgICAgICAgICAgICAgLy8gbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMCU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA3NCU7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyotLSAgLS0qL1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmNvbnRhY3Quc2Nzc1xuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5jb250YWN0IHtcbiAgICAvLyDlhbHpgJpcbiAgICBwYWRkaW5nLXRvcDogNjhweDtcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICB9XG4gICAgLy8gYy1iYW5kXG4gICAgLmMtYmFuZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGFjdEZvcm1fX2NhdXRpb24ge1xuICAgICAgICBjb2xvcjogI0RFM0UzRTtcbiAgICB9XG4gICAgLy8gY29udGFjdEZvcm1cbiAgICAuY29udGFjdEZvcm0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb250YWN0Rm9ybV9fY29weSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0Nvbig3MjUsNzY4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byA1MHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9ICAgIFxuICAgICAgICB9XG4gICAgICAgIC5jb250YWN0Rm9ybV9fdGFibGUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NzBweDtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDU3MCwxMzUwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHdDb24oMTAwMCwxMjgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcyNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiB3Q29uKDcyNSw3NjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRhY3RGb3JtX19pbXBhY3Qge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzg4ODg4ODtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRhY3RGb3JtX190YWJsZUlubmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGgsdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoLHRkIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIC5jb250YWN0Rm9ybV9faW5wdXRUZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250YWN0Rm9ybV9faW5wdXRUZXh0LS1oIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhY3RGb3JtX19zdWJtaXQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLmNvbnRhY3RGb3JtX19zdWJtaXRCdG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNjRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXF1YTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYXF1YTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYXF1YTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFjdEZvcm1fX3JldHVybiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgLmNvbnRhY3RGb3JtX19yZXR1cm4tLXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNjRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREUzRTNFO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNERTNFM0U7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0RFM0UzRTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFjdEZpbmlzaF9fYnRuc1dyYXAge1xuICAgICAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiA1MHB4IGF1dG8gMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIC5jb250YWN0RmluaXNoQnRuIHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYXF1YTsgICAgXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXF1YTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgIFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYXF1YTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC41cztcbiAgICAgICAgICAgICAgICAgICAgfSAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyotLSAgLS0qL1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmFkb3B0LnNjc3NcblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uYWRvcHQge1xuICAgIC8vIOWFsemAmiAvL1xuICAgIHBhZGRpbmctdG9wOiA2OHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2Fkb3B0L2Fkb3B0X19waWMxLmpwZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJHdoaXRlO1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gICAgLy8gYWRvcHRfX291dGVyXG4gICAgLmFkb3B0X19vdXRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgOTVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gYWRvcHRfX2NvcHlcbiAgICAuYWRvcHRfX2NvcHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDIwKTtcbiAgICAgICAgY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9jb21tb24vY29tbW9uX19waWMxLmpwZyk7XG4gICAgICAgICAgICBoZWlnaHQ6IDMxMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTgpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJG1vYmlsZVNpemUpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTYpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNTVweDtcbiAgICAgICAgfVxuICAgICAgICAuYWRvcHRfX3R4dCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMCUpO1xuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwJSk7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMCUpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMCUpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgIC8vIGFkb3B0X19kZXRhaWxcbiAgICAuYWRvcHRfX2RldGFpbCB7XG4gICAgICAgIG1heC13aWR0aDogOTA1cHg7XG4gICAgICAgIHdpZHRoOiB3Q29uKDkwNSwxMzUwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAuYWRvcHRfX2RldGFpbFRhYmxlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0ExQTFBMTtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNBMUExQTE7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0ExQTFBMTtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBMUExQTE7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfSAgICBcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkd2lkZVNpemUpe1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTIpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5hZG9wdF9fZGV0YWlsVGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oMTEyLDkwNSk7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgcGFkZGluZzogd0NvbigyMCw5MDUpO1xuICAgICAgICAgICAgY29sb3I6ICRkZWVwQmx1ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGNTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0NvbigxNjAsOTA1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRub3RlcGNTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogd0NvbigxNTAsOTA1KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi4yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5Ny43OTAwNTUyJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMjAsOTA1KSAwIHdDb24oMjAsOTA1KSB3Q29uKDIwLDkwNSk7XG4gICAgICAgICAgICB9ICAgIFxuICAgICAgICB9XG4gICAgICAgIC5hZG9wdF9fZGV0YWlsVHh0IHtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDc5OCw5MDUpO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMTAsOTA1KSAwIHdDb24oMTAsOTA1KSB3Q29uKDMwLDkwNSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbm90ZXBjU2l6ZSl7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTUuNTgwMTEwMDUlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHdDb24oMTAsOTA1KSB3Q29uKDIwLDkwNSkgd0NvbigzMCw5MDUpIHdDb24oMjAsOTA1KTtcbiAgICAgICAgICAgIH0gICAgXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG59XG5cbi8vIFxuXG4vKi0tICAtLSovXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxucHJpdmFjeS5zY3NzXG5cbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnByaXZhY3kge1xuICAgIC8vIOWFsemAmiAvL1xuICAgIHBhZGRpbmctdG9wOiA2OHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgIH1cbiAgICAvLyBjLWJhbmRcbiAgICAuYy1iYW5kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkbW9iaWxlU2l6ZSl7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHByaXZhY3lfX2lubmVyXG4gICAgLnByaXZhY3lfX2lubmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MDRweDtcbiAgICAgICAgd2lkdGg6IHdDb24oOTA0LDEzNTApO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgd2lkdGg6IHdDb24oNzUwLDc2OCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcHJpdmFjeV9faW5uZXJcbiAgICAgICAgICAucHJpdmFjeV9fdHh0IHtcbiAgICAgICAgICAgIHdpZHRoOiB3Q29uKDYzMCw5MDQpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldFNpemUpe1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRzaXplKDE0KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGVTaXplKXtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaXZhY3lfX3R4dDEgeyBcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICB9ICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcml2YWN5X190eHQyIHsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gcHJpdmFjeV9fcnVsZVxuICAgICAgICAucHJpdmFjeV9fcnVsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaXZhY3lfX2xpc3Qge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBtZWRpYSgkdGFibGV0U2l6ZSl7XG4gICAgICAgICAgICAgICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIC5wcml2YWN5X19kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNSk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCRwY1NpemUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udHNpemUoMTQpO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgLnByaXZhY3lfX2RldGFpbElubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogd0NvbigzMCw5MDQpO1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXRTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgXG4gICAgICAgICAgICAgICAgICAgICAucHJpdmFjeV9fZGV0YWlsTnVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAgLnByaXZhY3lfX2RldGFpbFR4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGNTaXplKXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250c2l6ZSgxNCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyotLSAgLS0qL1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozt3Q0FJd0M7QUFDeEM7OzREQUU0RDtBQ1A1RDs7Ozt3Q0FJd0M7QUFDeEMsQUFBQSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNO0FBQzdDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsR0FBRztBQUMxQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJO0FBQzFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSTtBQUN2QyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHO0FBQ3hDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU07QUFDZixFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7QUFDdEIsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTTtBQUM3QixLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtBQUMvQyxPQUFPLEVB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LEdBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsVUFBVSxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsVUFBVSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUMvRDs7QUFHTCxrQkFBa0I7QUFFZCxBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsWUFBWSxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsWUFBWSxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsWUFBWSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNqRTs7QUFHTCxtQkFBbUI7QUFFZixBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsYUFBYSxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsYUFBYSxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsYUFBYSxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNsRTs7QUFHTCxpQkFBaUI7QUFFYixBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsV0FBVyxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNoRTs7QUFGRCxBQUFBLE9BQU8sQ0FBbUM7RUFDdEMsV0FBVyxFQUFFLEdBQXFDLENBQUMsVUFBVTtDQUNoRTs7QUFGRCxBQUFBLFFBQVEsQ0FBa0M7RUFDdEMsV0FBVyxFQUFFLElBQXFDLENBQUMsVUFBVTtDQUNoRTs7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LENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLGNBQWMsRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDbkU7O0FBR0wsa0JBQWtCO0FBRWQsQUFBQSxPQUFPLENBQW1DO0VBQ3RDLFlBQVksRUFBRSxHQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxPQUFPLENBQW1DO0VBQ3RDLFlBQVksRUFBRSxHQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FBRkQsQUFBQSxRQUFRLENBQWtDO0VBQ3RDLFlBQVksRUFBRSxJQUFxQyxDQUFDLFVBQVU7Q0FDakU7O0FB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 */
