/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : Iqbal Wahyudi Pratama - iqbalwahyudip.com
==============================================================================================*/
/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : FrontEnd Team  
==============================================================================================*/
/* import bourbon - http://bourbon.io/docs */
/* color global
----------------------------------------------------------------------------------------------*/
/* fonts
----------------------------------------------------------------------------------------------*/
body {
  color: #333;
  font-size: 16px;
  font-family: "Open Sans", sans-serif;
  position: relative;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
}

figure {
  margin: 0;
  padding: 0;
}

figure img {
  vertical-align: middle;
}

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

p {
  margin: 1px 0 15px;
  line-height: 20px;
}

input, textarea, select {
  font-size: 16px;
  border: none;
  border: 1px solid #D8D8D8;
  padding: 10px;
  margin: 0;
  color: #666;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-family: "Open Sans", sans-serif;
}

input[type=checkbox], input[type=radio] {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  opacity: 0;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.3;
}

h1 {
  font-size: 61px;
  font-weight: 300;
}

h1.h1s2 {
  font-size: 100px;
  font-weight: 700;
}

h2 {
  font-size: 48px;
  font-weight: 300;
}

h2.h2s2 {
  font-size: 39px;
}

h3 {
  font-size: 31px;
  font-weight: 700;
}

h3.h3s2 {
  font-size: 38px;
}

h3.h3s3 {
  font-size: 42px;
}

h4 {
  font-size: 28px;
}

h5 {
  font-size: 23px;
  font-weight: 900;
}

h6 {
  font-size: 19px;
  font-weight: 700;
}

/* structure 
----------------------------------------------------------------------------------------------*/
section {
  position: relative;
}

.wrapper {
  width: 1370px;
  margin: 0 auto;
}

.wrap-md {
  width: 1230px;
  margin: 0 auto;
}

.wrap-md2 {
  width: 1170px;
  margin: 0 auto;
}

.wrap-sm {
  width: 1030px;
  margin: 0 auto;
}

.wrap-sm.sidepadd {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 30px;
}

.wrap-sm2 {
  width: 900px;
  margin: 0 auto;
}

.wrap-xs {
  width: 800px;
  margin: 0 auto;
}

.wrapper:after, .wrap-md:after, .wrap-md2:after, .wrap-sm:after, .wrap-sm2:after, .wrap-xs:after {
  content: "";
  clear: both;
  display: block;
}

.btn-rounded {
  display: inline-block;
  position: relative;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  background: #ff8e33;
  color: #fff;
  font-weight: 700;
  height: 50px;
  line-height: 44px;
  padding: 0 20px;
  border: 3px solid #ff8e33;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.btn-rounded:hover {
  background: transparent;
  color: #ff8e33;
}

.btn-rounded.btn-lnblue {
  background: transparent;
  border-color: #2fb7c5;
  color: #2fb7c5;
}

.btn-rounded.btn-lnblue:hover {
  background: #2fb7c5;
  color: #fff;
}

.btn-rounded.btn-blue {
  background: #2fb7c5;
  border-color: #2fb7c5;
  color: #fff;
}

.btn-rounded.btn-blue:hover {
  background: transparent;
  color: #2fb7c5;
}

.btn-rounded.btn-md {
  height: 40px;
  line-height: 34px;
  font-size: 13px;
}

.headpadd {
  margin-top: 140px;
}

.lineh {
  display: inline-block;
  width: 40px;
  height: 4px;
  background: #2fb7c5;
}

.icwp {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-position: top center;
}

.icwp:hover {
  background-position: bottom center;
}

.icwp.ic_bed {
  background-image: url("../images/material/ic_bed.png");
  width: 55px;
  height: 49px;
}

.icwp.ic_wheelchair {
  background-image: url("../images/material/ic_wheelchair.png");
  width: 55px;
  height: 49px;
}

.icwp.ic_head {
  background-image: url("../images/material/ic_head.png");
  width: 37px;
  height: 39px;
}

.icwp.ic_checkup {
  background-image: url("../images/material/ic_checkup.png");
  width: 37px;
  height: 39px;
}

.icwp.ic_tooth {
  background-image: url("../images/material/ic_tooth.png");
  width: 37px;
  height: 39px;
}

.a-center {
  text-align: center;
}

.a-left {
  text-align: left;
}

.a-right {
  text-align: right;
}

.link-orange {
  font-weight: 700;
  text-transform: uppercase;
  color: #ff8e33;
}

.tblue {
  color: #2fb7c5;
}

.torange {
  color: #ff8e33;
}

.link-load {
  color: #ff8e33;
  font-weight: 900;
  font-size: 14px;
  text-transform: uppercase;
  position: relative;
  padding-left: 50px;
  line-height: 27px;
  height: 27px;
  display: inline-block;
}

.link-load:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 27px;
  height: 27px;
  background: url("../images/material/ic_load.png") no-repeat center;
}

.link-plus {
  position: relative;
  color: #2fb7c5;
  font-weight: 700;
  text-transform: uppercase;
  padding-left: 26px;
  font-size: 14px;
}

.link-plus:before {
  content: "";
  width: 15px;
  height: 15px;
  background: url("../images/material/plusorange.png") no-repeat center;
  background-size: 100%;
  position: absolute;
  top: 2px;
  left: 0;
}

.row_list {
  margin-left: -15px;
  margin-right: -15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row_list * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row_list:after {
  content: "";
  display: table;
  clear: both;
}

.row_list .col {
  width: 100%;
  padding: 0 15px;
  float: left;
}

.row_list .col.fr {
  float: right;
}

.row_list .col.no-pad {
  padding: 0;
}

.row_list .col.marg28 {
  margin-bottom: 28px;
}

.row_list .col.col_9 {
  width: 90%;
}

.row_list .col.col_8 {
  width: 80%;
}

.row_list .col.col_7 {
  width: 70%;
}

.row_list .col.col_66 {
  width: 66.66666666666666%;
}

.row_list .col.col_65 {
  width: 65%;
}

.row_list .col.col_6 {
  width: 60%;
}

.row_list .col.col_55 {
  width: 55%;
}

.row_list .col.col_5 {
  width: 50%;
}

.row_list .col.col_45 {
  width: 45%;
}

.row_list .col.col_4 {
  width: 40%;
}

.row_list .col.col_37 {
  width: 37%;
}

.row_list .col.col_35 {
  width: 35%;
}

.row_list .col.col_33 {
  width: 33.3333333333333%;
}

.row_list .col.col_3 {
  width: 30%;
}

.row_list .col.col_25 {
  width: 25%;
}

.row_list .col.col_2 {
  width: 20%;
}

.row_list .col.col_16 {
  width: 16.66666666666666%;
}

.row_list .col.col_1 {
  width: 10%;
}

.row_list.center {
  text-align: center;
}

.row_list.center .col {
  float: none;
  display: inline-block;
}

.row_list.listfull {
  margin-left: 0;
  margin-right: 0;
}

.row_list.listfull .col {
  padding: 0;
}

.row_list.listp5 {
  margin-left: -5px;
  margin-right: -5px;
}

.row_list.listp5 .col {
  padding: 0 5px;
}

/* header
----------------------------------------------------------------------------------------------*/
header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
}

header .logo {
  float: left;
  padding: 20px 0 18px;
}

header .head-right {
  float: right;
  padding-top: 52px;
}

header .navigation {
  float: left;
  padding-right: 15px;
  /*&:before{content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 1px; background: #eaeaea;}*/
}

header .navigation > li {
  float: left;
}

header .navigation > li > a {
  color: #333333;
  display: block;
  padding: 12px 15px 60px;
  position: relative;
  cursor: pointer;
}

header .navigation > li > a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 0;
  background: #2fb7c5;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

header .navigation > li .subnav {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s all ease-out;
  -webkit-transition: 0.3s all ease-out;
  -moz-transition: 0.3s all ease-out;
  -ms-transition: 0.3s all ease-out;
  -o-transition: 0.3s all ease-out;
  /*&:before{content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.4); height: 100vh;}*/
}

header .navigation > li .subnav .inmenu {
  background: #fff;
  width: 1370px;
  margin: 0 auto;
  padding: 40px 100px 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

header .navigation > li .subnav .inmenu:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: #eaeaea;
}

header .navigation > li .subnav .inmenu .lsinmenu {
  float: left;
  width: 33.3333333333333333%;
  padding: 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .navigation > li .subnav .inmenu a {
  font-size: 20px;
  color: #333333;
  line-height: 26px;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

header .navigation > li .subnav .inmenu a:hover, header .navigation > li .subnav .inmenu a.active {
  color: #ff8e33;
}

header .navigation > li .subnav .inmenu ul li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 24px;
}

header .navigation > li .subnav .inmenu ul li:before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  background: url("../images/material/right-arrow.png") no-repeat center;
  width: 8px;
  height: 12px;
}

header .navigation > li:hover .subnav {
  opacity: 1;
  visibility: visible;
}

header .navigation > li:hover > a:before, header .navigation > li.active > a:before {
  height: 4px;
}

header .navigation > li.active > a {
  font-weight: 700;
}

header .navigation .btn-rounded {
  display: none;
}

header .nav-lang {
  float: left;
  position: relative;
  margin-right: 31px;
}

header .nav-lang .btn-lang {
  padding: 15px 30px;
  font-weight: 700;
  color: #2fb7c5;
  font-size: 13px;
  position: relative;
  cursor: pointer;
}

header .nav-lang .btn-lang:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 1px;
  background: #eaeaea;
}

header .nav-lang .btn-lang:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 1px;
  background: #eaeaea;
}

header .nav-lang .drop-lang {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  padding-top: 3px;
  padding-bottom: 3px;
  background: #fff;
  display: none;
  border-radius: 0 0 5px 5px;
  -webkit-border-radius: 0 0 5px 5px;
  -moz-border-radius: 0 0 5px 5px;
  -ms-border-radius: 0 0 5px 5px;
  -o-border-radius: 0 0 5px 5px;
}

header .nav-lang .drop-lang li {
  font-size: 13px;
  text-align: center;
  padding: 5px;
  font-weight: 700;
  border-bottom: 1px solid #f5f5f5;
}

header .nav-lang .drop-lang li:last-child {
  border-bottom: none;
}

header .nav-lang .drop-lang li a {
  color: #2fb7c5;
}

header .btn-rounded {
  margin-top: -5px;
}

header .submenu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: none;
}

header .submenu:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  height: 100vh;
}

header .submenu:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: #eaeaea;
}

header .submenu a {
  font-size: 20px;
  color: #333333;
  line-height: 26px;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

header .submenu a:hover {
  color: #ff8e33;
}

header .submenu ul li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 24px;
}

header .submenu ul li:before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  background: url("../images/material/right-arrow.png") no-repeat center;
  width: 8px;
  height: 12px;
}

header .submenu .lsmenu {
  background: #fff;
  width: 1370px;
  margin: 0 auto;
  padding: 40px 100px 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

header .submenu .lsmenu.active {
  display: block;
}

header .submenu .inmenu {
  margin: 0 -15px;
}

header .submenu .inmenu:after {
  content: "";
  clear: both;
  display: block;
}

header .submenu .inmenu .lsinmenu {
  float: left;
  width: 33.3333333333333333%;
  padding: 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .btn-burgmenu {
  display: none;
}

header .box-sosmed {
  display: none;
}

/* middle
----------------------------------------------------------------------------------------------*/
.box-slidehome {
  position: relative;
  border-bottom: 1px solid #fff;
}

.box-slidehome .tgslider {
  position: absolute;
  bottom: 20px;
}

.box-slidehome .box-filter {
  width: 1370px;
  margin: 0 auto;
  position: absolute;
  bottom: -70px;
  left: 0;
  right: 0;
}

.slidehome .list {
  position: relative;
}

.slidehome .list h1 {
  margin-bottom: 32px;
}

.slidehome .list h5 {
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.slidehome .list .lineh {
  margin-bottom: 25px;
}

.slidehome .list .desc {
  position: absolute;
  width: 1370px;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}

.slidehome .slick-dots {
  position: absolute;
  bottom: 103px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
}

.slidehome .slick-dots li {
  float: left;
  margin: 0 12px;
}

.slidehome .slick-dots li button {
  font-size: 0;
  color: transparent;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  border: 3px solid #2fb7c5;
  width: 17px;
  height: 17px;
  padding: 0;
  background: #2fb7c5;
  cursor: pointer;
}

.slidehome .slick-dots li.slick-active button {
  background: #fff;
}

.box-form label {
  font-weight: 700;
  color: #999999;
  font-size: 13px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 7px;
}

.box-form input[type=text],
.box-form input[type=password],
.box-form input[type=email],
.box-form input[type=number],
.box-form textarea {
  background: transparent;
  border: 1px solid #2fb7c5;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  padding: 0 13px;
  height: 50px;
  line-height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

.box-form input[type=text]::-webkit-input-placeholder,
.box-form input[type=password]::-webkit-input-placeholder,
.box-form input[type=email]::-webkit-input-placeholder,
.box-form input[type=number]::-webkit-input-placeholder,
.box-form textarea::-webkit-input-placeholder {
  color: #cccccc;
}

.box-form input[type=text]:-moz-placeholder,
.box-form input[type=password]:-moz-placeholder,
.box-form input[type=email]:-moz-placeholder,
.box-form input[type=number]:-moz-placeholder,
.box-form textarea:-moz-placeholder {
  color: #cccccc;
}

.box-form input[type=text]::-moz-placeholder,
.box-form input[type=password]::-moz-placeholder,
.box-form input[type=email]::-moz-placeholder,
.box-form input[type=number]::-moz-placeholder,
.box-form textarea::-moz-placeholder {
  color: #cccccc;
}

.box-form input[type=text]:-ms-input-placeholder,
.box-form input[type=password]:-ms-input-placeholder,
.box-form input[type=email]:-ms-input-placeholder,
.box-form input[type=number]:-ms-input-placeholder,
.box-form textarea:-ms-input-placeholder {
  color: #cccccc;
}

.box-form textarea {
  resize: none;
  height: 107px;
}

.box-form .row_list .col, .box-form.row_list .col {
  margin-bottom: 45px;
}

.box-radio-button {
  padding-top: 10px;
}

.box-radio-button .radio-custom {
  float: left;
  margin-right: 35px;
}

.radio-custom {
  position: relative;
  padding-left: 30px;
  margin: 0;
  cursor: pointer;
  font-weight: 400 !important;
  font-size: 16px !important;
  color: #333 !important;
  text-transform: none !important;
}

.radio-custom input[type=radio] {
  background: url(../images/material/ic_radio.png) no-repeat top center;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
}

.radio-custom input[type=radio]:checked {
  background-position: bottom center;
}

.textstyle {
  position: relative;
}

.textstyle:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  background: url("../images/material/ic_date.png") no-repeat center left;
}

.textstyle input[type=text] {
  padding-right: 50px;
}

.box-filter {
  background: #fff;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  position: relative;
  padding: 40px 70px;
  z-index: 2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: 0 5px 40px -10px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 5px 40px -10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 40px -10px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0 5px 40px -10px rgba(0, 0, 0, 0.2);
  -o-box-shadow: 0 5px 40px -10px rgba(0, 0, 0, 0.2);
}

.box-filter:after {
  content: "";
  clear: both;
  display: block;
}

.box-filter label {
  font-weight: 700;
  color: #999999;
  font-size: 13px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 7px;
}

.box-filter input[type=text],
.box-filter input[type=password],
.box-filter input[type=email],
.box-filter input[type=number],
.box-filter textarea {
  background: #f5f5f5;
  border: none;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  padding: 0 13px;
  height: 50px;
  line-height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  min-width: 220px;
}

.box-filter input[type=text]::-webkit-input-placeholder,
.box-filter input[type=password]::-webkit-input-placeholder,
.box-filter input[type=email]::-webkit-input-placeholder,
.box-filter input[type=number]::-webkit-input-placeholder,
.box-filter textarea::-webkit-input-placeholder {
  color: #cccccc;
}

.box-filter input[type=text]:-moz-placeholder,
.box-filter input[type=password]:-moz-placeholder,
.box-filter input[type=email]:-moz-placeholder,
.box-filter input[type=number]:-moz-placeholder,
.box-filter textarea:-moz-placeholder {
  color: #cccccc;
}

.box-filter input[type=text]::-moz-placeholder,
.box-filter input[type=password]::-moz-placeholder,
.box-filter input[type=email]::-moz-placeholder,
.box-filter input[type=number]::-moz-placeholder,
.box-filter textarea::-moz-placeholder {
  color: #cccccc;
}

.box-filter input[type=text]:-ms-input-placeholder,
.box-filter input[type=password]:-ms-input-placeholder,
.box-filter input[type=email]:-ms-input-placeholder,
.box-filter input[type=number]:-ms-input-placeholder,
.box-filter textarea:-ms-input-placeholder {
  color: #cccccc;
}

.box-filter .left {
  width: 200px;
  margin-right: 30px;
}

.box-filter .left h3 {
  max-height: 80px;
  overflow: hidden;
}

.box-filter .center {
  float: left;
}

.box-filter .right {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  background: url("../images/material/bg-buttonfilter.png") no-repeat center;
  background-size: 100% 100%;
}

.box-filter .right input[type=submit] {
  width: 117px;
  height: 100%;
  border: none;
  background: url("../images/material/arr-right.png") no-repeat 50% center;
  cursor: pointer;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
  font-size: 0px;
  color: transparent;
}

.box-filter .right input[type=submit]:hover {
  background-position: 55% center;
}

.box-filter .selectcustom .btnselect {
  width: 230px;
}

.row {
  float: left;
  margin-right: 10px;
}

.row:last-child {
  margin-right: 0;
}

.selectcustom {
  position: relative;
}

.selectcustom .btnselect {
  background: #f5f5f5 url("../images/material/arr-select.png") no-repeat center right;
  font-size: 16px;
  color: #333;
  padding: 0 50px 0 13px;
  height: 50px;
  line-height: 50px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  min-width: 220px;
  max-width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  color: #cccccc;
  overflow: hidden;
}

.selectcustom .btnselect.med {
  min-width: 160px;
}

.selectcustom .btnselect.active {
  color: #333;
}

.selectcustom .dropselect {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #f5f5f5;
  z-index: 100;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  padding: 10px 5px;
  max-height: 200px;
  overflow: auto;
  display: none;
}

.selectcustom .dropselect .lsdropselect {
  padding: 10px 13px;
  cursor: pointer;
}

.selectcustom .dropselect .lsdropselect:hover, .selectcustom .dropselect .lsdropselect:focus, .selectcustom .dropselect .lsdropselect:active {
  background: #fff;
}

.selectcustom.strans .btnselect {
  background-color: transparent;
  border: 1px solid #2fb7c5;
}

.sec-service {
  background: #f7ede3;
  position: relative;
}

.sec-service .tgservicelist {
  position: absolute;
  top: 80%;
}

.sec-service .in-service {
  width: 970px;
  margin: 0 auto;
  text-align: center;
}

.sec-service .in-service:after {
  content: "";
  clear: both;
  display: block;
}

.sec-service .in-service h2 {
  margin-bottom: 25px;
}

.sec-service .in-service h5 {
  margin-bottom: 20px;
  text-transform: uppercase;
}

.sec-service .in-service p {
  line-height: 28px;
}

.sec-service .in-service .lineh {
  margin-bottom: 15px;
}

.sec-service .top-service {
  background: url("../images/material/bg-service.jpg") no-repeat center;
  background-size: cover;
  padding: 165px 0 110px;
  position: relative;
}

.sec-service .top-service .tgservice {
  position: absolute;
  top: 50%;
}

.servicelist:after {
  content: "";
  clear: both;
  display: block;
}

.servicelist .ls-service {
  float: left;
  width: 33.333333333333333%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  display: block;
  overflow: hidden;
}

.servicelist .ls-service:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  background: rgba(191, 138, 93, 0.4);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s all ease-out;
  -webkit-transition: 0.3s all ease-out;
  -moz-transition: 0.3s all ease-out;
  -ms-transition: 0.3s all ease-out;
  -o-transition: 0.3s all ease-out;
}

.servicelist .ls-service:after {
  content: "";
  position: absolute;
  top: -35px;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-top: 25px solid #f7ede3;
  border-left: 35px solid transparent;
  border-right: 35px solid transparent;
  margin: auto;
  opacity: 0;
  z-index: 4;
  transition: 0.3s all ease-out;
  -webkit-transition: 0.3s all ease-out;
  -moz-transition: 0.3s all ease-out;
  -ms-transition: 0.3s all ease-out;
  -o-transition: 0.3s all ease-out;
}

.servicelist .ls-service h5 {
  text-transform: uppercase;
  font-size: 28px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.servicelist .ls-service p {
  line-height: 23px;
  height: 46px;
  overflow: hidden;
}

.servicelist .ls-service figure {
  position: relative;
}

.servicelist .ls-service figure:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: url("../images/material/bg-btmservice.png") no-repeat bottom center;
  background-size: 100%;
  z-index: 1;
}

.servicelist .ls-service .icoservice {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 110px;
  height: 122px;
  z-index: 10;
}

.servicelist .ls-service .desc {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 80px 65px;
  z-index: 3;
  color: #fff;
  text-align: center;
}

.servicelist .ls-service:hover:before {
  opacity: 1;
  visibility: visible;
}

.servicelist .ls-service:hover:after {
  opacity: 1;
  top: 0;
}

.sec-fasility {
  padding: 105px 0 178px;
  background: url("../images/material/bg-facility.jpg") no-repeat center;
  background-size: cover;
  position: relative;
}

.sec-fasility .tgfacility {
  position: absolute;
  top: 20%;
}

.sec-fasility .ttl-fasility {
  text-align: center;
}

.sec-fasility .ttl-fasility h2 {
  margin-bottom: 65px;
}

.sec-fasility .ttl-fasility h5 {
  margin-bottom: 20px;
  text-transform: uppercase;
}

.sec-fasility .ttl-fasility .lineh {
  margin-bottom: 15px;
}

.btn-tab {
  margin-bottom: 75px;
}

.btn-tab.center {
  text-align: center;
}

.btn-tab .lsbtn-tab {
  display: inline-block;
  margin-right: 95px;
  font-weight: 900;
  text-transform: uppercase;
  color: #666666;
  font-size: 16px;
  cursor: pointer;
  position: relative;
  padding-bottom: 20px;
}

.btn-tab .lsbtn-tab:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #ff8e33;
  width: 0px;
  margin: 0 auto;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.btn-tab .lsbtn-tab .icwp {
  vertical-align: middle;
  margin-right: 12px;
  margin-top: -17px;
}

.btn-tab .lsbtn-tab:last-child {
  margin-right: 0;
}

.btn-tab .lsbtn-tab:hover:before, .btn-tab .lsbtn-tab.active:before {
  width: 100%;
}

.btn-tab .lsbtn-tab:hover .icwp, .btn-tab .lsbtn-tab.active .icwp {
  background-position: bottom center;
}

.btn-tab.lg .lsbtn-tab {
  font-size: 20px;
}

.ctn-tab:after {
  content: "";
  clear: both;
  display: block;
}

.ctn-tab .ls-tab {
  display: none;
}

.ctn-tab .ls-tab.active {
  display: block;
}

.sidefasility .left {
  width: 660px;
}

.sidefasility .right {
  width: 500px;
}

.sidefasility .right .slidecapsfasility .list {
  display: table;
  min-height: 490px;
}

.sidefasility .right .slidecapsfasility .list .inlist {
  display: table-cell;
  vertical-align: middle;
}

.slidefasility {
  box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2);
  -o-box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidefasility .list figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidefasility .slick-dots {
  position: absolute;
  top: 100%;
  right: 80px;
  margin-top: 20px;
}

.slidefasility .slick-dots li {
  float: left;
  margin: 0 0 10px;
  margin-right: 27px;
}

.slidefasility .slick-dots li button {
  font-size: 0;
  color: transparent;
  background: #c08c5e;
  border: 3px solid #c08c5e;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  -ms-border-radius: 6px;
  -o-border-radius: 6px;
  padding: 0;
  width: 14px;
  height: 14px;
  cursor: pointer;
}

.slidefasility .slick-dots li:last-child {
  margin-right: 0;
}

.slidefasility .slick-dots li.slick-active button {
  background: transparent;
}

.slidecapsfasility .list h3 {
  font-size: 38px;
  margin-bottom: 30px;
}

.slidecapsfasility .list p {
  font-size: 16px;
  line-height: 28px;
  margin-bottom: 25px;
}

.sec-about {
  position: relative;
  padding: 140px 0 150px;
  min-height: 730px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.sec-about .tgabout {
  position: absolute;
  top: 40%;
}

.sec-about > figure {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  left: 34%;
}

.sec-about > figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top left;
}

.sec-about .desc-abouthome {
  width: 520px;
  float: left;
}

.sec-about .desc-abouthome h5 {
  margin-bottom: 20px;
  text-transform: uppercase;
}

.sec-about .desc-abouthome h2 {
  line-height: 57px;
  margin-bottom: 35px;
}

.sec-about .desc-abouthome p {
  line-height: 28px;
  color: #666666;
  margin-bottom: 50px;
}

.sec-about .desc-abouthome .lineh {
  margin-bottom: 15px;
}

.sec-news {
  position: relative;
  padding-bottom: 105px;
}

.sec-news:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 105px;
  background: #f3eae1;
  z-index: -1;
}

.sec-news .tgnews {
  position: absolute;
  top: 40%;
}

.sec-news .lg-news {
  width: 594px;
  float: left;
}

.sec-news .sm-news {
  width: 600px;
  float: right;
}

.sec-news .sm-news .ls-news {
  width: 282px;
  float: left;
  margin-right: 35px;
  background: #fff;
  box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -o-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.sec-news .sm-news .ls-news:last-child {
  margin-right: 0;
}

.sec-news .sm-news .ls-news figure {
  position: relative;
}

.sec-news .sm-news .ls-news figure:before {
  content: "";
  position: absolute;
  bottom: -17px;
  left: 0;
  width: 62px;
  height: 62px;
  background: url("../images/material/plusblue.png") no-repeat center;
  background-size: 100%;
}

.sec-news .sm-news .ls-news figure img {
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  width: 100%;
}

.sec-news .sm-news .ls-news .desc {
  padding: 26px 20px 40px;
}

.sec-news .sm-news .ls-news .desc h6 {
  color: #111111;
  line-height: 28px;
  height: 84px;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 15px;
}

.sec-news .sm-news .ls-news .desc span {
  font-size: 13px;
  color: #999999;
  font-weight: 700;
  display: block;
  margin-bottom: 5px;
}

.slidenews {
  box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -o-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidenews .list {
  position: relative;
}

.slidenews .list figure {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidenews .list figure:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  background: url("../images/material/bg-btmnews.png") no-repeat bottom center;
  background-size: 100%;
  z-index: 1;
}

.slidenews .list figure img {
  width: 100%;
}

.slidenews .list .desc {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 20px 25px;
  z-index: 2;
  color: #fff;
  font-weight: 700;
  font-size: 19px;
  line-height: 28px;
}

.slidenews .slick-dots {
  position: absolute;
  bottom: -34px;
}

.slidenews .slick-dots li {
  float: left;
  margin: 0;
  margin-right: 27px;
}

.slidenews .slick-dots li button {
  font-size: 0;
  color: transparent;
  background: #c08c5e;
  border: 3px solid #c08c5e;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  -ms-border-radius: 6px;
  -o-border-radius: 6px;
  padding: 0;
  width: 14px;
  height: 14px;
  cursor: pointer;
}

.slidenews .slick-dots li:last-child {
  margin-right: 0;
}

.slidenews .slick-dots li.slick-active button {
  background: transparent;
}

.content {
  padding: 130px 0 80px;
  position: relative;
  background: url("../images/material/bg-content-top.png") no-repeat top right, url("../images/material/bg-content-bottom.png") no-repeat bottom left;
}

.content:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: #f5efea;
  background: -moz-linear-gradient(45deg, #f5efea 0%, #f5efea 43%, #e4c9b1 100%);
  background: -webkit-linear-gradient(45deg, #f5efea 0%, #f5efea 43%, #e4c9b1 100%);
  background: linear-gradient(45deg, #f5efea 0%, #f5efea 43%, #e4c9b1 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5efea', endColorstr='#e4c9b1',GradientType=1 );
}

.ttlcontent {
  text-align: center;
  margin-bottom: 40px;
}

.ttlcontent h2 {
  margin-bottom: 25px;
}

.ttlcontent h5 {
  margin-bottom: 20px;
  text-transform: uppercase;
}

.ttlcontent .lineh {
  margin-bottom: 18px;
}

.contentwp h2 {
  line-height: 1.2;
}

.contentwp p {
  line-height: 28px;
  margin-bottom: 25px;
}

.contentwp figure {
  margin-bottom: 60px;
}

.contentwp ol {
  counter-reset: li;
}

.contentwp ol > li {
  padding-left: 35px;
  position: relative;
  line-height: 28px;
}

.contentwp ol > li:before {
  content: counter(li);
  counter-increment: li;
  position: absolute;
  top: 0;
  left: 0;
}

.contentwp ul > li {
  padding-left: 35px;
  position: relative;
  line-height: 28px;
}

.contentwp ul > li:before {
  content: "";
  position: absolute;
  top: 9px;
  left: 10px;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  background: #2fb7c5;
}

.box-acc .ls-acc {
  background: #fff;
  border-bottom: 1px solid #eaeaea;
  z-index: 1;
  position: relative;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.box-acc .ls-acc p {
  line-height: 28px;
  margin-bottom: 30px;
}

.box-acc .ls-acc .btn-acc {
  font-size: 23px;
  font-weight: 700;
  padding: 30px 50px;
  border-bottom: 1px solid #eaeaea;
  position: relative;
  cursor: pointer;
  transition: 0.3s all ease-out;
  -webkit-transition: 0.3s all ease-out;
  -moz-transition: 0.3s all ease-out;
  -ms-transition: 0.3s all ease-out;
  -o-transition: 0.3s all ease-out;
}

.box-acc .ls-acc .btn-acc .lnacc {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 60px;
}

.box-acc .ls-acc .btn-acc .lnacc:before, .box-acc .ls-acc .btn-acc .lnacc:after {
  content: "";
  width: 24px;
  height: 6px;
  background: #2fb7c5;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.box-acc .ls-acc .btn-acc .lnacc:after {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}

.box-acc .ls-acc .btn-acc:hover {
  background: #efefef;
}

.box-acc .ls-acc .ctn-acc {
  padding: 30px 50px 50px;
  display: none;
}

.box-acc .ls-acc .ctn-acc * {
  word-wrap: break-word;
}

.box-acc .ls-acc:first-child {
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
}

.box-acc .ls-acc:first-child .btn-acc {
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
}

.box-acc .ls-acc:last-child {
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.box-acc .ls-acc:last-child .btn-acc {
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.box-acc .ls-acc.active {
  margin-left: -40px;
  margin-right: -40px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  z-index: 2;
  box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.1);
}

.box-acc .ls-acc.active .btn-acc {
  background: #efefef;
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
}

.box-acc .ls-acc.active .btn-acc .lnacc:after {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
}

.box-acc .ls-acc.active .ctn-acc {
  display: block;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.boxsliderewards {
  overflow: hidden;
}

.sliderewards .list {
  position: relative;
  z-index: 2;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  margin: 250px 0;
  transform-origin: 50% 50%;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  overflow: hidden;
  z-index: -4;
}

.sliderewards .list figure {
  margin-bottom: 0;
  text-align: center;
}

.sliderewards .list figure img {
  width: 100%;
  box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.1);
}

.sliderewards .list.slick-current {
  transform: scale(3);
  -webkit-transform: scale(3);
  -moz-transform: scale(3);
  -ms-transform: scale(3);
  -o-transform: scale(3);
  z-index: 2;
}

.sliderewards .list.prev1 {
  transform: scale(2.5);
  -webkit-transform: scale(2.5);
  -moz-transform: scale(2.5);
  -ms-transform: scale(2.5);
  -o-transform: scale(2.5);
  z-index: -1;
}

.sliderewards .list.prev2 {
  transform: scale(2);
  -webkit-transform: scale(2);
  -moz-transform: scale(2);
  -ms-transform: scale(2);
  -o-transform: scale(2);
  z-index: -2;
}

.sliderewards .list.prev3 {
  transform: scale(1.5);
  -webkit-transform: scale(1.5);
  -moz-transform: scale(1.5);
  -ms-transform: scale(1.5);
  -o-transform: scale(1.5);
  z-index: -3;
}

.sliderewards .list.next1 {
  transform: scale(2.5);
  -webkit-transform: scale(2.5);
  -moz-transform: scale(2.5);
  -ms-transform: scale(2.5);
  -o-transform: scale(2.5);
  z-index: -1;
}

.sliderewards .list.next2 {
  transform: scale(2);
  -webkit-transform: scale(2);
  -moz-transform: scale(2);
  -ms-transform: scale(2);
  -o-transform: scale(2);
  z-index: -2;
}

.sliderewards .list.next3 {
  transform: scale(1.5);
  -webkit-transform: scale(1.5);
  -moz-transform: scale(1.5);
  -ms-transform: scale(1.5);
  -o-transform: scale(1.5);
  z-index: -3;
}

.sliderewards.minseven .list {
  margin-top: 200px;
  margin-bottom: 200px;
}

.sliderewards.minseven .list.slick-current {
  transform: scale(2);
  -webkit-transform: scale(2);
  -moz-transform: scale(2);
  -ms-transform: scale(2);
  -o-transform: scale(2);
  z-index: 2;
}

.sliderewards.minseven .list.prev1 {
  transform: scale(1.8);
  -webkit-transform: scale(1.8);
  -moz-transform: scale(1.8);
  -ms-transform: scale(1.8);
  -o-transform: scale(1.8);
  z-index: -1;
}

.sliderewards.minseven .list.prev2 {
  transform: scale(1.4);
  -webkit-transform: scale(1.4);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  z-index: -2;
}

.sliderewards.minseven .list.prev3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minseven .list.next1 {
  transform: scale(1.8);
  -webkit-transform: scale(1.8);
  -moz-transform: scale(1.8);
  -ms-transform: scale(1.8);
  -o-transform: scale(1.8);
  z-index: -1;
}

.sliderewards.minseven .list.next2 {
  transform: scale(1.4);
  -webkit-transform: scale(1.4);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  z-index: -2;
}

.sliderewards.minseven .list.next3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minfive .list {
  margin-top: 150px;
  margin-bottom: 150px;
}

.sliderewards.minfive .list.slick-current {
  transform: scale(1.6);
  -webkit-transform: scale(1.6);
  -moz-transform: scale(1.6);
  -ms-transform: scale(1.6);
  -o-transform: scale(1.6);
  z-index: 2;
}

.sliderewards.minfive .list.prev1 {
  transform: scale(1.4);
  -webkit-transform: scale(1.4);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  z-index: -1;
}

.sliderewards.minfive .list.prev2 {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  z-index: -2;
}

.sliderewards.minfive .list.prev3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minfive .list.next1 {
  transform: scale(1.4);
  -webkit-transform: scale(1.4);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -o-transform: scale(1.4);
  z-index: -1;
}

.sliderewards.minfive .list.next2 {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  z-index: -2;
}

.sliderewards.minfive .list.next3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minfour .list {
  margin-top: 150px;
  margin-bottom: 150px;
}

.sliderewards.minfour .list.slick-current {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  z-index: 2;
}

.sliderewards.minfour .list.prev1 {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  z-index: -1;
}

.sliderewards.minfour .list.prev2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minfour .list.prev3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minfour .list.next1 {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  z-index: -1;
}

.sliderewards.minfour .list.next2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minfour .list.next3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minthree .list {
  margin-top: 150px;
  margin-bottom: 150px;
}

.sliderewards.minthree .list figure {
  text-align: center;
}

.sliderewards.minthree .list figure img {
  width: auto;
  display: inline-block;
}

.sliderewards.minthree .list.slick-current {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  z-index: 2;
}

.sliderewards.minthree .list.prev1 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -1;
}

.sliderewards.minthree .list.prev2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minthree .list.prev3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minthree .list.next1 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -1;
}

.sliderewards.minthree .list.next2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minthree .list.next3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minduo .list {
  margin-top: 50px;
  margin-bottom: 50px;
}

.sliderewards.minduo .list figure img {
  width: auto;
  display: inline-block;
  max-height: 500px;
}

.sliderewards.minduo .list.slick-current {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: 2;
}

.sliderewards.minduo .list.prev1 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -1;
}

.sliderewards.minduo .list.prev2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minduo .list.prev3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.sliderewards.minduo .list.next1 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -1;
}

.sliderewards.minduo .list.next2 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -2;
}

.sliderewards.minduo .list.next3 {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  z-index: -3;
}

.slidecapsrewards {
  width: 770px;
  margin: 0 auto 200px;
  position: relative;
}

.slidecapsrewards:before {
  content: "";
  position: absolute;
  bottom: -90px;
  height: 66px;
  width: 2px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: #e6ceb9;
}

.slidecapsrewards .list {
  text-align: center;
  color: #666666;
}

.slidecapsrewards .list h4 {
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.slidecapsrewards .list p {
  font-size: 16px;
}

.slidecapsrewards .slick-prev, .slidecapsrewards .slick-next {
  position: absolute;
  bottom: -77px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  padding: 0;
  font-size: 0;
  color: transparent;
  border: none;
  width: 40px;
  height: 40px;
  border: 2px solid #ff8e33;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  cursor: pointer;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.slidecapsrewards .slick-prev {
  background: url("../images/material/prev-slide.png") no-repeat center;
  margin-left: -35px;
}

.slidecapsrewards .slick-prev:hover {
  margin-left: -40px;
}

.slidecapsrewards .slick-next {
  background: url("../images/material/next-slide.png") no-repeat center;
  margin-left: 35px;
}

.slidecapsrewards .slick-next:hover {
  margin-left: 40px;
}

.milestoneimg img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
}

.servicerow .ls-servicerow {
  margin-bottom: 120px;
  /*p{max-height: 112px; overflow: hidden;}*/
}

.servicerow .ls-servicerow:after {
  content: "";
  clear: both;
  display: block;
}

.servicerow .ls-servicerow h5 {
  text-transform: uppercase;
  color: #2fb7c5;
}

.servicerow .ls-servicerow .ttlservicerow {
  position: relative;
  padding-top: 0;
  padding-bottom: 20px;
  padding-left: 52px;
  margin-bottom: 25px;
}

.servicerow .ls-servicerow .ttlservicerow:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #ff8e33;
}

.servicerow .ls-servicerow .ttlservicerow .icwp {
  position: absolute;
  top: 0;
  left: 3px;
  bottom: 0;
}

.servicerow .ls-servicerow .ttlservicerow.noico {
  padding-left: 0;
}

.servicerow .ls-servicerow .desc {
  float: left;
  width: 40%;
  padding-top: 40px;
}

.servicerow .ls-servicerow .img {
  float: right;
  width: 53%;
  text-align: right;
}

.servicerow .ls-servicerow .img figure {
  margin: 0 0 28px;
}

.servicerow .ls-servicerow .img figure img {
  width: 100%;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  box-shadow: 0 5px 50px 0 rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0 5px 50px 0 rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 5px 50px 0 rgba(0, 0, 0, 0.15);
  -ms-box-shadow: 0 5px 50px 0 rgba(0, 0, 0, 0.15);
  -o-box-shadow: 0 5px 50px 0 rgba(0, 0, 0, 0.15);
}

.servicerow .ls-servicerow:nth-child(even) {
  text-align: right;
}

.servicerow .ls-servicerow:nth-child(even) .ttlservicerow {
  padding-left: 0;
  padding-right: 52px;
}

.servicerow .ls-servicerow:nth-child(even) .ttlservicerow .icwp {
  left: auto;
  right: 0;
}

.servicerow .ls-servicerow:nth-child(even) .ttlservicerow.noico {
  padding-right: 0;
}

.servicerow .ls-servicerow:nth-child(even) .desc {
  float: right;
}

.servicerow .ls-servicerow:nth-child(even) .img {
  float: left;
  text-align: left;
}

.slidecontent {
  margin-bottom: 90px;
  box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 50px -5px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidecontent .list figure {
  margin: 0;
}

.slidecontent .list figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidecontent .slick-dots {
  position: absolute;
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
}

.slidecontent .slick-dots li {
  float: left;
  margin: 0;
  margin-right: 27px;
  padding: 0;
}

.slidecontent .slick-dots li:before {
  display: none;
}

.slidecontent .slick-dots li button {
  font-size: 0;
  color: transparent;
  background: #2fb7c5;
  border: 3px solid #2fb7c5;
  border-radius: 7px;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  padding: 0;
  width: 17px;
  height: 17px;
  cursor: pointer;
}

.slidecontent .slick-dots li:last-child {
  margin-right: 0;
}

.slidecontent .slick-dots li.slick-active button {
  background: transparent;
}

.box-spesialis {
  border-top: 1px solid #bcb2aa;
  padding-top: 93px;
}

.box-spesialis:after {
  content: "";
  clear: both;
  display: block;
}

.box-spesialis .left {
  width: 660px;
}

.box-spesialis .right {
  width: 475px;
  padding-top: 70px;
}

.slidespesialis figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.slidecapsspesialis {
  position: relative;
}

.slidecapsspesialis:before {
  content: "";
  position: absolute;
  bottom: -90px;
  height: 66px;
  width: 2px;
  left: 58px;
  margin: 0 auto;
  background: #e6ceb9;
}

.slidecapsspesialis h3 {
  margin-bottom: 30px;
}

.slidecapsspesialis p {
  max-height: 170px;
  overflow: hidden;
}

.slidecapsspesialis .list {
  padding-bottom: 50px;
}

.slidecapsspesialis .slick-prev, .slidecapsspesialis .slick-next {
  position: absolute;
  bottom: -80px;
  padding: 0;
  font-size: 0;
  color: transparent;
  border: none;
  width: 40px;
  height: 40px;
  border: 2px solid #ff8e33;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  cursor: pointer;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.slidecapsspesialis .slick-prev {
  background: url("../images/material/prev-slide.png") no-repeat center;
  left: 0;
}

.slidecapsspesialis .slick-prev:hover {
  left: -5px;
}

.slidecapsspesialis .slick-next {
  background: url("../images/material/next-slide.png") no-repeat center;
  left: 77px;
}

.slidecapsspesialis .slick-next:hover {
  left: 82px;
}

.box-toplist {
  border-top: 1px solid #bcb2aa;
  padding-top: 93px;
}

.classlist {
  margin: 0 -27px 80px;
  position: relative;
  padding-bottom: 0;
}

.classlist:after {
  content: "";
  clear: both;
  display: block;
}

.classlist .ls-classlist {
  float: left;
  padding: 0 27px 40px;
  width: 25%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.classlist .ls-classlist figure {
  margin: 0;
  position: relative;
}

.classlist .ls-classlist figure:before {
  content: "";
  position: absolute;
  bottom: -40px;
  left: 30px;
  border-bottom: 18px solid #c08c5e;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.classlist .ls-classlist figure:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 2;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.classlist .ls-classlist figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  width: 100%;
}

.classlist .ls-classlist figure .caps {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  color: #fff;
  padding: 20px;
}

.classlist .ls-classlist figure .caps h6 {
  float: left;
  vertical-align: bottom;
  display: inline-block;
}

.classlist .ls-classlist figure .caps .link-plus {
  float: right;
  vertical-align: bottom;
  display: inline-block;
}

.classlist .ls-classlist .desc {
  position: absolute;
  top: 100%;
  left: 0;
  width: 400%;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
  padding-left: 27px;
  padding-right: 27px;
  z-index: 10;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.classlist .ls-classlist .ttlclass {
  background: #c08c5e;
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  padding: 13px 90px;
  font-weight: 700;
  font-size: 23px;
}

.classlist .ls-classlist .descclass {
  background: #fff;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
  padding: 20px 90px 35px;
}

.classlist .ls-classlist:nth-child(4n+1) {
  clear: both;
}

.classlist .ls-classlist:nth-child(4n+2) .desc {
  left: -100%;
}

.classlist .ls-classlist:nth-child(4n+3) .desc {
  left: -200%;
}

.classlist .ls-classlist:nth-child(4n) .desc {
  left: -300%;
}

.classlist .ls-classlist.active figure:before {
  opacity: 1;
  visibility: visible;
}

.classlist .ls-classlist.active .desc {
  opacity: 1;
  visibility: visible;
}

.classlist .ls-classlist:hover figure:before {
  opacity: 1;
  visibility: visible;
}

.classlist .ls-classlist:hover .desc {
  opacity: 1;
  visibility: visible;
}

.tanyadokter {
  padding-bottom: 540px;
}

.tanyadokter .intanyadokter {
  position: relative;
  z-index: 2;
}

.tanyadokter .fbtanyadokter {
  position: absolute;
  bottom: 0;
  margin: 0 !important;
  padding-top: 320px;
  background: url("../images/material/bg-line2.png") no-repeat bottom center;
}

.box-lsdokter {
  margin-top: 96px;
}

.box-lsdokter .lsdokter {
  margin-bottom: 100px;
}

.box-lsdokter .lsdokter:after {
  content: "";
  clear: both;
  display: block;
}

.box-lsdokter .lsdokter h3 {
  margin-bottom: 35px;
  font-size: 38px;
}

.box-lsdokter .lsdokter .img {
  width: 340px;
  float: left;
}

.box-lsdokter .lsdokter .img figure {
  margin: 0;
}

.box-lsdokter .lsdokter .img figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.box-lsdokter .lsdokter .desc {
  width: 500px;
  float: right;
  padding-top: 40px;
}

.box-lsdokter .lsdokter .desc .tbdiv {
  margin-bottom: 50px;
  color: #666666;
}

.tbdiv {
  display: table;
  width: 100%;
}

.tbdiv:after {
  content: "";
  clear: both;
  display: block;
}

.tbdiv > div {
  display: table-row;
}

.tbdiv > div:after {
  content: "";
  clear: both;
  display: block;
}

.tbdiv .lf, .tbdiv .rg {
  display: table-cell;
  padding-bottom: 10px;
}

.tbdiv .lf {
  width: 145px;
}

.tbdiv .rg {
  position: relative;
  padding-left: 10px;
}

.tbdiv .rg:before {
  content: ":";
  position: absolute;
  top: 0;
  left: 0;
}

.bysidebtn:after {
  content: "";
  clear: both;
  display: block;
}

.bysidebtn .left, .bysidebtn .right {
  width: 50%;
}

.bysidebtn .right {
  text-align: right;
}

.detaildokter h3 {
  margin: 25px 0 30px;
}

.detaildokter h6 {
  color: #666666;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-size: 20px;
}

.detaildokter figure {
  margin: 0 0 34px;
}

.detaildokter figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.detaildokter p {
  font-size: 19px;
  color: #666666;
}

.detaildokter .bysidebtn {
  margin-bottom: 75px;
  font-size: 19px;
  color: #666666;
}

.detaildokter .bysidebtn a {
  font-size: 19px;
  color: #666666;
}

.detaildokter .bysidebtn .right {
  text-align: left;
}

.detaildokter > .left {
  width: 37.39%;
}

.detaildokter > .right {
  width: 56.91%;
}

.box-roundedgrey {
  margin-bottom: 45px;
}

.box-roundedgrey .ttlroundedgrey {
  background: #c08c5e;
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  color: #fff;
  padding: 20px 35px;
  font-weight: 700;
  font-size: 23px;
}

.box-roundedgrey .descroundedgrey {
  padding: 25px 35px;
  background: #fff;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.promolg {
  margin-bottom: 72px;
}

.promolg:after {
  content: "";
  clear: both;
  display: block;
}

.promolg figure {
  margin: 0;
}

.promolg figure img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.promolg h3 {
  margin-bottom: 20px;
  font-size: 29px;
}

.promolg span {
  font-weight: 700;
  display: block;
  color: #999999;
  font-size: 16px;
  margin-bottom: 10px;
}

.promolg p {
  margin-bottom: 30px;
}

.promolg .lineh {
  margin-bottom: 15px;
}

.promolg .left {
  width: 530px;
}

.promolg .right {
  width: 635px;
  padding-top: 28px;
}

.promolist {
  margin: 0 -17px 85px;
}

.promolist:after {
  content: "";
  clear: both;
  display: block;
}

.promolist .ls-promolist {
  width: 25%;
  float: left;
  padding: 0 17px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  position: relative;
}

.promolist .ls-promolist:before {
  content: "";
  position: absolute;
  top: 0;
  left: 17px;
  bottom: 0;
  right: 17px;
  box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  -o-box-shadow: 0 10px 5px 0 rgba(0, 0, 0, 0.05);
  z-index: 0;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.promolist .ls-promolist h6 {
  margin-bottom: 10px;
  line-height: 28px;
  height: 84px;
  overflow: hidden;
}

.promolist .ls-promolist p {
  line-height: 28px;
  height: 56px;
  overflow: hidden;
}

.promolist .ls-promolist span {
  font-weight: 700;
  display: block;
  color: #999999;
  font-size: 13px;
  margin-bottom: 10px;
}

.promolist .ls-promolist figure {
  order: 1;
  margin: 0;
  position: relative;
}

.promolist .ls-promolist figure:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -16px;
  width: 62px;
  height: 62px;
  background: url("../images/material/plusblue.png") no-repeat center;
  background-size: 100%;
  z-index: 3;
}

.promolist .ls-promolist figure img {
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
}

.promolist .ls-promolist .desc {
  order: 2;
  background: #fff;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
  padding: 42px 20px 30px;
  position: relative;
}

.promolist .ls-promolist:nth-child(4n+1) {
  clear: both;
}

.promolist .ls-promolist:nth-child(even) {
  padding-top: 45px;
}

.promolist .ls-promolist:nth-child(even):before {
  top: 45px;
}

.promolist .ls-promolist:nth-child(even) figure {
  order: 2;
}

.promolist .ls-promolist:nth-child(even) figure:before {
  bottom: auto;
  left: auto;
  right: 0;
  top: -16px;
}

.promolist .ls-promolist:nth-child(even) figure img {
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
}

.promolist .ls-promolist:nth-child(even) .desc {
  order: 1;
  border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -moz-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  padding-top: 30px;
  padding-bottom: 42px;
}

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

.pagination:after {
  content: "";
  clear: both;
  display: block;
}

.pagination a {
  display: inline-block;
  width: 44px;
  height: 44px;
  line-height: 44px;
  background: transparent;
  color: #777777;
  font-weight: 600;
  margin: 0 5px;
  position: relative;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
  vertical-align: middle;
}

.pagination a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #2fb7c5;
  opacity: 0;
  transform: scale(0);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  z-index: -1;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.pagination a.prev, .pagination a.next {
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  border: 1px solid #acacac;
  position: relative;
  width: 38px;
  height: 38px;
}

.pagination a.prev span, .pagination a.next span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.pagination a.prev span:before, .pagination a.prev span:after, .pagination a.next span:before, .pagination a.next span:after {
  content: "";
  display: block;
  width: 13px;
  height: 4px;
  background: #2fb7c5;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transition: 0.2s background ease-out;
  -webkit-transition: 0.2s background ease-out;
  -moz-transition: 0.2s background ease-out;
  -ms-transition: 0.2s background ease-out;
  -o-transition: 0.2s background ease-out;
}

.pagination a.prev:before, .pagination a.next:before {
  display: none;
}

.pagination a.prev:hover, .pagination a.next:hover {
  background: #2fb7c5;
}

.pagination a.prev:hover span:before, .pagination a.prev:hover span:after, .pagination a.next:hover span:before, .pagination a.next:hover span:after {
  background: #fff;
}

.pagination a.next span:after {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}

.pagination a:hover, .pagination a.active {
  color: #fff;
}

.pagination a:hover:before, .pagination a.active:before {
  opacity: 1;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
}

.pagination a.active {
  margin: 0 18px;
  font-weight: 700;
}

.box-bysidecontent {
  margin-bottom: 100px;
}

.box-bysidecontent:after {
  content: "";
  clear: both;
  display: block;
}

.box-bysidecontent .lineh {
  margin-bottom: 10px;
}

.box-bysidecontent h2 {
  margin-bottom: 20px;
}

.box-bysidecontent h5 {
  margin-bottom: 10px;
}

.box-bysidecontent p {
  margin-bottom: 30px;
}

.box-bysidecontent figure {
  margin: 0;
}

.box-bysidecontent figure img {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}

.box-bysidecontent .left {
  width: 24.23%;
}

.box-bysidecontent .right {
  width: 70.8%;
  padding-top: 15px;
}

.box-bysidecontent.margtop {
  margin-top: 125px;
}

.mapcontact {
  margin: 30px -50px -30px;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
  overflow: hidden;
}

.mapcontact .map_contact {
  height: 445px;
  border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
  overflow: hidden;
}

.frm-side {
  position: relative;
  min-height: 500px;
}

.frm-side:after {
  content: "";
  clear: both;
  display: block;
}

.frm-side figure {
  margin: 0;
}

.frm-side h2 {
  margin-bottom: 20px;
  height: 120px;
  overflow: hidden;
}

.frm-side h5 {
  margin-bottom: 15px;
}

.frm-side p {
  line-height: 28px;
  color: #666666;
  height: 84px;
  overflow: hidden;
}

.frm-side .left {
  width: 57.26%;
  padding-top: 95px;
}

.frm-side .left .lineh {
  margin-bottom: 15px;
}

.frm-side .right {
  width: 47.777777777777%;
  position: absolute;
  bottom: -80px;
  right: -5%;
}

.dotsmilestone {
  position: relative;
  margin-bottom: 40px;
}

.dotsmilestone:before {
  content: "";
  position: absolute;
  bottom: 5px;
  left: 0;
  right: 0;
  height: 2px;
  background: #2fb7c5;
  z-index: 1;
}

.dotsmilestone .slick-list {
  z-index: 2;
}

.dotsmilestone .list {
  position: relative;
  text-align: center;
  padding-bottom: 20px;
  font-size: 13px;
  cursor: pointer;
  height: 39px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.dotsmilestone .list:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 12px;
  height: 12px;
  border: 3px solid #2fb7c5;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
}

.dotsmilestone .list.slick-current {
  font-weight: 700;
  font-size: 19px;
  color: #ff8e33;
}

.dotsmilestone .list.slick-current:before {
  background: #2fb7c5;
}

.dotsmilestone .slick-prev, .dotsmilestone .slick-next {
  position: absolute;
  bottom: -10px;
  font-size: 0;
  color: transparent;
  background: transparent;
  border: 2px solid #ff8e33;
  padding: 0;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  width: 35px;
  height: 35px;
  cursor: pointer;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.dotsmilestone .slick-prev.slick-disabled, .dotsmilestone .slick-next.slick-disabled {
  opacity: 0.5;
}

.dotsmilestone .slick-prev {
  left: -60px;
  background: url("../images/material/prev-slide.png") no-repeat center;
}

.dotsmilestone .slick-prev:hover {
  left: -65px;
}

.dotsmilestone .slick-next {
  right: -60px;
  background: url("../images/material/next-slide.png") no-repeat center;
}

.dotsmilestone .slick-next:hover {
  right: -65px;
}

.capsmilestone h2 {
  margin-bottom: 15px;
}

.capsmilestone h5 {
  margin-bottom: 10px;
}

.capsmilestone .lineh {
  margin-bottom: 15px;
}

.box-slide-detail .leftcapsbeauty {
  width: 435px;
  float: left;
  border-right: 1px solid #e5cdb8;
  padding-top: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 20px;
}

.box-slide-detail .leftcapsbeauty .ttlrescaps {
  display: none;
}

.box-slide-detail .slideimgdetail {
  width: 870px;
  float: right;
}

.box-capsbeauty .btncapsbeauty {
  display: none;
}

.capsbeauty .list {
  font-size: 16px;
  font-weight: 700;
  color: #333333;
  line-height: 24px;
  margin-bottom: 25px;
  position: relative;
  cursor: pointer;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.capsbeauty .list:before {
  content: "";
  width: 8px;
  height: 8px;
  background: #2fb7c5;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  position: absolute;
  top: 8px;
  left: 10px;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.capsbeauty .list:hover {
  color: #ff8e33;
}

.capsbeauty .list.active {
  color: #ff8e33;
  font-size: 19px;
  padding-left: 42px;
}

.capsbeauty .list.active:before {
  opacity: 1;
  visibility: visible;
  left: 18px;
}

.slideimgdetail {
  position: relative;
}

.slideimgdetail:before {
  content: "";
  position: absolute;
  bottom: 100px;
  right: 0;
  width: 66px;
  height: 2px;
  background: #e6ceb9;
}

.slideimgdetail figure {
  margin-bottom: 40px;
}

.slideimgdetail h5 {
  margin-bottom: 15px;
}

.slideimgdetail .desc {
  padding-right: 170px;
  min-height: 140px;
}

.slideimgdetail .slick-prev, .slideimgdetail .slick-next {
  font-size: 0;
  color: transparent;
  padding: 0;
  width: 40px;
  height: 40px;
  border: 2px solid #ff8e33;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  cursor: pointer;
  position: absolute;
  right: 13px;
  z-index: 2;
  transition: 0.2s all ease-out;
  -webkit-transition: 0.2s all ease-out;
  -moz-transition: 0.2s all ease-out;
  -ms-transition: 0.2s all ease-out;
  -o-transition: 0.2s all ease-out;
}

.slideimgdetail .slick-prev.slick-disabled, .slideimgdetail .slick-next.slick-disabled {
  opacity: 0.5;
}

.slideimgdetail .slick-prev {
  background: url("../images/material/prev-slide.png") no-repeat center;
  bottom: 120px;
}

.slideimgdetail .slick-prev:hover {
  bottom: 125px;
}

.slideimgdetail .slick-next {
  background: url("../images/material/next-slide.png") no-repeat center;
  bottom: 43px;
}

.slideimgdetail .slick-next:hover {
  bottom: 38px;
}

.grid-accordion {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  margin-bottom: 100px;
}

.grid-accordion h4 {
  font-weight: 700;
}

.grid-accordion p {
  height: 56px;
  overflow: hidden;
}

.grid-accordion .ga-panel {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.grid-accordion .ga-panel:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  visibility: visible;
  opacity: 1;
  transition: 0.5s all ease-out;
  -webkit-transition: 0.5s all ease-out;
  -moz-transition: 0.5s all ease-out;
  -ms-transition: 0.5s all ease-out;
  -o-transition: 0.5s all ease-out;
  z-index: 2;
}

.grid-accordion .ga-panel > a {
  display: block;
  position: relative;
}

.grid-accordion .ga-panel > a:before {
  content: "";
  background: url("../images/material/fg-fasilitas.png") no-repeat bottom center;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
}

.grid-accordion .ga-panel img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.grid-accordion .ga-panel.ga-opened:before {
  opacity: 0;
  visibility: hidden;
}

.grid-accordion .ga-panel.ga-opened > a:before {
  opacity: 1;
}

.grid-accordion .ttl-named {
  font-size: 23px;
  font-weight: 700;
  line-height: 36px;
  padding: 24px 20px;
}

.grid-accordion .ga-layer {
  z-index: 2;
  color: #fff;
  /*&.ga-white{background: transparent;}*/
}

.grid-accordion .ga-layer.ga-padding {
  padding: 0 50px 0;
}

.grid-accordion .ga-pagination-button {
  width: 17px;
  height: 17px;
  border-radius: 7px;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  border: 3px solid #2fb7c5;
  background: #2fb7c5;
  margin: 0 12px;
}

.grid-accordion .ga-pagination-buttons {
  padding-top: 40px;
}

.grid-accordion .ga-pagination-buttons .ga-selected {
  background: transparent;
}

/* footer
----------------------------------------------------------------------------------------------*/
.box-address {
  font-size: 14px;
  line-height: 23px;
}

.box-address:after {
  content: "";
  clear: both;
  display: block;
}

.box-address a {
  color: #fff;
  display: block;
}

.box-address .lf, .box-address .rg {
  width: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.box-address .lf {
  float: left;
  font-weight: 700;
  padding-right: 10px;
}

.box-address .rg {
  float: right;
  padding-left: 10px;
}

.box-address.addresslg {
  font-size: 19px;
  line-height: 28px;
}

.box-address.addresslg a {
  color: #333;
}

.box-address.addresslg p {
  margin-bottom: 0;
}

.box-address.addresslg .lf {
  font-weight: 400;
  width: 250px;
  margin-right: 40px;
}

.box-address.addresslg .rg {
  font-size: 16px;
  width: 230px;
  float: left;
}

.box-sosmed {
  font-size: 13px;
}

.box-sosmed label {
  margin-right: 15px;
}

.box-sosmed a {
  display: inline-block;
  width: 30px;
  height: 30px;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  vertical-align: middle;
  margin-right: 5px;
}

.box-sosmed a.fb {
  background-image: url("../images/material/ic_fb.png");
}

.box-sosmed a.tw {
  background-image: url("../images/material/ic_tw.png");
}

.box-sosmed a.ig {
  background-image: url("../images/material/ic_ig.png");
}

table.table-doctor {
  width: 100%;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  overflow: hidden;
  background: #fff;
  font-size: 14px;
  line-height: 24px;
}

table.table-doctor th, table.table-doctor td {
  padding: 15px 20px;
  text-align: left;
  vertical-align: top;
}

table.table-doctor thead th, table.table-doctor thead td {
  padding: 20px;
  font-size: 16px;
  font-weight: 700;
  vertical-align: middle;
}

table.table-doctor thead th:last-child, table.table-doctor thead td:last-child {
  text-align: center;
}

table.table-doctor thead tr {
  background: #ff8e33;
  color: #fff;
}

table.table-doctor h6 {
  margin-bottom: 5px;
}

table.table-doctor span {
  display: block;
  font-weight: 700;
  margin-bottom: 20px;
}

table.table-doctor .btn-rounded {
  margin-bottom: 10px;
}

.box-schedule .ls-schedule .lf, .box-schedule .ls-schedule .rg {
  width: 48%;
}

.box-schedule .ls-schedule .lf {
  float: left;
  clear: both;
  font-weight: 700;
}

.box-schedule .ls-schedule .rg {
  float: right;
  text-align: right;
}

footer .foot-top {
  position: relative;
  color: #fff;
}

footer .foot-top:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 50%;
  background: #ceac82;
  z-index: -1;
}

footer .foot-top:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 50%;
  background: #c4975f;
  z-index: -1;
}

footer .foot-top h6 {
  margin-bottom: 17px;
}

footer .foot-top .left, footer .foot-top .right {
  width: 470px;
}

footer .foot-top .left {
  padding: 20px 0 20px 29px;
}

footer .foot-top .right {
  padding: 20px 29px 20px 0;
}

footer .foot-bottom {
  background: #524b49;
  color: #fff;
  padding: 22px 0;
}

footer .foot-bottom a {
  color: #fff;
}

footer .foot-bottom ul {
  float: left;
  padding-top: 25px;
  margin-right: 15px;
}

footer .foot-bottom ul li {
  float: left;
  margin-right: 22px;
  font-size: 13px;
}

footer .foot-bottom ul li:last-child {
  margin-right: 0;
}

footer .foot-bottom .logo-foot {
  float: left;
  margin-right: 50px;
}

footer .foot-bottom .centerfoot {
  float: left;
}

footer .foot-bottom .rightfoot {
  float: right;
}

footer .foot-bottom .box-inquiry {
  float: left;
  padding-top: 13px;
  margin-right: 20px;
}

footer .foot-bottom .box-sosmed {
  float: right;
  padding-top: 18px;
}

footer .copyrights {
  background: #333333;
  text-align: center;
  padding: 24px 0;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.15);
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwic2Fzcy1saWIuc2NzcyIsImJvdXJib24vX2JvdXJib24uc2NzcyIsImJvdXJib24vc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19weC10by1lbS5zY3NzIiwiYm91cmJvbi9zZXR0aW5ncy9fYXNzZXQtcGlwZWxpbmUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19hc3NpZ24taW5wdXRzLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fY29udGFpbnMuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19jb250YWlucy1mYWxzeS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxlbmd0aC5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxpZ2h0LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtbnVtYmVyLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtc2l6ZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLWVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tcmVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fc2hhZGUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19zdHJpcC11bml0cy5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3RpbnQuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL190cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL191bnBhY2suc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19tb2R1bGFyLXNjYWxlLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2NvbnZlcnQtdW5pdHMuc2NzcyIsImJvdXJib24vaGVscGVycy9fZGlyZWN0aW9uYWwtdmFsdWVzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fbGluZWFyLWFuZ2xlLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19saW5lYXItZ3JhZGllbnQtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWFyZy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWdyYWRpZW50LXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yZW5kZXItZ3JhZGllbnRzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fc3RyLXRvLW51bS5zY3NzIiwiYm91cmJvbi9jc3MzL19hbmltYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZmFjZS12aXNpYmlsaXR5LnNjc3MiLCJib3VyYm9uL2NzczMvX2JhY2tncm91bmQuc2NzcyIsImJvdXJib24vY3NzMy9fYmFja2dyb3VuZC1pbWFnZS5zY3NzIiwiYm91cmJvbi9jc3MzL19ib3JkZXItaW1hZ2Uuc2NzcyIsImJvdXJib24vY3NzMy9fY2FsYy5zY3NzIiwiYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLCJib3VyYm9uL2NzczMvX2ZpbHRlci5zY3NzIiwiYm91cmJvbi9jc3MzL19mbGV4LWJveC5zY3NzIiwiYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsImJvdXJib24vY3NzMy9fZm9udC1mZWF0dXJlLXNldHRpbmdzLnNjc3MiLCJib3VyYm9uL2NzczMvX2hpZHBpLW1lZGlhLXF1ZXJ5LnNjc3MiLCJib3VyYm9uL2NzczMvX2h5cGhlbnMuc2NzcyIsImJvdXJib24vY3NzMy9faW1hZ2UtcmVuZGVyaW5nLnNjc3MiLCJib3VyYm9uL2NzczMvX2tleWZyYW1lcy5zY3NzIiwiYm91cmJvbi9jc3MzL19saW5lYXItZ3JhZGllbnQuc2NzcyIsImJvdXJib24vY3NzMy9fcGVyc3BlY3RpdmUuc2NzcyIsImJvdXJib24vY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsImJvdXJib24vY3NzMy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLCJib3VyYm9uL2NzczMvX3NlbGVjdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL190ZXh0LWRlY29yYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLCJib3VyYm9uL2NzczMvX3RyYW5zaXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdXNlci1zZWxlY3Quc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItY29sb3Iuc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXN0eWxlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXdpZHRoLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYnV0dG9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2NsZWFyZml4LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fZWxsaXBzaXMuc2NzcyIsImJvdXJib24vYWRkb25zL19mb250LXN0YWNrcy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2hpZGUtdGV4dC5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX21hcmdpbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3BhZGRpbmcuc2NzcyIsImJvdXJib24vYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcmV0aW5hLWltYWdlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fc2l6ZS5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RleHQtaW5wdXRzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fdGltaW5nLWZ1bmN0aW9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RyaWFuZ2xlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fd29yZC13cmFwLnNjc3MiLCJib3VyYm9uL19ib3VyYm9uLWRlcHJlY2F0ZWQtdXBjb21pbmcuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVx0XHJcbiAgICBDb21wYW55ICAgIDogUFQgV2ViIEFyY2hpdGVjdCBUZWNobm9sb2d5IC0gd2ViYXJxLmNvbVxyXG4gICAgRG9jdW1lbnQgICA6IFN0eWxlc2hlZXRcclxuICAgIEF1dGhvciAgICAgOiBJcWJhbCBXYWh5dWRpIFByYXRhbWEgLSBpcWJhbHdhaHl1ZGlwLmNvbVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuQGltcG9ydCBcInNhc3MtbGliXCI7XHJcblxyXG5ib2R5IHsgIFxyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LWZhbWlseTogJG9wZW5zYW5zOyBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxufVxyXG5maWd1cmV7XHJcbiAgICBtYXJnaW46IDA7IHBhZGRpbmc6IDA7XHJcbiAgICBpbWd7dmVydGljYWwtYWxpZ246IG1pZGRsZTt9XHJcbn1cclxuaW1neyBib3JkZXI6MDsgbWF4LXdpZHRoOjEwMCU7IGhlaWdodDphdXRvOyB9XHJcbnAge1xyXG4gICAgbWFyZ2luOiAxcHggMCAxNXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbn1cclxuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3Qge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0Q4RDhEODtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzY2NjtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogJG9wZW5zYW5zO1xyXG59XHJcbmlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XHJcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xyXG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcclxuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xyXG59XHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sIFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uICB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNntsaW5lLWhlaWdodDogMS4zO31cclxuaDEgeyBcclxuICAgIGZvbnQtc2l6ZTogNjFweDsgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICYuaDFzMntmb250LXNpemU6IDEwMHB4OyBmb250LXdlaWdodDogNzAwO31cclxufVxyXG5oMiB7XHJcbiAgICBmb250LXNpemU6IDQ4cHg7IGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAmLmgyczJ7Zm9udC1zaXplOiAzOXB4O31cclxufVxyXG5oMyB7XHJcbiAgICBmb250LXNpemU6IDMxcHg7IGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAmLmgzczJ7Zm9udC1zaXplOiAzOHB4O31cclxuICAgICYuaDNzM3tmb250LXNpemU6IDQycHg7fVxyXG59XHJcbmg0IHsgZm9udC1zaXplOiAyOHB4OyB9IFxyXG5oNSB7IGZvbnQtc2l6ZTogMjNweDsgZm9udC13ZWlnaHQ6IDkwMDt9IFxyXG5oNiB7IGZvbnQtc2l6ZTogMTlweDsgZm9udC13ZWlnaHQ6IDcwMDt9XHJcbi8qIHN0cnVjdHVyZSBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNlY3Rpb24geyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cclxuLndyYXBwZXIge3dpZHRoOiAxMzcwcHg7bWFyZ2luOiAwIGF1dG87fVxyXG4ud3JhcC1tZCB7d2lkdGg6IDEyMzBweDttYXJnaW46IDAgYXV0bzt9XHJcbi53cmFwLW1kMiB7d2lkdGg6IDExNzBweDttYXJnaW46IDAgYXV0bzt9XHJcbi53cmFwLXNtIHtcclxuICAgIHdpZHRoOiAxMDMwcHg7bWFyZ2luOiAwIGF1dG87XHJcbiAgICAmLnNpZGVwYWRke0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgcGFkZGluZzogMCAzMHB4O31cclxufVxyXG4ud3JhcC1zbTJ7d2lkdGg6IDkwMHB4O21hcmdpbjogMCBhdXRvO31cclxuLndyYXAteHN7d2lkdGg6IDgwMHB4OyBtYXJnaW46IDAgYXV0bzt9XHJcblxyXG4ud3JhcHBlciwgLndyYXAtbWQsIC53cmFwLW1kMiwgLndyYXAtc20sIC53cmFwLXNtMiwgLndyYXAteHN7QGluY2x1ZGUgYWZ0ZXJib3RoO31cclxuXHJcbi5idG4tcm91bmRlZHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IGJhY2tncm91bmQ6ICRvcmFuZ2U7IGNvbG9yOiAkd2hpdGU7IGZvbnQtd2VpZ2h0OiA3MDA7IGhlaWdodDogNTBweDsgbGluZS1oZWlnaHQ6IDQ0cHg7IHBhZGRpbmc6IDAgMjBweDsgXHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkb3JhbmdlOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTsgY3Vyc29yOiBwb2ludGVyO0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAmOmhvdmVye2JhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBjb2xvcjogJG9yYW5nZTt9XHJcblxyXG4gICAgJi5idG4tbG5ibHVle1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBib3JkZXItY29sb3I6ICRibHVlOyBjb2xvcjogJGJsdWU7XHJcbiAgICAgICAgJjpob3ZlcntiYWNrZ3JvdW5kOiAkYmx1ZTsgY29sb3I6ICR3aGl0ZTt9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1ibHVle1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRibHVlOyBib3JkZXItY29sb3I6ICRibHVlOyBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICY6aG92ZXJ7YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGNvbG9yOiAkYmx1ZTt9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1tZHtoZWlnaHQ6IDQwcHg7IGxpbmUtaGVpZ2h0OiAzNHB4OyBmb250LXNpemU6IDEzcHg7fVxyXG59XHJcbi5oZWFkcGFkZHttYXJnaW4tdG9wOiAxNDBweDt9XHJcbi5saW5laHtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDRweDsgYmFja2dyb3VuZDogJGJsdWU7fVxyXG5cclxuLmljd3B7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XHJcbiAgICAmOmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7fVxyXG5cclxuICAgICYuaWNfYmVke2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljX2JlZC5wbmcnKTsgd2lkdGg6IDU1cHg7IGhlaWdodDogNDlweDt9XHJcbiAgICAmLmljX3doZWVsY2hhaXJ7YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNfd2hlZWxjaGFpci5wbmcnKTt3aWR0aDogNTVweDsgaGVpZ2h0OiA0OXB4O31cclxuICAgICYuaWNfaGVhZHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY19oZWFkLnBuZycpOyB3aWR0aDogMzdweDsgaGVpZ2h0OiAzOXB4O31cclxuICAgICYuaWNfY2hlY2t1cHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY19jaGVja3VwLnBuZycpOyB3aWR0aDogMzdweDsgaGVpZ2h0OiAzOXB4O31cclxuICAgICYuaWNfdG9vdGh7YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNfdG9vdGgucG5nJyk7IHdpZHRoOiAzN3B4OyBoZWlnaHQ6IDM5cHg7fVxyXG59XHJcblxyXG4uYS1jZW50ZXJ7dGV4dC1hbGlnbjogY2VudGVyO31cclxuLmEtbGVmdHt0ZXh0LWFsaWduOiBsZWZ0O31cclxuLmEtcmlnaHR7dGV4dC1hbGlnbjogcmlnaHQ7fVxyXG4ubGluay1vcmFuZ2V7Zm9udC13ZWlnaHQ6IDcwMDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6ICRvcmFuZ2U7fVxyXG4udGJsdWV7Y29sb3I6ICRibHVlO31cclxuLnRvcmFuZ2V7Y29sb3I6ICRvcmFuZ2U7fVxyXG4ubGluay1sb2Fke1xyXG4gICAgY29sb3I6ICRvcmFuZ2U7IGZvbnQtd2VpZ2h0OiA5MDA7IGZvbnQtc2l6ZTogMTRweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWxlZnQ6IDUwcHg7IGxpbmUtaGVpZ2h0OiAyN3B4OyBoZWlnaHQ6IDI3cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBib3R0b206IDA7IHdpZHRoOiAyN3B4OyBoZWlnaHQ6IDI3cHg7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljX2xvYWQucG5nJykgbm8tcmVwZWF0IGNlbnRlcjt9XHJcbn1cclxuLmxpbmstcGx1c3tcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgY29sb3I6ICRibHVlOyBmb250LXdlaWdodDogNzAwOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBwYWRkaW5nLWxlZnQ6IDI2cHg7IGZvbnQtc2l6ZTogMTRweDtcclxuICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL3BsdXNvcmFuZ2UucG5nJykgbm8tcmVwZWF0IGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMnB4OyBsZWZ0OiAwO31cclxufVxyXG5cclxuLnJvd19saXN0e1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4OyBtYXJnaW4tcmlnaHQ6IC0xNXB4OyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAqe0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTt9XHJcbiAgICAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyBjbGVhcjogYm90aDt9XHJcbiAgICAuY29se1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAwIDE1cHg7IGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICYuZnJ7ZmxvYXQ6IHJpZ2h0O31cclxuICAgICAgICAmLm5vLXBhZHtwYWRkaW5nOiAwO31cclxuICAgICAgICAmLm1hcmcyOHttYXJnaW4tYm90dG9tOiAyOHB4O31cclxuICAgICAgICAmLmNvbF85e3dpZHRoOiA5MCU7fVxyXG4gICAgICAgICYuY29sXzh7d2lkdGg6IDgwJTt9XHJcbiAgICAgICAgJi5jb2xfN3t3aWR0aDogNzAlO31cclxuICAgICAgICAmLmNvbF82Nnt3aWR0aDogNjYuNjY2NjY2NjY2NjY2NjYlO31cclxuICAgICAgICAmLmNvbF82NXt3aWR0aDogNjUlO31cclxuICAgICAgICAmLmNvbF82e3dpZHRoOiA2MCU7fVxyXG4gICAgICAgICYuY29sXzU1e3dpZHRoOiA1NSU7fVxyXG4gICAgICAgICYuY29sXzV7d2lkdGg6IDUwJTt9XHJcbiAgICAgICAgJi5jb2xfNDV7d2lkdGg6IDQ1JTt9XHJcbiAgICAgICAgJi5jb2xfNHt3aWR0aDogNDAlO31cclxuICAgICAgICAmLmNvbF8zN3t3aWR0aDogMzclO31cclxuICAgICAgICAmLmNvbF8zNXt3aWR0aDogMzUlO31cclxuICAgICAgICAmLmNvbF8zM3t3aWR0aDogMzMuMzMzMzMzMzMzMzMzMyU7fVxyXG4gICAgICAgICYuY29sXzN7d2lkdGg6IDMwJTt9XHJcbiAgICAgICAgJi5jb2xfMjV7d2lkdGg6IDI1JTt9XHJcbiAgICAgICAgJi5jb2xfMnt3aWR0aDogMjAlO31cclxuICAgICAgICAmLmNvbF8xNnt3aWR0aDogMTYuNjY2NjY2NjY2NjY2NjYlO31cclxuICAgICAgICAmLmNvbF8xe3dpZHRoOiAxMCU7fVxyXG4gICAgfVxyXG4gICAgJi5jZW50ZXJ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIC5jb2x7ZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazt9XHJcbiAgICB9XHJcbiAgICAmLmxpc3RmdWxse1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgLmNvbHtwYWRkaW5nOiAwO31cclxuICAgIH1cclxuICAgICYubGlzdHA1e1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4OyBtYXJnaW4tcmlnaHQ6IC01cHg7XHJcbiAgICAgICAgLmNvbHtwYWRkaW5nOiAwIDVweDt9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKiBoZWFkZXJcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbmhlYWRlcntcclxuICAgIHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgei1pbmRleDogMTAwMDsgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgLmxvZ297ZmxvYXQ6IGxlZnQ7IHBhZGRpbmc6IDIwcHggMCAxOHB4O31cclxuICAgIC5oZWFkLXJpZ2h0e2Zsb2F0OiByaWdodDsgcGFkZGluZy10b3A6IDUycHg7fVxyXG4gICAgLm5hdmlnYXRpb257XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgLyomOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgd2lkdGg6IDFweDsgYmFja2dyb3VuZDogI2VhZWFlYTt9Ki9cclxuICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgXHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMTJweCAxNXB4IDYwcHg7cG9zaXRpb246IHJlbGF0aXZlOyBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGhlaWdodDogMDsgYmFja2dyb3VuZDogJGJsdWU7IEBpbmNsdWRlIHRyYW5zaXRpb24oMC4ycyBhbGwgZWFzZS1vdXQpO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3VibmF2e1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDEwMCU7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBhbGwgZWFzZS1vdXQpO1xyXG4gICAgICAgICAgICAgICAgLyomOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjQpOyBoZWlnaHQ6IDEwMHZoO30qL1xyXG5cclxuICAgICAgICAgICAgICAgIC5pbm1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlOyB3aWR0aDogMTM3MHB4OyBtYXJnaW46IDAgYXV0bzsgcGFkZGluZzogNDBweCAxMDBweCA2MHB4OyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlcntjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGhlaWdodDogMXB4OyBiYWNrZ3JvdW5kOiAjZWFlYWVhO31cclxuICAgICAgICAgICAgICAgICAgICAubHNpbm1lbnV7ZmxvYXQ6IGxlZnQ7IHdpZHRoOiAzMy4zMzMzMzMzMzMzMzMzMzMzJTsgcGFkZGluZzogMCAxNXB4OyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7fVxyXG4gICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgY29sb3I6ICMzMzMzMzM7IGxpbmUtaGVpZ2h0OiAyNnB4OyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJi5hY3RpdmV7Y29sb3I6ICRvcmFuZ2U7fVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB1bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctbGVmdDogMjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA2cHg7IGxlZnQ6IDA7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL3JpZ2h0LWFycm93LnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7IHdpZHRoOiA4cHg7IGhlaWdodDogMTJweDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAuc3VibmF2e29wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsICYuYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle2hlaWdodDogNHB4O31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgID4gYXtmb250LXdlaWdodDogNzAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLXJvdW5kZWR7ZGlzcGxheTogbm9uZTt9XHJcbiAgICB9XHJcbiAgICAubmF2LWxhbmd7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luLXJpZ2h0OiAzMXB4O1xyXG4gICAgICAgIC5idG4tbGFuZ3tcclxuICAgICAgICAgICAgcGFkZGluZzoxNXB4IDMwcHg7IGZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAkYmx1ZTsgZm9udC1zaXplOiAxM3B4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgd2lkdGg6IDFweDsgYmFja2dyb3VuZDogI2VhZWFlYTt9XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHdpZHRoOiAxcHg7IGJhY2tncm91bmQ6ICNlYWVhZWE7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcC1sYW5ne1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwJTsgbGVmdDogMDsgcmlnaHQ6IDA7IHBhZGRpbmctdG9wOiAzcHg7IHBhZGRpbmctYm90dG9tOiAzcHg7IGJhY2tncm91bmQ6ICR3aGl0ZTsgZGlzcGxheTogbm9uZTtAaW5jbHVkZSBib3JkZXJSYWRpdXMoMCAwIDVweCA1cHgpOyBcclxuICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogNXB4OyBmb250LXdlaWdodDogNzAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y1ZjVmNTtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOiBub25lO31cclxuICAgICAgICAgICAgICAgIGF7Y29sb3I6ICRibHVlO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG4tcm91bmRlZHttYXJnaW4tdG9wOiAtNXB4O31cclxuICAgIC5zdWJtZW51e1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDAlOyBsZWZ0OiAwOyByaWdodDogMDsgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjQpOyBoZWlnaHQ6IDEwMHZoO31cclxuICAgICAgICAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgaGVpZ2h0OiAxcHg7IGJhY2tncm91bmQ6ICNlYWVhZWE7fVxyXG4gICAgICAgIGF7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgY29sb3I6ICMzMzMzMzM7IGxpbmUtaGVpZ2h0OiAyNnB4OyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTtcclxuICAgICAgICAgICAgJjpob3Zlcntjb2xvcjogJG9yYW5nZTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDZweDsgbGVmdDogMDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvcmlnaHQtYXJyb3cucG5nJykgbm8tcmVwZWF0IGNlbnRlcjsgd2lkdGg6IDhweDsgaGVpZ2h0OiAxMnB4O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubHNtZW51e1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7IHdpZHRoOiAxMzcwcHg7IG1hcmdpbjogMCBhdXRvOyBwYWRkaW5nOiA0MHB4IDEwMHB4IDYwcHg7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDtcclxuICAgICAgICAgICAgJi5hY3RpdmV7ZGlzcGxheTogYmxvY2s7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5tZW51e1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgLTE1cHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgICAgICAgICAgLmxzaW5tZW51e2Zsb2F0OiBsZWZ0OyB3aWR0aDogMzMuMzMzMzMzMzMzMzMzMzMzMyU7IHBhZGRpbmc6IDAgMTVweDsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuLWJ1cmdtZW51e2Rpc3BsYXk6IG5vbmU7fVxyXG4gICAgLmJveC1zb3NtZWR7ZGlzcGxheTogbm9uZTt9XHJcbn1cclxuXHJcbi8qIG1pZGRsZVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmJveC1zbGlkZWhvbWV7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAudGdzbGlkZXJ7cG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDIwcHg7fVxyXG4gICAgLmJveC1maWx0ZXJ7d2lkdGg6IDEzNzBweDsgbWFyZ2luOiAwIGF1dG87IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAtNzBweDsgbGVmdDogMDsgcmlnaHQ6IDA7fVxyXG59XHJcbi5zbGlkZWhvbWV7XHJcbiAgICAubGlzdHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaDF7bWFyZ2luLWJvdHRvbTogMzJweDt9XHJcbiAgICAgICAgaDV7Zm9udC13ZWlnaHQ6IDkwMDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgbWFyZ2luLWJvdHRvbTogMTVweDt9XHJcbiAgICAgICAgLmxpbmVoe21hcmdpbi1ib3R0b206IDI1cHg7fVxyXG4gICAgICAgIC5kZXNje1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMzcwcHg7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBtYXJnaW46IDAgYXV0bzsgdG9wOiA1MCU7IEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stZG90c3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMTAzcHg7IGxlZnQ6IDUwJTsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkpO1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgbWFyZ2luOiAwIDEycHg7XHJcbiAgICAgICAgICAgIGJ1dHRvbntmb250LXNpemU6IDA7IGNvbG9yOiB0cmFuc3BhcmVudDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpOyBib3JkZXI6IDNweCBzb2xpZCAkYmx1ZTsgd2lkdGg6IDE3cHg7IGhlaWdodDogMTdweDsgcGFkZGluZzogMDsgYmFja2dyb3VuZDogJGJsdWU7IGN1cnNvcjogcG9pbnRlcjt9XHJcblxyXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbntiYWNrZ3JvdW5kOiAkd2hpdGU7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5ib3gtZm9ybXtcclxuICAgIGxhYmVse2ZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAjOTk5OTk5OyBmb250LXNpemU6IDEzcHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiA3cHg7fVxyXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxcclxuICAgIGlucHV0W3R5cGU9cGFzc3dvcmRdLFxyXG4gICAgaW5wdXRbdHlwZT1lbWFpbF0sXHJcbiAgICBpbnB1dFt0eXBlPW51bWJlcl0sXHJcbiAgICB0ZXh0YXJlYXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAxcHggc29saWQgJGJsdWU7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgcGFkZGluZzogMCAxM3B4OyBoZWlnaHQ6IDUwcHg7IGxpbmUtaGVpZ2h0OiA1MHB4O0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5kcGxhY2Vob2xkZXJ7Y29sb3I6ICNjY2NjY2M7fVxyXG4gICAgfVxyXG4gICAgdGV4dGFyZWF7cmVzaXplOiBub25lOyBoZWlnaHQ6IDEwN3B4O31cclxuXHJcbiAgICAucm93X2xpc3QsICYucm93X2xpc3R7XHJcbiAgICAgICAgLmNvbHttYXJnaW4tYm90dG9tOiA0NXB4O31cclxuICAgIH1cclxufVxyXG5cclxuLmJveC1yYWRpby1idXR0b257XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIC5yYWRpby1jdXN0b217XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogMzVweDtcclxuICAgIH1cclxufVxyXG4ucmFkaW8tY3VzdG9te1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWxlZnQ6MzBweDsgbWFyZ2luOiAwOyBjdXJzb3I6IHBvaW50ZXI7IGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDsgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7IGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7IHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBpbnB1dFt0eXBlPXJhZGlvXXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljX3JhZGlvLnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgbWFyZ2luOjA7IHBhZGRpbmc6IDA7IHdpZHRoOjE0cHg7IGhlaWdodDoxNHB4OyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICY6Y2hlY2tlZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO31cclxuICAgIH1cclxufVxyXG4udGV4dHN0eWxle1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHdpZHRoOiA0MHB4OyBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY19kYXRlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdDt9XHJcbiAgICBpbnB1dFt0eXBlPXRleHRde3BhZGRpbmctcmlnaHQ6IDUwcHg7fVxyXG59XHJcbi5ib3gtZmlsdGVye1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7cG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiA0MHB4IDcwcHg7IHotaW5kZXg6IDI7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDsgQGluY2x1ZGUgYm94U2hhZG93KDAgNXB4IDQwcHggLTEwcHggcmdiYSgwLDAsMCwwLjIpKTtcclxuICAgIGxhYmVse2ZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAjOTk5OTk5OyBmb250LXNpemU6IDEzcHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiA3cHg7fVxyXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxcclxuICAgIGlucHV0W3R5cGU9cGFzc3dvcmRdLFxyXG4gICAgaW5wdXRbdHlwZT1lbWFpbF0sXHJcbiAgICBpbnB1dFt0eXBlPW51bWJlcl0sXHJcbiAgICB0ZXh0YXJlYXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1OyBib3JkZXI6IG5vbmU7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgcGFkZGluZzogMCAxM3B4OyBoZWlnaHQ6IDUwcHg7IGxpbmUtaGVpZ2h0OiA1MHB4O0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgd2lkdGg6IDEwMCU7IG1pbi13aWR0aDogMjIwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5kcGxhY2Vob2xkZXJ7Y29sb3I6ICNjY2NjY2M7fVxyXG4gICAgfVxyXG4gICAgLmxlZnR7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4OyBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgaDN7bWF4LWhlaWdodDogODBweDsgb3ZlcmZsb3c6IGhpZGRlbjt9XHJcbiAgICB9XHJcbiAgICAuY2VudGVye1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG4gICAgLnJpZ2h0e1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwO2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLWJ1dHRvbmZpbHRlci5wbmcnKSBuby1yZXBlYXQgY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF17XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMTdweDsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1yaWdodC5wbmcnKSBuby1yZXBlYXQgNTAlIGNlbnRlcjsgY3Vyc29yOiBwb2ludGVyOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTsgZm9udC1zaXplOiAwcHg7IGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgJjpob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1NSUgY2VudGVyO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VsZWN0Y3VzdG9te1xyXG4gICAgICAgIC5idG5zZWxlY3R7d2lkdGg6IDIzMHB4O31cclxuICAgIH1cclxufVxyXG4ucm93e1xyXG4gICAgZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICY6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6IDA7fVxyXG59XHJcbi5zZWxlY3RjdXN0b217XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuYnRuc2VsZWN0e1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjUgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLXNlbGVjdC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0OyBmb250LXNpemU6IDE2cHg7IGNvbG9yOiAjMzMzOyBwYWRkaW5nOjAgNTBweCAwIDEzcHg7IGhlaWdodDogNTBweDsgbGluZS1oZWlnaHQ6IDUwcHg7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgXHJcbiAgICAgICAgbWluLXdpZHRoOiAyMjBweDsgbWF4LXdpZHRoOiAxMDAlOyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IGN1cnNvcjogcG9pbnRlcjsgY29sb3I6ICNjY2NjY2M7IG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJi5tZWR7bWluLXdpZHRoOiAxNjBweDt9XHJcbiAgICAgICAgJi5hY3RpdmV7Y29sb3I6ICMzMzM7fVxyXG4gICAgfVxyXG4gICAgLmRyb3BzZWxlY3R7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDEwMCU7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBiYWNrZ3JvdW5kOiAjZjVmNWY1OyB6LWluZGV4OiAxMDA7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgcGFkZGluZzogMTBweCA1cHg7IG1heC1oZWlnaHQ6IDIwMHB4OyBvdmVyZmxvdzogYXV0bzsgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAubHNkcm9wc2VsZWN0e1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEzcHg7IGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmV7YmFja2dyb3VuZDogJHdoaXRlO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zdHJhbnN7XHJcbiAgICAgICAgLmJ0bnNlbGVjdHtiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAxcHggc29saWQgJGJsdWU7fVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VjLXNlcnZpY2V7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjdlZGUzOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAudGdzZXJ2aWNlbGlzdHtwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogODAlO31cclxuICAgIC5pbi1zZXJ2aWNle1xyXG4gICAgICAgIHdpZHRoOiA5NzBweDsgbWFyZ2luOiAwIGF1dG87IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBhZnRlcmJvdGg7XHJcbiAgICAgICAgaDJ7bWFyZ2luLWJvdHRvbTogMjVweDt9XHJcbiAgICAgICAgaDV7bWFyZ2luLWJvdHRvbTogMjBweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XHJcbiAgICAgICAgcHtsaW5lLWhlaWdodDogMjhweDt9XHJcbiAgICAgICAgLmxpbmVoe21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgfVxyXG4gICAgLnRvcC1zZXJ2aWNle1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLXNlcnZpY2UuanBnJykgbm8tcmVwZWF0IGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgcGFkZGluZzogMTY1cHggMCAxMTBweDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC50Z3NlcnZpY2V7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTt9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZXJ2aWNlbGlzdHtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgIC5scy1zZXJ2aWNle1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogMzMuMzMzMzMzMzMzMzMzMzMzJTsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO3Bvc2l0aW9uOiByZWxhdGl2ZTsgY3Vyc29yOiBwb2ludGVyOyBkaXNwbGF5OiBibG9jazsgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwOyByaWdodDogMDt6LWluZGV4OiAyOyBiYWNrZ3JvdW5kOiByZ2JhKDE5MSwxMzgsOTMsMC40KTsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MgYWxsIGVhc2Utb3V0KTt9XHJcbiAgICAgICAgJjphZnRlcntjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTM1cHg7IGxlZnQ6IDA7IHJpZ2h0OiAwOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNmN2VkZTM7IGJvcmRlci1sZWZ0OiAzNXB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQ6IDM1cHggc29saWQgdHJhbnNwYXJlbnQ7IG1hcmdpbjogYXV0bzsgb3BhY2l0eTogMDsgei1pbmRleDogNDtAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MgYWxsIGVhc2Utb3V0KTt9XHJcbiAgICAgICAgaDV7dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC1zaXplOiAyOHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBtYXJnaW4tYm90dG9tOiAxNXB4O31cclxuICAgICAgICBwe2xpbmUtaGVpZ2h0OiAyM3B4OyBoZWlnaHQ6IDQ2cHg7IG92ZXJmbG93OiBoaWRkZW47fVxyXG4gICAgICAgIGZpZ3VyZXtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwOyByaWdodDogMDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYmctYnRtc2VydmljZS5wbmcnKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB6LWluZGV4OiAxO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb3NlcnZpY2V7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IG1hcmdpbjogYXV0bzsgd2lkdGg6IDExMHB4OyBoZWlnaHQ6IDEyMnB4OyB6LWluZGV4OiAxMDt9XHJcbiAgICAgICAgLmRlc2N7cG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBwYWRkaW5nOiAwIDgwcHggNjVweDt6LWluZGV4OiAzOyBjb2xvcjogJHdoaXRlOyB0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG5cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO31cclxuICAgICAgICAgICAgJjphZnRlcntvcGFjaXR5OiAxOyB0b3A6IDA7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlYy1mYXNpbGl0eXtcclxuICAgIHBhZGRpbmc6IDEwNXB4IDAgMTc4cHg7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLWZhY2lsaXR5LmpwZycpIG5vLXJlcGVhdCBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC50Z2ZhY2lsaXR5e3Bvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAyMCU7fVxyXG4gICAgLnR0bC1mYXNpbGl0eXtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgaDJ7bWFyZ2luLWJvdHRvbTogNjVweDt9XHJcbiAgICAgICAgaDV7bWFyZ2luLWJvdHRvbTogMjBweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XHJcbiAgICAgICAgLmxpbmVoe21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLXRhYntcclxuICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XHJcbiAgICAmLmNlbnRlcnt0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG4gICAgLmxzYnRuLXRhYntcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogOTVweDsgZm9udC13ZWlnaHQ6IDkwMDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6ICM2NjY2NjY7IGZvbnQtc2l6ZTogMTZweDsgY3Vyc29yOiBwb2ludGVyOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgaGVpZ2h0OiA0cHg7IGJhY2tncm91bmQ6ICRvcmFuZ2U7IHdpZHRoOiAwcHg7IG1hcmdpbjogMCBhdXRvO0BpbmNsdWRlIHRyYW5zaXRpb24oMC4ycyBhbGwgZWFzZS1vdXQpO31cclxuICAgICAgICAuaWN3cHt2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW4tcmlnaHQ6IDEycHg7IG1hcmdpbi10b3A6IC0xN3B4O31cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDogMDt9XHJcbiAgICAgICAgJjpob3ZlciwgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle3dpZHRoOiAxMDAlO31cclxuICAgICAgICAgICAgLmljd3B7YmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5sZ3tcclxuICAgICAgICAubHNidG4tdGFie2ZvbnQtc2l6ZTogMjBweDt9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdG4tdGFie1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgLmxzLXRhYntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICYuYWN0aXZle2Rpc3BsYXk6IGJsb2NrO31cclxuICAgIH1cclxufVxyXG5cclxuLnNpZGVmYXNpbGl0eXtcclxuICAgIC5sZWZ0e1xyXG4gICAgICAgIHdpZHRoOiA2NjBweDtcclxuICAgIH1cclxuICAgIC5yaWdodHtcclxuICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgLnNsaWRlY2Fwc2Zhc2lsaXR5e1xyXG4gICAgICAgICAgICAubGlzdHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlOyBtaW4taGVpZ2h0OiA0OTBweDtcclxuICAgICAgICAgICAgICAgIC5pbmxpc3R7ZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNsaWRlZmFzaWxpdHl7XHJcbiAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAxMHB4IDUwcHggMCByZ2JhKDAsMCwwLDAuMikpOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IFxyXG4gICAgLmxpc3R7XHJcbiAgICAgICAgZmlndXJle1xyXG4gICAgICAgICAgICBpbWd7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stZG90c3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwJTsgcmlnaHQ6IDgwcHg7IG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW46IDAgMCAxMHB4OyBtYXJnaW4tcmlnaHQ6IDI3cHg7XHJcbiAgICAgICAgICAgIGJ1dHRvbntmb250LXNpemU6IDA7IGNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZDogJGJyb3duOyBib3JkZXI6IDNweCBzb2xpZCAkYnJvd247IEBpbmNsdWRlIGJvcmRlclJhZGl1cyg2cHgpOyBwYWRkaW5nOiAwOyB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4OyBjdXJzb3I6IHBvaW50ZXI7fVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDogMDt9XHJcblxyXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbntiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZWNhcHNmYXNpbGl0eXtcclxuICAgIC5saXN0e1xyXG4gICAgICAgIGgze2ZvbnQtc2l6ZTogMzhweDsgbWFyZ2luLWJvdHRvbTogMzBweDt9XHJcbiAgICAgICAgcHtmb250LXNpemU6IDE2cHg7IGxpbmUtaGVpZ2h0OiAyOHB4OyBtYXJnaW4tYm90dG9tOiAyNXB4O31cclxuICAgIH1cclxufVxyXG5cclxuLnNlYy1hYm91dHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMTQwcHggMCAxNTBweDsgbWluLWhlaWdodDogNzMwcHg7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgIC50Z2Fib3V0e3Bvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA0MCU7fVxyXG4gICAgPiBmaWd1cmV7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHJpZ2h0OiAwOyB6LWluZGV4OiAtMTsgbGVmdDogMzQlO1xyXG4gICAgICAgIGltZ3t3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiB0b3AgbGVmdDt9XHJcbiAgICB9XHJcbiAgICAuZGVzYy1hYm91dGhvbWV7XHJcbiAgICAgICAgd2lkdGg6IDUyMHB4OyBmbG9hdDogbGVmdDtcclxuICAgICAgICBoNXttYXJnaW4tYm90dG9tOiAyMHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO31cclxuICAgICAgICBoMntsaW5lLWhlaWdodDogNTdweDsgbWFyZ2luLWJvdHRvbTogMzVweDt9XHJcbiAgICAgICAgcHtsaW5lLWhlaWdodDogMjhweDsgY29sb3I6ICM2NjY2NjY7IG1hcmdpbi1ib3R0b206IDUwcHg7fVxyXG4gICAgICAgIC5saW5laHttYXJnaW4tYm90dG9tOiAxNXB4O31cclxuICAgIH1cclxufVxyXG5cclxuLnNlYy1uZXdze1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWJvdHRvbTogMTA1cHg7XHJcbiAgICAmOmJlZm9yZXtjb250ZW50OlwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgdG9wOiAxMDVweDsgYmFja2dyb3VuZDogI2YzZWFlMTsgei1pbmRleDogLTE7fVxyXG4gICAgLnRnbmV3c3twb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNDAlO31cclxuICAgIC5sZy1uZXdze1xyXG4gICAgICAgIHdpZHRoOiA1OTRweDsgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcbiAgICAuc20tbmV3c3tcclxuICAgICAgICB3aWR0aDogNjAwcHg7IGZsb2F0OiByaWdodDtcclxuICAgICAgICAubHMtbmV3c3tcclxuICAgICAgICAgICAgd2lkdGg6IDI4MnB4OyBmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAzNXB4OyBiYWNrZ3JvdW5kOiAkd2hpdGU7IEBpbmNsdWRlIGJveFNoYWRvdygwIDEwcHggNXB4IDAgcmdiYSgwLDAsMCwwLjA1KSk7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OiAwO31cclxuICAgICAgICAgICAgZmlndXJle1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC0xN3B4OyBsZWZ0OiAwOyB3aWR0aDogNjJweDsgaGVpZ2h0OiA2MnB4OyBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9wbHVzYmx1ZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7fVxyXG4gICAgICAgICAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4IDEwcHggMCAwKTsgd2lkdGg6IDEwMCU7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kZXNje1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjZweCAyMHB4IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBoNntjb2xvcjogIzExMTExMTsgbGluZS1oZWlnaHQ6IDI4cHg7IGhlaWdodDogODRweDsgb3ZlcmZsb3c6IGhpZGRlbjsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBtYXJnaW4tYm90dG9tOiAxNXB4O31cclxuICAgICAgICAgICAgICAgIHNwYW57Zm9udC1zaXplOiAxM3B4OyBjb2xvcjogIzk5OTk5OTsgZm9udC13ZWlnaHQ6IDcwMDsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi1ib3R0b206IDVweDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZW5ld3N7XHJcbiAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAxMHB4IDVweCAwIHJnYmEoMCwwLDAsMC4wNSkpO0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTtcclxuICAgIC5saXN0e1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IHRvcDogMDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYmctYnRtbmV3cy5wbmcnKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB6LWluZGV4OiAxO31cclxuICAgICAgICAgICAgaW1ne3dpZHRoOiAxMDAlO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2N7cG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBwYWRkaW5nOiAwIDIwcHggMjVweDsgei1pbmRleDogMjsgY29sb3I6ICR3aGl0ZTsgZm9udC13ZWlnaHQ6IDcwMDsgZm9udC1zaXplOiAxOXB4OyBsaW5lLWhlaWdodDogMjhweDt9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stZG90c3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogLTM0cHg7XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW46IDA7IG1hcmdpbi1yaWdodDogMjdweDtcclxuICAgICAgICAgICAgYnV0dG9ue2ZvbnQtc2l6ZTogMDsgY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kOiAkYnJvd247IGJvcmRlcjogM3B4IHNvbGlkICRicm93bjsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDZweCk7IHBhZGRpbmc6IDA7IHdpZHRoOiAxNHB4OyBoZWlnaHQ6IDE0cHg7IGN1cnNvcjogcG9pbnRlcjt9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OiAwO31cclxuXHJcbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgYnV0dG9ue2JhY2tncm91bmQ6IHRyYW5zcGFyZW50O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRlbnR7XHJcbiAgICBwYWRkaW5nOiAxMzBweCAwIDgwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1jb250ZW50LXRvcC5wbmcnKSBuby1yZXBlYXQgdG9wIHJpZ2h0LCB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1jb250ZW50LWJvdHRvbS5wbmcnKSBuby1yZXBlYXQgYm90dG9tIGxlZnQ7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgIHJpZ2h0OiAwOyBib3R0b206IDA7IHotaW5kZXg6IC0xO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWVmZWE7XHJcbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsICNmNWVmZWEgMCUsICNmNWVmZWEgNDMlLCAjZTRjOWIxIDEwMCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZjVlZmVhIDAlLCNmNWVmZWEgNDMlLCNlNGM5YjEgMTAwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZjVlZmVhIDAlLCNmNWVmZWEgNDMlLCNlNGM5YjEgMTAwJSk7XHJcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNmNWVmZWEnLCBlbmRDb2xvcnN0cj0nI2U0YzliMScsR3JhZGllbnRUeXBlPTEgKTtcclxuICAgIH1cclxufVxyXG4udHRsY29udGVudHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIGgye21hcmdpbi1ib3R0b206IDI1cHg7fVxyXG4gICAgaDV7bWFyZ2luLWJvdHRvbTogMjBweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XHJcbiAgICAubGluZWh7bWFyZ2luLWJvdHRvbTogMThweDt9XHJcbn1cclxuXHJcbi5jb250ZW50d3B7XHJcbiAgICBoMntsaW5lLWhlaWdodDogMS4yO31cclxuICAgIHB7bGluZS1oZWlnaHQ6IDI4cHg7IG1hcmdpbi1ib3R0b206IDI1cHg7fVxyXG4gICAgZmlndXJle21hcmdpbi1ib3R0b206IDYwcHg7fVxyXG4gICAgb2x7XHJcbiAgICAgICAgY291bnRlci1yZXNldDogbGk7XHJcbiAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpOyBjb3VudGVyLWluY3JlbWVudDogbGk7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgdWx7XHJcbiAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA5cHg7IGxlZnQ6IDEwcHg7IHdpZHRoOiA4cHg7IGhlaWdodDogOHB4OyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7IGJhY2tncm91bmQ6ICRibHVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5ib3gtYWNje1xyXG4gICAgLmxzLWFjY3tcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhO3otaW5kZXg6IDE7IHBvc2l0aW9uOiByZWxhdGl2ZTsgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjJzIGFsbCBlYXNlLW91dCk7XHJcbiAgICAgICAgcHtsaW5lLWhlaWdodDogMjhweDsgbWFyZ2luLWJvdHRvbTogMzBweDt9XHJcbiAgICAgICAgLmJ0bi1hY2N7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogMzBweCA1MHB4O2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhOyBwb3NpdGlvbjogcmVsYXRpdmU7IGN1cnNvcjogcG9pbnRlcjsgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGFsbCBlYXNlLW91dCk7XHJcbiAgICAgICAgICAgIC5sbmFjY3tcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwOyB3aWR0aDogNjBweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDZweDsgYmFja2dyb3VuZDogJGJsdWU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBib3R0b206IDA7IG1hcmdpbjogYXV0bzsgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjJzIGFsbCBlYXNlLW91dCk7fVxyXG4gICAgICAgICAgICAgICAgJjphZnRlcntAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDkwZGVnKSk7fVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVye2JhY2tncm91bmQ6ICNlZmVmZWY7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY3RuLWFjY3tcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweCA1MHB4IDUwcHg7IGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICp7d29yZC13cmFwOiBicmVhay13b3JkO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4IDEwcHggMCAwKTtcclxuICAgICAgICAgICAgLmJ0bi1hY2N7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHggMTBweCAwIDApO31cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMCAwIDEwcHggMTBweCk7XHJcbiAgICAgICAgICAgIC5idG4tYWNje0BpbmNsdWRlIGJvcmRlclJhZGl1cygwIDAgMTBweCAxMHB4KTt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00MHB4OyBtYXJnaW4tcmlnaHQ6IC00MHB4O0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgei1pbmRleDogMjsgQGluY2x1ZGUgYm94U2hhZG93KDAgMCA4MHB4IDAgcmdiYSgwLDAsMCwwLjEpKTtcclxuICAgICAgICAgICAgLmJ0bi1hY2N7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCAxMHB4IDAgMCk7XHJcbiAgICAgICAgICAgICAgICAubG5hY2N7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlcntAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDBkZWcpKTt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmN0bi1hY2N7ZGlzcGxheTogYmxvY2s7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3hzbGlkZXJld2FyZHN7b3ZlcmZsb3c6IGhpZGRlbjt9XHJcbi5zbGlkZXJld2FyZHN7XHJcbiAgICAubGlzdHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDI7IEBpbmNsdWRlIHRyYW5zaXRpb24oMC4ycyBhbGwgZWFzZS1vdXQpOyBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpOyBtYXJnaW46IDI1MHB4IDA7IEBpbmNsdWRlIHRyYW5zZm9ybU9yaWdpbig1MCUgNTAlKTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB6LWluZGV4OiAtNDtcclxuICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgaW1ne3dpZHRoOiAxMDAlOyBAaW5jbHVkZSBib3hTaGFkb3coMCAwIDQwcHggMCByZ2JhKDAsMCwwLDAuMSkpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbGljay1jdXJyZW50e0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgzKSk7ei1pbmRleDogMjt9XHJcbiAgICAgICAgJi5wcmV2MXtAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMi41KSk7ei1pbmRleDogLTE7fVxyXG4gICAgICAgICYucHJldjJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDIpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgJi5wcmV2M3tAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS41KSk7ei1pbmRleDogLTM7fVxyXG4gICAgICAgICYubmV4dDF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDIuNSkpO3otaW5kZXg6IC0xO31cclxuICAgICAgICAmLm5leHQye0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgyKSk7ei1pbmRleDogLTI7fVxyXG4gICAgICAgICYubmV4dDN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuNSkpO3otaW5kZXg6IC0zO31cclxuICAgIH1cclxuXHJcbiAgICAmLm1pbnNldmVue1xyXG4gICAgICAgIC5saXN0e1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMDBweDsgbWFyZ2luLWJvdHRvbTogMjAwcHg7XHJcbiAgICAgICAgICAgICYuc2xpY2stY3VycmVudHtAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMikpO3otaW5kZXg6IDI7fVxyXG4gICAgICAgICAgICAmLnByZXYxe0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjgpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYucHJldjJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuNCkpO3otaW5kZXg6IC0yO31cclxuICAgICAgICAgICAgJi5wcmV2M3tAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO3otaW5kZXg6IC0zO31cclxuICAgICAgICAgICAgJi5uZXh0MXtAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS44KSk7ei1pbmRleDogLTE7fVxyXG4gICAgICAgICAgICAmLm5leHQye0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjQpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYubmV4dDN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5taW5maXZle1xyXG4gICAgICAgIC5saXN0e1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNTBweDsgbWFyZ2luLWJvdHRvbTogMTUwcHg7XHJcbiAgICAgICAgICAgICYuc2xpY2stY3VycmVudHtAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS42KSk7ei1pbmRleDogMjt9XHJcbiAgICAgICAgICAgICYucHJldjF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuNCkpO3otaW5kZXg6IC0xO31cclxuICAgICAgICAgICAgJi5wcmV2MntAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4yKSk7ei1pbmRleDogLTI7fVxyXG4gICAgICAgICAgICAmLnByZXYze0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7ei1pbmRleDogLTM7fVxyXG4gICAgICAgICAgICAmLm5leHQxe0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjQpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYubmV4dDJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuMikpO3otaW5kZXg6IC0yO31cclxuICAgICAgICAgICAgJi5uZXh0M3tAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO3otaW5kZXg6IC0zO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm1pbmZvdXJ7XHJcbiAgICAgICAgLmxpc3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1MHB4OyBtYXJnaW4tYm90dG9tOiAxNTBweDtcclxuICAgICAgICAgICAgJi5zbGljay1jdXJyZW50e0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjIpKTt6LWluZGV4OiAyO31cclxuICAgICAgICAgICAgJi5wcmV2MXtAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4xKSk7ei1pbmRleDogLTE7fVxyXG4gICAgICAgICAgICAmLnByZXYye0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7ei1pbmRleDogLTI7fVxyXG4gICAgICAgICAgICAmLnByZXYze0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7ei1pbmRleDogLTM7fVxyXG4gICAgICAgICAgICAmLm5leHQxe0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjEpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYubmV4dDJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYubmV4dDN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5taW50aHJlZXtcclxuICAgICAgICAubGlzdHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTUwcHg7IG1hcmdpbi1ib3R0b206IDE1MHB4O1xyXG4gICAgICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBpbWd7d2lkdGg6IGF1dG87IGRpc3BsYXk6IGlubGluZS1ibG9jazt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5zbGljay1jdXJyZW50e0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjA1KSk7ei1pbmRleDogMjt9XHJcbiAgICAgICAgICAgICYucHJldjF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYucHJldjJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYucHJldjN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgICAgICYubmV4dDF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYubmV4dDJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYubmV4dDN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5taW5kdW97XHJcbiAgICAgICAgLmxpc3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7IG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgIGZpZ3VyZXtcclxuICAgICAgICAgICAgICAgIGltZ3t3aWR0aDogYXV0bzsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXgtaGVpZ2h0OiA1MDBweDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5zbGljay1jdXJyZW50e0BpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7ei1pbmRleDogMjt9XHJcbiAgICAgICAgICAgICYucHJldjF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYucHJldjJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYucHJldjN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgICAgICYubmV4dDF7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgICAgICYubmV4dDJ7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMjt9XHJcbiAgICAgICAgICAgICYubmV4dDN7QGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt6LWluZGV4OiAtMzt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zbGlkZWNhcHNyZXdhcmRze1xyXG4gICAgd2lkdGg6IDc3MHB4OyBtYXJnaW46IDAgYXV0byAyMDBweDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC05MHB4OyBoZWlnaHQ6IDY2cHg7IHdpZHRoOiAycHg7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBtYXJnaW46IDAgYXV0bzsgYmFja2dyb3VuZDogI2U2Y2ViOTt9XHJcbiAgICAubGlzdHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY2NjY7XHJcbiAgICAgICAgaDR7Zm9udC13ZWlnaHQ6IDcwMDsgbWFyZ2luLWJvdHRvbTogMjBweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTt9XHJcbiAgICAgICAgcHtmb250LXNpemU6IDE2cHg7fVxyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1wcmV2LCAuc2xpY2stbmV4dHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogLTc3cHg7IGxlZnQ6IDUwJTsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkpO3BhZGRpbmc6IDA7IGZvbnQtc2l6ZTogMDsgY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXI6IG5vbmU7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IGJvcmRlcjogMnB4IHNvbGlkICRvcmFuZ2U7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMDAlKTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IEBpbmNsdWRlIHRyYW5zaXRpb24oMC4ycyBhbGwgZWFzZS1vdXQpO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLXByZXZ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvcHJldi1zbGlkZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyOyBtYXJnaW4tbGVmdDogLTM1cHg7XHJcbiAgICAgICAgJjpob3ZlcnttYXJnaW4tbGVmdDogLTQwcHg7fVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLW5leHR7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbmV4dC1zbGlkZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyOyBtYXJnaW4tbGVmdDogMzVweDtcclxuICAgICAgICAmOmhvdmVye21hcmdpbi1sZWZ0OiA0MHB4O31cclxuICAgIH1cclxufVxyXG4ubWlsZXN0b25laW1ne1xyXG4gICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgQGluY2x1ZGUgYm94U2hhZG93KDAgMCA1MHB4IC01cHggcmdiYSgwLDAsMCwwLjEpKTt9XHJcbn1cclxuXHJcbi5zZXJ2aWNlcm93e1xyXG4gICAgLmxzLXNlcnZpY2Vyb3d7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTIwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgICAgIGg1e3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAkYmx1ZTt9XHJcbiAgICAgICAgLypwe21heC1oZWlnaHQ6IDExMnB4OyBvdmVyZmxvdzogaGlkZGVuO30qL1xyXG4gICAgICAgIC50dGxzZXJ2aWNlcm93e1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMjBweDsgcGFkZGluZy1sZWZ0OiA1MnB4OyBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGhlaWdodDogNHB4OyBiYWNrZ3JvdW5kOiAkb3JhbmdlO31cclxuICAgICAgICAgICAgLmljd3B7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDNweDsgYm90dG9tOiAwO31cclxuXHJcbiAgICAgICAgICAgICYubm9pY297cGFkZGluZy1sZWZ0OiAwO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2N7ZmxvYXQ6IGxlZnQ7IHdpZHRoOiA0MCU7IHBhZGRpbmctdG9wOiA0MHB4O31cclxuICAgICAgICAuaW1ne1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IHdpZHRoOiA1MyU7IHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyOHB4O1xyXG4gICAgICAgICAgICAgICAgaW1ne3dpZHRoOiAxMDAlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IEBpbmNsdWRlIGJveFNoYWRvdygwIDVweCA1MHB4IDAgcmdiYSgwLDAsMCwwLjE1KSk7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pe1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgLnR0bHNlcnZpY2Vyb3d7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDUycHg7XHJcbiAgICAgICAgICAgICAgICAuaWN3cHtsZWZ0OiBhdXRvOyByaWdodDogMDt9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5ub2ljb3twYWRkaW5nLXJpZ2h0OiAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGVzY3tmbG9hdDogcmlnaHQ7fVxyXG4gICAgICAgICAgICAuaW1ne2Zsb2F0OiBsZWZ0OyB0ZXh0LWFsaWduOiBsZWZ0O31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZWNvbnRlbnR7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4OyBAaW5jbHVkZSBib3hTaGFkb3coMCAwIDUwcHggLTVweCByZ2JhKDAsMCwwLDAuMSkpO0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTtcclxuICAgIC5saXN0e1xyXG4gICAgICAgIGZpZ3VyZXtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBpbWd7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLWRvdHN7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO2JvdHRvbTogLTUwcHg7IGxlZnQ6IDUwJTsgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkpO1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgbWFyZ2luOiAwOyBtYXJnaW4tcmlnaHQ6IDI3cHg7cGFkZGluZzogMDtcclxuICAgICAgICAgICAgJjpiZWZvcmV7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgICAgICAgIGJ1dHRvbntmb250LXNpemU6IDA7IGNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZDogJGJsdWU7IGJvcmRlcjogM3B4IHNvbGlkICRibHVlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoN3B4KTsgcGFkZGluZzogMDsgd2lkdGg6IDE3cHg7IGhlaWdodDogMTdweDsgY3Vyc29yOiBwb2ludGVyO31cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6IDA7fVxyXG5cclxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICBidXR0b257YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LXNwZXNpYWxpc3tcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmNiMmFhOyBwYWRkaW5nLXRvcDogOTNweDtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgIC5sZWZ0e3dpZHRoOiA2NjBweDt9XHJcbiAgICAucmlnaHR7d2lkdGg6IDQ3NXB4OyBwYWRkaW5nLXRvcDogNzBweDt9XHJcbn1cclxuXHJcbi5zbGlkZXNwZXNpYWxpc3tcclxuICAgIGZpZ3VyZXtcclxuICAgICAgICBpbWd7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO31cclxuICAgIH1cclxufVxyXG4uc2xpZGVjYXBzc3Blc2lhbGlze1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC05MHB4OyBoZWlnaHQ6IDY2cHg7IHdpZHRoOiAycHg7IGxlZnQ6IDU4cHg7IG1hcmdpbjogMCBhdXRvOyBiYWNrZ3JvdW5kOiAjZTZjZWI5O31cclxuICAgIGgze21hcmdpbi1ib3R0b206IDMwcHg7fVxyXG4gICAgcHttYXgtaGVpZ2h0OiAxNzBweDsgb3ZlcmZsb3c6IGhpZGRlbjt9XHJcbiAgICAubGlzdHtwYWRkaW5nLWJvdHRvbTogNTBweDt9XHJcbiAgICAuc2xpY2stcHJldiwgLnNsaWNrLW5leHR7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC04MHB4OyBwYWRkaW5nOiAwOyBmb250LXNpemU6IDA7IGNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiBub25lOyB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4OyBib3JkZXI6IDJweCBzb2xpZCAkb3JhbmdlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTtcclxuICAgIH1cclxuICAgIC5zbGljay1wcmV2e1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL3ByZXYtc2xpZGUucG5nJykgbm8tcmVwZWF0IGNlbnRlcjsgbGVmdDogMDtcclxuICAgICAgICAmOmhvdmVye2xlZnQ6IC01cHg7fVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLW5leHR7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbmV4dC1zbGlkZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyOyBsZWZ0OiA3N3B4O1xyXG4gICAgICAgICY6aG92ZXJ7bGVmdDogODJweDt9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3gtdG9wbGlzdHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmNiMmFhOyBwYWRkaW5nLXRvcDogOTNweDtcclxufVxyXG4uY2xhc3NsaXN0e1xyXG4gICAgbWFyZ2luOiAwIC0yN3B4IDgwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBAaW5jbHVkZSBhZnRlcmJvdGg7XHJcbiAgICAubHMtY2xhc3NsaXN0e1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBwYWRkaW5nOiAwIDI3cHggNDBweDsgd2lkdGg6IDI1JTsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZmlndXJle1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC00MHB4OyBsZWZ0OiAzMHB4OyBib3JkZXItYm90dG9tOiAxOHB4IHNvbGlkICRicm93bjsgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7IGJvcmRlci1yaWdodDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTt9XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6IDA7IHRvcDogMDsgcmlnaHQ6IDA7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC40KTsgei1pbmRleDogMjtAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7fVxyXG4gICAgICAgICAgICBpbWd7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpOyB3aWR0aDogMTAwJTt9XHJcbiAgICAgICAgICAgIC5jYXBze1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyB6LWluZGV4OiAzOyBjb2xvcjogJHdoaXRlOyBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgaDZ7ZmxvYXQ6IGxlZnQ7IHZlcnRpY2FsLWFsaWduOiBib3R0b207IGRpc3BsYXk6IGlubGluZS1ibG9jazt9XHJcbiAgICAgICAgICAgICAgICAubGluay1wbHVze2Zsb2F0OiByaWdodDsgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGVzY3twb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwJTsgbGVmdDogMDsgd2lkdGg6IDQwMCU7IG9wYWNpdHk6IDA7IHZpc2liaWxpdHk6IGhpZGRlbjsgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjJzIGFsbCBlYXNlLW91dCk7IHBhZGRpbmctbGVmdDogMjdweDsgcGFkZGluZy1yaWdodDogMjdweDsgei1pbmRleDogMTA7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTt9XHJcbiAgICAgICAgLnR0bGNsYXNze1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJvd247IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4IDEwcHggMCAwKTsgcGFkZGluZzogMTNweCA5MHB4OyBmb250LXdlaWdodDogNzAwOyBmb250LXNpemU6IDIzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kZXNjY2xhc3N7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpO3BhZGRpbmc6IDIwcHggOTBweCAzNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6IGJvdGg7fVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDRuKzIpe1xyXG4gICAgICAgICAgICAuZGVzY3tsZWZ0OiAtMTAwJTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDRuKzMpe1xyXG4gICAgICAgICAgICAuZGVzY3tsZWZ0OiAtMjAwJTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDRuKXtcclxuICAgICAgICAgICAgLmRlc2N7bGVmdDogLTMwMCU7fVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgIGZpZ3VyZXtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle29wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kZXNje29wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGVzY3tvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnRhbnlhZG9rdGVye1xyXG4gICAgcGFkZGluZy1ib3R0b206IDU0MHB4O1xyXG4gICAgLmludGFueWFkb2t0ZXJ7cG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAyO31cclxuICAgIC5mYnRhbnlhZG9rdGVye1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwOyBtYXJnaW46IDAgIWltcG9ydGFudDsgcGFkZGluZy10b3A6IDMyMHB4OyBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1saW5lMi5wbmcnKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmJveC1sc2Rva3RlcntcclxuICAgIG1hcmdpbi10b3A6IDk2cHg7XHJcbiAgICAubHNkb2t0ZXJ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgICAgIGgze21hcmdpbi1ib3R0b206IDM1cHg7IGZvbnQtc2l6ZTogMzhweDt9XHJcbiAgICAgICAgLmltZ3tcclxuICAgICAgICAgICAgd2lkdGg6IDM0MHB4OyBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgZmlndXJle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2N7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDsgZmxvYXQ6IHJpZ2h0OyBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgICAgICAgLnRiZGl2e21hcmdpbi1ib3R0b206IDUwcHg7IGNvbG9yOiAjNjY2NjY2O31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50YmRpdntcclxuICAgIGRpc3BsYXk6IHRhYmxlOyB3aWR0aDogMTAwJTtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgID4gZGl2e2Rpc3BsYXk6IHRhYmxlLXJvdzsgQGluY2x1ZGUgYWZ0ZXJib3RoOyB9XHJcbiAgICAubGYsIC5yZ3tkaXNwbGF5OiB0YWJsZS1jZWxsOyBwYWRkaW5nLWJvdHRvbTogMTBweDt9XHJcbiAgICAubGZ7d2lkdGg6IDE0NXB4O31cclxuICAgIC5yZ3tcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIjpcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7fVxyXG4gICAgfVxyXG59XHJcblxyXG4uYnlzaWRlYnRue1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgLmxlZnQsIC5yaWdodHt3aWR0aDogNTAlO31cclxuICAgIC5yaWdodHt0ZXh0LWFsaWduOiByaWdodDt9XHJcbn1cclxuXHJcbi5kZXRhaWxkb2t0ZXJ7XHJcbiAgICBoM3ttYXJnaW46IDI1cHggMCAzMHB4O31cclxuICAgIGg2e2NvbG9yOiAjNjY2NjY2OyBtYXJnaW4tYm90dG9tOiAxMHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LXNpemU6IDIwcHg7fVxyXG4gICAgZmlndXJle1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDM0cHg7XHJcbiAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTt9XHJcbiAgICB9XHJcbiAgICBwe2ZvbnQtc2l6ZTogMTlweDsgY29sb3I6ICM2NjY2NjY7fVxyXG4gICAgLmJ5c2lkZWJ0bntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA3NXB4O2ZvbnQtc2l6ZTogMTlweDsgY29sb3I6ICM2NjY2NjY7XHJcbiAgICAgICAgYXtmb250LXNpemU6IDE5cHg7IGNvbG9yOiAjNjY2NjY2O31cclxuICAgICAgICAucmlnaHR7dGV4dC1hbGlnbjogbGVmdDt9XHJcbiAgICB9XHJcblxyXG4gICAgPiAubGVmdHt3aWR0aDogMzcuMzklO31cclxuICAgID4gLnJpZ2h0e3dpZHRoOiA1Ni45MSU7fVxyXG59XHJcblxyXG4uYm94LXJvdW5kZWRncmV5e1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgIC50dGxyb3VuZGVkZ3JleXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJvd247IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4IDEwcHggMCAwKTsgY29sb3I6ICR3aGl0ZTsgcGFkZGluZzogMjBweCAzNXB4OyBmb250LXdlaWdodDogNzAwOyBmb250LXNpemU6IDIzcHg7XHJcbiAgICB9XHJcbiAgICAuZGVzY3JvdW5kZWRncmV5e1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMzVweDsgYmFja2dyb3VuZDogJHdoaXRlOyAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpO1xyXG4gICAgfVxyXG59XHJcbi5wcm9tb2xne1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNzJweDtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgIGZpZ3VyZXtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTt9XHJcbiAgICB9XHJcbiAgICBoM3ttYXJnaW4tYm90dG9tOiAyMHB4OyBmb250LXNpemU6IDI5cHg7fVxyXG4gICAgc3Bhbntmb250LXdlaWdodDogNzAwOyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICM5OTk5OTk7Zm9udC1zaXplOiAxNnB4OyBtYXJnaW4tYm90dG9tOiAxMHB4O31cclxuICAgIHB7bWFyZ2luLWJvdHRvbTogMzBweDt9XHJcbiAgICAubGluZWh7bWFyZ2luLWJvdHRvbTogMTVweDt9XHJcbiAgICAubGVmdHt3aWR0aDogNTMwcHg7fVxyXG4gICAgLnJpZ2h0e3dpZHRoOiA2MzVweDtwYWRkaW5nLXRvcDogMjhweDt9XHJcbn1cclxuLnByb21vbGlzdHtcclxuICAgIG1hcmdpbjogMCAtMTdweCA4NXB4O1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgLmxzLXByb21vbGlzdHtcclxuICAgICAgICB3aWR0aDogMjUlOyBmbG9hdDogbGVmdDsgcGFkZGluZzogMCAxN3B4OyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMTdweDsgYm90dG9tOiAwOyByaWdodDogMTdweDsgQGluY2x1ZGUgYm94U2hhZG93KDAgMTBweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpKTsgei1pbmRleDogMDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpO31cclxuICAgICAgICBoNnttYXJnaW4tYm90dG9tOiAxMHB4OyBsaW5lLWhlaWdodDogMjhweDsgaGVpZ2h0OiA4NHB4OyBvdmVyZmxvdzogaGlkZGVuO31cclxuICAgICAgICBwe2xpbmUtaGVpZ2h0OiAyOHB4OyBoZWlnaHQ6IDU2cHg7IG92ZXJmbG93OiBoaWRkZW47fVxyXG4gICAgICAgIHNwYW57Zm9udC13ZWlnaHQ6IDcwMDsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjOTk5OTk5O2ZvbnQtc2l6ZTogMTNweDsgbWFyZ2luLWJvdHRvbTogMTBweDt9XHJcbiAgICAgICAgZmlndXJle1xyXG4gICAgICAgICAgICBvcmRlcjogMTsgbWFyZ2luOiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgYm90dG9tOiAtMTZweDsgd2lkdGg6IDYycHg7IGhlaWdodDogNjJweDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvcGx1c2JsdWUucG5nJykgbm8tcmVwZWF0IGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB6LWluZGV4OiAzO31cclxuICAgICAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4IDEwcHggMCAwKTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kZXNje1xyXG4gICAgICAgICAgICBvcmRlcjogMjsgYmFja2dyb3VuZDogJHdoaXRlOyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMCAwIDEwcHggMTBweCk7IHBhZGRpbmc6IDQycHggMjBweCAzMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCg0bisxKXtjbGVhcjogYm90aDt9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbil7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0NXB4O1xyXG4gICAgICAgICAgICAmOmJlZm9yZXt0b3A6IDQ1cHg7fVxyXG4gICAgICAgICAgICBmaWd1cmV7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle2JvdHRvbTogYXV0bzsgbGVmdDogYXV0bzsgcmlnaHQ6IDA7IHRvcDogLTE2cHg7fVxyXG4gICAgICAgICAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygwIDAgMTBweCAxMHB4KTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRlc2N7b3JkZXI6IDE7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHggMTBweCAwIDApOyBwYWRkaW5nLXRvcDogMzBweDsgcGFkZGluZy1ib3R0b206IDQycHg7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb257XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IHotaW5kZXg6IDI7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIGFmdGVyYm90aDtcclxuICAgIGF7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogNDRweDsgaGVpZ2h0OiA0NHB4OyBsaW5lLWhlaWdodDogNDRweDsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGNvbG9yOiAjNzc3Nzc3OyBmb250LXdlaWdodDogNjAwOyBtYXJnaW46IDAgNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7QGluY2x1ZGUgdHJhbnNpdGlvbigwLjJzIGFsbCBlYXNlLW91dCk7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7IGJhY2tncm91bmQ6ICRibHVlOyBvcGFjaXR5OiAwOyBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMCkpOyB6LWluZGV4OiAtMTsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7IEBpbmNsdWRlIHRyYW5zaXRpb24oMC4ycyBhbGwgZWFzZS1vdXQpO31cclxuICAgICAgICAmLnByZXYsICYubmV4dHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpOyBib3JkZXI6IDFweCBzb2xpZCAjYWNhY2FjOyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAzOHB4OyBoZWlnaHQ6IDM4cHg7XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTNweDsgaGVpZ2h0OiA0cHg7IGJhY2tncm91bmQ6ICRibHVlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwOyByaWdodDogMDsgbWFyZ2luOiBhdXRvOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYmFja2dyb3VuZCBlYXNlLW91dCk7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3Jle2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlcntiYWNrZ3JvdW5kOiAkd2hpdGU7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubmV4dHtcclxuICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg5MGRlZykpO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOmhvdmVyLCAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgJjpiZWZvcmV7b3BhY2l0eTogMTsgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMThweDsgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3gtYnlzaWRlY29udGVudHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgLmxpbmVoe21hcmdpbi1ib3R0b206IDEwcHg7fVxyXG4gICAgaDJ7bWFyZ2luLWJvdHRvbTogMjBweDt9XHJcbiAgICBoNXttYXJnaW4tYm90dG9tOiAxMHB4O31cclxuICAgIHB7bWFyZ2luLWJvdHRvbTogMzBweDt9XHJcbiAgICBmaWd1cmV7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGltZ3tAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTsgQGluY2x1ZGUgYm94U2hhZG93KDAgMCAzMHB4IDAgcmdiYSgwLDAsMCwwLjEpKTt9XHJcbiAgICB9XHJcbiAgICAubGVmdHt3aWR0aDogMjQuMjMlO31cclxuICAgIC5yaWdodHt3aWR0aDogNzAuOCU7IHBhZGRpbmctdG9wOiAxNXB4O31cclxuXHJcbiAgICAmLm1hcmd0b3B7bWFyZ2luLXRvcDogMTI1cHg7fVxyXG59XHJcblxyXG4ubWFwY29udGFjdHtcclxuICAgIG1hcmdpbjogMzBweCAtNTBweCAtMzBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpOyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLm1hcF9jb250YWN0e2hlaWdodDogNDQ1cHg7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMCAxMHB4IDEwcHgpOyBvdmVyZmxvdzogaGlkZGVuO31cclxufVxyXG4uZnJtLXNpZGV7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IG1pbi1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgZmlndXJle21hcmdpbjogMDt9XHJcbiAgICBoMnttYXJnaW4tYm90dG9tOiAyMHB4OyBoZWlnaHQ6IDEyMHB4OyBvdmVyZmxvdzogaGlkZGVuO31cclxuICAgIGg1e21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgcHtsaW5lLWhlaWdodDogMjhweDsgY29sb3I6ICM2NjY2NjY7IGhlaWdodDogODRweDsgb3ZlcmZsb3c6IGhpZGRlbjt9XHJcbiAgICAubGVmdHtcclxuICAgICAgICB3aWR0aDogNTcuMjYlOyBwYWRkaW5nLXRvcDogOTVweDtcclxuICAgICAgICAubGluZWh7bWFyZ2luLWJvdHRvbTogMTVweDt9XHJcbiAgICB9XHJcbiAgICAucmlnaHR7d2lkdGg6IDQ3Ljc3Nzc3Nzc3Nzc3NyU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAtODBweDsgcmlnaHQ6IC01JTt9XHJcbn1cclxuXHJcbi5ib3hzbGlkZW1pbGVzdG9uZXtcclxufVxyXG5cclxuLmRvdHNtaWxlc3RvbmV7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7bWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiA1cHg7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBoZWlnaHQ6IDJweDsgYmFja2dyb3VuZDogJGJsdWU7IHotaW5kZXg6IDE7fVxyXG4gICAgLnNsaWNrLWxpc3R7ei1pbmRleDogMjt9XHJcbiAgICAubGlzdHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZy1ib3R0b206IDIwcHg7IGZvbnQtc2l6ZTogMTNweDsgY3Vyc29yOiBwb2ludGVyOyBoZWlnaHQ6IDM5cHg7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IG1hcmdpbjogMCBhdXRvOyB3aWR0aDogMTJweDsgaGVpZ2h0OiAxMnB4OyBib3JkZXI6IDNweCBzb2xpZCAkYmx1ZTsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpOyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IGJhY2tncm91bmQ6ICR3aGl0ZTt9XHJcblxyXG4gICAgICAgICYuc2xpY2stY3VycmVudHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgZm9udC1zaXplOiAxOXB4OyBjb2xvcjogJG9yYW5nZTtcclxuICAgICAgICAgICAgJjpiZWZvcmV7YmFja2dyb3VuZDogJGJsdWU7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1wcmV2LCAuc2xpY2stbmV4dHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogLTEwcHg7IGZvbnQtc2l6ZTogMDsgY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAycHggc29saWQgJG9yYW5nZTsgcGFkZGluZzogMDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpOyB3aWR0aDogMzVweDsgaGVpZ2h0OiAzNXB4OyBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjJzIGFsbCBlYXNlLW91dCk7XHJcbiAgICAgICAgJi5zbGljay1kaXNhYmxlZHtvcGFjaXR5OiAwLjU7fVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLXByZXZ7XHJcbiAgICAgICAgbGVmdDogLTYwcHg7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL3ByZXYtc2xpZGUucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAmOmhvdmVye2xlZnQ6IC02NXB4O31cclxuICAgIH1cclxuICAgIC5zbGljay1uZXh0e1xyXG4gICAgICAgIHJpZ2h0OiAtNjBweDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbmV4dC1zbGlkZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICY6aG92ZXJ7cmlnaHQ6IC02NXB4O31cclxuICAgIH1cclxufVxyXG4uY2Fwc21pbGVzdG9uZXtcclxuICAgIGgye21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgaDV7bWFyZ2luLWJvdHRvbTogMTBweDt9XHJcbiAgICAubGluZWh7bWFyZ2luLWJvdHRvbTogMTVweDt9XHJcbn1cclxuXHJcbi5ib3gtc2xpZGUtZGV0YWlse1xyXG4gICAgLmxlZnRjYXBzYmVhdXR5e1xyXG4gICAgICAgIHdpZHRoOiA0MzVweDsgZmxvYXQ6IGxlZnQ7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNWNkYjg7IHBhZGRpbmctdG9wOiAyMHB4OyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgLnR0bHJlc2NhcHN7ZGlzcGxheTogbm9uZTt9XHJcbiAgICB9XHJcbiAgICAuc2xpZGVpbWdkZXRhaWx7d2lkdGg6IDg3MHB4OyBmbG9hdDogcmlnaHQ7fVxyXG59XHJcbi5ib3gtY2Fwc2JlYXV0eXtcclxuICAgIC5idG5jYXBzYmVhdXR5e2Rpc3BsYXk6IG5vbmU7fVxyXG59XHJcbi5jYXBzYmVhdXR5e1xyXG4gICAgLmxpc3R7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogIzMzMzMzMzsgbGluZS1oZWlnaHQ6IDI0cHg7IG1hcmdpbi1ib3R0b206IDI1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgY3Vyc29yOiBwb2ludGVyOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyB3aWR0aDogOHB4OyBoZWlnaHQ6IDhweDsgYmFja2dyb3VuZDogJGJsdWU7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMDAlKTsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDhweDsgbGVmdDogMTBweDsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTt9XHJcbiAgICAgICAgJjpob3Zlcntjb2xvcjogJG9yYW5nZTt9XHJcbiAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkb3JhbmdlOyBmb250LXNpemU6IDE5cHg7IHBhZGRpbmctbGVmdDogNDJweDtcclxuICAgICAgICAgICAgJjpiZWZvcmV7b3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTsgbGVmdDogMThweDt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zbGlkZWltZ2RldGFpbHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAxMDBweDsgcmlnaHQ6IDA7IHdpZHRoOiA2NnB4OyBoZWlnaHQ6IDJweDsgYmFja2dyb3VuZDogI2U2Y2ViOTt9XHJcbiAgICBmaWd1cmV7bWFyZ2luLWJvdHRvbTogNDBweDt9XHJcbiAgICBoNXttYXJnaW4tYm90dG9tOiAxNXB4O31cclxuICAgIC5kZXNje3BhZGRpbmctcmlnaHQ6IDE3MHB4OyBtaW4taGVpZ2h0OiAxNDBweDt9XHJcblxyXG4gICAgLnNsaWNrLXByZXYsIC5zbGljay1uZXh0e1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDsgY29sb3I6IHRyYW5zcGFyZW50OyBwYWRkaW5nOiAwOyB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4OyBib3JkZXI6IDJweCBzb2xpZCAkb3JhbmdlOyBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDkwZGVnKSk7IEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMDAlKTsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDEzcHg7ICB6LWluZGV4OiAyOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgYWxsIGVhc2Utb3V0KTtcclxuICAgICAgICAmLnNsaWNrLWRpc2FibGVke29wYWNpdHk6IDAuNTt9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stcHJldntcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9wcmV2LXNsaWRlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7IGJvdHRvbTogMTIwcHg7XHJcbiAgICAgICAgJjpob3Zlcntib3R0b206IDEyNXB4O31cclxuICAgIH1cclxuICAgIC5zbGljay1uZXh0e1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL25leHQtc2xpZGUucG5nJykgbm8tcmVwZWF0IGNlbnRlcjsgYm90dG9tOiA0M3B4O1xyXG4gICAgICAgICY6aG92ZXJ7Ym90dG9tOiAzOHB4O31cclxuICAgIH1cclxufVxyXG5cclxuLmdyaWQtYWNjb3JkaW9ue1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlOyBwYWRkaW5nOiAyMHB4OyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG4gICAgaDR7Zm9udC13ZWlnaHQ6IDcwMDt9XHJcbiAgICBwe2hlaWdodDogNTZweDsgb3ZlcmZsb3c6IGhpZGRlbjt9XHJcbiAgICAuZ2EtcGFuZWx7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwcHgpO1xyXG4gICAgICAgICY6YmVmb3Jle2NvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNCk7dmlzaWJpbGl0eTogdmlzaWJsZTsgb3BhY2l0eTogMTsgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjVzIGFsbCBlYXNlLW91dCk7IHotaW5kZXg6IDI7fVxyXG4gICAgICAgID4gYXtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvZmctZmFzaWxpdGFzLnBuZycpIG5vLXJlcGVhdCBib3R0b20gY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBib3R0b206IDA7IHJpZ2h0OiAwOyBvcGFjaXR5OiAwO31cclxuICAgICAgICB9XHJcbiAgICAgICAgaW1ne0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTt9XHJcblxyXG4gICAgICAgICYuZ2Etb3BlbmVke1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47fVxyXG4gICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtvcGFjaXR5OiAxO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC50dGwtbmFtZWR7XHJcbiAgICAgICAgZm9udC1zaXplOiAyM3B4OyBmb250LXdlaWdodDogNzAwOyBsaW5lLWhlaWdodDogMzZweDsgcGFkZGluZzogMjRweCAyMHB4O1xyXG4gICAgfVxyXG4gICAgLmdhLWxheWVye1xyXG4gICAgICAgIHotaW5kZXg6IDI7Y29sb3I6ICR3aGl0ZTsgXHJcbiAgICAgICAgJi5nYS1wYWRkaW5ne3BhZGRpbmc6IDAgNTBweCAwO31cclxuICAgICAgICAvKiYuZ2Etd2hpdGV7YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7fSovXHJcbiAgICB9XHJcblxyXG4gICAgLmdhLXBhZ2luYXRpb24tYnV0dG9ue1xyXG4gICAgICAgIHdpZHRoOiAxN3B4OyBoZWlnaHQ6IDE3cHg7IEBpbmNsdWRlIGJvcmRlclJhZGl1cyg3cHgpOyBib3JkZXI6IDNweCBzb2xpZCAkYmx1ZTsgYmFja2dyb3VuZDogJGJsdWU7IG1hcmdpbjogMCAxMnB4O1xyXG4gICAgfVxyXG4gICAgLmdhLXBhZ2luYXRpb24tYnV0dG9uc3tcclxuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgICAuZ2Etc2VsZWN0ZWR7YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7fVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLyogZm9vdGVyXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uYm94LWFkZHJlc3N7XHJcbiAgICBmb250LXNpemU6IDE0cHg7IGxpbmUtaGVpZ2h0OiAyM3B4O1xyXG4gICAgQGluY2x1ZGUgYWZ0ZXJib3RoO1xyXG4gICAgYXtjb2xvcjogJHdoaXRlOyBkaXNwbGF5OiBibG9jazt9XHJcbiAgICAubGYsIC5yZ3t3aWR0aDogNTAlOyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7fVxyXG4gICAgLmxme2Zsb2F0OiBsZWZ0OyBmb250LXdlaWdodDogNzAwOyBwYWRkaW5nLXJpZ2h0OiAxMHB4O31cclxuICAgIC5yZ3tmbG9hdDogcmlnaHQ7IHBhZGRpbmctbGVmdDogMTBweDt9XHJcblxyXG4gICAgJi5hZGRyZXNzbGd7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOXB4OyBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgICBhe2NvbG9yOiAjMzMzO31cclxuICAgICAgICBwe21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgIC5sZntmb250LXdlaWdodDogNDAwOyB3aWR0aDogMjUwcHg7IG1hcmdpbi1yaWdodDogNDBweDt9XHJcbiAgICAgICAgLnJne2ZvbnQtc2l6ZTogMTZweDsgd2lkdGg6IDIzMHB4OyBmbG9hdDogbGVmdDt9XHJcbiAgICB9XHJcbn1cclxuLmJveC1zb3NtZWR7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBsYWJlbHttYXJnaW4tcmlnaHQ6IDE1cHg7fVxyXG4gICAgYXtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogMTAwJTsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAmLmZie2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljX2ZiLnBuZycpO31cclxuICAgICAgICAmLnR3e2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljX3R3LnBuZycpO31cclxuICAgICAgICAmLmlne2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljX2lnLnBuZycpO31cclxuICAgIH1cclxufVxyXG5cclxudGFibGV7XHJcbiAgICAmLnRhYmxlLWRvY3RvcntcclxuICAgICAgICB3aWR0aDogMTAwJTsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7IG92ZXJmbG93OiBoaWRkZW47IGJhY2tncm91bmQ6ICR3aGl0ZTsgZm9udC1zaXplOiAxNHB4OyBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICB0aCwgdGR7cGFkZGluZzogMTVweCAyMHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyB2ZXJ0aWNhbC1hbGlnbjogdG9wO31cclxuICAgICAgICB0aGVhZHtcclxuICAgICAgICAgICAgdGgsIHRke1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNzAwOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke3RleHQtYWxpZ246IGNlbnRlcjt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdHJ7YmFja2dyb3VuZDogJG9yYW5nZTsgY29sb3I6ICR3aGl0ZTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGg2e21hcmdpbi1ib3R0b206IDVweDt9XHJcbiAgICAgICAgc3BhbntkaXNwbGF5OiBibG9jazsgZm9udC13ZWlnaHQ6IDcwMDsgbWFyZ2luLWJvdHRvbTogMjBweDt9XHJcbiAgICAgICAgLmJ0bi1yb3VuZGVke21hcmdpbi1ib3R0b206IDEwcHg7fVxyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LXNjaGVkdWxle1xyXG4gICAgLmxzLXNjaGVkdWxle1xyXG4gICAgICAgIC5sZiwgLnJne3dpZHRoOiA0OCU7fVxyXG4gICAgICAgIC5sZntmbG9hdDogbGVmdDsgY2xlYXI6IGJvdGg7IGZvbnQtd2VpZ2h0OiA3MDA7fVxyXG4gICAgICAgIC5yZ3tmbG9hdDogcmlnaHQ7IHRleHQtYWxpZ246IHJpZ2h0O31cclxuICAgIH1cclxufVxyXG5cclxuZm9vdGVye1xyXG4gICAgLmZvb3QtdG9we1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgYm90dG9tOiAwOyB3aWR0aDogNTAlOyBiYWNrZ3JvdW5kOiAjY2VhYzgyOyB6LWluZGV4OiAtMTt9XHJcbiAgICAgICAgJjphZnRlcntjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgd2lkdGg6IDUwJTsgYmFja2dyb3VuZDogI2M0OTc1Zjsgei1pbmRleDogLTE7fVxyXG4gICAgICAgIGg2e21hcmdpbi1ib3R0b206IDE3cHg7fVxyXG4gICAgICAgIC5sZWZ0LCAucmlnaHR7d2lkdGg6IDQ3MHB4O31cclxuICAgICAgICAubGVmdHtwYWRkaW5nOiAyMHB4IDAgMjBweCAyOXB4O31cclxuICAgICAgICAucmlnaHR7cGFkZGluZzogMjBweCAyOXB4IDIwcHggMDt9XHJcbiAgICB9XHJcbiAgICAuZm9vdC1ib3R0b217XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzUyNGI0OTsgY29sb3I6ICR3aGl0ZTsgcGFkZGluZzogMjJweCAwO1xyXG4gICAgICAgIGF7Y29sb3I6ICR3aGl0ZTt9XHJcbiAgICAgICAgdWx7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBwYWRkaW5nLXRvcDogMjVweDsgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW4tcmlnaHQ6IDIycHg7IGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6IDA7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sb2dvLWZvb3R7ZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogNTBweDt9XHJcbiAgICAgICAgLmNlbnRlcmZvb3R7ZmxvYXQ6IGxlZnQ7fVxyXG4gICAgICAgIC5yaWdodGZvb3R7ZmxvYXQ6IHJpZ2h0O31cclxuICAgICAgICAuYm94LWlucXVpcnl7ZmxvYXQ6IGxlZnQ7IHBhZGRpbmctdG9wOiAxM3B4OyBtYXJnaW4tcmlnaHQ6IDIwcHg7fVxyXG4gICAgICAgIC5ib3gtc29zbWVke1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IHBhZGRpbmctdG9wOiAxOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb3B5cmlnaHRze2JhY2tncm91bmQ6ICMzMzMzMzM7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogMjRweCAwOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LXdlaWdodDogNjAwOyBmb250LXNpemU6IDEzcHg7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpO31cclxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHRcclxuICAgIENvbXBhbnkgICAgOiBQVCBXZWIgQXJjaGl0ZWN0IFRlY2hub2xvZ3kgLSB3ZWJhcnEuY29tXHJcbiAgICBEb2N1bWVudCAgIDogU3R5bGVzaGVldFxyXG4gICAgQXV0aG9yICAgICA6IEZyb250RW5kIFRlYW0gIFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbi8qIGltcG9ydCBib3VyYm9uIC0gaHR0cDovL2JvdXJib24uaW8vZG9jcyAqL1xyXG5AaW1wb3J0IFwiYm91cmJvbi9ib3VyYm9uXCI7XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkYXR0cil7XHJcbiAgICB0cmFuc2l0aW9uOiAkYXR0cjtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJGF0dHI7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICRhdHRyO1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICRhdHRyO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogJGF0dHI7XHJcbn1cclxuQG1peGluIHRyYW5zZm9ybSgkYXR0cil7XHJcbiAgICB0cmFuc2Zvcm06ICRhdHRyO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06ICRhdHRyO1xyXG4gICAgLW1vei10cmFuc2Zvcm06ICRhdHRyO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogJGF0dHI7XHJcbiAgICAtby10cmFuc2Zvcm06ICRhdHRyO1xyXG59XHJcbkBtaXhpbiB0cmFuc2Zvcm1PcmlnaW4oJGF0dHIpe1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogJGF0dHI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRhdHRyO1xyXG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkYXR0cjtcclxuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkYXR0cjtcclxuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46ICRhdHRyO1xyXG59XHJcbkBtaXhpbiBib3JkZXJSYWRpdXMoJGF0dHIpe1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGF0dHI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkYXR0cjtcclxuICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkYXR0cjtcclxuICAgIC1vLWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG59XHJcbkBtaXhpbiBib3hTaGFkb3coJGF0dHIpe1xyXG4gICAgYm94LXNoYWRvdzogICRhdHRyO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkYXR0cjtcclxuICAgIC1tb3otYm94LXNoYWRvdzogJGF0dHI7XHJcbiAgICAtbXMtYm94LXNoYWRvdzogJGF0dHI7XHJcbiAgICAtby1ib3gtc2hhZG93OiAkYXR0clxyXG59XHJcbkBtaXhpbiBib3hTaXppbmcoJGF0dHIpe1xyXG4gICAgYm94LXNpemluZzogICRhdHRyO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYXR0cjtcclxuICAgIC1tb3otYm94LXNpemluZzogJGF0dHI7XHJcbiAgICAtbXMtYm94LXNpemluZzogJGF0dHI7XHJcbiAgICAtby1ib3gtc2l6aW5nOiAkYXR0clxyXG59XHJcbkBtaXhpbiBwbGFjZWhvbGRlciB7XHJcbiAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxyXG4gICAgOi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHtAY29udGVudH1cclxuICAgIDo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICB7QGNvbnRlbnR9XHJcbiAgICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fSAgXHJcbn1cclxuQG1peGluIGFuZHBsYWNlaG9sZGVyIHtcclxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxyXG4gICAgJjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICB7QGNvbnRlbnR9XHJcbiAgICAmOjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgIHtAY29udGVudH1cclxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fSAgXHJcbn1cclxuQG1peGluIGJveFNpemluZygkYXR0cil7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6ICRhdHRyO1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiAkYXR0cjtcclxuICAgIGJveC1zaXppbmc6ICRhdHRyO1xyXG59XHJcbkBtaXhpbiBhZnRlcmJvdGh7XHJcbiAgICAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IGNsZWFyOiBib3RoOyBkaXNwbGF5OiBibG9jazt9XHJcbn1cclxuXHJcblxyXG4vKiBjb2xvciBnbG9iYWxcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiRjXzExMTogIzExMTtcclxuJGNfMzMzOiAjMzMzO1xyXG4kY182NjY6ICM2NjY7XHJcbiRjXzk5OTogIzk5OTtcclxuJGNfZWE6ICNlYWVhZWE7XHJcblxyXG4kd2hpdGU6ICNmZmY7XHJcbiRibHVlOiAjMmZiN2M1O1xyXG4kb3JhbmdlOiAjZmY4ZTMzO1xyXG4kYnJvd246ICNjMDhjNWU7XHJcblxyXG4vKiBmb250c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuJG9wZW5zYW5zIDogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7IiwiLy8gQm91cmJvbiA0LjIuN1xuLy8gaHR0cDovL2JvdXJib24uaW9cbi8vIENvcHlyaWdodCAyMDExLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxuLy8gTUlUIExpY2Vuc2VcblxuQGltcG9ydCBcInNldHRpbmdzL3ByZWZpeGVyXCI7XG5AaW1wb3J0IFwic2V0dGluZ3MvcHgtdG8tZW1cIjtcbkBpbXBvcnQgXCJzZXR0aW5ncy9hc3NldC1waXBlbGluZVwiO1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2Fzc2lnbi1pbnB1dHNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnMtZmFsc3lcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvaXMtbGVuZ3RoXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLWxpZ2h0XCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLW51bWJlclwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1zaXplXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLWVtXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLXJlbVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9zaGFkZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9zdHJpcC11bml0c1wiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy90aW50XCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3RyYW5zaXRpb24tcHJvcGVydHktbmFtZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy91bnBhY2tcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbW9kdWxhci1zY2FsZVwiO1xuXG5AaW1wb3J0IFwiaGVscGVycy9jb252ZXJ0LXVuaXRzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9kaXJlY3Rpb25hbC12YWx1ZXNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uXCI7XG5AaW1wb3J0IFwiaGVscGVycy9ncmFkaWVudC1wb3NpdGlvbnMtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItYW5nbGUtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItZ3JhZGllbnQtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLWFyZy1wYXJzZXJcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhZGlhbC1wb3NpdGlvbnMtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yZW5kZXItZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9zaGFwZS1zaXplLXN0cmlwcGVyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9zdHItdG8tbnVtXCI7XG5cbkBpbXBvcnQgXCJjc3MzL2FuaW1hdGlvblwiO1xuQGltcG9ydCBcImNzczMvYXBwZWFyYW5jZVwiO1xuQGltcG9ydCBcImNzczMvYmFja2ZhY2UtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZC1pbWFnZVwiO1xuQGltcG9ydCBcImNzczMvYm9yZGVyLWltYWdlXCI7XG5AaW1wb3J0IFwiY3NzMy9jYWxjXCI7XG5AaW1wb3J0IFwiY3NzMy9jb2x1bW5zXCI7XG5AaW1wb3J0IFwiY3NzMy9maWx0ZXJcIjtcbkBpbXBvcnQgXCJjc3MzL2ZsZXgtYm94XCI7XG5AaW1wb3J0IFwiY3NzMy9mb250LWZhY2VcIjtcbkBpbXBvcnQgXCJjc3MzL2ZvbnQtZmVhdHVyZS1zZXR0aW5nc1wiO1xuQGltcG9ydCBcImNzczMvaGlkcGktbWVkaWEtcXVlcnlcIjtcbkBpbXBvcnQgXCJjc3MzL2h5cGhlbnNcIjtcbkBpbXBvcnQgXCJjc3MzL2ltYWdlLXJlbmRlcmluZ1wiO1xuQGltcG9ydCBcImNzczMva2V5ZnJhbWVzXCI7XG5AaW1wb3J0IFwiY3NzMy9saW5lYXItZ3JhZGllbnRcIjtcbkBpbXBvcnQgXCJjc3MzL3BlcnNwZWN0aXZlXCI7XG5AaW1wb3J0IFwiY3NzMy9wbGFjZWhvbGRlclwiO1xuQGltcG9ydCBcImNzczMvcmFkaWFsLWdyYWRpZW50XCI7XG5AaW1wb3J0IFwiY3NzMy9zZWxlY3Rpb25cIjtcbkBpbXBvcnQgXCJjc3MzL3RleHQtZGVjb3JhdGlvblwiO1xuQGltcG9ydCBcImNzczMvdHJhbnNmb3JtXCI7XG5AaW1wb3J0IFwiY3NzMy90cmFuc2l0aW9uXCI7XG5AaW1wb3J0IFwiY3NzMy91c2VyLXNlbGVjdFwiO1xuXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1jb2xvclwiO1xuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1zdHlsZVwiO1xuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItd2lkdGhcIjtcbkBpbXBvcnQgXCJhZGRvbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImFkZG9ucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcImFkZG9ucy9lbGxpcHNpc1wiO1xuQGltcG9ydCBcImFkZG9ucy9mb250LXN0YWNrc1wiO1xuQGltcG9ydCBcImFkZG9ucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJhZGRvbnMvbWFyZ2luXCI7XG5AaW1wb3J0IFwiYWRkb25zL3BhZGRpbmdcIjtcbkBpbXBvcnQgXCJhZGRvbnMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJhZGRvbnMvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJhZGRvbnMvcmV0aW5hLWltYWdlXCI7XG5AaW1wb3J0IFwiYWRkb25zL3NpemVcIjtcbkBpbXBvcnQgXCJhZGRvbnMvdGV4dC1pbnB1dHNcIjtcbkBpbXBvcnQgXCJhZGRvbnMvdGltaW5nLWZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcImFkZG9ucy90cmlhbmdsZVwiO1xuQGltcG9ydCBcImFkZG9ucy93b3JkLXdyYXBcIjtcblxuQGltcG9ydCBcImJvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZ1wiO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgb3IgZGlzYWJsZSB2ZW5kb3IgcHJlZml4ZXNcblxuJHByZWZpeC1mb3Itd2Via2l0OiAgICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3ItbW96aWxsYTogICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3ItbWljcm9zb2Z0OiB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3Itb3BlcmE6ICAgICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3Itc3BlYzogICAgICB0cnVlICFkZWZhdWx0O1xuIiwiJGVtLWJhc2U6IDE2cHggIWRlZmF1bHQ7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBIGdsb2JhbCBzZXR0aW5nIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBgJGFzc2V0LXBpcGVsaW5lYCB2YXJpYWJsZSBmb3IgYWxsIGZ1bmN0aW9ucyB0aGF0IGFjY2VwdCBpdC5cbi8vL1xuLy8vIEB0eXBlIEJvb2xcblxuJGFzc2V0LXBpcGVsaW5lOiBmYWxzZSAhZGVmYXVsdDtcbiIsIkBmdW5jdGlvbiBhc3NpZ24taW5wdXRzKCRpbnB1dHMsICRwc2V1ZG86IG51bGwpIHtcbiAgJGxpc3Q6ICgpO1xuXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcbiAgICAkaW5wdXQ6IHVucXVvdGUoJGlucHV0KTtcbiAgICAkaW5wdXQ6IGlmKCRwc2V1ZG8sICRpbnB1dCArIFwiOlwiICsgJHBzZXVkbywgJGlucHV0KTtcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxpc3Q7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgaWYgYSBsaXN0IGNvbnRhaW5zIGEgdmFsdWUocykuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3Rcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICR2YWx1ZXNcbi8vLyAgIEEgc2luZ2xlIHZhbHVlIG9yIGxpc3Qgb2YgdmFsdWVzIHRvIGNoZWNrIGZvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgY29udGFpbnMoJGxpc3QsICR2YWx1ZSlcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2x9XG5cbkBmdW5jdGlvbiBjb250YWlucygkbGlzdCwgJHZhbHVlcy4uLikge1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmIHR5cGUtb2YoaW5kZXgoJGxpc3QsICR2YWx1ZSkpICE9IFwibnVtYmVyXCIge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgaWYgYSBsaXN0IGRvZXMgbm90IGNvbnRhaW5zIGEgdmFsdWUuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3Rcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sfVxuXG5AZnVuY3Rpb24gY29udGFpbnMtZmFsc3koJGxpc3QpIHtcbiAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgIEBpZiBub3QgJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgZm9yIGEgdmFsaWQgQ1NTIGxlbmd0aC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdmFsdWVcblxuQGZ1bmN0aW9uIGlzLWxlbmd0aCgkdmFsdWUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudWxsXCIgYW5kIChzdHItc2xpY2UoJHZhbHVlICsgXCJcIiwgMSwgNCkgPT0gXCJjYWxjXCJcbiAgICAgICBvciBpbmRleChhdXRvIGluaGVyaXQgaW5pdGlhbCAwLCAkdmFsdWUpXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb2dyYW1hdGljYWxseSBkZXRlcm1pbmVzIHdoZXRoZXIgYSBjb2xvciBpcyBsaWdodCBvciBkYXJrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL3JvYm90cy50aG91Z2h0Ym90LmNvbS9jbG9zZXItbG9vay1jb2xvci1saWdodG5lc3Ncbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3IgKEhleCl9ICRjb2xvclxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBpcy1saWdodCgkY29sb3IpXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sfVxuXG5AZnVuY3Rpb24gaXMtbGlnaHQoJGhleC1jb2xvcikge1xuICAkLWxvY2FsLXJlZDogcmVkKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWdyZWVuOiBncmVlbihyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1ibHVlOiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWxpZ2h0bmVzczogKCQtbG9jYWwtcmVkICogMC4yMTI2ICsgJC1sb2NhbC1ncmVlbiAqIDAuNzE1MiArICQtbG9jYWwtYmx1ZSAqIDAuMDcyMikgLyAyNTU7XG5cbiAgQHJldHVybiAkLWxvY2FsLWxpZ2h0bmVzcyA+IDAuNjtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBudW1iZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zXG5cbkBmdW5jdGlvbiBpcy1udW1iZXIoJHZhbHVlKSB7XG4gIEByZXR1cm4gY29udGFpbnMoXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCIgMCAxIDIgMyA0IDUgNiA3IDggOSwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdmFsdWVcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnNcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGlzLWxlbmd0aFxuXG5AZnVuY3Rpb24gaXMtc2l6ZSgkdmFsdWUpIHtcbiAgQHJldHVybiBpcy1sZW5ndGgoJHZhbHVlKVxuICAgICAgICAgIG9yIGNvbnRhaW5zKFwiZmlsbFwiIFwiZml0LWNvbnRlbnRcIiBcIm1pbi1jb250ZW50XCIgXCJtYXgtY29udGVudFwiLCAkdmFsdWUpO1xufVxuIiwiLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIGVtKDEyKSB3aGVuIHRoZSBwYXJlbnQgaXMgMTZweFxuLy8gaWYgdGhlIHBhcmVudCBpcyBhbm90aGVyIHZhbHVlIHNheSAyNHB4IHdyaXRlIGVtKDEyLCAyNClcblxuQGZ1bmN0aW9uIGVtKCRweHZhbCwgJGJhc2U6ICRlbS1iYXNlKSB7XG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XG4gICAgJHB4dmFsOiBzdHJpcC11bml0cygkcHh2YWwpO1xuICB9XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFlbTtcbn1cbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgcmVtKDEyKVxuLy8gQXNzdW1lcyAkZW0tYmFzZSBpcyB0aGUgZm9udC1zaXplIG9mIDxodG1sPlxuXG5AZnVuY3Rpb24gcmVtKCRweHZhbCkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRweHZhbCkge1xuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcbiAgfVxuXG4gICRiYXNlOiAkZW0tYmFzZTtcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMXJlbTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCBibGFjay5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiBibGFjayB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZSgjZmZiYjUyLCA2MCUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJldHVybiB7Q29sb3J9XG5cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XG4gIEByZXR1cm4gbWl4KCMwMDAsICRjb2xvciwgJHBlcmNlbnQpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU3RyaXBzIHRoZSB1bml0IGZyb20gYSBudW1iZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAoV2l0aCBVbml0KX0gJHZhbHVlXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgICRkaW1lbnNpb246IHN0cmlwLXVuaXRzKDEwZW0pO1xuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgJGRpbWVuc2lvbjogMTA7XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXIgKFVuaXRsZXNzKX1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCR2YWx1ZSkge1xuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCB3aGl0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCM2ZWNhYTYsIDQwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNhOGRmYzk7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmV0dXJuIHtDb2xvcn1cblxuQGZ1bmN0aW9uIHRpbnQoJGNvbG9yLCAkcGVyY2VudCkge1xuICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcbn1cbiIsIi8vIFJldHVybiB2ZW5kb3ItcHJlZml4ZWQgcHJvcGVydHkgbmFtZXMgaWYgYXBwcm9wcmlhdGVcbi8vIEV4YW1wbGU6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoKHRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmQpLCBtb3opIC0+IC1tb3otdHJhbnNmb3JtLCBjb2xvciwgYmFja2dyb3VuZFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuQGZ1bmN0aW9uIHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BzLCAkdmVuZG9yOiBmYWxzZSkge1xuICAkbmV3LXByb3BzOiAoKTtcblxuICBAZWFjaCAkcHJvcCBpbiAkcHJvcHMge1xuICAgICRuZXctcHJvcHM6IGFwcGVuZCgkbmV3LXByb3BzLCB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3IpLCBjb21tYSk7XG4gIH1cblxuICBAcmV0dXJuICRuZXctcHJvcHM7XG59XG5cbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3I6IGZhbHNlKSB7XG4gIC8vIHB1dCBvdGhlciBwcm9wZXJ0aWVzIHRoYXQgbmVlZCB0byBiZSBwcmVmaXhlZCBoZXJlIGFzd2VsbFxuICBAaWYgJHZlbmRvciBhbmQgJHByb3AgPT0gdHJhbnNmb3JtIHtcbiAgICBAcmV0dXJuIHVucXVvdGUoJy0nKyR2ZW5kb3IrJy0nKyRwcm9wKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkcHJvcDtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ29udmVydHMgc2hvcnRoYW5kIHRvIHRoZSA0LXZhbHVlIHN5bnRheC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3J0aGFuZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbjogdW5wYWNrKDFlbSAyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW46IDFlbSAyZW0gMWVtIDJlbTtcbi8vLyAgIH1cblxuQGZ1bmN0aW9uIHVucGFjaygkc2hvcnRoYW5kKSB7XG4gIEBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMSB7XG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDIge1xuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDMpIG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xuICB9XG59XG4iLCIvLyBTY2FsaW5nIFZhcmlhYmxlc1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1pbm9yLXNlY29uZDogICAgIDEuMDY3O1xuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xuJG1pbm9yLXRoaXJkOiAgICAgIDEuMjtcbiRtYWpvci10aGlyZDogICAgICAxLjI1O1xuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xuJGF1Z21lbnRlZC1mb3VydGg6IDEuNDE0O1xuJHBlcmZlY3QtZmlmdGg6ICAgIDEuNTtcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XG4kbWFqb3Itc2l4dGg6ICAgICAgMS42Njc7XG4kbWlub3Itc2V2ZW50aDogICAgMS43Nzg7XG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XG4kb2N0YXZlOiAgICAgICAgICAgMjtcbiRtYWpvci10ZW50aDogICAgICAyLjU7XG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XG4kbWFqb3ItdHdlbGZ0aDogICAgMztcbiRkb3VibGUtb2N0YXZlOiAgICA0O1xuXG4kbW9kdWxhci1zY2FsZS1yYXRpbzogJHBlcmZlY3QtZm91cnRoICFkZWZhdWx0O1xuJG1vZHVsYXItc2NhbGUtYmFzZTogZW0oJGVtLWJhc2UpICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWU6ICRtb2R1bGFyLXNjYWxlLWJhc2UsICRyYXRpbzogJG1vZHVsYXItc2NhbGUtcmF0aW8pIHtcbiAgJHYxOiBudGgoJHZhbHVlLCAxKTtcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XG4gICR2YWx1ZTogJHYxO1xuXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxuICBAd2hpbGUgJHYyID4gJHYxIHtcbiAgICAkdjI6ICgkdjIgLyAkcmF0aW8pOyAvLyB3aWxsIGJlIG9mZi1ieS0xXG4gIH1cbiAgQHdoaWxlICR2MiA8ICR2MSB7XG4gICAgJHYyOiAoJHYyICogJHJhdGlvKTsgLy8gd2lsbCBmaXggb2ZmLWJ5LTFcbiAgfVxuXG4gIC8vIGNoZWNrIEFGVEVSIHNjYWxpbmcgJHYyIHRvIHByZXZlbnQgZG91YmxlLWNvdW50aW5nIGNvcm5lci1jYXNlXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcblxuICBAaWYgJGluY3JlbWVudCA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgKiAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGluY3JlbWVudCA8IDAge1xuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XG4gICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAkaW5jcmVtZW50IHRocm91Z2ggLTEge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHN0ci10by1udW0gZm4uXG4vLyBTb3VyY2U6IGh0dHA6Ly9zYXNzbWVpc3Rlci5jb20vZ2lzdC85NjQ3NDA4XG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AZnVuY3Rpb24gX2NvbnZlcnQtdW5pdHMoJG51bWJlciwgJHVuaXQpIHtcbiAgJHN0cmluZ3M6IFwicHhcIiwgXCJjbVwiLCBcIm1tXCIsIFwiJVwiLCBcImNoXCIsIFwicGljYVwiLCBcImluXCIsIFwiZW1cIiwgXCJyZW1cIiwgXCJwdFwiLCBcInBjXCIsIFwiZXhcIiwgXCJ2d1wiLCBcInZoXCIsIFwidm1pblwiLCBcInZtYXhcIiwgXCJkZWdcIiwgXCJyYWRcIiwgXCJncmFkXCIsIFwidHVyblwiO1xuICAkdW5pdHM6ICAgMXB4LCAxY20sIDFtbSwgMSUsIDFjaCwgMXBpY2EsIDFpbiwgMWVtLCAxcmVtLCAxcHQsIDFwYywgMWV4LCAxdncsIDF2aCwgMXZtaW4sIDF2bWF4LCAxZGVnLCAxcmFkLCAxZ3JhZCwgMXR1cm47XG4gICRpbmRleDogaW5kZXgoJHN0cmluZ3MsICR1bml0KTtcblxuICBAaWYgbm90ICRpbmRleCB7XG4gICAgQHdhcm4gXCJVbmtub3duIHVuaXQgYCN7JHVuaXR9YC5cIjtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgIT0gXCJudW1iZXJcIiB7XG4gICAgQHdhcm4gXCJgI3skbnVtYmVyfSBpcyBub3QgYSBudW1iZXJgXCI7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIEByZXR1cm4gJG51bWJlciAqIG50aCgkdW5pdHMsICRpbmRleCk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBEaXJlY3Rpb25hbC1wcm9wZXJ0eSBtaXhpbnMgYXJlIHNob3J0aGFuZHMgZm9yIHdyaXRpbmcgcHJvcGVydGllcyBsaWtlIHRoZSBmb2xsb3dpbmdcbi8vL1xuLy8vIEBpZ25vcmUgWW91IGNhbiBhbHNvIHVzZSBgZmFsc2VgIGluc3RlYWQgb2YgYG51bGxgLlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBkaXJlY3Rpb25hbCB2YWx1ZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZG90dGVkIG51bGwpO1xuLy8vICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCAwIDEwcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7XG4vLy8gICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IDA7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9XG5cbkBmdW5jdGlvbiBjb2xsYXBzZS1kaXJlY3Rpb25hbHMoJHZhbHMpIHtcbiAgJG91dHB1dDogbnVsbDtcblxuICAkYTogbnRoKCR2YWxzLCAxKTtcbiAgJGI6IGlmKGxlbmd0aCgkdmFscykgPCAyLCAkYSwgbnRoKCR2YWxzLCAyKSk7XG4gICRjOiBpZihsZW5ndGgoJHZhbHMpIDwgMywgJGEsIG50aCgkdmFscywgMykpO1xuICAkZDogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIGlmKGxlbmd0aCgkdmFscykgPCA0LCAyLCA0KSkpO1xuXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cbiAgQGlmICRiID09IDAgeyAkYjogMDsgfVxuICBAaWYgJGMgPT0gMCB7ICRjOiAwOyB9XG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cblxuICBAaWYgJGEgPT0gJGIgYW5kICRhID09ICRjIGFuZCAkYSA9PSAkZCB7ICRvdXRwdXQ6ICRhOyAgICAgICAgICB9XG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cbiAgQGVsc2UgaWYgJGIgPT0gJGQgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYzsgICAgfVxuICBAZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjICRkOyB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gT3V0cHV0IGRpcmVjdGlvbmFsIHByb3BlcnRpZXMsIGZvciBpbnN0YW5jZSBgbWFyZ2luYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcmVcbi8vLyAgIFByZWZpeCB0byB1c2Vcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN1ZlxuLy8vICAgU3VmZml4IHRvIHVzZVxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgdmFsdWVzXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbGxhcHNlLWRpcmVjdGlvbmFsc1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcblxuQG1peGluIGRpcmVjdGlvbmFsLXByb3BlcnR5KCRwcmUsICRzdWYsICR2YWxzKSB7XG4gIC8vIFByb3BlcnR5IE5hbWVzXG4gICR0b3A6ICAgICRwcmUgKyBcIi10b3BcIiAgICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRib3R0b206ICRwcmUgKyBcIi1ib3R0b21cIiArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRsZWZ0OiAgICRwcmUgKyBcIi1sZWZ0XCIgICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRyaWdodDogICRwcmUgKyBcIi1yaWdodFwiICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRhbGw6ICAgICRwcmUgKyAgICAgICAgICAgICBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuXG4gICR2YWxzOiBjb2xsYXBzZS1kaXJlY3Rpb25hbHMoJHZhbHMpO1xuXG4gIEBpZiBjb250YWlucy1mYWxzeSgkdmFscykge1xuICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skdG9wfTogbnRoKCR2YWxzLCAxKTsgfVxuXG4gICAgQGlmIGxlbmd0aCgkdmFscykgPT0gMSB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAxKTsgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRyaWdodH06IG50aCgkdmFscywgMik7IH1cbiAgICB9XG5cbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAyIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAxKTsgfVxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XG4gICAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHMpID09IDMge1xuICAgICAgQGlmIG50aCgkdmFscywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDMpOyB9XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gNCB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHMsIDQpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCA0KTsgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3skYWxsfTogJHZhbHM7XG4gIH1cbn1cbiIsIi8vIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBzb3VyY2Ugc3RyaW5nIGZvciBmb250cyB1c2luZyBAZm9udC1mYWNlXG4vLyBSZWZlcmVuY2U6IGh0dHA6Ly9nb28uZ2wvUnUxYktQXG5cbkBmdW5jdGlvbiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpIHtcbiAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybDtcbiAgfVxufVxuXG5AZnVuY3Rpb24gZm9udC1zb3VyY2UtZGVjbGFyYXRpb24oXG4gICRmb250LWZhbWlseSxcbiAgJGZpbGUtcGF0aCxcbiAgJGFzc2V0LXBpcGVsaW5lLFxuICAkZmlsZS1mb3JtYXRzLFxuICAkZm9udC11cmwpIHtcblxuICAkc3JjOiAoKTtcblxuICAkZm9ybWF0cy1tYXA6IChcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB3b2ZmMjogXCIjeyRmaWxlLXBhdGh9LndvZmYyXCIgZm9ybWF0KFwid29mZjJcIiksXG4gICAgd29mZjogIFwiI3skZmlsZS1wYXRofS53b2ZmXCIgZm9ybWF0KFwid29mZlwiKSxcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgIHN2ZzogICBcIiN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fVwiIGZvcm1hdChcInN2Z1wiKVxuICApO1xuXG4gIEBlYWNoICRrZXksICR2YWx1ZXMgaW4gJGZvcm1hdHMtbWFwIHtcbiAgICBAaWYgY29udGFpbnMoJGZpbGUtZm9ybWF0cywgJGtleSkge1xuICAgICAgJGZpbGUtcGF0aDogbnRoKCR2YWx1ZXMsIDEpO1xuICAgICAgJGZvbnQtZm9ybWF0OiBudGgoJHZhbHVlcywgMik7XG5cbiAgICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCBmb250LXVybCgkZmlsZS1wYXRoKSAkZm9udC1mb3JtYXQsIGNvbW1hKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHNyYztcbn1cbiIsIkBmdW5jdGlvbiBfZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtdHlwZSwgJGdyYWRpZW50LXBvc2l0aW9ucykge1xuICBAaWYgJGdyYWRpZW50LXBvc2l0aW9uc1xuICBhbmQgKCRncmFkaWVudC10eXBlID09IGxpbmVhcilcbiAgYW5kICh0eXBlLW9mKCRncmFkaWVudC1wb3NpdGlvbnMpICE9IGNvbG9yKSB7XG4gICAgJGdyYWRpZW50LXBvc2l0aW9uczogX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC1wb3NpdGlvbnMpO1xuICB9XG4gIEBlbHNlIGlmICRncmFkaWVudC1wb3NpdGlvbnNcbiAgYW5kICgkZ3JhZGllbnQtdHlwZSA9PSByYWRpYWwpXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9yYWRpYWwtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcbiAgfVxuICBAcmV0dXJuICRncmFkaWVudC1wb3NpdGlvbnM7XG59XG4iLCIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXG5AZnVuY3Rpb24gX2xpbmVhci1hbmdsZS1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4KSB7XG4gICRvZmZzZXQ6IG51bGw7XG4gICR1bml0LXNob3J0OiAgc3RyLXNsaWNlKCRmaXJzdC12YWwsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkgLSAyLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcbiAgJHVuaXQtbG9uZzogICBzdHItc2xpY2UoJGZpcnN0LXZhbCwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSAtIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuXG4gIEBpZiAoJHVuaXQtbG9uZyA9PSBcImdyYWRcIikgb3JcbiAgICAgICgkdW5pdC1sb25nID09IFwidHVyblwiKSB7XG4gICAgJG9mZnNldDogaWYoJHVuaXQtbG9uZyA9PSBcImdyYWRcIiwgLTEwMGdyYWQgKiAzLCAtMC43NXR1cm4pO1xuICB9XG5cbiAgQGVsc2UgaWYgKCR1bml0LXNob3J0ID09IFwiZGVnXCIpIG9yXG4gICAgICAgICAgICgkdW5pdC1zaG9ydCA9PSBcInJhZFwiKSB7XG4gICAgJG9mZnNldDogaWYoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIiwgLTkwICogMywgMS42cmFkKTtcbiAgfVxuXG4gIEBpZiAkb2Zmc2V0IHtcbiAgICAkbnVtOiBfc3RyLXRvLW51bSgkZmlyc3QtdmFsKTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAoJG9mZnNldCAtICRudW0pICsgJHN1ZmZpeCxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cbn1cbiIsIkBmdW5jdGlvbiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpIHtcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XG4gICRncmFkaWVudHM6ICgpO1xuICAkc3RhcnQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiKFwiKTtcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xuICAkZmlyc3QtdmFsOiBzdHItc2xpY2UoJGltYWdlLCAkc3RhcnQgKyAxLCAkZW5kIC0gMSk7XG5cbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcbiAgJHN1ZmZpeDogc3RyLXNsaWNlKCRpbWFnZSwgJGVuZCwgc3RyLWxlbmd0aCgkaW1hZ2UpKTtcblxuICAkaGFzLW11bHRpcGxlLXZhbHM6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcIiBcIik7XG4gICRoYXMtc2luZ2xlLXBvc2l0aW9uOiB1bnF1b3RlKF9wb3NpdGlvbi1mbGlwcGVyKCRmaXJzdC12YWwpICsgXCJcIik7XG4gICRoYXMtYW5nbGU6IGlzLW51bWJlcihzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgMSkpO1xuXG4gIEBpZiAkaGFzLW11bHRpcGxlLXZhbHMge1xuICAgICRncmFkaWVudHM6IF9saW5lYXItc2lkZS1jb3JuZXItcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCwgJGhhcy1tdWx0aXBsZS12YWxzKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRoYXMtc2luZ2xlLXBvc2l0aW9uICE9IFwiXCIge1xuICAgICRwb3M6IHVucXVvdGUoJGhhcy1zaW5nbGUtcG9zaXRpb24gKyBcIlwiKTtcblxuICAgICRncmFkaWVudHM6IChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkcHJlZml4ICsgXCJ0byBcIiArICRwb3MgKyAkc3VmZml4XG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRoYXMtYW5nbGUge1xuICAgIC8vIFJvdGF0ZSBkZWdyZWUgZm9yIHdlYmtpdFxuICAgICRncmFkaWVudHM6IF9saW5lYXItYW5nbGUtcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCk7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJGdyYWRpZW50czogKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cblxuICBAcmV0dXJuICRncmFkaWVudHM7XG59XG4iLCJAZnVuY3Rpb24gX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyKCRwb3MpIHtcbiAgJHR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcbiAgJHNwZWM6IG51bGw7XG4gICRkZWdyZWU6IG51bGw7XG4gICRzaWRlOiBudWxsO1xuICAkY29ybmVyOiBudWxsO1xuICAkbGVuZ3RoOiBsZW5ndGgoJHBvcyk7XG4gIC8vIFBhcnNlIFNpZGUgYW5kIGNvcm5lciBwb3NpdGlvbnNcbiAgQGlmICgkbGVuZ3RoID4gMSkge1xuICAgIEBpZiBudGgoJHBvcywgMSkgPT0gXCJ0b1wiIHsgLy8gTmV3ZXIgc3ludGF4XG4gICAgICAkc2lkZTogbnRoKCRwb3MsIDIpO1xuXG4gICAgICBAaWYgJGxlbmd0aCA9PSAyIHsgLy8gZWcuIHRvIHRvcFxuICAgICAgICAvLyBTd2FwIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICAgICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHsgLy8gZWcuIHRvIHRvcCBsZWZ0XG4gICAgICAgICRjb3JuZXI6IG50aCgkcG9zLCAzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAyIHsgLy8gT2xkZXIgc3ludGF4IChcInRvcCBsZWZ0XCIpXG4gICAgICAkc2lkZTogX3Bvc2l0aW9uLWZsaXBwZXIobnRoKCRwb3MsIDEpKTtcbiAgICAgICRjb3JuZXI6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XG4gICAgfVxuXG4gICAgQGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcImxlZnQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCBsZWZ0XCIpIHtcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwicmlnaHQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCByaWdodFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gcmlnaHRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gbGVmdFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgICRzcGVjOiB0byAkc2lkZSAkY29ybmVyO1xuICB9XG4gIEBlbHNlIGlmICRsZW5ndGggPT0gMSB7XG4gICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICBAaWYgJHR5cGUgPT0gc3RyaW5nIHtcbiAgICAgICRkZWdyZWU6ICRwb3M7XG4gICAgICAkc3BlYzogdG8gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRkZWdyZWU6IC0yNzAgLSAkcG9zOyAvL3JvdGF0ZSB0aGUgZ3JhZGllbnQgb3Bwb3NpdGUgZnJvbSBzcGVjXG4gICAgICAkc3BlYzogJHBvcztcbiAgICB9XG4gIH1cbiAgJGRlZ3JlZTogdW5xdW90ZSgkZGVncmVlICsgXCIsXCIpO1xuICAkc3BlYzogICB1bnF1b3RlKCRzcGVjICsgXCIsXCIpO1xuICBAcmV0dXJuICRkZWdyZWUgJHNwZWM7XG59XG5cbkBmdW5jdGlvbiBfcG9zaXRpb24tZmxpcHBlcigkcG9zKSB7XG4gIEByZXR1cm4gaWYoJHBvcyA9PSBsZWZ0LCByaWdodCwgbnVsbClcbiAgICAgICAgIGlmKCRwb3MgPT0gcmlnaHQsIGxlZnQsIG51bGwpXG4gICAgICAgICBpZigkcG9zID09IHRvcCwgYm90dG9tLCBudWxsKVxuICAgICAgICAgaWYoJHBvcyA9PSBib3R0b20sIHRvcCwgbnVsbCk7XG59XG4iLCIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXG5AZnVuY3Rpb24gX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4LCAkaGFzLW11bHRpcGxlLXZhbHMpIHtcbiAgJHZhbC0xOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgJGhhcy1tdWx0aXBsZS12YWxzIC0gMSk7XG4gICR2YWwtMjogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRoYXMtbXVsdGlwbGUtdmFscyArIDEsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuICAkdmFsLTM6IG51bGw7XG4gICRoYXMtdmFsLTM6IHN0ci1pbmRleCgkdmFsLTIsIFwiIFwiKTtcblxuICBAaWYgJGhhcy12YWwtMyB7XG4gICAgJHZhbC0zOiBzdHItc2xpY2UoJHZhbC0yLCAkaGFzLXZhbC0zICsgMSwgc3RyLWxlbmd0aCgkdmFsLTIpKTtcbiAgICAkdmFsLTI6IHN0ci1zbGljZSgkdmFsLTIsIDEsICRoYXMtdmFsLTMgLSAxKTtcbiAgfVxuXG4gICRwb3M6IF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMSkgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0yKSBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTMpO1xuICAkcG9zOiB1bnF1b3RlKCRwb3MgKyBcIlwiKTtcblxuICAvLyBVc2Ugb2xkIHNwZWMgZm9yIHdlYmtpdFxuICBAaWYgJHZhbC0xID09IFwidG9cIiB7XG4gICAgQHJldHVybiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjb2RlIHVwIHRvIHNwZWNcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcbiAgICAgIHNwZWMtaW1hZ2U6ICRwcmVmaXggKyBcInRvIFwiICsgJHBvcyArICRzdWZmaXhcbiAgICApO1xuICB9XG59XG4iLCJAZnVuY3Rpb24gX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSkge1xuICBAZWFjaCAkdmFsdWUgaW4gJGcxLCAkZzIge1xuICAgICRmaXJzdC12YWw6IG50aCgkdmFsdWUsIDEpO1xuICAgICRwb3MtdHlwZTogIHR5cGUtb2YoJGZpcnN0LXZhbCk7XG4gICAgJHNwZWMtYXQtaW5kZXg6IG51bGw7XG5cbiAgICAvLyBEZXRlcm1pbmUgaWYgc3BlYyB3YXMgcGFzc2VkIHRvIG1peGluXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBsaXN0IHtcbiAgICAgICRzcGVjLWF0LWluZGV4OiBpZihpbmRleCgkdmFsdWUsIGF0KSwgaW5kZXgoJHZhbHVlLCBhdCksIGZhbHNlKTtcbiAgICB9XG4gICAgQGlmICRzcGVjLWF0LWluZGV4IHtcbiAgICAgIEBpZiAkc3BlYy1hdC1pbmRleCA+IDEge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkc3BlYy1hdC1pbmRleCAtIDEpIHtcbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHNoYXBlLXNpemUgbnRoKCR2YWx1ZSwgJGkpO1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHNwZWMtYXQtaW5kZXggPT0gMSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJGcxOiBudWxsO1xuICAgIH1cblxuICAgIC8vIElmIG5vdCBzcGVjIGNhbGN1bGF0ZSBjb3JyZWN0IHZhbHVlc1xuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAoJHBvcy10eXBlICE9IGNvbG9yKSBvciAoJGZpcnN0LXZhbCAhPSBcInRyYW5zcGFyZW50XCIpIHtcbiAgICAgICAgQGlmICgkcG9zLXR5cGUgPT0gbnVtYmVyKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNlbnRlclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInRvcFwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInJpZ2h0XCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiYm90dG9tXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwibGVmdFwiKSB7XG5cbiAgICAgICAgICAkcG9zOiAkdmFsdWU7XG5cbiAgICAgICAgICBAaWYgJHBvcyA9PSAkZzEge1xuICAgICAgICAgICAgJGcxOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmXG4gICAgICAgICAgICgkZmlyc3QtdmFsID09IFwiZWxsaXBzZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNpcmNsZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3QtY29ybmVyXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiZmFydGhlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LWNvcm5lclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNvbnRhaW5cIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjb3ZlclwiKSB7XG5cbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHZhbHVlO1xuXG4gICAgICAgICAgQGlmICR2YWx1ZSA9PSAkZzEge1xuICAgICAgICAgICAgJGcxOiBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIGlmICR2YWx1ZSA9PSAkZzIge1xuICAgICAgICAgICAgJGcyOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAcmV0dXJuICRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZTtcbn1cbiIsIkBmdW5jdGlvbiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvcykge1xuICAkc2hhcGUtc2l6ZTogbnRoKCRncmFkaWVudC1wb3MsIDEpO1xuICAkcG9zOiAgICAgICAgbnRoKCRncmFkaWVudC1wb3MsIDIpO1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgJHByZS1zcGVjOiB1bnF1b3RlKGlmKCRwb3MsIFwiI3skcG9zfSwgXCIsIG51bGwpKVxuICAgICAgICAgICAgIHVucXVvdGUoaWYoJHNoYXBlLXNpemUsIFwiI3skc2hhcGUtc2l6ZX0sXCIsIG51bGwpKTtcbiAgJHBvcy1zcGVjOiBpZigkcG9zLCBcImF0ICN7JHBvc31cIiwgbnVsbCk7XG5cbiAgJHNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyRwb3Mtc3BlY31cIjtcblxuICAvLyBBZGQgY29tbWFcbiAgQGlmICgkc3BlYyAhPSBcIiAgXCIpIHtcbiAgICAkc3BlYzogXCIjeyRzcGVjfSxcIjtcbiAgfVxuXG4gIEByZXR1cm4gJHByZS1zcGVjICRzcGVjO1xufVxuIiwiQGZ1bmN0aW9uIF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSkge1xuICAkaW1hZ2U6IHVucXVvdGUoJGltYWdlKTtcbiAgJGdyYWRpZW50czogKCk7XG4gICRzdGFydDogc3RyLWluZGV4KCRpbWFnZSwgXCIoXCIpO1xuICAkZW5kOiBzdHItaW5kZXgoJGltYWdlLCBcIixcIik7XG4gICRmaXJzdC12YWw6IHN0ci1zbGljZSgkaW1hZ2UsICRzdGFydCArIDEsICRlbmQgLSAxKTtcblxuICAkcHJlZml4OiBzdHItc2xpY2UoJGltYWdlLCAxLCAkc3RhcnQpO1xuICAkc3VmZml4OiBzdHItc2xpY2UoJGltYWdlLCAkZW5kLCBzdHItbGVuZ3RoKCRpbWFnZSkpO1xuXG4gICRpcy1zcGVjLXN5bnRheDogc3RyLWluZGV4KCRmaXJzdC12YWwsIFwiYXRcIik7XG5cbiAgQGlmICRpcy1zcGVjLXN5bnRheCBhbmQgJGlzLXNwZWMtc3ludGF4ID4gMSB7XG4gICAgJGtleXdvcmQ6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAxLCAkaXMtc3BlYy1zeW50YXggLSAyKTtcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XG4gICAgJHBvczogYXBwZW5kKCRwb3MsICRrZXl3b3JkLCBjb21tYSk7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRpcy1zcGVjLXN5bnRheCA9PSAxIHtcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmIHN0ci1pbmRleCgkaW1hZ2UsIFwiY292ZXJcIikgb3Igc3RyLWluZGV4KCRpbWFnZSwgXCJjb250YWluXCIpIHtcbiAgICBAd2FybiBcIlJhZGlhbC1ncmFkaWVudCBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIGNvbmZvcm0gdG8gbGF0ZXN0IHNwZWMuXCI7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IG51bGwsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgICRncmFkaWVudHM6IChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG5cbiAgQHJldHVybiAkZ3JhZGllbnRzO1xufVxuIiwiLy8gVXNlciBmb3IgbGluZWFyIGFuZCByYWRpYWwgZ3JhZGllbnRzIHdpdGhpbiBiYWNrZ3JvdW5kLWltYWdlIG9yIGJvcmRlci1pbWFnZSBwcm9wZXJ0aWVzXG5cbkBmdW5jdGlvbiBfcmVuZGVyLWdyYWRpZW50cygkZ3JhZGllbnQtcG9zaXRpb25zLCAkZ3JhZGllbnRzLCAkZ3JhZGllbnQtdHlwZSwgJHZlbmRvcjogZmFsc2UpIHtcbiAgJHByZS1zcGVjOiBudWxsO1xuICAkc3BlYzogbnVsbDtcbiAgJHZlbmRvci1ncmFkaWVudHM6IG51bGw7XG4gIEBpZiAkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIge1xuICAgIEBpZiAkZ3JhZGllbnQtcG9zaXRpb25zIHtcbiAgICAgICRwcmUtc3BlYzogbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDEpO1xuICAgICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IHJhZGlhbCB7XG4gICAgJHByZS1zcGVjOiBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMSk7XG4gICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gIH1cblxuICBAaWYgJHZlbmRvciB7XG4gICAgJHZlbmRvci1ncmFkaWVudHM6IC0jeyR2ZW5kb3J9LSN7JGdyYWRpZW50LXR5cGV9LWdyYWRpZW50KCN7JHByZS1zcGVjfSAkZ3JhZGllbnRzKTtcbiAgfVxuICBAZWxzZSBpZiAkdmVuZG9yID09IGZhbHNlIHtcbiAgICAkdmVuZG9yLWdyYWRpZW50czogXCIjeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRzcGVjfSAjeyRncmFkaWVudHN9KVwiO1xuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiB1bnF1b3RlKCR2ZW5kb3ItZ3JhZGllbnRzKTtcbiAgfVxuICBAcmV0dXJuICR2ZW5kb3ItZ3JhZGllbnRzO1xufVxuIiwiQGZ1bmN0aW9uIF9zaGFwZS1zaXplLXN0cmlwcGVyKCRzaGFwZS1zaXplKSB7XG4gICRzaGFwZS1zaXplLXNwZWM6IG51bGw7XG4gIEBlYWNoICR2YWx1ZSBpbiAkc2hhcGUtc2l6ZSB7XG4gICAgQGlmICgkdmFsdWUgPT0gXCJjb3ZlclwiKSBvciAoJHZhbHVlID09IFwiY29udGFpblwiKSB7XG4gICAgICAkdmFsdWU6IG51bGw7XG4gICAgfVxuICAgICRzaGFwZS1zaXplLXNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyR2YWx1ZX1cIjtcbiAgfVxuICBAcmV0dXJuICRzaGFwZS1zaXplLXNwZWM7XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIGxpbmVhci9yYWRpYWwtZ3JhZGllbnQtcGFyc2Vycy5cbi8vIFNvdXJjZTogaHR0cDovL3Nhc3NtZWlzdGVyLmNvbS9naXN0Lzk2NDc0MDhcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbkBmdW5jdGlvbiBfc3RyLXRvLW51bSgkc3RyaW5nKSB7XG4gIC8vIE1hdHJpY2VzXG4gICRzdHJpbmdzOiBcIjBcIiBcIjFcIiBcIjJcIiBcIjNcIiBcIjRcIiBcIjVcIiBcIjZcIiBcIjdcIiBcIjhcIiBcIjlcIjtcbiAgJG51bWJlcnM6ICAwICAgMSAgIDIgICAzICAgNCAgIDUgICA2ICAgNyAgIDggICA5O1xuXG4gIC8vIFJlc3VsdFxuICAkcmVzdWx0OiAwO1xuICAkZGl2aWRlcjogMDtcbiAgJG1pbnVzOiBmYWxzZTtcblxuICAvLyBMb29waW5nIHRocm91Z2ggYWxsIGNoYXJhY3RlcnNcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCRzdHJpbmcpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHN0cmluZywgJGksICRpKTtcbiAgICAkaW5kZXg6IGluZGV4KCRzdHJpbmdzLCAkY2hhcmFjdGVyKTtcblxuICAgIEBpZiAkY2hhcmFjdGVyID09IFwiLVwiIHtcbiAgICAgICRtaW51czogdHJ1ZTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkY2hhcmFjdGVyID09IFwiLlwiIHtcbiAgICAgICRkaXZpZGVyOiAxO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiBub3QgJGluZGV4IHtcbiAgICAgICAgJHJlc3VsdDogaWYoJG1pbnVzLCAkcmVzdWx0ICogLTEsICRyZXN1bHQpO1xuICAgICAgICBAcmV0dXJuIF9jb252ZXJ0LXVuaXRzKCRyZXN1bHQsIHN0ci1zbGljZSgkc3RyaW5nLCAkaSkpO1xuICAgICAgfVxuXG4gICAgICAkbnVtYmVyOiBudGgoJG51bWJlcnMsICRpbmRleCk7XG5cbiAgICAgIEBpZiAkZGl2aWRlciA9PSAwIHtcbiAgICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIE1vdmUgdGhlIGRlY2ltYWwgZG90IHRvIHRoZSBsZWZ0XG4gICAgICAgICRkaXZpZGVyOiAkZGl2aWRlciAqIDEwO1xuICAgICAgICAkbnVtYmVyOiAkbnVtYmVyIC8gJGRpdmlkZXI7XG4gICAgICB9XG5cbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAkbnVtYmVyO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcbn1cbiIsIi8vIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtYW5pbWF0aW9ucy8jdGhlLWFuaW1hdGlvbi1uYW1lLXByb3BlcnR5LVxuLy8gRWFjaCBvZiB0aGVzZSBtaXhpbnMgc3VwcG9ydCBjb21tYSBzZXBhcmF0ZWQgbGlzdHMgb2YgdmFsdWVzLCB3aGljaCBhbGxvd3MgZGlmZmVyZW50IHRyYW5zaXRpb25zIGZvciBpbmRpdmlkdWFsIHByb3BlcnRpZXMgdG8gYmUgZGVzY3JpYmVkIGluIGEgc2luZ2xlIHN0eWxlIHJ1bGUuIEVhY2ggdmFsdWUgaW4gdGhlIGxpc3QgY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIGF0IHRoYXQgc2FtZSBwb3NpdGlvbiBpbiB0aGUgb3RoZXIgcHJvcGVydGllcy5cblxuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9ucy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRhbmltYXRpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1uYW1lLCAkbmFtZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kdXJhdGlvbiwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkbW90aW9ucy4uLikge1xuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCR2YWx1ZXMuLi4pIHtcbiAgLy8gaW5maW5pdGUgfCA8bnVtYmVyPlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAkdmFsdWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9ucy4uLikge1xuICAvLyBub3JtYWwgfCBhbHRlcm5hdGVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWRpcmVjdGlvbiwgJGRpcmVjdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tcGxheS1zdGF0ZSgkc3RhdGVzLi4uKSB7XG4gIC8vIHJ1bm5pbmcgfCBwYXVzZWRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXBsYXktc3RhdGUsICRzdGF0ZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kZWxheSwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkbW9kZXMuLi4pIHtcbiAgLy8gbm9uZSB8IGZvcndhcmRzIHwgYmFja3dhcmRzIHwgYm90aFxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZmlsbC1tb2RlLCAkbW9kZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLCJAbWl4aW4gYXBwZWFyYW5jZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYXBwZWFyYW5jZSwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG59XG4iLCJAbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihiYWNrZmFjZS12aXNpYmlsaXR5LCAkdmlzaWJpbGl0eSwgd2Via2l0IHNwZWMpO1xufVxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gQmFja2dyb3VuZCBwcm9wZXJ0eSBmb3IgYWRkaW5nIG11bHRpcGxlIGJhY2tncm91bmRzIHVzaW5nIHNob3J0aGFuZFxuLy8gbm90YXRpb24uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5cbkBtaXhpbiBiYWNrZ3JvdW5kKCRiYWNrZ3JvdW5kcy4uLikge1xuICAkd2Via2l0LWJhY2tncm91bmRzOiAoKTtcbiAgJHNwZWMtYmFja2dyb3VuZHM6ICgpO1xuXG4gIEBlYWNoICRiYWNrZ3JvdW5kIGluICRiYWNrZ3JvdW5kcyB7XG4gICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAoKTtcbiAgICAkc3BlYy1iYWNrZ3JvdW5kOiAoKTtcbiAgICAkYmFja2dyb3VuZC10eXBlOiB0eXBlLW9mKCRiYWNrZ3JvdW5kKTtcblxuICAgIEBpZiAkYmFja2dyb3VuZC10eXBlID09IHN0cmluZyBvciAkYmFja2dyb3VuZC10eXBlID09IGxpc3Qge1xuICAgICAgJGJhY2tncm91bmQtc3RyOiBpZigkYmFja2dyb3VuZC10eXBlID09IGxpc3QsIG50aCgkYmFja2dyb3VuZCwgMSksICRiYWNrZ3JvdW5kKTtcblxuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDMpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDYpO1xuXG4gICAgICBAaWYgJHVybC1zdHIgPT0gXCJ1cmxcIiB7XG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgJGJhY2tncm91bmQ7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcihcIiN7JGJhY2tncm91bmR9XCIpO1xuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcInJhZGlhbFwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoXCIjeyRiYWNrZ3JvdW5kfVwiKTtcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2Uge1xuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICR3ZWJraXQtYmFja2dyb3VuZHM6IGFwcGVuZCgkd2Via2l0LWJhY2tncm91bmRzLCAkd2Via2l0LWJhY2tncm91bmQsIGNvbW1hKTtcbiAgICAkc3BlYy1iYWNrZ3JvdW5kczogICBhcHBlbmQoJHNwZWMtYmFja2dyb3VuZHMsICAgJHNwZWMtYmFja2dyb3VuZCwgICBjb21tYSk7XG4gIH1cblxuICBiYWNrZ3JvdW5kOiAkd2Via2l0LWJhY2tncm91bmRzO1xuICBiYWNrZ3JvdW5kOiAkc3BlYy1iYWNrZ3JvdW5kcztcbn1cbiIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIEJhY2tncm91bmQtaW1hZ2UgcHJvcGVydHkgZm9yIGFkZGluZyBtdWx0aXBsZSBiYWNrZ3JvdW5kIGltYWdlcyB3aXRoXG4vLyBncmFkaWVudHMsIG9yIGZvciBzdHJpbmdpbmcgbXVsdGlwbGUgZ3JhZGllbnRzIHRvZ2V0aGVyLlxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2VzLi4uKSB7XG4gICR3ZWJraXQtaW1hZ2VzOiAoKTtcbiAgJHNwZWMtaW1hZ2VzOiAoKTtcblxuICBAZWFjaCAkaW1hZ2UgaW4gJGltYWdlcyB7XG4gICAgJHdlYmtpdC1pbWFnZTogKCk7XG4gICAgJHNwZWMtaW1hZ2U6ICgpO1xuXG4gICAgQGlmICh0eXBlLW9mKCRpbWFnZSkgPT0gc3RyaW5nKSB7XG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRpbWFnZSwgMSwgMyk7XG4gICAgICAkZ3JhZGllbnQtdHlwZTogc3RyLXNsaWNlKCRpbWFnZSwgMSwgNik7XG5cbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogJGltYWdlO1xuICAgICAgICAkc3BlYy1pbWFnZTogICAkaW1hZ2U7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xuICAgICAgICAkd2Via2l0LWltYWdlOiAgbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1pbWFnZTogICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSk7XG4gICAgICAgICR3ZWJraXQtaW1hZ2U6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkd2Via2l0LWltYWdlczogYXBwZW5kKCR3ZWJraXQtaW1hZ2VzLCAkd2Via2l0LWltYWdlLCBjb21tYSk7XG4gICAgJHNwZWMtaW1hZ2VzOiAgIGFwcGVuZCgkc3BlYy1pbWFnZXMsICAgJHNwZWMtaW1hZ2UsICAgY29tbWEpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogJHdlYmtpdC1pbWFnZXM7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRzcGVjLWltYWdlcztcbn1cbiIsIkBtaXhpbiBib3JkZXItaW1hZ2UoJGJvcmRlcnMuLi4pIHtcbiAgJHdlYmtpdC1ib3JkZXJzOiAoKTtcbiAgJHNwZWMtYm9yZGVyczogKCk7XG5cbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJHdlYmtpdC1ib3JkZXI6ICgpO1xuICAgICRzcGVjLWJvcmRlcjogKCk7XG4gICAgJGJvcmRlci10eXBlOiB0eXBlLW9mKCRib3JkZXIpO1xuXG4gICAgQGlmICRib3JkZXItdHlwZSA9PSBzdHJpbmcgb3IgbGlzdCB7XG4gICAgICAkYm9yZGVyLXN0cjogaWYoJGJvcmRlci10eXBlID09IGxpc3QsIG50aCgkYm9yZGVyLCAxKSwgJGJvcmRlcik7XG5cbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDMpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYm9yZGVyLXN0ciwgMSwgNik7XG5cbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRib3JkZXJ9XCIpO1xuICAgICAgICAkd2Via2l0LWJvcmRlcjogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYm9yZGVyfVwiKTtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgJHNwZWMtYm9yZGVyOiAgICRib3JkZXI7XG4gICAgfVxuXG4gICAgJHdlYmtpdC1ib3JkZXJzOiBhcHBlbmQoJHdlYmtpdC1ib3JkZXJzLCAkd2Via2l0LWJvcmRlciwgY29tbWEpO1xuICAgICRzcGVjLWJvcmRlcnM6ICAgYXBwZW5kKCRzcGVjLWJvcmRlcnMsICAgJHNwZWMtYm9yZGVyLCAgIGNvbW1hKTtcbiAgfVxuXG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiAkd2Via2l0LWJvcmRlcnM7XG4gICAgICAgICAgYm9yZGVyLWltYWdlOiAkc3BlYy1ib3JkZXJzO1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi8vRXhhbXBsZXM6XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZSh1cmwoXCJpbWFnZS5wbmdcIikgMjAgc3RyZXRjaCk7XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UobGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBvcmFuZ2UsIHllbGxvdykpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIHN0cmV0Y2gpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIDIwIDMwIDQwIDUwIHN0cmV0Y2ggcm91bmQpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHJhZGlhbC1ncmFkaWVudCh0b3AsIGNvdmVyLCBvcmFuZ2UsIHllbGxvdywgb3JhbmdlKSk7XG4iLCJAbWl4aW4gY2FsYygkcHJvcGVydHksICR2YWx1ZSkge1xuICAjeyRwcm9wZXJ0eX06IC13ZWJraXQtY2FsYygjeyR2YWx1ZX0pO1xuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skdmFsdWV9KTtcbn1cbiIsIkBtaXhpbiBjb2x1bW5zKCRhcmc6IGF1dG8pIHtcbiAgLy8gPGNvbHVtbi1jb3VudD4gfHwgPGNvbHVtbi13aWR0aD5cbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1ucywgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1jb3VudCgkaW50OiBhdXRvKSB7XG4gIC8vIGF1dG8gfHwgaW50ZWdlclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tY291bnQsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tZ2FwKCRsZW5ndGg6IG5vcm1hbCkge1xuICAvLyBub3JtYWwgfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1nYXAsICRsZW5ndGgsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tZmlsbCgkYXJnOiBhdXRvKSB7XG4gIC8vIGF1dG8gfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1maWxsLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUoJGFyZykge1xuICAvLyA8Ym9yZGVyLXdpZHRoPiB8fCA8Ym9yZGVyLXN0eWxlPiB8fCA8Y29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUtY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLWNvbG9yLCAkY29sb3IsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tcnVsZS1zdHlsZSgkc3R5bGU6IG5vbmUpIHtcbiAgLy8gbm9uZSB8IGhpZGRlbiB8IGRhc2hlZCB8IGRvdHRlZCB8IGRvdWJsZSB8IGdyb292ZSB8IGluc2V0IHwgaW5zZXQgfCBvdXRzZXQgfCByaWRnZSB8IHNvbGlkXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXN0eWxlLCAkc3R5bGUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tcnVsZS13aWR0aCAoJHdpZHRoOiBub25lKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXdpZHRoLCAkd2lkdGgsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tc3BhbigkYXJnOiBub25lKSB7XG4gIC8vIG5vbmUgfHwgYWxsXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1zcGFuLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXdpZHRoKCRsZW5ndGg6IGF1dG8pIHtcbiAgLy8gYXV0byB8fCBsZW5ndGhcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXdpZHRoLCAkbGVuZ3RoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuIiwiQG1peGluIGZpbHRlcigkZnVuY3Rpb246IG5vbmUpIHtcbiAgLy8gPGZpbHRlci1mdW5jdGlvbj4gWzxmaWx0ZXItZnVuY3Rpb25dKiB8IG5vbmVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmlsdGVyLCAkZnVuY3Rpb24sIHdlYmtpdCBzcGVjKTtcbn1cbiIsIi8vIENTUzMgRmxleGlibGUgQm94IE1vZGVsIGFuZCBwcm9wZXJ0eSBkZWZhdWx0c1xuXG4vLyBDdXN0b20gc2hvcnRoYW5kIG5vdGF0aW9uIGZvciBmbGV4Ym94XG5AbWl4aW4gYm94KCRvcmllbnQ6IGlubGluZS1heGlzLCAkcGFjazogc3RhcnQsICRhbGlnbjogc3RyZXRjaCkge1xuICBAaW5jbHVkZSBkaXNwbGF5LWJveDtcbiAgQGluY2x1ZGUgYm94LW9yaWVudCgkb3JpZW50KTtcbiAgQGluY2x1ZGUgYm94LXBhY2soJHBhY2spO1xuICBAaW5jbHVkZSBib3gtYWxpZ24oJGFsaWduKTtcbn1cblxuQG1peGluIGRpc3BsYXktYm94IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDsgLy8gSUUgMTBcbiAgZGlzcGxheTogYm94O1xufVxuXG5AbWl4aW4gYm94LW9yaWVudCgkb3JpZW50OiBpbmxpbmUtYXhpcykge1xuLy8gaG9yaXpvbnRhbHx2ZXJ0aWNhbHxpbmxpbmUtYXhpc3xibG9jay1heGlzfGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yaWVudCwgJG9yaWVudCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1wYWNrKCRwYWNrOiBzdGFydCkge1xuLy8gc3RhcnR8ZW5kfGNlbnRlcnxqdXN0aWZ5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkcGFjaywgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcGFjazogJHBhY2s7IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtYWxpZ24oJGFsaWduOiBzdHJldGNoKSB7XG4vLyBzdGFydHxlbmR8Y2VudGVyfGJhc2VsaW5lfHN0cmV0Y2hcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWFsaWduLCAkYWxpZ24sIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LWFsaWduOiAkYWxpZ247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtZGlyZWN0aW9uKCRkaXJlY3Rpb246IG5vcm1hbCkge1xuLy8gbm9ybWFsfHJldmVyc2V8aW5oZXJpdFxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtbGluZXMoJGxpbmVzOiBzaW5nbGUpIHtcbi8vIHNpbmdsZXxtdWx0aXBsZVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRsaW5lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1vcmRpbmFsLWdyb3VwKCRpbnQ6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yZGluYWwtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50OyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWZsZXgoJHZhbHVlOiAwKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4OiAkdmFsdWU7IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtZmxleC1ncm91cCgkaW50OiAxKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG4vLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcbi8vIFVuaWZpZWQgYXR0cmlidXRlcyBmb3IgMjAwOSwgMjAxMSwgYW5kIDIwMTIgZmxhdm91cnMuXG5cbi8vIDIwMDkgLSBkaXNwbGF5IChib3ggfCBpbmxpbmUtYm94KVxuLy8gMjAxMSAtIGRpc3BsYXkgKGZsZXhib3ggfCBpbmxpbmUtZmxleGJveClcbi8vIDIwMTIgLSBkaXNwbGF5IChmbGV4IHwgaW5saW5lLWZsZXgpXG5AbWl4aW4gZGlzcGxheSgkdmFsdWUpIHtcbi8vIGZsZXggfCBpbmxpbmUtZmxleFxuICBAaWYgJHZhbHVlID09IFwiZmxleFwiIHtcbiAgICAvLyAyMDA5XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogYm94O1xuXG4gICAgLy8gMjAxMlxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIDIwMTEgKElFIDEwKVxuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiaW5saW5lLWZsZXhcIiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYm94O1xuXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfSBAZWxzZSB7XG4gICAgZGlzcGxheTogJHZhbHVlO1xuICB9XG59XG5cbi8vIDIwMDkgLSBib3gtZmxleCAoaW50ZWdlcilcbi8vIDIwMTEgLSBmbGV4IChkZWNpbWFsIHwgd2lkdGggZGVjaW1hbClcbi8vIDIwMTIgLSBmbGV4IChpbnRlZ2VyIGludGVnZXIgd2lkdGgpXG5AbWl4aW4gZmxleCgkdmFsdWUpIHtcblxuICAvLyBHcmFiIGZsZXgtZ3JvdyBmb3Igb2xkZXIgYnJvd3NlcnMuXG4gICRmbGV4LWdyb3c6IG50aCgkdmFsdWUsIDEpO1xuXG4gIC8vIDIwMDlcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICRmbGV4LWdyb3csIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApLCAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIGJveC1vcmllbnQgKCBob3Jpem9udGFsIHwgdmVydGljYWwgfCBpbmxpbmUtYXhpcyB8IGJsb2NrLWF4aXMpXG4vLyAgICAgIC0gYm94LWRpcmVjdGlvbiAobm9ybWFsIHwgcmV2ZXJzZSlcbi8vIDIwMTEgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcbi8vIDIwMTIgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkdmFsdWU6IHJvdykge1xuXG4gIC8vIEFsdCB2YWx1ZXMuXG4gICR2YWx1ZS0yMDA5OiAkdmFsdWU7XG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XG4gICRkaXJlY3Rpb246IG5vcm1hbDtcblxuICBAaWYgJHZhbHVlID09IHJvdyB7XG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwicm93LXJldmVyc2VcIiB7XG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XG4gICAgJGRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gY29sdW1uIHtcbiAgICAkdmFsdWUtMjAwOTogdmVydGljYWw7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiY29sdW1uLXJldmVyc2VcIiB7XG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xuICAgICRkaXJlY3Rpb246IHJldmVyc2U7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICR2YWx1ZS0yMDA5LCB3ZWJraXQgbW96IHNwZWMpO1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1kaXJlY3Rpb24sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XG59XG5cbi8vIDIwMDkgLSBib3gtbGluZXMgKHNpbmdsZSB8IG11bHRpcGxlKVxuLy8gMjAxMSAtIGZsZXgtd3JhcCAobm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZSlcbi8vIDIwMTIgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XG4gIC8vIEFsdCB2YWx1ZXNcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xuICBAaWYgJHZhbHVlID09IG5vd3JhcCB7XG4gICAgJGFsdC12YWx1ZTogc2luZ2xlO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSB3cmFwIHtcbiAgICAkYWx0LXZhbHVlOiBtdWx0aXBsZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJ3cmFwLXJldmVyc2VcIiB7XG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XG4gIH1cblxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtd3JhcCwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xufVxuXG4vLyAyMDA5IC0gVE9ETzogcGFyc2UgdmFsdWVzIGludG8gZmxleC1kaXJlY3Rpb24vZmxleC13cmFwXG4vLyAyMDExIC0gVE9ETzogcGFyc2UgdmFsdWVzIGludG8gZmxleC1kaXJlY3Rpb24vZmxleC13cmFwXG4vLyAyMDEyIC0gZmxleC1mbG93IChmbGV4LWRpcmVjdGlvbiB8fCBmbGV4LXdyYXApXG5AbWl4aW4gZmxleC1mbG93KCR2YWx1ZSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LWZsb3csICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIGJveC1vcmRpbmFsLWdyb3VwIChpbnRlZ2VyKVxuLy8gMjAxMSAtIGZsZXgtb3JkZXIgKGludGVnZXIpXG4vLyAyMDEyIC0gb3JkZXIgKGludGVnZXIpXG5AbWl4aW4gb3JkZXIoJGludDogMCkge1xuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIob3JkZXIsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50O1xufVxuXG4vLyAyMDEyIC0gZmxleC1ncm93IChudW1iZXIpXG5AbWl4aW4gZmxleC1ncm93KCRudW1iZXI6IDApIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1ncm93LCAkbnVtYmVyLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogJG51bWJlcjtcbn1cblxuLy8gMjAxMiAtIGZsZXgtc2hyaW5rIChudW1iZXIpXG5AbWl4aW4gZmxleC1zaHJpbmsoJG51bWJlcjogMSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXNocmluaywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6ICRudW1iZXI7XG59XG5cbi8vIDIwMTIgLSBmbGV4LWJhc2lzIChudW1iZXIpXG5AbWl4aW4gZmxleC1iYXNpcygkd2lkdGg6IGF1dG8pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1iYXNpcywgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogJHdpZHRoO1xufVxuXG4vLyAyMDA5IC0gYm94LXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSlcbi8vIDIwMTEgLSBmbGV4LXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSlcbi8vIDIwMTIgLSBqdXN0aWZ5LWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQpXG5AbWl4aW4ganVzdGlmeS1jb250ZW50KCR2YWx1ZTogZmxleC1zdGFydCkge1xuXG4gIC8vIEFsdCB2YWx1ZXMuXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZW5kO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWJldHdlZW5cIiB7XG4gICAgJGFsdC12YWx1ZToganVzdGlmeTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZGlzdHJpYnV0ZTtcbiAgfVxuXG4gIC8vIDIwMDlcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXBhY2ssICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihqdXN0aWZ5LWNvbnRlbnQsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1wYWNrOiAkYWx0LXZhbHVlO1xufVxuXG4vLyAyMDA5IC0gYm94LWFsaWduIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTEgLSBmbGV4LWFsaWduIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTIgLSBhbGlnbi1pdGVtcyAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLWl0ZW1zKCR2YWx1ZTogc3RyZXRjaCkge1xuXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcblxuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcbiAgICAkYWx0LXZhbHVlOiBzdGFydDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcbiAgICAkYWx0LXZhbHVlOiBlbmQ7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWl0ZW1zLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtYWxpZ246ICRhbHQtdmFsdWU7XG59XG5cbi8vIDIwMTEgLSBmbGV4LWl0ZW0tYWxpZ24gKGF1dG8gfCBzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTIgLSBhbGlnbi1zZWxmIChhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLXNlbGYoJHZhbHVlOiBhdXRvKSB7XG5cbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICR2YWx1ZS0yMDExOiBlbmQ7XG4gIH1cblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLXNlbGYsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogJHZhbHVlLTIwMTE7XG59XG5cbi8vIDIwMTEgLSBmbGV4LWxpbmUtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5IHwgZGlzdHJpYnV0ZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24tY29udGVudCAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2gpXG5AbWl4aW4gYWxpZ24tY29udGVudCgkdmFsdWU6IHN0cmV0Y2gpIHtcblxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcbiAgICAkdmFsdWUtMjAxMTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IGVuZDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xuICAgICR2YWx1ZS0yMDExOiBqdXN0aWZ5O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWFyb3VuZFwiIHtcbiAgICAkdmFsdWUtMjAxMTogZGlzdHJpYnV0ZTtcbiAgfVxuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYWxpZ24tY29udGVudCwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1saW5lLXBhY2s6ICR2YWx1ZS0yMDExO1xufVxuIiwiQG1peGluIGZvbnQtZmFjZShcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkd2VpZ2h0OiBub3JtYWwsXG4gICRzdHlsZTogbm9ybWFsLFxuICAkYXNzZXQtcGlwZWxpbmU6ICRhc3NldC1waXBlbGluZSxcbiAgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xuXG4gICRmb250LXVybC1wcmVmaXg6IGZvbnQtdXJsLXByZWZpeGVyKCRhc3NldC1waXBlbGluZSk7XG5cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBzcmM6IGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxuICAgICAgJGZvbnQtZmFtaWx5LFxuICAgICAgJGZpbGUtcGF0aCxcbiAgICAgICRhc3NldC1waXBlbGluZSxcbiAgICAgICRmaWxlLWZvcm1hdHMsXG4gICAgICAkZm9udC11cmwtcHJlZml4XG4gICAgKTtcbiAgfVxufVxuIiwiQG1peGluIGZvbnQtZmVhdHVyZS1zZXR0aW5ncygkc2V0dGluZ3MuLi4pIHtcbiAgQGlmIGxlbmd0aCgkc2V0dGluZ3MpID09IDAgeyAkc2V0dGluZ3M6IG5vbmU7IH1cbiAgQGluY2x1ZGUgcHJlZml4ZXIoZm9udC1mZWF0dXJlLXNldHRpbmdzLCAkc2V0dGluZ3MsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLCIvLyBIaURQSSBtaXhpbi4gRGVmYXVsdCB2YWx1ZSBzZXQgdG8gMS4zIHRvIHRhcmdldCBHb29nbGUgTmV4dXMgNyAoaHR0cDovL2JqYW5nby5jb20vYXJ0aWNsZXMvbWluLWRldmljZS1waXhlbC1yYXRpby8pXG5AbWl4aW4gaGlkcGkoJHJhdGlvOiAxLjMpIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcbiAgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyRyYXRpb30vMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IHJvdW5kKCRyYXRpbyAqIDk2ZHBpKSksXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246ICRyYXRpbyAqIDFkcHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBoeXBoZW5zKCRoeXBoZW5hdGlvbjogbm9uZSkge1xuICAvLyBub25lIHwgbWFudWFsIHwgYXV0b1xuICBAaW5jbHVkZSBwcmVmaXhlcihoeXBoZW5zLCAkaHlwaGVuYXRpb24sIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLCJAbWl4aW4gaW1hZ2UtcmVuZGVyaW5nICgkbW9kZTphdXRvKSB7XG5cbiAgQGlmICgkbW9kZSA9PSBjcmlzcC1lZGdlcykge1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7IC8vIElFOCtcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtby1jcmlzcC1lZGdlcztcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlcztcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBpbWFnZS1yZW5kZXJpbmc6ICRtb2RlO1xuICB9XG59XG4iLCIvLyBBZGRzIGtleWZyYW1lcyBibG9ja3MgZm9yIHN1cHBvcnRlZCBwcmVmaXhlcywgcmVtb3ZpbmcgcmVkdW5kYW50IHByZWZpeGVzIGluIHRoZSBibG9jaydzIGNvbnRlbnRcbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0OiAgICAkcHJlZml4LWZvci13ZWJraXQ7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGE6ICAgJHByZWZpeC1mb3ItbW96aWxsYTtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0OiAkcHJlZml4LWZvci1taWNyb3NvZnQ7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhOiAgICAgJHByZWZpeC1mb3Itb3BlcmE7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWM6ICAgICAgJHByZWZpeC1mb3Itc3BlYztcblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0IHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3Itd2Via2l0OiB0cnVlICFnbG9iYWw7XG4gICAgQC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3ItbW96aWxsYTogdHJ1ZSAhZ2xvYmFsO1xuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGEgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6ICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdCAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhICAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMgICAgICAhZ2xvYmFsO1xuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjIHtcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGxpbmVhci1ncmFkaWVudCgkcG9zLCAkZzEsICRnMjogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGczOiBudWxsLCAkZzQ6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzc6IG51bGwsICRnODogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc5OiBudWxsLCAkZzEwOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcbiAgLy8gRGV0ZWN0IHdoYXQgdHlwZSBvZiB2YWx1ZSBleGlzdHMgaW4gJHBvc1xuICAkcG9zLXR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcbiAgJHBvcy1zcGVjOiBudWxsO1xuICAkcG9zLWRlZ3JlZTogbnVsbDtcblxuICAvLyBJZiAkcG9zIGlzIG1pc3NpbmcgZnJvbSBtaXhpbiwgcmVhc3NpZ24gdmFycyBhbmQgYWRkIGRlZmF1bHQgcG9zaXRpb25cbiAgQGlmICgkcG9zLXR5cGUgPT0gY29sb3IpIG9yIChudGgoJHBvcywgMSkgPT0gXCJ0cmFuc3BhcmVudFwiKSAge1xuICAgICRnMTA6ICRnOTsgJGc5OiAkZzg7ICRnODogJGc3OyAkZzc6ICRnNjsgJGc2OiAkZzU7XG4gICAgJGc1OiAkZzQ7ICRnNDogJGczOyAkZzM6ICRnMjsgJGcyOiAkZzE7ICRnMTogJHBvcztcbiAgICAkcG9zOiBudWxsO1xuICB9XG5cbiAgQGlmICRwb3Mge1xuICAgICRwb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKTtcbiAgICAkcG9zLWRlZ3JlZTogbnRoKCRwb3NpdGlvbnMsIDEpO1xuICAgICRwb3Mtc3BlYzogICBudGgoJHBvc2l0aW9ucywgMik7XG4gIH1cblxuICAkZnVsbDogJGcxLCAkZzIsICRnMywgJGc0LCAkZzUsICRnNiwgJGc3LCAkZzgsICRnOSwgJGcxMDtcblxuICAvLyBTZXQgJGcxIGFzIHRoZSBkZWZhdWx0IGZhbGxiYWNrIGNvbG9yXG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRnMSwgMSk7XG5cbiAgLy8gSWYgJGZhbGxiYWNrIGlzIGEgY29sb3IgdXNlIHRoYXQgY29sb3IgYXMgdGhlIGZhbGxiYWNrIGNvbG9yXG4gIEBpZiAodHlwZS1vZigkZmFsbGJhY2spID09IGNvbG9yKSBvciAoJGZhbGxiYWNrID09IFwidHJhbnNwYXJlbnRcIikge1xuICAgICRmYWxsYmFjay1jb2xvcjogJGZhbGxiYWNrO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkcG9zLWRlZ3JlZSAkZnVsbCk7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWVcbiAgYmFja2dyb3VuZC1pbWFnZTogdW5xdW90ZShcImxpbmVhci1ncmFkaWVudCgjeyRwb3Mtc3BlY30jeyRmdWxsfSlcIik7XG59XG4iLCJAbWl4aW4gcGVyc3BlY3RpdmUoJGRlcHRoOiBub25lKSB7XG4gIC8vIG5vbmUgfCA8bGVuZ3RoPlxuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZSwgJGRlcHRoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWx1ZTogNTAlIDUwJSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZS1vcmlnaW4sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICRwbGFjZWhvbGRlcnM6IFwiOi13ZWJraXQtaW5wdXRcIiBcIjotbW96XCIgXCItbW96XCIgXCItbXMtaW5wdXRcIjtcbiAgQGVhY2ggJHBsYWNlaG9sZGVyIGluICRwbGFjZWhvbGRlcnMge1xuICAgICY6I3skcGxhY2Vob2xkZXJ9LXBsYWNlaG9sZGVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVxdWlyZXMgU2FzcyAzLjErXG5AbWl4aW4gcmFkaWFsLWdyYWRpZW50KCRnMSwgJGcyLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzM6IG51bGwsICRnNDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc1OiBudWxsLCAkZzY6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnNzogbnVsbCwgJGc4OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzk6IG51bGwsICRnMTA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRwb3M6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRzaGFwZS1zaXplOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcblxuICAkZGF0YTogX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSk7XG4gICRnMTogIG50aCgkZGF0YSwgMSk7XG4gICRnMjogIG50aCgkZGF0YSwgMik7XG4gICRwb3M6IG50aCgkZGF0YSwgMyk7XG4gICRzaGFwZS1zaXplOiBudGgoJGRhdGEsIDQpO1xuXG4gICRmdWxsOiAkZzEsICRnMiwgJGczLCAkZzQsICRnNSwgJGc2LCAkZzcsICRnOCwgJGc5LCAkZzEwO1xuXG4gIC8vIFN0cmlwIGRlcHJlY2F0ZWQgY292ZXIvY29udGFpbiBmb3Igc3BlY1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgLy8gU2V0ICRnMSBhcyB0aGUgZGVmYXVsdCBmYWxsYmFjayBjb2xvclxuICAkZmlyc3QtY29sb3I6IG50aCgkZnVsbCwgMSk7XG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRmaXJzdC1jb2xvciwgMSk7XG5cbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XG4gICAgJGZhbGxiYWNrLWNvbG9yOiAkZmFsbGJhY2s7XG4gIH1cblxuICAvLyBBZGQgQ29tbWFzIGFuZCBzcGFjZXNcbiAgJHNoYXBlLXNpemU6IGlmKCRzaGFwZS1zaXplLCBcIiN7JHNoYXBlLXNpemV9LCBcIiwgbnVsbCk7XG4gICRwb3M6ICAgICAgICBpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKTtcbiAgJHBvcy1zcGVjOiAgIGlmKCRwb3MsIFwiYXQgI3skcG9zfVwiLCBudWxsKTtcbiAgJHNoYXBlLXNpemUtc3BlYzogaWYoKCRzaGFwZS1zaXplLXNwZWMgIT0gXCIgXCIpIGFuZCAoJHBvcyA9PSBudWxsKSwgXCIjeyRzaGFwZS1zaXplLXNwZWN9LCBcIiwgXCIjeyRzaGFwZS1zaXplLXNwZWN9IFwiKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAgJGZhbGxiYWNrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCgjeyRwb3N9I3skc2hhcGUtc2l6ZX0jeyRmdWxsfSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjeyRzaGFwZS1zaXplLXNwZWN9I3skcG9zLXNwZWN9I3skZnVsbH0pO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIE91dHB1dHMgdGhlIHNwZWMgYW5kIHByZWZpeGVkIHZlcnNpb25zIG9mIHRoZSBgOjpzZWxlY3Rpb25gIHBzZXVkby1lbGVtZW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Qm9vbH0gJGN1cnJlbnQtc2VsZWN0b3IgW2ZhbHNlXVxyXG4vLy8gICBJZiBzZXQgdG8gYHRydWVgLCBpdCB0YWtlcyB0aGUgY3VycmVudCBlbGVtZW50IGludG8gY29uc2lkZXJhdGlvbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHNlbGVjdGlvbih0cnVlKSB7XHJcbi8vLyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICAgIH1cclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQ6Oi1tb3otc2VsZWN0aW9uIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuZWxlbWVudDo6c2VsZWN0aW9uIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gc2VsZWN0aW9uKCRjdXJyZW50LXNlbGVjdG9yOiBmYWxzZSkge1xyXG4gIEBpZiAkY3VycmVudC1zZWxlY3RvciB7XHJcbiAgICAmOjotbW96LXNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6OnNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgOjotbW96LXNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICAgIDo6c2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiB0ZXh0LWRlY29yYXRpb24oJHZhbHVlKSB7XG4vLyA8dGV4dC1kZWNvcmF0aW9uLWxpbmU+IHx8IDx0ZXh0LWRlY29yYXRpb24tc3R5bGU+IHx8IDx0ZXh0LWRlY29yYXRpb24tY29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbiwgJHZhbHVlLCBtb3opO1xufVxuXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWxpbmUoJGxpbmU6IG5vbmUpIHtcbi8vIG5vbmUgfHwgdW5kZXJsaW5lIHx8IG92ZXJsaW5lIHx8IGxpbmUtdGhyb3VnaFxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tbGluZSwgJGxpbmUsIG1veik7XG59XG5cbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tc3R5bGUoJHN0eWxlOiBzb2xpZCkge1xuLy8gc29saWQgfHwgZG91YmxlIHx8IGRvdHRlZCB8fCBkYXNoZWQgfHwgd2F2eVxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tc3R5bGUsICRzdHlsZSwgbW96IHdlYmtpdCk7XG59XG5cbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tY29sb3IoJGNvbG9yOiBjdXJyZW50Q29sb3IpIHtcbi8vIGN1cnJlbnRDb2xvciB8fCA8Y29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbi1jb2xvciwgJGNvbG9yLCBtb3opO1xufVxuIiwiQG1peGluIHRyYW5zZm9ybSgkcHJvcGVydHk6IG5vbmUpIHtcbiAgLy8gbm9uZSB8IDx0cmFuc2Zvcm0tZnVuY3Rpb24+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgJHByb3BlcnR5LCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRheGVzOiA1MCUpIHtcbiAgLy8geC1heGlzIC0gbGVmdCB8IGNlbnRlciB8IHJpZ2h0ICB8IGxlbmd0aCB8ICVcbiAgLy8geS1heGlzIC0gdG9wICB8IGNlbnRlciB8IGJvdHRvbSB8IGxlbmd0aCB8ICVcbiAgLy8gei1heGlzIC0gICAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkYXhlcywgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCRzdHlsZTogZmxhdCkge1xuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tc3R5bGUsICRzdHlsZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuIiwiLy8gU2hvcnRoYW5kIG1peGluLiBTdXBwb3J0cyBtdWx0aXBsZSBwYXJlbnRoZXNlcy1kZWxpbWluYXRlZCB2YWx1ZXMgZm9yIGVhY2ggdmFyaWFibGUuXG4vLyBFeGFtcGxlOiBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMnMgZWFzZS1pbi1vdXQpO1xuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAxcyBlYXNlLWluIDJzLCB3aWR0aCAycyBlYXNlLW91dCk7XG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5ICh0cmFuc2Zvcm0sIG9wYWNpdHkpO1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydGllcy4uLikge1xuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XG4gICR3ZWJraXQ6ICgpO1xuICAkbW96OiAoKTtcbiAgJHNwZWM6ICgpO1xuXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XG4gICAgQGlmIG50aCgkbGlzdCwgMSkgPT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgJGxpc3QyOiAtbW96LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MzogKCk7XG5cbiAgICAgIEBlYWNoICR2YXIgaW4gJGxpc3Qge1xuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcblxuICAgICAgICBAaWYgJHZhciAhPSBcInRyYW5zZm9ybVwiIHtcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QxKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0LCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkd2Via2l0O1xuICAgICAgIC1tb3otdHJhbnNpdGlvbjogJG1vejtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbGVuZ3RoKCRwcm9wZXJ0aWVzKSA+PSAxIHtcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHByb3BlcnRpZXM6IGFsbCAwLjE1cyBlYXNlLW91dCAwcztcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydGllcy4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwid2Via2l0XCIpO1xuICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwibW96XCIpO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIGZhbHNlKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XG4gIC8vIGVhc2UgfCBsaW5lYXIgfCBlYXNlLWluIHwgZWFzZS1vdXQgfCBlYXNlLWluLW91dCB8IGN1YmljLWJlemllcigpXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIkBtaXhpbiB1c2VyLXNlbGVjdCgkdmFsdWU6IG5vbmUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1jb2xvcmAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLWNvbG9yKCNhNjBiNTUgIzc2Y2Q5YyBudWxsICNlOGFlMWEpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItbGVmdC1jb2xvcjogI2U4YWUxYTtcbi8vLyAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjNzZjZDljO1xuLy8vICAgICBib3JkZXItdG9wLWNvbG9yOiAjYTYwYjU1O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgYm9yZGVyLWNvbG9yYFxuXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCR2YWxzLi4uKSB7XG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KGJvcmRlciwgY29sb3IsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggY29ybmVycyBvbiB0aGUgc2lkZSBvZiBhIGJveC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmFkaWlcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50LW9uZSB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDVweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5lbGVtZW50LXR3byB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygzcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQtb25lIHtcbi8vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuLy8vICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudC10d28ge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBvdXRwdXQgYGJvcmRlci1yYWRpdXNgXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpaTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpaTtcbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaWk7XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGlpKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpaTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGlpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLXN0eWxlYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZGFzaGVkIG51bGwgc29saWQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgYm9yZGVyLXN0eWxlYFxuXG5AbWl4aW4gYm9yZGVyLXN0eWxlKCR2YWxzLi4uKSB7XG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KGJvcmRlciwgc3R5bGUsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci13aWR0aGAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXdpZHRoKDFlbSBudWxsIDIwcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMHB4O1xuLy8vICAgICBib3JkZXItdG9wLXdpZHRoOiAxZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IGRpcmVjdGlvbmFsLXByb3BlcnR5XG4vLy9cbi8vLyBAb3V0cHV0IGBib3JkZXItd2lkdGhgXG5cbkBtaXhpbiBib3JkZXItd2lkdGgoJHZhbHMuLi4pIHtcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCB3aWR0aCwgJHZhbHMuLi4pO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIGJ1dHRvbnMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgdXNlIGludGVycG9sYXRpb24gb24gdGhlIHZhcmlhYmxlOiBgI3skYWxsLWJ1dHRvbnN9YC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgI3skYWxsLWJ1dHRvbnN9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLWJ1dHRvbnMtZm9jdXN9LFxuLy8vICAgI3skYWxsLWJ1dHRvbnMtaG92ZXJ9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLWJ1dHRvbnMtYWN0aXZlfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICBidXR0b24sXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGJ1dHRvbjpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLy8vICAgYnV0dG9uOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICBidXR0b246YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUgYXNzaWduLWlucHV0c1xuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vXG4vLy8gQHRvZG8gUmVtb3ZlIGRvdWJsZSBhc3NpZ25lZCB2YXJpYWJsZXMgKExpbmVzIDU54oCTNjIpIGluIHY1LjAuMFxuXG4kYnV0dG9ucy1saXN0OiAnYnV0dG9uJyxcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiYnV0dG9uXCJdJyxcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicmVzZXRcIl0nLFxuICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJzdWJtaXRcIl0nO1xuXG4kYWxsLWJ1dHRvbnM6ICAgICAgICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QpO1xuJGFsbC1idXR0b25zLWFjdGl2ZTogYXNzaWduLWlucHV0cygkYnV0dG9ucy1saXN0LCBhY3RpdmUpO1xuJGFsbC1idXR0b25zLWZvY3VzOiAgYXNzaWduLWlucHV0cygkYnV0dG9ucy1saXN0LCBmb2N1cyk7XG4kYWxsLWJ1dHRvbnMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGhvdmVyKTtcblxuJGFsbC1idXR0b24taW5wdXRzOiAgICAgICAgJGFsbC1idXR0b25zO1xuJGFsbC1idXR0b24taW5wdXRzLWFjdGl2ZTogJGFsbC1idXR0b25zLWFjdGl2ZTtcbiRhbGwtYnV0dG9uLWlucHV0cy1mb2N1czogICRhbGwtYnV0dG9ucy1mb2N1cztcbiRhbGwtYnV0dG9uLWlucHV0cy1ob3ZlcjogICRhbGwtYnV0dG9ucy1ob3ZlcjtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXG4vLy9cbi8vLyBAbGluayBodHRwOi8vY3NzbW9qby5jb20vbGF0ZXN0X25ld19jbGVhcmZpeF9zb19mYXIvXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xuLy8vICAgICBjbGVhcjogYm90aDtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgICAgZGlzcGxheTogdGFibGU7XG4vLy8gICB9XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBUcnVuY2F0ZXMgdGV4dCBhbmQgYWRkcyBhbiBlbGxpcHNpcyB0byByZXByZXNlbnQgb3ZlcmZsb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsxMDAlXVxuLy8vICAgTWF4LXdpZHRoIGZvciB0aGUgc3RyaW5nIHRvIHJlc3BlY3QgYmVmb3JlIGJlaW5nIHRydW5jYXRlZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuLy8vICAgfVxuXG5AbWl4aW4gZWxsaXBzaXMoJHdpZHRoOiAxMDAlKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEdlb3JnaWEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJGdlb3JnaWE6IFwiR2VvcmdpYVwiLCBcIkNhbWJyaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgXCJUaW1lc1wiLCBzZXJpZjtcblxuLy8vIEhlbHZldGljYSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuXG4kaGVsdmV0aWNhOiBcIkhlbHZldGljYSBOZXVlXCIsIFwiSGVsdmV0aWNhXCIsIFwiUm9ib3RvXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcblxuLy8vIEx1Y2lkYSBHcmFuZGUgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJGx1Y2lkYS1ncmFuZGU6IFwiTHVjaWRhIEdyYW5kZVwiLCBcIlRhaG9tYVwiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuXG4vLy8gTW9ub3NwYWNlIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG5cbiRtb25vc3BhY2U6IFwiQml0c3RyZWFtIFZlcmEgU2FucyBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJDb3VyaWVyXCIsIG1vbm9zcGFjZTtcblxuLy8vIFZlcmRhbmEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJHZlcmRhbmE6IFwiVmVyZGFuYVwiLCBcIkdlbmV2YVwiLCBzYW5zLXNlcmlmO1xuIiwiLy8vIEhpZGVzIHRoZSB0ZXh0IGluIGFuIGVsZW1lbnQsIGNvbW1vbmx5IHVzZWQgdG8gc2hvdyBhbiBpbWFnZS4gU29tZSBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXG4vLy9cbi8vLyBAbGluayBodHRwOi8vemVsZG1hbi5jb20vMjAxMi8wMy8wMS9yZXBsYWNpbmctdGhlLTk5OTlweC1oYWNrLW5ldy1pbWFnZS1yZXBsYWNlbWVudFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGhpZGUtdGV4dDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICB9XG4vLy9cbi8vLyBAdG9kbyBSZW1vdmUgaGVpZ2h0IGFyZ3VtZW50IGluIHY1LjAuMFxuXG5AbWl4aW4gaGlkZS10ZXh0KCRoZWlnaHQ6IG51bGwpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmICRoZWlnaHQge1xuICAgIEB3YXJuIFwiVGhlIGBoaWRlLXRleHRgIG1peGluIGhhcyBjaGFuZ2VkIGFuZCBubyBsb25nZXIgcmVxdWlyZXMgYSBoZWlnaHQuIFRoZSBoZWlnaHQgYXJndW1lbnQgd2lsbCBubyBsb25nZXIgYmUgYWNjZXB0ZWQgaW4gdjUuMC4wXCI7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYG1hcmdpbmAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMTBweCAzZW0gMjB2aCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IDIwdmg7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMTBweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcbi8vL1xuLy8vIEBvdXRwdXQgYG1hcmdpbmBcblxuQG1peGluIG1hcmdpbigkdmFscy4uLikge1xuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShtYXJnaW4sIGZhbHNlLCAkdmFscy4uLik7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBwYWRkaW5nYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwYWRkaW5nKDEydmggbnVsbCAxMHB4IDUlKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4vLy8gICAgIHBhZGRpbmctbGVmdDogNSU7XG4vLy8gICAgIHBhZGRpbmctdG9wOiAxMnZoO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgcGFkZGluZ2BcblxuQG1peGluIHBhZGRpbmcoJHZhbHMuLi4pIHtcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkocGFkZGluZywgZmFsc2UsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uLiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge1Bvc2l0aW9ufSAkcG9zaXRpb24gW3JlbGF0aXZlXVxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWVcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGNvb3JkaW5hdGVzIFtudWxsIG51bGwgbnVsbCBudWxsXVxuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSA0LXZhbHVlIHN5bnRheCBmb3IgdGhlIGVkZ2VzIG9mIGEgYm94XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBsZWZ0OiAxMGVtO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtbGVuZ3RoXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSB1bnBhY2tcblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbjogcmVsYXRpdmUsICRjb29yZGluYXRlczogbnVsbCBudWxsIG51bGwgbnVsbCkge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09IGxpc3Qge1xuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xuICAgICRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAkY29vcmRpbmF0ZXM6IHVucGFjaygkY29vcmRpbmF0ZXMpO1xuXG4gICRvZmZzZXRzOiAoXG4gICAgdG9wOiAgICBudGgoJGNvb3JkaW5hdGVzLCAxKSxcbiAgICByaWdodDogIG50aCgkY29vcmRpbmF0ZXMsIDIpLFxuICAgIGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyksXG4gICAgbGVmdDogICBudGgoJGNvb3JkaW5hdGVzLCA0KVxuICApO1xuXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcbiAgICBAaWYgaXMtbGVuZ3RoKCR2YWx1ZSkge1xuICAgICAgI3skb2Zmc2V0fTogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSBtaXhpbiBmb3IgZ2VuZXJhdGluZyB2ZW5kb3IgcHJlZml4ZXMgb24gbm9uLXN0YW5kYXJkaXplZCBwcm9wZXJ0aWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eVxuLy8vICAgUHJvcGVydHkgdG8gcHJlZml4XG4vLy9cbi8vLyBAcGFyYW0geyp9ICR2YWx1ZVxuLy8vICAgVmFsdWUgdG8gdXNlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRwcmVmaXhlc1xuLy8vICAgUHJlZml4ZXMgdG8gZGVmaW5lXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgMTBweCwgd2Via2l0IG1zIHNwZWMpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itd2Via2l0XG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1tb3ppbGxhXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1taWNyb3NvZnRcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW9wZXJhXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1zcGVjXG5cbkBtaXhpbiBwcmVmaXhlcigkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzKSB7XG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICBAaWYgJHByZWZpeCA9PSB3ZWJraXQge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgICAgIC13ZWJraXQtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG1veiB7XG4gICAgICBAaWYgJHByZWZpeC1mb3ItbW96aWxsYSB7XG4gICAgICAgIC1tb3otI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG1zIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1taWNyb3NvZnQge1xuICAgICAgICAtbXMtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG8ge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW9wZXJhIHtcbiAgICAgICAgLW8tI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IHNwZWMge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLXNwZWMge1xuICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlICB7XG4gICAgICBAd2FybiBcIlVucmVjb2duaXplZCBwcmVmaXg6ICN7JHByZWZpeH1cIjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKSB7XG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbW96aWxsYTogICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6IGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itc3BlYzogICAgICBmYWxzZSAhZ2xvYmFsO1xufVxuIiwiQG1peGluIHJldGluYS1pbWFnZSgkZmlsZW5hbWUsICRiYWNrZ3JvdW5kLXNpemUsICRleHRlbnNpb246IHBuZywgJHJldGluYS1maWxlbmFtZTogbnVsbCwgJHJldGluYS1zdWZmaXg6IF8yeCwgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUpIHtcbiAgQGlmICRhc3NldC1waXBlbGluZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICAgICAgIHVybChcIiN7JGZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICB9XG5cbiAgQGluY2x1ZGUgaGlkcGkge1xuICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUge1xuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRyZXRpbmEtZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skcmV0aW5hLWZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZpbGVuYW1lfSN7JHJldGluYS1zdWZmaXh9LiN7JGV4dGVuc2lvbn1cIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZC1zaXplOiAkYmFja2dyb3VuZC1zaXplO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTZXRzIHRoZSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBvZiB0aGUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNpemVcbi8vLyAgIEEgbGlzdCBvZiBhdCBtb3N0IDIgc2l6ZSB2YWx1ZXMuXG4vLy9cbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgdmFsdWUgaW4gYCRzaXplYCBpdCBpcyB1c2VkIGZvciBib3RoIHdpZHRoIGFuZCBoZWlnaHQuIEFsbCB1bml0cyBhcmUgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNpemUoMmVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZShhdXRvIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogMmVtO1xuLy8vICAgICBoZWlnaHQ6IDJlbTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IGF1dG87XG4vLy8gICAgIGhlaWdodDogMTBlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEB0b2RvIFJlZmFjdG9yIGluIDUuMC4wIHRvIHVzZSBhIGNvbW1hLXNlcGFyYXRlZCBhcmd1bWVudFxuXG5AbWl4aW4gc2l6ZSgkdmFsdWUpIHtcbiAgJHdpZHRoOiBudGgoJHZhbHVlLCAxKTtcbiAgJGhlaWdodDogJHdpZHRoO1xuXG4gIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xuICAgICRoZWlnaHQ6IG50aCgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJGhlaWdodCkge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skaGVpZ2h0fWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCRoZWlnaHRgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJHdpZHRoKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYCBwYXJhbWV0ZXIgaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIHRleHQtYmFzZWQgaW5wdXRzLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IHVzZSBpbnRlcnBvbGF0aW9uIG9uIHRoZSB2YXJpYWJsZTogYCN7JGFsbC10ZXh0LWlucHV0c31gLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHN9IHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLXRleHQtaW5wdXRzLWZvY3VzfSxcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1ob3Zlcn0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4vLy8gICB0ZXh0YXJlYSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbi8vLyAgIHRleHRhcmVhOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmhvdmVyLFxuLy8vICAgdGV4dGFyZWE6aG92ZXIge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmFjdGl2ZSxcbi8vLyAgIHRleHRhcmVhOmFjdGl2ZSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG5cbiR0ZXh0LWlucHV0cy1saXN0OiAnaW5wdXRbdHlwZT1cImNvbG9yXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImRhdGVcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZW1haWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibW9udGhcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibnVtYmVyXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInNlYXJjaFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidGV4dFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0aW1lXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInVybFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ3ZWVrXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXQ6bm90KFt0eXBlXSknLFxuICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYSc7XG5cbiRhbGwtdGV4dC1pbnB1dHM6ICAgICAgICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0KTtcbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBhY3RpdmUpO1xuJGFsbC10ZXh0LWlucHV0cy1mb2N1czogIGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QsIGZvY3VzKTtcbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBob3Zlcik7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDU1MgY3ViaWMtYmV6aWVyIHRpbWluZyBmdW5jdGlvbnMuIFRpbWluZyBmdW5jdGlvbnMgY291cnRlc3kgb2YganF1ZXJ5LmVhc2llIChnaXRodWIuY29tL2phdWtpYS9lYXNpZSlcbi8vL1xuLy8vIFRpbWluZyBmdW5jdGlvbnMgYXJlIHRoZSBzYW1lIGFzIGRlbW9lZCBoZXJlOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Jlc291cmNlcy9kZW1vcy9lZmZlY3QvZWFzaW5nLmh0bWxcbi8vL1xuLy8vIEB0eXBlIGN1YmljLWJlemllclxuXG4kZWFzZS1pbi1xdWFkOiAgICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDg1LCAwLjY4MCwgMC41MzApO1xuJGVhc2UtaW4tY3ViaWM6ICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiRlYXNlLWluLXF1YXJ0OiAgICAgY3ViaWMtYmV6aWVyKDAuODk1LCAgMC4wMzAsIDAuNjg1LCAwLjIyMCk7XG4kZWFzZS1pbi1xdWludDogICAgIGN1YmljLWJlemllcigwLjc1NSwgIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuJGVhc2UtaW4tc2luZTogICAgICBjdWJpYy1iZXppZXIoMC40NzAsICAwLjAwMCwgMC43NDUsIDAuNzE1KTtcbiRlYXNlLWluLWV4cG86ICAgICAgY3ViaWMtYmV6aWVyKDAuOTUwLCAgMC4wNTAsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZS1pbi1jaXJjOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgIDAuMDQwLCAwLjk4MCwgMC4zMzUpO1xuJGVhc2UtaW4tYmFjazogICAgICBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcblxuJGVhc2Utb3V0LXF1YWQ6ICAgICBjdWJpYy1iZXppZXIoMC4yNTAsICAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiRlYXNlLW91dC1jdWJpYzogICAgY3ViaWMtYmV6aWVyKDAuMjE1LCAgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZS1vdXQtcXVhcnQ6ICAgIGN1YmljLWJlemllcigwLjE2NSwgIDAuODQwLCAwLjQ0MCwgMS4wMDApO1xuJGVhc2Utb3V0LXF1aW50OiAgICBjdWJpYy1iZXppZXIoMC4yMzAsICAxLjAwMCwgMC4zMjAsIDEuMDAwKTtcbiRlYXNlLW91dC1zaW5lOiAgICAgY3ViaWMtYmV6aWVyKDAuMzkwLCAgMC41NzUsIDAuNTY1LCAxLjAwMCk7XG4kZWFzZS1vdXQtZXhwbzogICAgIGN1YmljLWJlemllcigwLjE5MCwgIDEuMDAwLCAwLjIyMCwgMS4wMDApO1xuJGVhc2Utb3V0LWNpcmM6ICAgICBjdWJpYy1iZXppZXIoMC4wNzUsICAwLjgyMCwgMC4xNjUsIDEuMDAwKTtcbiRlYXNlLW91dC1iYWNrOiAgICAgY3ViaWMtYmV6aWVyKDAuMTc1LCAgMC44ODUsIDAuMzIwLCAxLjI3NSk7XG5cbiRlYXNlLWluLW91dC1xdWFkOiAgY3ViaWMtYmV6aWVyKDAuNDU1LCAgMC4wMzAsIDAuNTE1LCAwLjk1NSk7XG4kZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllcigwLjY0NSwgIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoMC43NzAsICAwLjAwMCwgMC4xNzUsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1xdWludDogY3ViaWMtYmV6aWVyKDAuODYwLCAgMC4wMDAsIDAuMDcwLCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtc2luZTogIGN1YmljLWJlemllcigwLjQ0NSwgIDAuMDUwLCAwLjU1MCwgMC45NTApO1xuJGVhc2UtaW4tb3V0LWV4cG86ICBjdWJpYy1iZXppZXIoMS4wMDAsICAwLjAwMCwgMC4wMDAsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1jaXJjOiAgY3ViaWMtYmV6aWVyKDAuNzg1LCAgMC4xMzUsIDAuMTUwLCAwLjg2MCk7XG4kZWFzZS1pbi1vdXQtYmFjazogIGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApO1xuIiwiQG1peGluIHRyaWFuZ2xlKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pIHtcbiAgJHdpZHRoOiBudGgoJHNpemUsIDEpO1xuICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xuICAkZm9yZWdyb3VuZC1jb2xvcjogbnRoKCRjb2xvciwgMSk7XG4gICRiYWNrZ3JvdW5kLWNvbG9yOiBpZihsZW5ndGgoJGNvbG9yKSA9PSAyLCBudGgoJGNvbG9yLCAyKSwgdHJhbnNwYXJlbnQpO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuXG4gIEBpZiAoJGRpcmVjdGlvbiA9PSB1cCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bikgb3IgKCRkaXJlY3Rpb24gPT0gcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICAkd2lkdGg6ICR3aWR0aCAvIDI7XG4gICAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItbGVmdDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gdXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IHVwLWxlZnQpIHtcbiAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAtcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6ICAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwLWxlZnQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGRvd24tcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGRvd24tbGVmdCkge1xuICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXVwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkd2lkdGg7XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtZG93bikge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHdpZHRoO1xuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXJpZ2h0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtbGVmdCkge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICR3aWR0aCAkaGVpZ2h0O1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBjaGFuZ2UgdGhlIGB3b3JkLXdyYXBgIHByb3BlcnR5LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3cmFwIFticmVhay13b3JkXVxuLy8vICAgVmFsdWUgZm9yIHRoZSBgd29yZC1icmVha2AgcHJvcGVydHkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC53cmFwcGVyIHtcbi8vLyAgICAgQGluY2x1ZGUgd29yZC13cmFwKGJyZWFrLXdvcmQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLndyYXBwZXIge1xuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuLy8vICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4vLy8gICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbi8vLyAgIH1cblxuQG1peGluIHdvcmQtd3JhcCgkd3JhcDogYnJlYWstd29yZCkge1xuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcbiAgd29yZC13cmFwOiAkd3JhcDtcblxuICBAaWYgJHdyYXAgPT0gYnJlYWstd29yZCB7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB9IEBlbHNlIHtcbiAgICB3b3JkLWJyZWFrOiAkd3JhcDtcbiAgfVxufVxuIiwiLy8gVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IE1BSk9SIHZlcnNpb24gcmVsZWFzZVxuXG5AbWl4aW4gaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIEB3YXJuIFwiVGhlIGlubGluZS1ibG9jayBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbkBtaXhpbiBidXR0b24gKCRzdHlsZTogc2ltcGxlLCAkYmFzZS1jb2xvcjogIzQyOTRmMCwgJHRleHQtc2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XG5cbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBzdHJpbmcgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IGNvbG9yIHtcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gbnVtYmVyIHtcbiAgICAkcGFkZGluZzogJHRleHQtc2l6ZTtcbiAgICAkdGV4dC1zaXplOiAkYmFzZS1jb2xvcjtcbiAgICAkYmFzZS1jb2xvcjogIzQyOTRmMDtcblxuICAgIEBpZiAkcGFkZGluZyA9PSBpbmhlcml0IHtcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBjb2xvciB7XG4gICAgJGJhc2UtY29sb3I6ICRzdHlsZTtcbiAgICAkc3R5bGU6IHNpbXBsZTtcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBudW1iZXIge1xuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xuICAgICR0ZXh0LXNpemU6ICRiYXNlLWNvbG9yO1xuICAgICRiYXNlLWNvbG9yOiAkc3R5bGU7XG4gICAgJHN0eWxlOiBzaW1wbGU7XG5cbiAgICBAaWYgJHBhZGRpbmcgPT0gaW5oZXJpdCB7XG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBudW1iZXIge1xuICAgICRwYWRkaW5nOiAkYmFzZS1jb2xvcjtcbiAgICAkdGV4dC1zaXplOiAkc3R5bGU7XG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XG4gICAgJHN0eWxlOiBzaW1wbGU7XG5cbiAgICBAaWYgJHBhZGRpbmcgPT0gIzQyOTRmMCB7XG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cblxuICBAd2FybiBcIlRoZSBidXR0b24gbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xufVxuXG4vLyBTZWxlY3RvciBTdHlsZSBCdXR0b25cbkBtaXhpbiBidXR0b25zdHlsZSgkdHlwZSwgJGItY29sb3IsICR0LXNpemUsICRwYWQpIHtcbiAgLy8gR3JheXNjYWxlIGJ1dHRvblxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIHRydWUsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGlmICR0eXBlID09IHNoaW55IGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBzaGlueSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gcGlsbCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gZmxhdCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICAvLyBDb2xvcmVkIGJ1dHRvblxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIHtcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcbiAgfVxuXG4gIEBlbHNlIGlmICR0eXBlID09IHNoaW55IHtcbiAgICBAaW5jbHVkZSBzaGlueSgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGVsc2UgaWYgJHR5cGUgPT0gcGlsbCB7XG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGVsc2UgaWYgJHR5cGUgPT0gZmxhdCB7XG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG59XG5cbi8vIFNpbXBsZSBCdXR0b25cbkBtaXhpbiBzaW1wbGUoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDklLCAgJGxpZ2h0bmVzczogLTE0JSk7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtOCUsICAkbGlnaHRuZXNzOiAgMTUlKTtcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xMSUpO1xuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDE1JSwgJGxpZ2h0bmVzczogLTE4JSk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLCAkc3RvcC1ncmFkaWVudCk7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICR0ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTQlLCAkbGlnaHRuZXNzOiAtNSUpO1xuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNyUsICRsaWdodG5lc3M6ICA1JSk7XG4gICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA4JSwgJGxpZ2h0bmVzczogLTE0JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcbiAgICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcblxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93LWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogOSUsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA3JSwgJGxpZ2h0bmVzczogLTE3JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1hY3RpdmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDhweCA0cHggJGluc2V0LXNoYWRvdy1hY3RpdmUsIGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlO1xuICB9XG59XG5cbi8vIFNoaW55IEJ1dHRvblxuQG1peGluIHNoaW55KCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcbiAgJGNvbG9yOiAgICAgICAgIGhzbCgwLCAwLCAxMDAlKTtcbiAgJGJvcmRlcjogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTExNywgJGdyZWVuOiAtMTExLCAkYmx1ZTogLTgxKTtcbiAgJGJvcmRlci1ib3R0b206IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEyNiwgJGdyZWVuOiAtMTI3LCAkYmx1ZTogLTEyMik7XG4gICRmb3VydGgtc3RvcDogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC03OSwgICRncmVlbjogLTcwLCAgJGJsdWU6IC00Nik7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6ICAzNywgICRncmVlbjogIDI5LCAgJGJsdWU6ICAxMik7XG4gICRzZWNvbmQtc3RvcDogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC01NiwgICRncmVlbjogLTUwLCAgJGJsdWU6IC0zMyk7XG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xNDAsICRncmVlbjogLTE0MSwgJGJsdWU6IC0xMTQpO1xuICAkdGhpcmQtc3RvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICAkZ3JlZW46IC03NSwgICRibHVlOiAtNDgpO1xuXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcbiAgfVxuXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICRib3JkZXI6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlcik7XG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XG4gICAgJGZvdXJ0aC1zdG9wOiAgIGdyYXlzY2FsZSgkZm91cnRoLXN0b3ApO1xuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XG4gICAgJHNlY29uZC1zdG9wOiAgIGdyYXlzY2FsZSgkc2Vjb25kLXN0b3ApO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgICAkdGhpcmQtc3RvcDogICAgZ3JheXNjYWxlKCR0aGlyZC1zdG9wKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRiYXNlLWNvbG9yIDAlLCAkc2Vjb25kLXN0b3AgNTAlLCAkdGhpcmQtc3RvcCA1MCUsICRmb3VydGgtc3RvcCAxMDAlKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkZmlyc3Qtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEzLCAkZ3JlZW46IC0xNSwgJGJsdWU6IC0xOCk7XG4gICAgJHNlY29uZC1zdG9wLWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC02NiwgJGdyZWVuOiAtNjIsICRibHVlOiAtNTEpO1xuICAgICR0aGlyZC1zdG9wLWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtOTMsICRncmVlbjogLTg1LCAkYmx1ZTogLTY2KTtcbiAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTg2LCAkZ3JlZW46IC04MCwgJGJsdWU6IC02Myk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgZ3JheXNjYWxlKCRmaXJzdC1zdG9wLWhvdmVyKTtcbiAgICAgICRzZWNvbmQtc3RvcC1ob3ZlcjogZ3JheXNjYWxlKCRzZWNvbmQtc3RvcC1ob3Zlcik7XG4gICAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGdyYXlzY2FsZSgkdGhpcmQtc3RvcC1ob3Zlcik7XG4gICAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkZm91cnRoLXN0b3AtaG92ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdC1zdG9wLWhvdmVyICAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2Vjb25kLXN0b3AtaG92ZXIgNTAlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlyZC1zdG9wLWhvdmVyICA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvdXJ0aC1zdG9wLWhvdmVyIDEwMCUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTExLCAkZ3JlZW46IC0xMTYsICRibHVlOiAtMTIyKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDIwcHggMCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcbiAgfVxufVxuXG4vLyBQaWxsIEJ1dHRvblxuQG1peGluIHBpbGwoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyLWJvdHRvbTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246IC0xMSUsICRsaWdodG5lc3M6IC0yNiUpO1xuICAkYm9yZGVyLXNpZGVzOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yMSUsICRsaWdodG5lc3M6IC0yMSUpO1xuICAkYm9yZGVyLXRvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0zMCUsICRsaWdodG5lc3M6IC0xNSUpO1xuICAkaW5zZXQtc2hhZG93OiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0xJSwgICRsaWdodG5lc3M6ICA3JSk7XG4gICRzdG9wLWdyYWRpZW50OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDE0JSwgJGxpZ2h0bmVzczogLTEwJSk7XG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTE5JSwgJGxpZ2h0bmVzczogLTE1JSk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XG4gICAgJGJvcmRlci1zaWRlczogIGdyYXlzY2FsZSgkYm9yZGVyLXNpZGVzKTtcbiAgICAkYm9yZGVyLXRvcDogICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItdG9wICRib3JkZXItc2lkZXMgJGJvcmRlci1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xuICBjb2xvcjogJGNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvciwgJHN0b3AtZ3JhZGllbnQpO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0bmVzczogLTQuNSUpO1xuICAgICRib3JkZXItYm90dG9tOiAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDEzLjUlLCAkbGlnaHRuZXNzOiAtMzIlKTtcbiAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yJSwgICAgJGxpZ2h0bmVzczogLTI3JSk7XG4gICAgJGJvcmRlci10b3A6ICAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMTclLCAgICRsaWdodG5lc3M6IC0yMSUpO1xuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICAgICAgICAgICAkc2F0dXJhdGlvbjogLTElLCAgICAkbGlnaHRuZXNzOiAgMyUpO1xuICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTQlLCAgICAkbGlnaHRuZXNzOiAtMTUuNSUpO1xuICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTUlLCAgICAkbGlnaHRuZXNzOiAtMjIlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgICAkYm9yZGVyLWJvdHRvbTogICAgICAgZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAgICRib3JkZXItc2lkZXM6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlci1zaWRlcyk7XG4gICAgICAkYm9yZGVyLXRvcDogICAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcbiAgICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1ob3Zlcik7XG4gICAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50LWhvdmVyKTtcbiAgICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWhvdmVyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLWhvdmVyLCAkc3RvcC1ncmFkaWVudC1ob3Zlcik7XG5cbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci10b3AgJGJvcmRlci1zaWRlcyAkYm9yZGVyLWJvdHRvbTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdy1ob3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xuICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA0LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMTAlKTtcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogNiwgICRzYXR1cmF0aW9uOiAtMi41JSwgJGxpZ2h0bmVzczogLTMwJSk7XG4gICAgJGJvcmRlci1ib3R0b20tYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDExLCAkc2F0dXJhdGlvbjogIDYlLCAgICRsaWdodG5lc3M6IC0zMSUpO1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA5LCAgJHNhdHVyYXRpb246ICAyJSwgICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xuICAgICR0ZXh0LXNoYWRvdy1hY3RpdmU6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA1LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkYWN0aXZlLWNvbG9yOiAgICAgICAgIGdyYXlzY2FsZSgkYWN0aXZlLWNvbG9yKTtcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItYWN0aXZlKTtcbiAgICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tLWFjdGl2ZSk7XG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgICAkdGV4dC1zaGFkb3ctYWN0aXZlOiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3ctYWN0aXZlKTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItYWN0aXZlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWJvdHRvbS1hY3RpdmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCAzcHggJGluc2V0LXNoYWRvdy1hY3RpdmU7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWFjdGl2ZTtcbiAgfVxufVxuXG4vLyBGbGF0IEJ1dHRvblxuQG1peGluIGZsYXQoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCl7XG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDQlLCAkbGlnaHRuZXNzOiA1JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItYWN0aXZlOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItYWN0aXZlKTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvci1hY3RpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEZsZXhpYmxlIGdyaWRcbkBmdW5jdGlvbiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zKSB7XG4gICR3aWR0aDogJGNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgQHJldHVybiBwZXJjZW50YWdlKCR3aWR0aCAvICRjb250YWluZXItd2lkdGgpO1xuXG4gIEB3YXJuIFwiVGhlIGZsZXgtZ3JpZCBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbi8vIEZsZXhpYmxlIGd1dHRlclxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJGd1dHRlciAvICRjb250YWluZXItd2lkdGgpO1xuXG4gIEB3YXJuIFwiVGhlIGZsZXgtZ3V0dGVyIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcbn1cblxuQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XG5cbiAgQHdhcm4gXCJUaGUgZ3JpZC13aWR0aCBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbkBmdW5jdGlvbiBnb2xkZW4tcmF0aW8oJHZhbHVlLCAkaW5jcmVtZW50KSB7XG4gIEByZXR1cm4gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWUsICRyYXRpbzogJGdvbGRlbik7XG5cbiAgQHdhcm4gXCJUaGUgZ29sZGVuLXJhdGlvIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2UuIFBsZWFzZSB1c2UgdGhlIG1vZHVsYXItc2NhbGUgZnVuY3Rpb24sIGluc3RlYWQuXCI7XG59XG5cbkBtaXhpbiBib3gtc2l6aW5nKCRib3gpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNpemluZywgJGJveCwgd2Via2l0IG1veiBzcGVjKTtcblxuICBAd2FybiBcIlRoZSBib3gtc2l6aW5nIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2UuIFRoaXMgcHJvcGVydHkgY2FuIG5vdyBiZSB1c2VkIHVuLXByZWZpeGVkLlwiO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTs7OztnR0FJZ0c7QUNKaEc7Ozs7Z0dBSWdHO0FBRWhHLDZDQUE2QztBQW1FN0M7Z0dBQ2dHO0FBWWhHO2dHQUNnRztBRGhGaEcsQUFBQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQUNaLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLFdBQVcsRUM4RUgsV0FBVyxFQUFFLFVBQVU7RUQ3RS9CLFFBQVEsRUFBRSxRQUFTO0VBQ25CLFVBQVUsRUFBRSxNQUFPO0VBQ25CLHdCQUF3QixFQUFFLElBQUs7Q0FDbEM7O0FBQ0QsQUFBQSxNQUFNLENBQUE7RUFDRixNQUFNLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0NBRTFCOztBQUhELEFBRUksTUFGRSxDQUVGLEdBQUcsQ0FBQTtFQUFDLGNBQWMsRUFBRSxNQUFPO0NBQUc7O0FBRWxDLEFBQUEsR0FBRyxDQUFBO0VBQUUsTUFBTSxFQUFDLENBQUU7RUFBRSxTQUFTLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBQyxJQUFLO0NBQUk7O0FBQ2pELEFBQUEsQ0FBQyxDQUFDO0VBQ0UsTUFBTSxFQUFFLFVB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 */
