/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : Rizki Nida Chaerulsyah 
==============================================================================================*/
/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : FrontEnd Team  
==============================================================================================*/
/* import bourbon - http://bourbon.io/docs */
/* global
----------------------------------------------------------------------------------------------*/
.after_clear:after, header:after, header .loan .loan-drop .login:after, .home .h-top .box:after, .home .h-top:after, .home .kurs .right:after, .home .kurs:after, .content-std .title-content .breadcrumb:after, .content-std .filter:after, .content-std .budaya-lembaga .list:after, .content-std .box-dd .head:after, .content-std .box-dad .text:after, .content-std .box-dad .list-jasa-product .box .text .drop:after, .content-std .list-jasa-product .box .text .box-dad .drop:after, .content-std .box-dad:after, .content-std .list-foto:after, .content-std .list-fotodet:after, .content-std .head-office:after, .content-std .box-jaringan:after, .content-std .list-kantor .box:after, .content-std .list-jasa-product .box:after, .content-std .list-report .box:after, .content-std .list-report:after, .content-std .informasi-efek:after, .content-std .list-berita .box:after, .content-std .step-wrap:after, .content-std .sitemap:after, .box-form .row:after, .wrapper:after, section:after {
  clear: both;
  display: block;
  content: " ";
}

.before_clear:before {
  clear: both;
  display: block;
  content: " ";
}

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

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

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

.italic {
  font-style: italic;
}

.bold {
  font-weight: bold;
}

.regular {
  font-weight: lighter;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.clear {
  clear: both;
}

.absolute-center, .trigger, header .loan .loan-drop:after, .home .h-bottom .jasa .nav-slide .slick-arrow, .home .link-bottom a span img, .content-std .riwayat .slider-year:after, .content-std .riwayat .slider-year .slide:after, .content-std .riwayat .slider-year .slick-arrow, .content-std .slider-col2 .slick-arrow, .content-std .slider-col2 .slick-arrow:after, .content-std .list-foto .box .img span, .wrap-popup .overlay-pop, .wrap-popup .box-popup .close:after, .wrap-popup .box-popup .arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.no-margin {
  margin: 0 !important;
}

.no-scroll {
  overflow: hidden;
}

/* color global
----------------------------------------------------------------------------------------------*/
body {
  color: #333;
  font-size: 12px;
  font-family: "Lato";
  font-weight: 400;
  position: relative;
  overflow-x: hidden;
}

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

p, .content-std .budaya-lembaga .list .right {
  margin: 1px 0 15px;
  line-height: 20px;
}

input, textarea, select {
  font-family: "Lato";
  font-size: 12px;
  border: none;
  border: 1px solid #D8D8D8;
  padding: 10px;
  margin: 0;
  color: #666;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

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

h1 {
  font-size: 32px;
}

h2 {
  font-size: 28px;
}

h3 {
  font-size: 24px;
}

h4 {
  font-size: 20px;
}

h5 {
  font-size: 16px;
}

h6 {
  font-size: 14px;
}

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

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

.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.7;
  z-index: 4;
  display: none;
}

.trigger {
  width: 100%;
  height: 1px;
}

.link-ukme {
  padding-top: 30px;
  border-top: 1px solid #eee;
}

.link-ukme a {
  display: inline-block;
  height: 35px;
  line-height: 35px;
  background: #0076a3;
  color: #FFF;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 0 20px;
  margin-right: 5px;
}

.link-ukme a:hover {
  background: #043b62;
}

/* header
----------------------------------------------------------------------------------------------*/
header {
  height: 95px;
}

header .wrapper {
  width: 1500px;
}

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

header .search {
  float: left;
  margin: 33px 0 0 65px;
  position: relative;
}

header .search > a {
  width: 23px;
  height: 23px;
  background: url(../images/material/search-ico.png) no-repeat center;
  display: inline-block;
  text-indent: -99999px;
}

header .search .search-drop {
  display: none;
  position: absolute;
  top: 45px;
  left: -15px;
  width: 240px;
  background: #CCC;
  padding: 15px;
  background: #0076a3;
  border-radius: 7px;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  -ms-border-radius: 7px;
  -o-border-radius: 7px;
  z-index: 9;
  box-shadow: 0px 0px 15px -4px #666;
  -webkit-box-shadow: 0px 0px 15px -4px #666;
  -moz-box-shadow: 0px 0px 15px -4px #666;
  -ms-box-shadow: 0px 0px 15px -4px #666;
  -o-box-shadow: 0px 0px 15px -4px #666;
}

header .search .search-drop input {
  width: 100%;
  border: none;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  font-size: 14px;
  background: #FFF url(../images/material/search-ico-2.png) no-repeat 94% center;
}

header .search .search-drop:after {
  content: "";
  position: absolute;
  top: -10px;
  border-bottom: 10px solid #0076a3;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
}

header .nav-1 {
  float: left;
  margin: 30px 0 0 130px;
}

header .nav-1 a {
  font-size: 16px;
  margin: 0 0 0 55px;
  font-weight: 700;
  color: #333;
  position: relative;
  line-height: 30px;
  text-transform: uppercase;
  float: left;
  transition: 0.15s linear all;
  -webkit-transition: 0.15s linear all;
  -moz-transition: 0.15s linear all;
  -ms-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
}

header .nav-1 a.w-ico {
  position: relative;
}

header .nav-1 a.w-ico img {
  margin: 0 10px -9px 0;
}

header .nav-1 a:hover {
  color: #e99400;
}

header .nav-1 .lang {
  margin: 0 0 0 40px;
}

header .nav-1 .lang a {
  margin: 0;
  color: #999;
}

header .nav-1 .lang a.active {
  color: #000;
}

header .nav-1 .lang span {
  float: left;
  font-size: 16px;
  line-height: 26px;
  margin: 0 5px;
  color: #CCC;
}

header .toggle-menu {
  float: right;
  text-indent: -99999px;
  width: 50px;
  height: 50px;
  background: #e99400;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  position: relative;
  margin: 20px 0 0 0;
  z-index: 2;
  transition: 0.15s ease-out all;
  -webkit-transition: 0.15s ease-out all;
  -moz-transition: 0.15s ease-out all;
  -ms-transition: 0.15s ease-out all;
  -o-transition: 0.15s ease-out all;
}

header .toggle-menu span {
  position: absolute;
  width: 30px;
  height: 4px;
  background: #FFF;
  display: block;
  left: 0;
  right: 0;
  margin: auto;
  transition: 0.15s ease-out all;
  -webkit-transition: 0.15s ease-out all;
  -moz-transition: 0.15s ease-out all;
  -ms-transition: 0.15s ease-out all;
  -o-transition: 0.15s ease-out all;
}

header .toggle-menu span:nth-child(1) {
  top: 12px;
}

header .toggle-menu span:nth-child(2) {
  top: 22px;
}

header .toggle-menu span:nth-child(3) {
  top: 32px;
  width: 20px;
  right: 10px;
  left: auto;
}

header .toggle-menu:hover span:nth-child(3) {
  width: 30px;
}

header .loan {
  position: relative;
  height: 65px;
}

header .loan .loan-drop {
  position: absolute;
  width: 300px;
  height: auto;
  top: 65px;
  background: #FFF;
  z-index: 2;
  box-shadow: 0px 0px 15px -4px;
  -webkit-box-shadow: 0px 0px 15px -4px;
  -moz-box-shadow: 0px 0px 15px -4px;
  -ms-box-shadow: 0px 0px 15px -4px;
  -o-box-shadow: 0px 0px 15px -4px;
  visibility: hidden;
  opacity: 0;
  border-radius: 0px 0px 10px 10px;
  -webkit-border-radius: 0px 0px 10px 10px;
  -moz-border-radius: 0px 0px 10px 10px;
  -ms-border-radius: 0px 0px 10px 10px;
  -o-border-radius: 0px 0px 10px 10px;
  transition: 0.2s linear all;
  -webkit-transition: 0.2s linear all;
  -moz-transition: 0.2s linear all;
  -ms-transition: 0.2s linear all;
  -o-transition: 0.2s linear all;
}

header .loan .loan-drop .top {
  padding: 30px 30px 10px;
}

header .loan .loan-drop .top p, header .loan .loan-drop .top .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list header .loan .loan-drop .top .right {
  font-size: 14px;
  line-height: 20px;
}

header .loan .loan-drop .login input[type=text], header .loan .loan-drop .login .box-form .select2-container--default .select2-selection--single, .box-form .select2-container--default header .loan .loan-drop .login .select2-selection--single,
header .loan .loan-drop .login input[type=password] {
  width: 100%;
  height: 40px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  font-size: 16px;
  margin-bottom: 15px;
}

header .loan .loan-drop .login input[type=submit] {
  height: 40px;
  width: 100%;
  border: none;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  font-size: 14px;
  color: #FFF;
  background: #0076a3;
  cursor: pointer;
}

header .loan .loan-drop .login a {
  font-size: 12px;
  text-transform: capitalize;
  float: right;
  display: inline-block;
  margin-bottom: 0px;
}

header .loan .loan-drop .bottom {
  padding: 20px 30px;
  border-top: 1px solid #e1e1e1;
  background: #f0f2f4;
  border-radius: 0px 0px 10px 10px;
  -webkit-border-radius: 0px 0px 10px 10px;
  -moz-border-radius: 0px 0px 10px 10px;
  -ms-border-radius: 0px 0px 10px 10px;
  -o-border-radius: 0px 0px 10px 10px;
}

header .loan .loan-drop .bottom a {
  float: none;
  display: block;
  margin: 0 0 15px 0;
  color: #555;
}

header .loan .loan-drop .bottom a img {
  float: left;
  margin: 0 10px 0 0;
}

header .loan .loan-drop .bottom a:hover {
  color: #111;
}

header .loan .loan-drop:after {
  content: "";
  width: 100%;
  height: 16px;
  background: url(../images/material/arr-top.png) no-repeat center;
  bottom: auto;
  top: -15px;
}

header .loan:hover .loan-drop {
  opacity: 1;
  visibility: visible;
}

.main-nav {
  position: absolute;
  z-index: 12;
  width: 340px;
  background: #095285;
  min-height: 100%;
  right: 0;
  padding: 150px 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: none;
}

.main-nav a.close {
  text-indent: -99999px;
  width: 50px;
  height: 50px;
  background: #e99400;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  position: absolute;
  top: 20px;
  left: 30px;
}

.main-nav a.close:after {
  content: "";
  width: 24px;
  height: 24px;
  background: url(../images/material/close.png) center no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transition: 0.15s ease-out all;
  -webkit-transition: 0.15s ease-out all;
  -moz-transition: 0.15s ease-out all;
  -ms-transition: 0.15s ease-out all;
  -o-transition: 0.15s ease-out all;
}

.main-nav a.close:hover:after {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

.main-nav a {
  font-size: 18px;
  color: #cfe2f0;
  display: block;
  text-transform: uppercase;
  margin: 0 0 30px 0;
  line-height: 20px;
}

.main-nav a:hover {
  color: #e99400;
}

.main-nav hr {
  border: none;
  border-bottom: 1px solid #1168a5;
  margin: 60px 0;
}

.main-nav .lang {
  color: #FFF;
  font-size: 18px;
}

.main-nav .lang a {
  display: inline-block;
  font-size: 18px;
  color: #FFF;
}

/* middle
----------------------------------------------------------------------------------------------*/
.banner .slide {
  padding: 0 25px;
  position: relative;
}

.banner .slide .img {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  overflow: hidden;
}

.banner .caption-1 {
  position: absolute;
  width: 1010px;
  left: 100px;
  bottom: 55px;
  z-index: 1;
  text-shadow: 0px 0px 2px #000;
}

.banner .caption-1 h1 {
  font-size: 40px;
  font-weight: 700;
  color: #FFF;
  line-height: 50px;
  margin: 0 0 20px 0;
}

.banner .caption-1 a {
  color: #e99400;
  font-size: 20px;
  text-transform: capitalize;
  padding: 0 0 0 38px;
  line-height: 26px;
  position: relative;
}

.banner .caption-1 a:after {
  content: "";
  position: absolute;
  width: 26px;
  height: 26px;
  background: #e99400 url(../images/material/arr-right.png) no-repeat center;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  top: 0;
  left: 0;
}

.banner .caption-1 a:hover {
  color: #0076a3;
}

.banner .caption-1 a:hover:after {
  background-color: #0076a3;
}

.banner .caption-2 {
  position: absolute;
  width: 350px;
  height: auto;
  background: rgba(4, 59, 98, 0.9);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 55px 50px;
  z-index: 2;
  bottom: 0;
  right: 60px;
  color: #FFF;
}

.banner .caption-2 h5 {
  font-size: 24px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0 0 20px;
}

.banner .caption-2 p, .banner .caption-2 .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .banner .caption-2 .right {
  font-size: 16px;
  line-height: 20px;
  margin: 15px 0;
}

.banner .caption-2 a {
  font-size: 14px;
  color: #e99400;
  padding: 0 0 0 35px;
  background: url(../images/material/link-ico.png) no-repeat left center;
  line-height: 20px;
  display: inline-block;
  height: 20px;
}

.banner .slick-arrow {
  position: absolute;
  padding: 0;
  width: 60px;
  height: 60px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  background: #FFF;
  margin: auto;
  top: 0;
  bottom: 0;
  border: none;
  text-indent: -9999px;
  z-index: 2;
  cursor: pointer;
  opacity: 0.6;
}

.banner .slick-arrow:after {
  content: "";
  position: absolute;
  width: 16px;
  height: 25px;
  background: url(../images/material/arr-slider.png) no-repeat;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.banner .slick-arrow.slick-next {
  right: 20px;
}

.banner .slick-arrow.slick-next:after {
  background-position: right center;
  right: -4px;
}

.banner .slick-arrow.slick-prev {
  left: 20px;
}

.banner .slick-arrow.slick-prev:after {
  background-position: left center;
  left: -4px;
}

.banner.banner-std {
  text-align: center;
  margin: 0 0 0 0;
  max-width: 1600px;
  margin: auto;
  padding: 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  overflow: hidden;
}

.banner.banner-std img {
  max-width: 95%;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.banner.maps > div {
  max-width: 95%;
  margin: auto;
  height: 600px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.home {
  padding: 60px 0;
}

.home .wrapper {
  width: 1400px;
}

.home .h-top {
  margin: 60px 0;
}

.home .h-top .box {
  float: left;
  width: 355px;
  margin: 0 140px 0 0;
}

.home .h-top .box .img {
  width: 160px;
  float: left;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  overflow: hidden;
}

.home .h-top .box .img img {
  width: 100%;
  display: block;
}

.home .h-top .box .text, .home .h-top .content-std .list-jasa-product .box .text .drop, .content-std .list-jasa-product .home .h-top .box .text .drop {
  float: right;
  width: 170px;
}

.home .h-top .box .text h5, .home .h-top .content-std .list-jasa-product .box .text .drop h5, .content-std .list-jasa-product .home .h-top .box .text .drop h5 {
  font-size: 18px;
  color: #333;
  margin-bottom: 15px;
}

.home .h-top .box .text small, .home .h-top .content-std .list-jasa-product .box .text .drop small, .content-std .list-jasa-product .home .h-top .box .text .drop small {
  color: #999;
  font-weight: 700;
  font-size: 14px;
}

.home .h-top .box:nth-child(3n) {
  margin-right: 0;
}

.home .kurs {
  height: 100px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 45px;
  background: url(../images/material/bg-kurs.png) no-repeat left;
  position: relative;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  color: #FFF;
  margin: 0 0 50px 0;
}

.home .kurs .title {
  float: left;
  margin: 30px 0 0 0;
}

.home .kurs .title h5 {
  font-size: 20px;
  font-weight: 700;
  color: #FFF;
  margin: 0 0 5px 0;
  text-transform: uppercase;
}

.home .kurs .title small {
  color: #999;
  font-size: 14px;
}

.home .kurs .title:after {
  content: "";
  position: absolute;
  height: 70px;
  width: 1px;
  background: #0c5b93;
  left: 445px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.home .kurs .box {
  float: left;
  margin: 27px 0 0 70px;
}

.home .kurs .box h6 {
  font-size: 16px;
  color: #FFF;
  margin: 0 0 5px 0;
}

.home .kurs .box span {
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 16px;
}

.home .kurs .box span.green {
  background: url(../images/material/arr-kurs-3.png) no-repeat;
}

.home .kurs .box span.yellow {
  background: url(../images/material/arr-kurs-1.png) no-repeat;
}

.home .kurs .box span.red {
  background: url(../images/material/arr-kurs-2.png) no-repeat;
}

.home .kurs .box h5 {
  position: relative;
  font-weight: 700;
  color: #FFF;
  padding: 0 0 0 28px;
  font-size: 18px;
}

.home .h-bottom {
  position: relative;
}

.home .h-bottom .jasa {
  float: left;
  width: 1040px;
  position: relative;
}

.home .h-bottom .jasa .slide {
  position: relative;
}

.home .h-bottom .jasa .caption {
  position: absolute;
  left: 60px;
  right: 60px;
  bottom: 105px;
}

.home .h-bottom .jasa .caption h6 {
  font-size: 24px;
  font-weight: 700;
  color: #FFF;
  margin: 0 0 20px 0;
}

.home .h-bottom .jasa .caption p, .home .h-bottom .jasa .caption .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .home .h-bottom .jasa .caption .right {
  font-size: 24px;
  line-height: 30px;
  font-weight: 300;
  color: #FFF;
}

.home .h-bottom .jasa .caption p a, .home .h-bottom .jasa .caption .content-std .budaya-lembaga .list .right a, .content-std .budaya-lembaga .list .home .h-bottom .jasa .caption .right a {
  color: #4eaff3;
  font-size: 16px;
  font-weight: 700;
}

.home .h-bottom .jasa .caption p a:hover, .home .h-bottom .jasa .caption .content-std .budaya-lembaga .list .right a:hover, .content-std .budaya-lembaga .list .home .h-bottom .jasa .caption .right a:hover {
  color: #e99400;
}

.home .h-bottom .jasa .nav-slide {
  position: absolute;
  padding: 25px 60px 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
}

.home .h-bottom .jasa .nav-slide:after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 1px;
  background: #FFF;
  opacity: 0.1;
  left: 0;
}

.home .h-bottom .jasa .nav-slide a {
  padding: 0 30px;
  line-height: 30px;
  font-size: 20px;
  font-weight: 700;
  color: #FFF;
  display: inline-block;
  height: 60px;
  position: relative;
  margin: 0 10px;
}

.home .h-bottom .jasa .nav-slide a img {
  margin: 0 10px -7px 0;
  float: left;
}

.home .h-bottom .jasa .nav-slide a:after {
  border-bottom: 4px solid #ffa600;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  transition: 0.15s ease-out all;
  -webkit-transition: 0.15s ease-out all;
  -moz-transition: 0.15s ease-out all;
  -ms-transition: 0.15s ease-out all;
  -o-transition: 0.15s ease-out all;
}

.home .h-bottom .jasa .nav-slide a:hover:after, .home .h-bottom .jasa .nav-slide a.active:after {
  width: 100%;
}

.home .h-bottom .jasa .nav-slide .slick-arrow {
  width: 14px;
  height: 26px;
  padding: 0;
  border: none;
  text-indent: -99999px;
  background: url(../images/material/arr-slider-2.png) no-repeat;
  top: -25px;
  cursor: pointer;
}

.home .h-bottom .jasa .nav-slide .slick-arrow.slick-next {
  background-position: right bottom;
  left: auto;
  right: -20px;
}

.home .h-bottom .jasa .nav-slide .slick-arrow.slick-next:hover {
  background-position: right bottom;
}

.home .h-bottom .jasa .nav-slide .slick-arrow.slick-prev {
  background-position: right top;
  left: -20px;
  right: auto;
}

.home .h-bottom .jasa .nav-slide .slick-arrow.slick-prev:hover {
  background-position: right top;
}

.home .h-bottom .h-about {
  float: right;
  width: 342px;
  height: 490px;
  background: url(../images/content/bg-habout.jpg) no-repeat center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 355px 45px 0;
  margin: -21px 0 0 0;
}

.home .h-bottom .h-about h6 {
  font-size: 24px;
  color: #111;
  margin: 0 0 15px;
  font-weight: 600;
}

.home .h-bottom .h-about p, .home .h-bottom .h-about .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .home .h-bottom .h-about .right {
  font-size: 16px;
  line-height: 20px;
  color: #555;
}

.home .link-bottom {
  background: #eee;
  padding: 50px 0;
  margin: 70px 0 -60px 0;
}

.home .link-bottom a {
  float: left;
  width: 23%;
  text-align: center;
  margin: 0 1%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.home .link-bottom a span {
  display: block;
  height: 80px;
  margin-bottom: 10px;
  position: relative;
  border: 1px solid #CCC0;
}

.home .link-bottom a span img {
  max-width: 90%;
  width:100%;
}

.home .link-bottom a h6 {
  font-size: 16px;
  color: #666;
  font-weight: bold;
}

.content-std {
  padding: 0 0 100px 0;
}

.content-std .wrapper {
  width: 1090px;
  margin: auto;
}

.content-std h4 {
  font-size: 30px;
  color: #1d4e71;
  font-weight: 700;
  margin: 0 0 40px;
}

.content-std ul li {
  font-size: 16px;
  line-height: 22px;
  margin: 8px;
  position: relative;
  padding: 0 0 0 24px;
}

.content-std ul li:before {
  content: "";
  width: 11px;
  height: 2px;
  background: #e99400;
  position: absolute;
  left: 0;
  top: 10px;
}

.content-std ul, .content-std ol {
  margin-bottom: 30px;
}

.content-std ol {
  margin: 0 -15px 0 30px;
}

.content-std ol li {
  list-style: decimal;
}

.content-std ol li ul li {
  list-style: none;
}

.content-std ol,
.content-std p, .content-std .budaya-lembaga .list .right {
  font-size: 16px;
  line-height: 24px;
  color: #333;
  margin-bottom: 30px;
}

.content-std p.sub, .content-std .budaya-lembaga .list .sub.right {
  font-size: 24px;
  line-height: 30px;
}

.content-std p.sub.blue, .content-std .budaya-lembaga .list .sub.blue.right {
  color: #043b62;
}

.content-std h6 {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.content-std .image-std {
  text-align: center;
  margin: 40px 0;
}

.content-std .image-std img {
  min-width: 100%;
}

.content-std .download-button {
  display: inline-block;
  border: 1px solid #999;
  height: 40px;
  line-height: 40px;
  padding: 0 20px 0 50px;
  font-size: 16px;
  font-weight: 700;
  color: #0076a3;
  margin: 80px 0 0 0;
  background: url(../images/material/ico-download.png) no-repeat 15px center;
}

.content-std .download-button:hover {
  background-color: #eee;
}

.content-std .title-content {
  width: 1170px;
  margin: -70px auto 60px;
  background: rgba(4, 59, 98, 0.89);
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  padding: 0 35px 35px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.content-std .title-content.without-sub .breadcrumb {
  margin-bottom: -10px;
}

.content-std .title-content h1 {
  height: 70px;
  line-height: 70px;
  font-size: 22px;
  font-weight: 700;
  color: #FFF;
}

.content-std .title-content a.toggle-sub {
  float: right;
  width: 135px;
  padding: 0 25px 0 35px;
  height: 70px;
  line-height: 70px;
  font-size: 14px;
  color: #FFF;
  text-transform: uppercase;
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: url(../images/material/arr-drop.png) no-repeat right center;
}

.content-std .title-content a.toggle-sub:before {
  content: "";
  left: 0;
  top: 0;
  bottom: 2px;
  border-left: 1px solid #0a3043;
  border-right: 1px solid #135679;
  position: absolute;
}

.content-std .title-content .breadcrumb {
  margin: 20px 0 40px;
  font-size: 16px;
  color: #477ea4;
}

.content-std .title-content .breadcrumb a {
  float: left;
  color: #477ea4;
}

.content-std .title-content .breadcrumb a:first-child {
  width: 17px;
  height: 17px;
  background: url(../images/material/home-ico.png) no-repeat;
  margin: -2px 0 0 0;
  text-indent: -999999px;
}

.content-std .title-content .breadcrumb a:last-child {
  color: #FFF;
}

.content-std .title-content .breadcrumb span {
  float: left;
  padding: 0 8px;
}

.content-std .title-content .sub-title h6 {
  font-size: 18px;
  font-weight: 700;
  color: #e99400;
  margin: 0 0 15px 0;
}

.content-std .title-content .sub-title p, .content-std .title-content .sub-title .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .title-content .sub-title .right {
  font-size: 18px;
  color: #FFF;
  line-height: 24px;
  font-weight: 300;
}

.content-std .title-content .submenu {
  position: absolute;
  top: 68px;
  left: 0;
  right: 0;
  background: #043b62;
  padding: 40px 55px;
  display: none;
  z-index: 2;
}

.content-std .title-content .submenu .box {
  float: left;
  width: 31%;
  margin: 0 3.5% 65px 0;
  position: relative;
}

.content-std .title-content .submenu .box a {
  color: #FFF;
  font-size: 16px;
  margin: 0 0 15px 50px;
  display: block;
  position: relative;
}

.content-std .title-content .submenu .box a.active, .content-std .title-content .submenu .box a:hover {
  color: #e99400;
}

.content-std .title-content .submenu .box > a:first-child {
  margin: 0 0 20px 0;
  font-size: 18px;
  padding: 0 0 0 40px;
}

.content-std .title-content .submenu .box > a:first-child:before {
  content: '';
  float: left;
  width: 30px;
  height: 2px;
  background: #e99400;
  margin: 8px 10px 0 0;
  position: absolute;
  left: 0;
}

.content-std .title-content .submenu .box:first-child:after {
  display: none;
}

.content-std .title-content .submenu .box:nth-child(3n) {
  margin-right: 0;
}

.content-std .title-content .submenu .box:nth-child(3n+1) {
  clear: both;
}

.content-std .title-content .submenu .box:nth-child(3n+1):after {
  content: "";
  border-top: 1px solid #1e4f72;
  width: 322.5%;
  left: 0;
  position: absolute;
  top: -40px;
}

.content-std .title-content .submenu .box .child {
  margin: -5px 0px 15px 20px;
}

.content-std .title-content .submenu .box .child a {
  font-size: 14px;
  margin-bottom: 5px;
}

.content-std .wrap-tab .nav-tab {
  margin: 0 0 80px 0;
  text-align: center;
}

.content-std .wrap-tab .nav-tab a {
  display: inline-block;
  margin: 0 44.5px;
  position: relative;
  font-size: 20px;
  color: #798189;
  font-weight: 700;
}

.content-std .wrap-tab .nav-tab a:after {
  content: "";
  position: absolute;
  height: 50px;
  border-right: 1px solid #CCC;
  width: 0;
  right: -46px;
  top: -10px;
}

.content-std .wrap-tab .nav-tab a:before {
  content: "";
  height: 3px;
  background: #e99400;
  width: 0;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto;
  transition: 0.15s linear all;
  -webkit-transition: 0.15s linear all;
  -moz-transition: 0.15s linear all;
  -ms-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
}

.content-std .wrap-tab .nav-tab a:hover {
  color: #333;
}

.content-std .wrap-tab .nav-tab a.active {
  color: #333;
}

.content-std .wrap-tab .nav-tab a.active:before {
  width: 100%;
}

.content-std .wrap-tab .nav-tab a:last-child:after {
  display: none;
}

.content-std .wrap-tab .content-tab {
  display: none;
  padding: 1px 0;
}

.content-std .wrap-tab.false .content-tab {
  display: block !important;
}

.content-std .filter {
  margin: 0px auto 60px;
}

.content-std .filter h4 {
  margin: 0;
}

.content-std .filter input[type=text], .content-std .filter .box-form .select2-container--default .select2-selection--single, .box-form .select2-container--default .content-std .filter .select2-selection--single,
.content-std .filter select {
  width: 250px;
  height: 40px;
  border: 1px solid #D8D8D8;
  padding: 0 45px 0 20px;
  font-size: 16px;
  color: #666;
  background: url(../images/material/arr-dropdown.png) no-repeat right center;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.content-std .filter .left select {
  margin-right: 20px;
}

.content-std .filter input[type=text].search, .content-std .filter .box-form .select2-container--default .search.select2-selection--single, .box-form .select2-container--default .content-std .filter .search.select2-selection--single {
  background: url(../images/material/search-ico-2.png) no-repeat 95% center;
  width: 320px;
}

.content-std .paging {
  position: relative;
  text-align: center;
}

.content-std .paging p, .content-std .paging .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .paging .right {
  font-size: 16px;
  color: #999;
}

.content-std .paging p b, .content-std .paging .budaya-lembaga .list .right b, .content-std .budaya-lembaga .list .paging .right b {
  font-size: 24px;
  font-weight: 700;
  color: #043b62;
  padding: 0 15px;
}

.content-std .paging .arrow {
  position: absolute;
  height: 18px;
  font-size: 16px;
  color: #999;
  line-height: 18px;
  font-weight: 500;
}

.content-std .paging .arrow:after {
  content: "";
  position: absolute;
  width: 23px;
  height: 18px;
  background: url(../images/material/arrow-paging.png) no-repeat;
}

.content-std .paging .arrow:hover {
  color: #043b62;
}

.content-std .paging .arrow.next {
  padding-right: 30px;
  right: 0;
  top: 0;
}

.content-std .paging .arrow.next:after {
  right: 0;
  top: 0;
  background-position: bottom left;
}

.content-std .paging .arrow.next:hover:after {
  background-position: bottom right;
}

.content-std .paging .arrow.prev {
  padding-left: 30px;
  left: 0;
  top: 0;
}

.content-std .paging .arrow.prev:after {
  left: 0;
  top: 0;
  background-position: top left;
}

.content-std .paging .arrow.prev:hover:after {
  background-position: top right;
}

.content-std .riwayat h4 {
  margin-bottom: 0;
}

.content-std .riwayat .slider-year {
  padding-top: 78px;
  position: relative;
  margin: 0 0 60px 0;
}

.content-std .riwayat .slider-year:after {
  content: "";
  position: absolute;
  width: 43px;
  height: 58px;
  background: url(../images/material/pin-ico.png) no-repeat;
  bottom: auto;
}

.content-std .riwayat .slider-year .slide {
  position: relative;
  width: 240px;
  padding: 25px 0 0 0;
  text-align: center;
  font-size: 30px;
  font-weight: 700;
  color: #043b62;
}

.content-std .riwayat .slider-year .slide:before {
  content: "";
  position: absolute;
  height: 1px;
  background: #d7d7d7;
  left: 0;
  right: 0;
  top: 3.5px;
}

.content-std .riwayat .slider-year .slide:after {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  bottom: auto;
  background: #999;
}

.content-std .riwayat .slider-year .slick-arrow {
  width: 14px;
  height: 26px;
  padding: 0;
  border: none;
  text-indent: -99999px;
  background: url(../images/material/arr-slider-2.png) no-repeat;
  top: 32px;
  cursor: pointer;
}

.content-std .riwayat .slider-year .slick-arrow.slick-next {
  background-position: left bottom;
  left: auto;
  right: -40px;
}

.content-std .riwayat .slider-year .slick-arrow.slick-next:hover {
  background-position: right bottom;
}

.content-std .riwayat .slider-year .slick-arrow.slick-prev {
  background-position: left top;
  left: -40px;
  right: auto;
}

.content-std .riwayat .slider-year .slick-arrow.slick-prev:hover {
  background-position: right top;
}

.content-std .slider-col2 {
  width: 1083px;
  margin: 80px auto 0;
}

.content-std .slider-col2 .slide {
  width: 527px;
  margin: 0 14px;
}

.content-std .slider-col2 .slide > div {
  background: #ebebeb;
  border-top: 4px solid #e99400;
  padding: 40px 35px;
}

.content-std .slider-col2 .slide > div h5 {
  font-size: 20px;
  color: #e99400;
  margin: 0 0 15px 0;
}

.content-std .slider-col2 .slide > div p, .content-std .slider-col2 .slide > div .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .slider-col2 .slide > div .right {
  font-size: 16px;
  line-height: 22px;
}

.content-std .slider-col2 .slick-arrow {
  width: 22px;
  height: 44px;
  padding: 0;
  border: none;
  text-indent: -99999px;
  background: #acacac;
  cursor: pointer;
  border-radius: 44px 0 0px 44px;
  -webkit-border-radius: 44px 0 0px 44px;
  -moz-border-radius: 44px 0 0px 44px;
  -ms-border-radius: 44px 0 0px 44px;
  -o-border-radius: 44px 0 0px 44px;
}

.content-std .slider-col2 .slick-arrow:after {
  content: "";
  width: 10px;
  height: 18px;
  background: url(../images/material/arr-slider-3.png) no-repeat;
}

.content-std .slider-col2 .slick-arrow:hover {
  background: #0076a3;
}

.content-std .slider-col2 .slick-arrow.slick-next {
  border-radius: 0 44px 44px 0;
  -webkit-border-radius: 0 44px 44px 0;
  -moz-border-radius: 0 44px 44px 0;
  -ms-border-radius: 0 44px 44px 0;
  -o-border-radius: 0 44px 44px 0;
  left: auto;
  right: -21px;
}

.content-std .slider-col2 .slick-arrow.slick-next:after {
  background-position: right center;
  left: -3px;
}

.content-std .slider-col2 .slick-arrow.slick-prev {
  border-radius: 44px 0 0px 44px;
  -webkit-border-radius: 44px 0 0px 44px;
  -moz-border-radius: 44px 0 0px 44px;
  -ms-border-radius: 44px 0 0px 44px;
  -o-border-radius: 44px 0 0px 44px;
  left: -22px;
  right: auto;
}

.content-std .slider-col2 .slick-arrow.slick-prev:after {
  background-position: left center;
  right: -3px;
}

.content-std .budaya-lembaga .list {
  margin: 0 auto 60px;
  max-width: 1050px;
}

.content-std .budaya-lembaga .list .left {
  display: table;
  width: 250px;
  vertical-align: middle;
  height: 54px;
  position: relative;
}

.content-std .budaya-lembaga .list .left span:nth-child(1) {
  display: block;
  float: left;
  width: 54px;
  height: 54px;
  background: #205173;
  color: #80bbe5;
  text-align: center;
  line-height: 54px;
  font-size: 30px;
  text-transform: uppercase;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  position: absolute;
  left: 10px;
  top: 0;
}

.content-std .budaya-lembaga .list .left span:nth-child(2) {
  display: table-cell;
  vertical-align: middle;
  font-size: 18px;
  color: #2788af;
  line-height: 24px;
  padding: 0 0 0 80px;
  text-transform: uppercase;
  font-weight: 700;
}

.content-std .budaya-lembaga .list .right {
  width: 780px;
  margin: 0;
}

.content-std .box-dd {
  margin: 0 auto 40px;
  max-width: 970px;
}

.content-std .box-dd h6 {
  font-size: 30px;
  font-weight: 700;
  margin: 0 0 20px 0;
  color: #043b62;
}

.content-std .box-dd .head {
  background: #eaeaea;
  cursor: pointer;
}

.content-std .box-dd .head .img {
  overflow: hidden;
  float: left;
  width: 300px;
  height: 300px;
}

.content-std .box-dd .head .text, .content-std .box-dd .head .list-jasa-product .box .text .drop, .content-std .list-jasa-product .box .text .box-dd .head .drop {
  float: left;
  width: 450px;
  margin: 100px 0 0 40px;
}

.content-std .box-dd .head .text p, .content-std .box-dd .head .list-jasa-product .box .text .drop p, .content-std .list-jasa-product .box .text .box-dd .head .drop p, .content-std .box-dd .head .text .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .box-dd .head .text .right, .content-std .list-jasa-product .box .text .box-dd .head .drop .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .list-jasa-product .box .text .box-dd .head .drop .right {
  font-size: 24px;
  line-height: 33px;
}

.content-std .box-dd .content-acc {
  padding: 30px;
  display: none;
}

.content-std .box-dad {
  width: 670px;
  position: relative;
  margin: 0 0 120px 0;
}

.content-std .box-dad .text, .content-std .box-dad .list-jasa-product .box .text .drop, .content-std .list-jasa-product .box .text .box-dad .drop {
  width: 570px;
  padding: 60px 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: 0px 0px 20px -5px #666;
  -webkit-box-shadow: 0px 0px 20px -5px #666;
  -moz-box-shadow: 0px 0px 20px -5px #666;
  -ms-box-shadow: 0px 0px 20px -5px #666;
  -o-box-shadow: 0px 0px 20px -5px #666;
  position: absolute;
  right: -300px;
  bottom: -55px;
  background: #FFF;
}

.content-std .box-dad .text .ico, .content-std .box-dad .list-jasa-product .box .text .drop .ico, .content-std .list-jasa-product .box .text .box-dad .drop .ico {
  float: left;
  width: 95px;
  margin: 0 35px 0 0;
}

.content-std .box-dad .text .right, .content-std .box-dad .list-jasa-product .box .text .drop .right, .content-std .list-jasa-product .box .text .box-dad .drop .right {
  width: 330px;
}

.content-std .box-dad .text .right small, .content-std .box-dad .list-jasa-product .box .text .drop .right small, .content-std .list-jasa-product .box .text .box-dad .drop .right small {
  font-size: 16px;
  color: #999;
  margin: 0 0 20px 0;
  display: block;
}

.content-std .box-dad .text .right h6, .content-std .box-dad .list-jasa-product .box .text .drop .right h6, .content-std .list-jasa-product .box .text .box-dad .drop .right h6 {
  font-size: 26px;
  margin: 0 0 50px 0;
  line-height: 32px;
  color: #043b62;
  text-transform: capitalize;
  font-weight: 400;
}

.content-std .box-dad .text .right a, .content-std .box-dad .list-jasa-product .box .text .drop .right a, .content-std .list-jasa-product .box .text .box-dad .drop .right a {
  color: #4eaff3;
  font-size: 16px;
  display: inline-block;
  position: relative;
  padding: 0 0 0 30px;
}

.content-std .box-dad .text .right a:before, .content-std .box-dad .list-jasa-product .box .text .drop .right a:before, .content-std .list-jasa-product .box .text .box-dad .drop .right a:before {
  position: absolute;
  width: 19px;
  height: 19px;
  content: "";
  left: 0;
  bottom: 2px;
  background: url("../images/material/ico-download.png") no-repeat 0 0;
}

.content-std .list-foto .box {
  float: left;
  width: 343px;
  margin: 0 30px 50px 0;
}

.content-std .list-foto .box .img {
  width: 343px;
  height: auto;
  position: relative;
}

.content-std .list-foto .box .img span {
  width: 51px;
  height: 37px;
  background: url(../images/material/yt-play.png) no-repeat center;
}

.content-std .list-foto .box .text, .content-std .list-foto .list-jasa-product .box .text .drop, .content-std .list-jasa-product .list-foto .box .text .drop {
  padding: 20px 15px;
}

.content-std .list-foto .box .text small, .content-std .list-foto .list-jasa-product .box .text .drop small, .content-std .list-jasa-product .list-foto .box .text .drop small {
  font-size: 16px;
  color: #999;
  display: block;
  margin: 0 0 10px 0;
}

.content-std .list-foto .box .text span, .content-std .list-foto .list-jasa-product .box .text .drop span, .content-std .list-jasa-product .list-foto .box .text .drop span {
  color: #e99400;
}

.content-std .list-foto .box .text h6, .content-std .list-foto .list-jasa-product .box .text .drop h6, .content-std .list-jasa-product .list-foto .box .text .drop h6 {
  font-size: 22px;
  line-height: 28px;
  color: #0076a3;
}

.content-std .list-foto .box:nth-child(3n) {
  margin-right: 0;
}

.content-std .list-foto .box:nth-child(3n+1) {
  clear: both;
}

.content-std .list-foto .box:hover {
  box-shadow: 1px 1px 25px -10px #000;
  -webkit-box-shadow: 1px 1px 25px -10px #000;
  -moz-box-shadow: 1px 1px 25px -10px #000;
  -ms-box-shadow: 1px 1px 25px -10px #000;
  -o-box-shadow: 1px 1px 25px -10px #000;
}

.content-std .list-fotodet .box {
  float: left;
  margin: 0 20px 20px 0;
  width: 257px;
}

.content-std .list-fotodet .box:nth-child(4n) {
  margin-right: 0;
}

.content-std hr {
  border: none;
  border-bottom: 1px solid #d7d7d7;
  margin: 80px 0;
}

.content-std .box-jaringan, .content-std .list-kantor .box {
  width: 285px;
  float: left;
}

.content-std .box-jaringan h6, .content-std .list-kantor .box h6 {
  font-size: 22px;
  font-weight: 700;
  color: #0076a3;
  margin: 0 0 20px 0;
}

.content-std .box-jaringan p, .content-std .list-kantor .box p, .content-std .box-jaringan .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .box-jaringan .right, .content-std .list-kantor .box .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .list-kantor .box .right {
  font-size: 16px;
  line-height: 22px;
  margin-bottom: 20px;
}

.content-std .box-jaringan .list, .content-std .list-kantor .box .list {
  line-height: 24px;
  font-size: 16px;
  color: #999;
  margin-bottom: 10px;
  position: relative;
  padding: 0 0 0 34px;
}

.content-std .box-jaringan .list span, .content-std .list-kantor .box .list span {
  display: block;
  float: left;
  width: 24px;
  height: 24px;
  margin: 0 15px 0 0;
  position: absolute;
  left: 0;
}

.content-std .box-jaringan .list span.phone, .content-std .list-kantor .box .list span.phone {
  background: url(../images/material/contact-ico-1.png) no-repeat center;
}

.content-std .box-jaringan .list span.fax, .content-std .list-kantor .box .list span.fax {
  background: url(../images/material/contact-ico-2.png) no-repeat center;
}

.content-std .box-jaringan .list span.mail, .content-std .list-kantor .box .list span.mail {
  background: url(../images/material/contact-ico-3.png) no-repeat center;
}

.content-std .box-jaringan a, .content-std .list-kantor .box a {
  color: #0076a3;
  font-size: 14px;
  line-height: 34px;
  margin: 10px 0 0 0;
  display: inline-block;
}

.content-std .box-jaringan a span, .content-std .list-kantor .box a span {
  display: block;
  float: left;
  width: 30px;
  height: 34px;
  background: url(../images/material/location-ico.png) no-repeat;
  margin: 0 15px 0 0;
}

.content-std .list-kantor .box {
  margin: 0 117px 100px 0;
}

.content-std .list-kantor .box:nth-child(3n) {
  margin-right: 0;
}

.content-std .list-kantor .box:nth-child(3n+1) {
  clear: both;
}

.content-std .list-jasa-product .box {
  position: relative;
  float: left;
  width: 530px;
  margin: 0 30px 30px 0;
}

.content-std .list-jasa-product .box .img {
  float: right;
  overflow: hidden;
  height: 400px;
}

.content-std .list-jasa-product .box .img img {
  height: 400px;
}

.content-std .list-jasa-product .box .text, .content-std .list-jasa-product .box .text .drop {
  position: absolute;
  width: 260px;
  height: 380px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #f4f4f4;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  padding: 30px 10px 30px 30px;
  bottom: 0;
  box-shadow: 0 4px 25px -12px #000;
  -webkit-box-shadow: 0 4px 25px -12px #000;
  -moz-box-shadow: 0 4px 25px -12px #000;
  -ms-box-shadow: 0 4px 25px -12px #000;
  -o-box-shadow: 0 4px 25px -12px #000;
}

.content-std .list-jasa-product .box .text h5, .content-std .list-jasa-product .box .text .drop h5 {
  font-size: 20px;
  line-height: 30px;
  margin: 0 0 25px 0;
}

.content-std .list-jasa-product .box .text h5 img, .content-std .list-jasa-product .box .text .drop h5 img {
  float: left;
  margin: 0 10px 0 0;
}

.content-std .list-jasa-product .box .text a, .content-std .list-jasa-product .box .text .drop a {
  color: #333;
  font-size: 14px;
  margin: 0 0 10px 0;
  display: block;
}

.content-std .list-jasa-product .box .text a:hover {
  color: #e99400;
}

.content-std .list-jasa-product .box .text .scroll-parent {
  max-height: 270px;
}

.content-std .list-jasa-product .box .text .drop {
  position: absolute;
  bottom: 0;
  left: 0;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
  height: 100%;
  display: none;
  width: 100%;
}

.content-std .list-jasa-product .box .text .drop a.back {
  font-size: 16px;
  color: #e99400;
  margin: 0 0 20px 0;
}

.content-std .list-jasa-product .box .text .drop a.back:after {
  content: "";
  float: left;
  width: 7px;
  height: 12px;
  background: url(../images/material/back-ico.png) no-repeat center;
  margin: 2.5px 10px 0 0;
}

.content-std .list-jasa-product .box .text .drop a {
  margin-bottom: 5px;
  font-size: 14px;
  margin: 0 0 8px 30px;
}

.content-std .list-jasa-product .box .text .drop .wrap-scroll {
  max-height: 276px;
}

.content-std .list-jasa-product .box:nth-child(2n) {
  margin-right: 0;
}

.content-std .list-jasa-product .box:nth-child(2n) .img {
  float: left;
}

.content-std .list-jasa-product .box:nth-child(2n) .text, .content-std .list-jasa-product .box:nth-child(2n) .text .drop {
  right: 0;
}

.content-std .list-jasa-product.detail-prod {
  margin-top: 120px;
}

.content-std .btn-download {
  color: #4eaff3;
  font-size: 16px;
  display: inline-block;
  position: relative;
  padding: 0 0 0 30px;
}

.content-std .btn-download:before {
  position: absolute;
  width: 19px;
  height: 19px;
  content: "";
  left: 0;
  bottom: 2px;
  background: url("../images/material/ico-download.png") no-repeat 0 0;
}

.content-std .annual-report {
  margin: 60px 0;
}

.content-std .annual-report .col {
  float: left;
  width: 50%;
  margin: 0 0 45px 0;
  position: relative;
}

.content-std .annual-report .col h4 {
  font-weight: normal;
  line-height: 32px;
}

.content-std .annual-report .col h6 {
  font-size: 16px;
  color: #929191;
  text-transform: capitalize;
  font-weight: normal;
}

.content-std .annual-report .col .inner {
  padding: 28px 24px 60px 24px;
  border: 1px solid #1d4e71;
  margin: 0 15px 0 0;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content-std .annual-report .col .btn-download {
  position: absolute;
  left: 24px;
  bottom: 28px;
}

.content-std .annual-report .col:nth-child(2n+2) .inner {
  margin-right: 0;
  margin-left: 15px;
}

.content-std .list-report {
  margin: 50px 0;
}

.content-std .list-report .box {
  width: 530px;
  height: 235px;
  border: 1px solid #CCC;
  padding: 38px 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 30px 30px 0;
  float: left;
}

.content-std .list-report .box .img {
  width: 160px;
  height: 160px;
  overflow: hidden;
  position: relative;
  float: left;
}

.content-std .list-report .box .text, .content-std .list-report .list-jasa-product .box .text .drop, .content-std .list-jasa-product .list-report .box .text .drop {
  float: right;
  width: 275px;
  float: right;
}

.content-std .list-report .box .text small, .content-std .list-report .list-jasa-product .box .text .drop small, .content-std .list-jasa-product .list-report .box .text .drop small {
  font-size: 14px;
  color: #999;
  display: block;
  margin: 0 0 20px 0;
}

.content-std .list-report .box .text h6, .content-std .list-report .list-jasa-product .box .text .drop h6, .content-std .list-jasa-product .list-report .box .text .drop h6 {
  font-size: 20px;
  line-height: 30px;
  color: #043b62;
  margin: 0 0 20px 0;
}

.content-std .list-report .box .text a, .content-std .list-report .list-jasa-product .box .text .drop a, .content-std .list-jasa-product .list-report .box .text .drop a {
  line-height: 19px;
  font-size: 16px;
  color: #4eaff3;
  padding: 0 0 0 30px;
  background: url(../images/material/ico-download.png) no-repeat left;
}

.content-std .list-report .box:nth-child(2n) {
  margin-right: 0;
}

.content-std .informasi-efek h6 {
  font-size: 20px;
  font-weight: 700;
  color: #043b62;
  margin: 0 0 25px 0;
}

.content-std .informasi-efek p, .content-std .informasi-efek .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .informasi-efek .right {
  font-size: 16px;
  color: #333;
  margin: 0 0 20px 0;
}

.content-std .informasi-efek p b, .content-std .informasi-efek .budaya-lembaga .list .right b, .content-std .budaya-lembaga .list .informasi-efek .right b {
  color: #111;
}

.content-std .informasi-efek .info-con a {
  float: left;
  margin: 0 30px 0 0;
  position: relative;
  font-size: 16px;
  color: #111;
  line-height: 30px;
}

.content-std .informasi-efek .info-con a:before {
  content: "";
  float: left;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  margin: 0 10px 0 0;
}

.content-std .informasi-efek .info-con a:nth-child(2n):after {
  content: "";
  position: absolute;
  border-right: 1px solid #CCC;
  height: 100%;
  left: -15px;
  top: 0;
}

.content-std .informasi-efek .info-con a.tlp:before {
  background: #b3b3b3 url(../images/material/tlp-ico.png) no-repeat center;
}

.content-std .informasi-efek .info-con a.fax:before {
  background: #b3b3b3 url(../images/material/fax-ico.png) no-repeat center;
}

.content-std .informasi-efek .col {
  float: left;
  margin: 0 80px 60px 0;
  position: relative;
}

.content-std .informasi-efek .col:nth-child(2n):before {
  content: "";
  position: absolute;
  border-right: 1px solid #CCC;
  height: 100%;
  left: -45px;
  top: 0;
}

.content-std .komite-list h6 {
  color: #043b62;
  margin: 0 0 15px;
}

.content-std .komite-list .box {
  float: left;
  width: 495px;
  margin: 0 100px 60px 0;
  position: relative;
}

.content-std .komite-list .box:first-child:after {
  display: none;
}

.content-std .komite-list .box:nth-child(2n) {
  margin-right: 0;
}

.content-std .komite-list .box:nth-child(2n+1) {
  clear: both;
}

.content-std .komite-list .box:nth-child(2n+1):after {
  content: "";
  border-top: 1px solid #DDD;
  width: 220%;
  left: 0;
  position: absolute;
  top: -55px;
}

.content-std .list-berita .box {
  margin: 0 0 110px 0;
  position: relative;
}

.content-std .list-berita .box .img {
  float: left;
  width: 370px;
  height: 265px;
  overflow: hidden;
  position: relative;
}

.content-std .list-berita .box .text, .content-std .list-berita .list-jasa-product .box .text .drop, .content-std .list-jasa-product .list-berita .box .text .drop {
  float: left;
  width: 670px;
  margin: 20px 0 0 40px;
}

.content-std .list-berita .box .text small, .content-std .list-berita .list-jasa-product .box .text .drop small, .content-std .list-jasa-product .list-berita .box .text .drop small {
  font-size: 18px;
  color: #999;
  margin: 0 0 20px;
  display: block;
}

.content-std .list-berita .box .text small span, .content-std .list-berita .list-jasa-product .box .text .drop small span, .content-std .list-jasa-product .list-berita .box .text .drop small span {
  color: #e99400;
}

.content-std .list-berita .box .text h5, .content-std .list-berita .list-jasa-product .box .text .drop h5, .content-std .list-jasa-product .list-berita .box .text .drop h5 {
  font-size: 32px;
  color: #043b62;
  line-height: 40px;
  margin: 0 0 15px 0;
}

.content-std .list-berita .box .text p, .content-std .list-berita .list-jasa-product .box .text .drop p, .content-std .list-jasa-product .list-berita .box .text .drop p, .content-std .list-berita .box .text .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .list-berita .box .text .right {
  font-size: 18px;
  color: #111;
}

.content-std .list-berita .box .text span, .content-std .list-berita .list-jasa-product .box .text .drop span, .content-std .list-jasa-product .list-berita .box .text .drop span {
  color: #0076a3;
  font-size: 18px;
  font-weight: 700;
}

.content-std .list-berita .box:before {
  content: "";
  border-top: 1px solid #DDD;
  width: 100%;
  left: 0;
  position: absolute;
  bottom: -55px;
}

.content-std .list-berita.search-result .box {
  margin: 0 0 60px 0;
}

.content-std .list-berita.search-result .box:before {
  bottom: -30px;
}

.content-std .list-berita.search-result .box p, .content-std .list-berita.search-result .box .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .list-berita.search-result .box .right {
  margin-bottom: 0;
}

.content-std .list-berita.search-result .box .text, .content-std .list-berita.search-result .list-jasa-product .box .text .drop, .content-std .list-jasa-product .list-berita.search-result .box .text .drop {
  width: auto;
  margin: 0;
  padding-top: 0;
}

.content-std .berita-detail {
  max-width: 970px;
  margin: auto;
}

.content-std .berita-detail h6:first-child {
  margin-bottom: 20px;
  color: #999;
}

.content-std .berita-detail h6:first-child span {
  color: #e99400;
}

.content-std .berita-detail h4 {
  margin-bottom: 15px;
}

.content-std .berita-detail .usr {
  color: #999;
  font-size: 14px;
  font-style: italic;
  margin: 0 0 60px 0;
}

.content-std .berita-detail .share {
  margin: 60px auto;
}

.content-std .berita-detail .share .label {
  float: left;
  font-size: 16px;
  color: #999;
  padding: 0 0 0 40px;
  background: url(../images/material/share-ico.png) no-repeat left center;
  margin: 0 20px 0 0;
}

.content-std .berita-detail .share a {
  float: left;
  width: 18px;
  height: 18px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  margin: 0 5px 0 0;
  overflow: hidden;
}

.content-std .lowongan {
  margin: 80px 0 0 0;
}

.content-std .list-lowongan .box {
  float: left;
  width: 345px;
  height: 225px;
  border: 1px solid #0076a3;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 28px;
  position: relative;
  margin: 0 25px 25px 0;
  box-shadow: 15px 15px 0px #e0e0e0;
  -webkit-box-shadow: 15px 15px 0px #e0e0e0;
  -moz-box-shadow: 15px 15px 0px #e0e0e0;
  -ms-box-shadow: 15px 15px 0px #e0e0e0;
  -o-box-shadow: 15px 15px 0px #e0e0e0;
  cursor: pointer;
  transition: 0.15s linear all;
  -webkit-transition: 0.15s linear all;
  -moz-transition: 0.15s linear all;
  -ms-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
}

.content-std .list-lowongan .box h6 {
  font-size: 22px;
  color: #043b62;
  line-height: 26px;
  margin: 0 0 5px 0;
}

.content-std .list-lowongan .box small {
  font-size: 18px;
  color: #999;
}

.content-std .list-lowongan .box a {
  position: absolute;
  bottom: 30px;
  left: 28px;
  font-size: 14px;
  color: #4eaff3;
  font-weight: bold;
}

.content-std .list-lowongan .box:nth-child(3n) {
  margin-right: 0;
}

.content-std .list-lowongan .box:hover {
  box-shadow: 0 0 0 #e0e0e0;
  -webkit-box-shadow: 0 0 0 #e0e0e0;
  -moz-box-shadow: 0 0 0 #e0e0e0;
  -ms-box-shadow: 0 0 0 #e0e0e0;
  -o-box-shadow: 0 0 0 #e0e0e0;
}

.content-std .career-detail {
  max-width: 970px;
  margin: 80px auto;
}

.content-std .career-detail h4 {
  margin-bottom: 10px;
}

.content-std .career-detail small {
  font-size: 16px;
  color: #999;
  display: block;
  margin: 0 0 60px 0;
}

.content-std .career-detail p a, .content-std .career-detail .budaya-lembaga .list .right a, .content-std .budaya-lembaga .list .career-detail .right a {
  color: #0076a3;
}

.content-std .career-detail p a:hover, .content-std .career-detail .budaya-lembaga .list .right a:hover, .content-std .budaya-lembaga .list .career-detail .right a:hover {
  text-decoration: underline;
}

.content-std .contact .form {
  float: left;
  margin: 0 0 0 130px;
  width: 570px;
}

.content-std .contact .form input[type=email],
.content-std .contact .form textarea,
.content-std .contact .form input[type=text],
.content-std .contact .form .box-form .select2-container--default .select2-selection--single, .box-form .select2-container--default
.content-std .contact .form .select2-selection--single {
  height: 50px;
  width: 100%;
  padding: 0 20px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  font-size: 16px;
}

.content-std .contact .form textarea {
  padding: 15px 20px;
  height: 100px;
}

.content-std .contact .form .btn {
  width: 110px;
  height: 40px;
  background: #0076a3;
  color: #FFF;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  font-size: 14px;
  border: none;
  text-transform: uppercase;
  cursor: pointer;
}

.content-std .contact .form .btn:hover {
  background: #e99400;
}

.content-std .contact .form .row {
  margin: 0 0 30px;
}

.content-std .csr {
  max-width: 970px;
  margin: auto;
}

.content-std .csr .col-2 .box {
  float: left;
  width: 470px;
  margin: 0 20px 0 0;
}

.content-std .csr .col-2 .box h6 {
  color: #043b62;
}

.content-std .csr .col-2 .box:nth-child(2n) {
  margin-right: 0;
}

.content-std .list-kegiatan .box {
  float: left;
  width: 530px;
  margin: 0 30px 30px 0;
  height: 185px;
  box-shadow: 0px 0px 20px -10px #000;
  -webkit-box-shadow: 0px 0px 20px -10px #000;
  -moz-box-shadow: 0px 0px 20px -10px #000;
  -ms-box-shadow: 0px 0px 20px -10px #000;
  -o-box-shadow: 0px 0px 20px -10px #000;
}

.content-std .list-kegiatan .box .img {
  width: 270px;
  float: left;
}

.content-std .list-kegiatan .box .text, .content-std .list-kegiatan .list-jasa-product .box .text .drop, .content-std .list-jasa-product .list-kegiatan .box .text .drop {
  float: left;
  padding: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 260px;
}

.content-std .list-kegiatan .box .text small, .content-std .list-kegiatan .list-jasa-product .box .text .drop small, .content-std .list-jasa-product .list-kegiatan .box .text .drop small {
  font-size: 14px;
  color: #e99400;
  display: block;
  margin: 0 0 10px 0;
}

.content-std .list-kegiatan .box .text h6, .content-std .list-kegiatan .list-jasa-product .box .text .drop h6, .content-std .list-jasa-product .list-kegiatan .box .text .drop h6 {
  color: #0076a3;
  font-size: 16px;
  line-height: 22px;
  text-transform: none;
  font-weight: 400;
}

.content-std .list-kegiatan .box:nth-child(2n) {
  margin-right: 0;
}

.content-std .step-wrap {
  width: 750px;
  margin: 0 auto 75px;
}

.content-std .step-wrap .step {
  width: 250px;
  height: 100px;
  float: left;
  text-align: center;
  position: relative;
}

.content-std .step-wrap .step h5 {
  width: 58px;
  height: 58px;
  border: 3px solid #999;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  line-height: 58px;
  font-size: 20px;
  font-weight: bold;
  color: #999;
  margin: auto auto 18px;
  position: relative;
  z-index: 1;
  background: #FFF;
}

.content-std .step-wrap .step h6 {
  color: #CCC;
}

.content-std .step-wrap .step:after, .content-std .step-wrap .step:before {
  content: "";
  position: absolute;
  width: 100%;
  top: 31px;
  height: 1px;
  background: #eaeaea;
  z-index: 0;
  left: -50%;
}

.content-std .step-wrap .step:after {
  left: auto;
  right: -50%;
}

.content-std .step-wrap .step:last-child:after, .content-std .step-wrap .step:first-child:before {
  display: none;
}

.content-std .step-wrap .step.active h5 {
  border-color: #e99400;
  color: #0076a3;
}

.content-std .step-wrap .step.active h6 {
  color: #0076a3;
}

.content-std .box-thank {
  padding: 40px;
  max-width: 690px;
  background: #eee;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  margin: auto auto 60px;
  text-align: center;
}

.content-std .box-thank b {
  color: #00780b;
}

.content-std .box-thank .btn {
  width: 140px;
  height: 44px;
  font-size: 16px;
  color: #FFF;
  border: none;
  background: #e99400;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  cursor: pointer;
  display: block;
  margin: auto;
  line-height: 40px;
  padding: 0;
}

.content-std .box-thank .btn:hover {
  background: #0076a3;
}

.content-std .sitemap .col {
  width: 335px;
  float: left;
  margin: 0 225px 0 0;
}

.content-std .sitemap .col:nth-child(2n) {
  margin-right: 0;
}

.content-std .sitemap .box {
  margin: 0 0 35px 0;
}

.content-std .sitemap .box a {
  font-size: 16px;
  color: #333;
  display: block;
  margin-bottom: 15px;
}

.content-std .sitemap .box a:hover {
  color: #e99400 !important;
}

.content-std .sitemap .box > a:first-child {
  color: #043b62;
  font-weight: 700;
}

.content-std .sitemap .box .inner {
  margin: 0 0 15px 30px;
}

.content-std .sitemap .box .inner a {
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 8px;
}

.box-form {
  width: 780px;
  margin: auto;
}

.box-form h6 {
  color: #000;
  font-size: 18px;
  margin-bottom: 20px;
}

.box-form p, .box-form .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .box-form .right {
  color: #999;
}

.box-form .spar {
  height: 60px;
}

.box-form .note {
  font-size: 13px;
  color: #999;
  display: block;
  margin: 5px 0 0 0;
}

.box-form .row {
  margin: 0 0 20px 0;
}

.box-form label {
  display: block;
  font-size: 15px;
  color: #666;
  margin: 0 0 8px 0;
}

.box-form label span {
  color: red;
}

.box-form .col {
  float: left;
  width: 350px;
  margin: 0 80px 0px 0;
}

.box-form .col:nth-child(2n) {
  margin-right: 0;
}

.box-form input[type=text], .box-form .select2-container--default .select2-selection--single, .box-form input[type=email], .box-form input[type=password], .box-form input[type=file], .box-form textarea {
  width: 100%;
  height: 44px;
  font-size: 14px;
  border: 1px solid #CCC;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.box-form input[type=text]:focus, .box-form .select2-container--default .select2-selection--single:focus, .box-form input[type=email]:focus, .box-form input[type=password]:focus, .box-form input[type=file]:focus, .box-form textarea:focus {
  border-color: #0076a3;
}

.box-form .currency {
  background: url(../images/material/rp-ico.png) no-repeat -1px;
  padding: 0 0 0 70px;
}

.box-form .day {
  background: url(../images/material/day-ico.png) no-repeat -1px;
  padding: 0 0 0 70px;
}

.box-form .input-file {
  width: 100% !important;
  height: 44px !important;
  border: 1px solid #CCC;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}

.box-form .input-file span {
  padding: 0 10px;
  font-size: 14px;
  color: #666;
  line-height: 40px;
  overflow: hidden;
  display: block;
  margin: 0 95px 0 0;
  word-break: break-all;
  overflow: hidden;
  position: relative;
  height: 44px;
}

.box-form .input-file input {
  z-index: 2;
  cursor: pointer;
}

.box-form .input-file:after {
  content: "Browse";
  width: 90px;
  height: 36px;
  line-height: 36px;
  position: absolute;
  right: 3px;
  top: 3px;
  text-align: center;
  background: #e1e1e1;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  color: #0076a3;
  font-size: 15px;
}

.box-form textarea {
  height: 100px;
}

.box-form label.radio {
  margin: 0 0 8px;
}

.box-form label.radio .input-radio {
  width: 14px;
  height: 14px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 3px solid #CCC;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -ms-border-radius: 100%;
  -o-border-radius: 100%;
  float: left;
  margin: 0 10px 0 0;
}

.box-form label.radio .input-radio.active {
  border-color: #043b62;
}

.box-form .btn {
  width: 140px;
  height: 44px;
  font-size: 16px;
  color: #FFF;
  border: none;
  background: #e99400;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  cursor: pointer;
  display: block;
  margin: auto;
  line-height: 40px;
  padding: 0;
}

.box-form .btn:hover {
  background: #0076a3;
}

.box-form .select2-container--default.select2-container--focus .select2-selection--single, .box-form .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #0076a3;
}

.box-form .select2-container--default .select2-selection--single {
  background: #FFF url(../images/material/arr-dropdown.png) no-repeat right center;
}

.box-form .select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.box-form .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-right: 50px;
  line-height: 40px;
}

.box-form .row-btn {
  margin: 80px 0 0 0;
}

.box-form hr {
  border: none;
  border-bottom: 1px solid #DDD;
  margin: 60px auto;
}

.box-form .total {
  padding: 30px;
  font-size: 18px;
  font-weight: 700;
  background: #eeeeee;
  color: #111;
  margin: 30px auto;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.box-form .total span {
  color: #0076a3;
  padding-right: 50px;
}

.box-form .value,
.box-form b.value {
  font-size: 16px;
  color: #111;
  line-height: 18px;
}

.box-form .block {
  padding: 30px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  background: #eeeeee;
  margin: 30px auto;
}

.table-hi {
  width: 100%;
  margin-bottom: 60px;
}

.table-hi th, .table-hi td {
  border: 1px solid #FFF;
  vertical-align: middle;
  text-align: center;
  line-height: 22px;
}

.table-hi thead th {
  padding: 15px 10px;
  background: #efefef;
  color: #043b62;
  font-size: 16px;
}

.table-hi thead th span {
  font-size: 14px;
  color: #666;
}

.table-hi tbody td {
  font-size: 16px;
  color: #111;
  padding: 15px;
  background: #dcdcdc;
}

.table-hi tbody td:last-child {
  text-align: center;
}

.table-hi tbody tr:nth-child(2n) td {
  background: #efefef;
}

.table-hi .download {
  text-indent: -9999px;
  display: inline-block;
  width: 19px;
  height: 19px;
  background: url(../images/material/ico-download.png) no-repeat center;
}

.table-hi.border-grey {
  border: 1px solid #acacac;
}

.table-hi.border-grey td, .table-hi.border-grey th {
  border-color: #acacac;
  border-bottom: none;
  border-top: none;
}

.table-hi.width-auto {
  width: auto;
}

.dec_map {
  max-width: 245px;
}

.dec_map h4 {
  color: #0076a3;
  font-size: 16px;
  font-weight: 700;
  margin: 10px 0 10px;
}

.dec_map p, .dec_map .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list .dec_map .right {
  margin-bottom: 10px;
  font-size: 14px;
  color: #111;
  line-height: 18px;
  font-weight: 400;
}

.dec_map p:nth-child(3), .dec_map .content-std .budaya-lembaga .list .right:nth-child(3), .content-std .budaya-lembaga .list .dec_map .right:nth-child(3) {
  color: #999;
}

.wrap-popup {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: auto;
  z-index: 99999;
  display: none;
}

.wrap-popup .overlay-pop {
  background: rgba(0, 0, 0, 0.7);
  height: auto;
  position: fixed;
  z-index: 1;
}

.wrap-popup .box-popup {
  max-width: 1170px;
  margin: 8% auto;
  position: relative;
  z-index: 2;
}

.wrap-popup .box-popup .close {
  position: absolute;
  width: 60px;
  height: 60px;
  top: -60px;
  right: -60px;
  background: #0076a3;
  text-indent: -99999px;
  transition: 0.15s linear all;
  -webkit-transition: 0.15s linear all;
  -moz-transition: 0.15s linear all;
  -ms-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
}

.wrap-popup .box-popup .close:after {
  content: "";
  width: 30px;
  height: 30px;
  background: url(../images/material/close-pop.png) no-repeat center;
  transition: 0.15s linear all;
  -webkit-transition: 0.15s linear all;
  -moz-transition: 0.15s linear all;
  -ms-transition: 0.15s linear all;
  -o-transition: 0.15s linear all;
}

.wrap-popup .box-popup .close:hover {
  background: #e99400;
}

.wrap-popup .box-popup .close:hover:after {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

.wrap-popup .box-popup .arrow {
  width: 21px;
  height: 38px;
  padding: 0;
  border: none;
  text-indent: -99999px;
  background: url(../images/material/arr-pop.png) no-repeat;
  top: -25px;
  cursor: pointer;
  opacity: 0.6;
}

.wrap-popup .box-popup .arrow.next {
  background-position: right center;
  left: auto;
  right: -60px;
}

.wrap-popup .box-popup .arrow.prev {
  background-position: left center;
  left: -60px;
  right: auto;
}

.wrap-popup .box-popup .arrow:hover {
  opacity: 1;
}

.wrap-popup .box-popup .video {
  width: 100%;
  padding: 56.25% 0 0 0;
  position: relative;
  background: #FFF url(../images/material/loader.gif) no-repeat center;
}

.wrap-popup .box-popup .video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.wrap-popup .box-popup .foto {
  position: relative;
  min-height: 300px;
}

.wrap-popup .box-popup .foto.load {
  background: #FFF url(../images/material/loader.gif) no-repeat center;
}

.wrap-popup .box-popup .page-size {
  position: absolute;
  bottom: -60px;
  right: 0;
  font-size: 18px;
  font-weight: 700;
  color: #b1b2b3;
}

.wrap-popup .box-popup .page-size .current {
  font-size: 24px;
  color: #0076a3;
  padding-right: 10px;
}

/* footer
----------------------------------------------------------------------------------------------*/
footer {
  height: 100px;
  background: url(../images/material/bg-footer.png) no-repeat left;
}

footer .wrapper {
  width: 1400px;
}

footer .logo {
  margin: 30px 0 0 0;
}

footer nav {
  float: left;
  font-size: 14px;
  color: #cfcfcf;
  margin: 40px 0 0 0;
}

footer nav a {
  color: #cfcfcf;
  margin: 0 10px 0 10px;
}

footer nav a:hover {
  color: #e99400;
}

footer p, footer .content-std .budaya-lembaga .list .right, .content-std .budaya-lembaga .list footer .right {
  float: left;
  color: #2e79ae;
  margin: 37px 0 0 20px;
  font-size: 14px;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwic2Fzcy1saWIuc2NzcyIsImJvdXJib24vX2JvdXJib24uc2NzcyIsImJvdXJib24vc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19weC10by1lbS5zY3NzIiwiYm91cmJvbi9zZXR0aW5ncy9fYXNzZXQtcGlwZWxpbmUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19hc3NpZ24taW5wdXRzLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fY29udGFpbnMuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19jb250YWlucy1mYWxzeS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxlbmd0aC5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxpZ2h0LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtbnVtYmVyLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtc2l6ZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLWVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tcmVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fc2hhZGUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19zdHJpcC11bml0cy5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3RpbnQuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL190cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL191bnBhY2suc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19tb2R1bGFyLXNjYWxlLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2NvbnZlcnQtdW5pdHMuc2NzcyIsImJvdXJib24vaGVscGVycy9fZGlyZWN0aW9uYWwtdmFsdWVzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fbGluZWFyLWFuZ2xlLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19saW5lYXItZ3JhZGllbnQtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWFyZy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWdyYWRpZW50LXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yZW5kZXItZ3JhZGllbnRzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fc3RyLXRvLW51bS5zY3NzIiwiYm91cmJvbi9jc3MzL19hbmltYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZmFjZS12aXNpYmlsaXR5LnNjc3MiLCJib3VyYm9uL2NzczMvX2JhY2tncm91bmQuc2NzcyIsImJvdXJib24vY3NzMy9fYmFja2dyb3VuZC1pbWFnZS5zY3NzIiwiYm91cmJvbi9jc3MzL19ib3JkZXItaW1hZ2Uuc2NzcyIsImJvdXJib24vY3NzMy9fY2FsYy5zY3NzIiwiYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLCJib3VyYm9uL2NzczMvX2ZpbHRlci5zY3NzIiwiYm91cmJvbi9jc3MzL19mbGV4LWJveC5zY3NzIiwiYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsImJvdXJib24vY3NzMy9fZm9udC1mZWF0dXJlLXNldHRpbmdzLnNjc3MiLCJib3VyYm9uL2NzczMvX2hpZHBpLW1lZGlhLXF1ZXJ5LnNjc3MiLCJib3VyYm9uL2NzczMvX2h5cGhlbnMuc2NzcyIsImJvdXJib24vY3NzMy9faW1hZ2UtcmVuZGVyaW5nLnNjc3MiLCJib3VyYm9uL2NzczMvX2tleWZyYW1lcy5zY3NzIiwiYm91cmJvbi9jc3MzL19saW5lYXItZ3JhZGllbnQuc2NzcyIsImJvdXJib24vY3NzMy9fcGVyc3BlY3RpdmUuc2NzcyIsImJvdXJib24vY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsImJvdXJib24vY3NzMy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLCJib3VyYm9uL2NzczMvX3NlbGVjdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL190ZXh0LWRlY29yYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLCJib3VyYm9uL2NzczMvX3RyYW5zaXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdXNlci1zZWxlY3Quc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItY29sb3Iuc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXN0eWxlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXdpZHRoLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYnV0dG9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2NsZWFyZml4LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fZWxsaXBzaXMuc2NzcyIsImJvdXJib24vYWRkb25zL19mb250LXN0YWNrcy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2hpZGUtdGV4dC5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX21hcmdpbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3BhZGRpbmcuc2NzcyIsImJvdXJib24vYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcmV0aW5hLWltYWdlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fc2l6ZS5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RleHQtaW5wdXRzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fdGltaW5nLWZ1bmN0aW9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RyaWFuZ2xlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fd29yZC13cmFwLnNjc3MiLCJib3VyYm9uL19ib3VyYm9uLWRlcHJlY2F0ZWQtdXBjb21pbmcuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVx0XHJcbiAgICBDb21wYW55ICAgIDogUFQgV2ViIEFyY2hpdGVjdCBUZWNobm9sb2d5IC0gd2ViYXJxLmNvbVxyXG4gICAgRG9jdW1lbnQgICA6IFN0eWxlc2hlZXRcclxuICAgIEF1dGhvciAgICAgOiBSaXpraSBOaWRhIENoYWVydWxzeWFoIFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuQGltcG9ydCBcInNhc3MtbGliXCI7XHJcblxyXG5ib2R5IHsgIFxyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCI7IFxyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcbmltZ3sgYm9yZGVyOjA7IG1heC13aWR0aDoxMDAlOyBoZWlnaHQ6YXV0bzsgfVxyXG5wIHtcclxuICAgIG1hcmdpbjogMXB4IDAgMTVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG59XHJcbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIjsgXHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRDhEOEQ4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjNjY2O1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxufVxyXG5pbnB1dFt0eXBlPWNoZWNrYm94XSwgaW5wdXRbdHlwZT1yYWRpb10ge1xyXG4gICAgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTtcclxuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XHJcbiAgICBib3JkZXItbGVmdC1zdHlsZTogbm9uZTtcclxufVxyXG5oMSB7IGZvbnQtc2l6ZTogMzJweDsgfVxyXG5oMiB7IGZvbnQtc2l6ZTogMjhweDsgfVxyXG5oMyB7IGZvbnQtc2l6ZTogMjRweDsgfVxyXG5oNCB7IGZvbnQtc2l6ZTogMjBweDsgfSBcclxuaDUgeyBmb250LXNpemU6IDE2cHg7IH0gXHJcbmg2IHsgZm9udC1zaXplOiAxNHB4OyB9XHJcbi8qIHN0cnVjdHVyZSBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNlY3Rpb24geyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cclxuLndyYXBwZXIge3dpZHRoOiAxMTcwcHg7bWFyZ2luOiAwIGF1dG87fVxyXG5cclxuXHJcblxyXG4uYnRuLWJsdWV7fVxyXG5cclxuLm92ZXJsYXl7cG9zaXRpb246IGZpeGVkO3dpZHRoOjEwMCU7aGVpZ2h0OiAxMDAlO3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtiYWNrZ3JvdW5kOiMwMDA7b3BhY2l0eTowLjc7ei1pbmRleDogNDtkaXNwbGF5OiBub25lO31cclxuLnRyaWdnZXJ7QGV4dGVuZCAuYWJzb2x1dGUtY2VudGVyO3dpZHRoOjEwMCU7aGVpZ2h0OiAxcHg7fVxyXG4ubGluay11a21le1xyXG4gICAgcGFkZGluZy10b3A6IDMwcHg7Ym9yZGVyLXRvcDoxcHggc29saWQgI2VlZTtcclxuICAgIGF7ZGlzcGxheTogaW5saW5lLWJsb2NrO2hlaWdodDogMzVweDtsaW5lLWhlaWdodDogMzVweDtiYWNrZ3JvdW5kOiAkYmx1ZTtjb2xvcjojRkZGO2ZvbnQtc2l6ZTogMTRweDt0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO2ZvbnQtd2VpZ2h0OiBib2xkO3BhZGRpbmc6MCAyMHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgJjpob3ZlcntiYWNrZ3JvdW5kOiRibHVlLTI7fVxyXG4gICAgfVxyXG59XHJcbi8qIGhlYWRlclxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuaGVhZGVye1xyXG4gICAgaGVpZ2h0Ojk1cHg7XHJcbiAgICAud3JhcHBlcntcclxuICAgICAgICB3aWR0aDoxNTAwcHg7XHJcbiAgICB9XHJcbiAgICAubG9nb3tmbG9hdDpsZWZ0O21hcmdpbjoyMHB4IDAgMCAwfVxyXG4gICAgLnNlYXJjaHtcclxuICAgICAgICBmbG9hdDpsZWZ0O21hcmdpbjozM3B4IDAgMCA2NXB4O3Bvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgID4gYXtcclxuICAgICAgICAgICAgd2lkdGg6MjNweDtoZWlnaHQ6IDIzcHg7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL3NlYXJjaC1pY28ucG5nKSBuby1yZXBlYXQgY2VudGVyO2Rpc3BsYXk6IGlubGluZS1ibG9jazt0ZXh0LWluZGVudDogLTk5OTk5cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWFyY2gtZHJvcHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtwb3NpdGlvbjogYWJzb2x1dGU7dG9wOjQ1cHg7bGVmdDotMTVweDt3aWR0aDogMjQwcHg7YmFja2dyb3VuZDogI0NDQztwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDokYmx1ZTtAaW5jbHVkZSBib3JkZXJSYWRpdXMoN3B4KTtcclxuICAgICAgICAgICAgei1pbmRleDo5O0BpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDE1cHggLTRweCAjNjY2KTtcclxuICAgICAgICAgICAgaW5wdXR7d2lkdGg6MTAwJTtib3JkZXI6bm9uZTtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtmb250LXNpemU6MTRweDtiYWNrZ3JvdW5kOiNGRkYgdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9zZWFyY2gtaWNvLTIucG5nKSBuby1yZXBlYXQgOTQlIGNlbnRlcjt9XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0xMHB4O2JvcmRlci1ib3R0b206MTBweCBzb2xpZCAkYmx1ZTtib3JkZXItbGVmdDoxMHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDoxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICBcclxuICAgIH1cclxuICAgIC5uYXYtMXsgICAgICAgIFxyXG4gICAgICAgIGZsb2F0OiBsZWZ0O21hcmdpbjozMHB4IDAgMCAxMzBweDtcclxuICAgICAgICBhe2ZvbnQtc2l6ZTogMTZweDttYXJnaW46MCAwIDAgNTVweDtmb250LXdlaWdodDo3MDA7Y29sb3I6IzMzMztwb3NpdGlvbjpyZWxhdGl2ZTtsaW5lLWhlaWdodDogMzBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZmxvYXQ6bGVmdDtAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMTVzIGxpbmVhciBhbGwpO1xyXG4gICAgICAgICAgJi53LWljb3tcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgaW1ne21hcmdpbjowIDEwcHggLTlweCAwO31cclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6aG92ZXJ7Y29sb3I6JHllbGxvdzt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sYW5ne1xyXG4gICAgICAgICAgICBtYXJnaW46MCAwIDAgNDBweCA7XHJcbiAgICAgICAgICAgIGF7bWFyZ2luOiAwO2NvbG9yOiM5OTk7XHJcbiAgICAgICAgICAgICAgJi5hY3RpdmV7Y29sb3I6IzAwMH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFue2Zsb2F0OiBsZWZ0O2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OiAyNnB4O21hcmdpbjowIDVweDtjb2xvcjojQ0NDO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuICAgIC50b2dnbGUtbWVudXtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7dGV4dC1pbmRlbnQ6IC05OTk5OXB4O3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7YmFja2dyb3VuZDokeWVsbG93O0BpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpO3Bvc2l0aW9uOiByZWxhdGl2ZTttYXJnaW46MjBweCAwIDAgMDt6LWluZGV4OiAyO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgZWFzZS1vdXQgYWxsKTtcclxuICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDozMHB4O2hlaWdodDo0cHg7YmFja2dyb3VuZDogI0ZGRjtkaXNwbGF5OmJsb2NrO2xlZnQ6MDtyaWdodDowO21hcmdpbjphdXRvO0BpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgZWFzZS1vdXQgYWxsKTtcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7dG9wOjEycHg7fVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKXt0b3A6MjJweDt9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpe3RvcDozMnB4O3dpZHRoOjIwcHg7cmlnaHQ6MTBweDtsZWZ0OmF1dG99XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDMpe3dpZHRoOjMwcHg7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb2Fue1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDo2NXB4O1xyXG4gICAgICAgIC5sb2FuLWRyb3B7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMwMHB4O2hlaWdodDphdXRvO3RvcDo2NXB4O2JhY2tncm91bmQ6I0ZGRjt6LWluZGV4OiAyO0BpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDE1cHggLTRweCApO3Zpc2liaWxpdHk6IGhpZGRlbjtvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMHB4IDBweCAxMHB4IDEwcHgpOyBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMgbGluZWFyIGFsbCk7XHJcbiAgICAgICAgICAgIC50b3B7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMTBweDtcclxuICAgICAgICAgICAgICAgIHB7Zm9udC1zaXplOiAxNHB4O2xpbmUtaGVpZ2h0OiAyMHB4fVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubG9naW57XHJcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPXRleHRdLFxyXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1wYXNzd29yZF17d2lkdGg6IDEwMCU7aGVpZ2h0OjQwcHg7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7Zm9udC1zaXplOjE2cHg7bWFyZ2luLWJvdHRvbToxNXB4O31cclxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9c3VibWl0XXtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NDBweDt3aWR0aDogMTAwJTtib3JkZXI6bm9uZTtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTtmb250LXNpemU6MTRweDtjb2xvcjojRkZGO2JhY2tncm91bmQ6IzAwNzZhMztjdXJzb3I6cG9pbnRlclxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYXtmb250LXNpemU6IDEycHg7dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7ZmxvYXQ6IHJpZ2h0O2Rpc3BsYXk6IGlubGluZS1ibG9jazttYXJnaW4tYm90dG9tOiAwcHg7fVxyXG4gICAgICAgICAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJvdHRvbXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZTFlMWUxO2JhY2tncm91bmQ6I2YwZjJmNDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoMHB4IDBweCAxMHB4IDEwcHgpOyBcclxuICAgICAgICAgICAgICAgIGF7ZmxvYXQ6bm9uZTtkaXNwbGF5OiBibG9jazttYXJnaW46MCAwIDE1cHggMDtjb2xvcjojNTU1O1xyXG4gICAgICAgICAgICAgICAgICBpbWd7ZmxvYXQ6bGVmdDttYXJnaW46MCAxMHB4IDAgMDt9XHJcbiAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojMTExO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjt3aWR0aDoxMDAlO2hlaWdodDoxNnB4O2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLXRvcC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7QGV4dGVuZCAuYWJzb2x1dGUtY2VudGVyO2JvdHRvbTphdXRvO3RvcDotMTVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIC5sb2FuLWRyb3B7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7dmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbi5tYWluLW5hdntcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6IDEyO3dpZHRoOjM0MHB4O2JhY2tncm91bmQ6IzA5NTI4NTttaW4taGVpZ2h0OjEwMCU7cmlnaHQ6MDtwYWRkaW5nOjE1MHB4IDYwcHg7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO2Rpc3BsYXk6bm9uZTtcclxuICAgIGEuY2xvc2V7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4O3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7YmFja2dyb3VuZDokeWVsbG93O0BpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpO3Bvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MjBweDtsZWZ0OjMwcHg7XHJcbiAgICAgICAgJjphZnRlcntjb250ZW50OlwiXCI7d2lkdGg6IDI0cHg7aGVpZ2h0OjI0cHg7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9jbG9zZS5wbmcpIGNlbnRlciBuby1yZXBlYXQ7cG9zaXRpb246IGFic29sdXRlO2xlZnQ6MDt0b3A6MDtyaWdodDowO2JvdHRvbTowO21hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgZWFzZS1vdXQgYWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlcntcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg5MGRlZykpO31cclxuICAgICAgICB9XHJcbiAgICB9IFxyXG4gICAgYXtcclxuICAgICAgICBmb250LXNpemU6MThweDtjb2xvcjojY2ZlMmYwO2Rpc3BsYXk6IGJsb2NrO3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7bWFyZ2luOjAgMCAzMHB4IDA7bGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6JHllbGxvdztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBocntib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjMTE2OGE1O21hcmdpbjo2MHB4IDA7fVxyXG4gICAgLmxhbmd7XHJcbiAgICAgICAgY29sb3I6I0ZGRjtmb250LXNpemU6MThweDtcclxuICAgICAgICBhe2Rpc3BsYXk6IGlubGluZS1ibG9jaztmb250LXNpemU6MThweDtjb2xvcjojRkZGO31cclxuICAgIH1cclxufVxyXG4vKiBtaWRkbGVcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5iYW5uZXJ7XHJcbiAgICAuc2xpZGV7cGFkZGluZzowIDI1cHg7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgLmltZ3tAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtvdmVyZmxvdzpoaWRkZW47fVxyXG4gICAgfVxyXG4gICAgLmNhcHRpb24tMXtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7d2lkdGg6MTAxMHB4O2xlZnQ6MTAwcHg7Ym90dG9tOjU1cHg7ei1pbmRleDoxO3RleHQtc2hhZG93OjBweCAwcHggMnB4ICMwMDA7XHJcbiAgICAgICAgaDF7Zm9udC1zaXplOjQwcHg7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNGRkY7bGluZS1oZWlnaHQ6IDUwcHg7bWFyZ2luOjAgMCAyMHB4IDA7fVxyXG4gICAgICAgIGF7Y29sb3I6JHllbGxvdztmb250LXNpemU6MjBweDt0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtwYWRkaW5nOjAgMCAwIDM4cHg7bGluZS1oZWlnaHQ6IDI2cHg7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAmOmFmdGVye2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjogYWJzb2x1dGU7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtiYWNrZ3JvdW5kOiR5ZWxsb3cgdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItcmlnaHQucG5nKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7dG9wOjA7bGVmdDowO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpob3Zlcntjb2xvcjokYmx1ZTtcclxuICAgICAgICAgICAgICAgICAgJjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTt9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhcHRpb24tMntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7d2lkdGg6IDM1MHB4O2hlaWdodDphdXRvO2JhY2tncm91bmQ6IHJnYmEoNCw1OSw5OCwwLjkpO0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtwYWRkaW5nOjU1cHggNTBweDt6LWluZGV4OiAyO1xyXG4gICAgICAgIGJvdHRvbTowO3JpZ2h0OjYwcHg7Y29sb3I6I0ZGRjtcclxuICAgICAgICBoNXtmb250LXNpemU6IDI0cHg7Zm9udC13ZWlnaHQ6NzAwO3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7bWFyZ2luOjAgMCAyMHB4OyB9XHJcbiAgICAgICAgcHtmb250LXNpemU6IDE2cHg7bGluZS1oZWlnaHQ6IDIwcHg7bWFyZ2luOjE1cHggMDt9XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2NvbG9yOiR5ZWxsb3c7cGFkZGluZzowIDAgMCAzNXB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9saW5rLWljby5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO2hlaWdodDoyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1hcnJvd3tcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nOjA7d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7YmFja2dyb3VuZDogI0ZGRjttYXJnaW46YXV0bzt0b3A6MDtib3R0b206MDtib3JkZXI6bm9uZTt0ZXh0LWluZGVudDogLTk5OTlweDt6LWluZGV4OjI7Y3Vyc29yOnBvaW50ZXI7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgICY6YWZ0ZXJ7Y29udGVudDpcIlwiO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE2cHg7aGVpZ2h0OjI1cHg7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItc2xpZGVyLnBuZykgbm8tcmVwZWF0O2xlZnQ6MDt0b3A6MDtyaWdodDowO2JvdHRvbTowO21hcmdpbjphdXRvO31cclxuICAgICAgICAmLnNsaWNrLW5leHR7XHJcbiAgICAgICAgICAgIHJpZ2h0OjIwcHg7XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO3JpZ2h0Oi00cHh9ICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stcHJldntcclxuICAgICAgICAgICAgbGVmdDoyMHB4O1xyXG4gICAgICAgICAgICAmOmFmdGVye2JhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO2xlZnQ6LTRweDt9ICAgICAgICAgXHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAmLmJhbm5lci1zdGR7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO21hcmdpbjowIDAgMCAwO21heC13aWR0aDogMTYwMHB4O21hcmdpbjphdXRvO3BhZGRpbmc6MDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGltZ3ttYXgtd2lkdGg6IDk1JTtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTt9XHJcbiAgICB9XHJcbiAgICAmLm1hcHN7XHJcbiAgICAgICAgPiBkaXZ7bWF4LXdpZHRoOiA5NSU7bWFyZ2luOmF1dG87aGVpZ2h0OiA2MDBweDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTt9XHJcbiAgICB9XHJcbn1cclxuLmhvbWV7XHJcbiAgICBwYWRkaW5nOjYwcHggMDtcclxuICAgIC53cmFwcGVye3dpZHRoOjE0MDBweDt9XHJcblxyXG4gICAgLmgtdG9we1xyXG4gICAgICAgIG1hcmdpbjo2MHB4IDA7IFxyXG4gICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgIGZsb2F0OmxlZnQ7d2lkdGg6MzU1cHg7bWFyZ2luOjAgMTQwcHggMCAwO1xyXG4gICAgICAgICAgICAuaW1ne1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTYwcHg7ZmxvYXQ6bGVmdDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTtvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgaW1ne3dpZHRoOjEwMCU7ZGlzcGxheTogYmxvY2s7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7d2lkdGg6MTcwcHg7XHJcbiAgICAgICAgICAgICAgICBoNXtmb250LXNpemU6MThweDtjb2xvcjojMzMzO21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgICAgICAgICAgICAgc21hbGx7Y29sb3I6Izk5OTtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOjE0cHg7fVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24pe21hcmdpbi1yaWdodDogMDt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fVxyXG4gICAgfVxyXG4gICAgLmt1cnN7XHJcbiAgICAgICAgaGVpZ2h0OjEwMHB4O0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtwYWRkaW5nOjAgNDVweDtiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYmcta3Vycy5wbmcpIG5vLXJlcGVhdCBsZWZ0O3Bvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtjb2xvcjojRkZGO21hcmdpbjowIDAgNTBweCAwIDtcclxuICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O21hcmdpbjozMHB4IDAgMCAwO1xyXG4gICAgICAgICAgICBoNXtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3MDA7Y29sb3I6I0ZGRjttYXJnaW46MCAwIDVweCAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XHJcbiAgICAgICAgICAgIHNtYWxse2NvbG9yOiM5OTk7Zm9udC1zaXplOjE0cHg7fVxyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDo3MHB4O3dpZHRoOjFweDtiYWNrZ3JvdW5kOiAjMGM1YjkzO2xlZnQ6NDQ1cHg7dG9wOjA7Ym90dG9tOjA7bWFyZ2luOmF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJpZ2h0OmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO30gICBcclxuXHJcbiAgICAgICAgLmJveHtcclxuICAgICAgICAgICAgZmxvYXQ6bGVmdDttYXJnaW46MjdweCAwIDAgNzBweDtcclxuICAgICAgICAgICAgaDZ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtjb2xvcjojRkZGO21hcmdpbjowIDAgNXB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTVweDtoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAmLmdyZWVue2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLWt1cnMtMy5wbmcpIG5vLXJlcGVhdDt9XHJcbiAgICAgICAgICAgICAgICAmLnllbGxvd3tiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1rdXJzLTEucG5nKSBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgJi5yZWR7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnIta3Vycy0yLnBuZykgbm8tcmVwZWF0O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoNXtwb3NpdGlvbjogcmVsYXRpdmU7Zm9udC13ZWlnaHQ6IDcwMDtjb2xvcjojRkZGO3BhZGRpbmc6MCAwIDAgMjhweDtmb250LXNpemU6IDE4cHg7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuXHJcbiAgICB9XHJcbiAgICAuaC1ib3R0b217XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC5qYXNhe1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDt3aWR0aDoxMDQwcHg7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgIC5zbGlkZXtwb3NpdGlvbjogcmVsYXRpdmU7fVxyXG4gICAgICAgICAgICAuY2FwdGlvbntcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO2xlZnQ6NjBweDtyaWdodDo2MHB4O2JvdHRvbToxMDVweDtcclxuICAgICAgICAgICAgICAgIGg2e2ZvbnQtc2l6ZTogMjRweDtmb250LXdlaWdodDo3MDA7Y29sb3I6I0ZGRjttYXJnaW46MCAwIDIwcHggMDt9XHJcbiAgICAgICAgICAgICAgICBwe2ZvbnQtc2l6ZTogMjRweDtsaW5lLWhlaWdodDogMzBweDtmb250LXdlaWdodDogMzAwO2NvbG9yOiNGRkY7XHJcbiAgICAgICAgICAgICAgICAgIGF7Y29sb3I6IzRlYWZmMztmb250LXNpemU6IDE2cHg7Zm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye2NvbG9yOiR5ZWxsb3c7fVxyXG4gICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5uYXYtc2xpZGV7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7cGFkZGluZzoyNXB4IDYwcHggMDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7Y29udGVudDpcIlwiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOiAxMDAlO2hlaWdodDoxcHg7YmFja2dyb3VuZDojRkZGO29wYWNpdHk6MC4xO2xlZnQ6MDt9XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAzMHB4O2xpbmUtaGVpZ2h0OiAzMHB4O2ZvbnQtc2l6ZTogMjBweDtmb250LXdlaWdodDo3MDA7Y29sb3I6I0ZGRjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NjBweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGltZ3ttYXJnaW46MCAxMHB4IC03cHggMDsgICAgZmxvYXQ6IGxlZnQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo0cHggc29saWQgI2ZmYTYwMDtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OiAwO21hcmdpbjphdXRvO3dpZHRoOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMTVzIGVhc2Utb3V0IGFsbClcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7d2lkdGg6MTAwJTt9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnNsaWNrLWFycm93e1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjE0cHg7aGVpZ2h0OjI2cHg7cGFkZGluZzowO2JvcmRlcjpub25lO3RleHQtaW5kZW50Oi05OTk5OXB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItc2xpZGVyLTIucG5nKSBuby1yZXBlYXQgO1xyXG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmFic29sdXRlLWNlbnRlcjt0b3A6LTI1cHg7Y3Vyc29yOnBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5zbGljay1uZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207bGVmdDphdXRvOyByaWdodDotMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207fSAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLnNsaWNrLXByZXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHRvcDtsZWZ0Oi0yMHB4O3JpZ2h0OmF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO30gICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmgtYWJvdXR7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDt3aWR0aDozNDJweDtoZWlnaHQ6IDQ5MHB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9jb250ZW50L2JnLWhhYm91dC5qcGcpIG5vLXJlcGVhdCBjZW50ZXI7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjM1NXB4IDQ1cHggMCA7bWFyZ2luOi0yMXB4IDAgMCAwO1xyXG4gICAgICAgICAgICBoNntmb250LXNpemU6IDI0cHg7Y29sb3I6IzExMTttYXJnaW46MCAwIDE1cHg7Zm9udC13ZWlnaHQ6NjAwO31cclxuICAgICAgICAgICAgcHtmb250LXNpemU6IDE2cHg7bGluZS1oZWlnaHQ6IDIwcHg7Y29sb3I6IzU1NTt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpbmstYm90dG9te1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWU7cGFkZGluZzo1MHB4IDA7bWFyZ2luOjcwcHggMCAtNjBweCAwIDtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDt3aWR0aDoyMyU7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjAgMSU7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICBzcGFue2Rpc3BsYXk6IGJsb2NrO2hlaWdodDo4MHB4O21hcmdpbi1ib3R0b206MTBweDtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXI6MXB4IHNvbGlkICNDQ0M7XHJcbiAgICAgICAgICAgICAgICAgaW1ne0BleHRlbmQgLmFic29sdXRlLWNlbnRlcjttYXgtd2lkdGg6ODAlO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoNntmb250LXNpemU6MTZweDtjb2xvcjojNjY2O2ZvbnQtd2VpZ2h0OmJvbGQ7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRlbnQtc3Rke1xyXG4gICAgcGFkZGluZzowIDAgMTAwcHggMDtcclxuICAgIC53cmFwcGVye1xyXG4gICAgICAgIHdpZHRoOjEwOTBweDttYXJnaW46YXV0bztcclxuICAgIH1cclxuICAgIGg0e2ZvbnQtc2l6ZTozMHB4O2NvbG9yOiMxZDRlNzE7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbjowIDAgNDBweDt9XHJcbiAgICB1bCBsaXtcclxuICAgICAgICBmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDogMjJweDttYXJnaW46OHB4O3Bvc2l0aW9uOiByZWxhdGl2ZTtwYWRkaW5nOjAgMCAwIDI0cHg7XHJcbiAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjt3aWR0aDoxMXB4O2hlaWdodDogMnB4O2JhY2tncm91bmQ6JHllbGxvdztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjEwcHg7fVxyXG4gICAgfVxyXG4gICAgdWwsb2x7bWFyZ2luLWJvdHRvbTogMzBweDt9XHJcbiAgICBvbCB7XHJcbiAgICAgICAgbWFyZ2luOjAgLTE1cHggMCAzMHB4O1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xyXG4gICAgICAgICAgICB1bCBsaXtsaXN0LXN0eWxlOiBub25lO30gIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG9sLFxyXG4gICAgcHtmb250LXNpemU6IDE2cHg7bGluZS1oZWlnaHQ6IDI0cHg7Y29sb3I6IzMzMzttYXJnaW4tYm90dG9tOiAzMHB4fSAgICBcclxuICAgIHAuc3Vie2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjMwcHg7XHJcbiAgICAgICAgICAmLmJsdWV7Y29sb3I6JGJsdWUtMn1cclxuICAgIH1cclxuICAgIGg2e2ZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDo3MDA7dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTttYXJnaW4tYm90dG9tOiAxMHB4O31cclxuICAgIC5pbWFnZS1zdGR7dGV4dC1hbGlnbjogY2VudGVyO21hcmdpbjo0MHB4IDA7XHJcbiAgICAgICAgICAgICAgIGltZ3ttaW4td2lkdGg6IDEwMCU7fVxyXG4gICAgfVxyXG4gICAgLmRvd25sb2FkLWJ1dHRvbntcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Ym9yZGVyOjFweCBzb2xpZCAjOTk5O2hlaWdodDogNDBweDtsaW5lLWhlaWdodDo0MHB4O3BhZGRpbmc6MCAyMHB4IDAgNTBweDtmb250LXNpemU6MTZweDtmb250LXdlaWdodDo3MDA7Y29sb3I6JGJsdWU7bWFyZ2luOjgwcHggMCAwIDA7ICAgICAgICBcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1kb3dubG9hZC5wbmcpIG5vLXJlcGVhdCAxNXB4IGNlbnRlcjtcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUtY29udGVudHtcclxuICAgICAgICB3aWR0aDoxMTcwcHg7bWFyZ2luOi03MHB4IGF1dG8gNjBweDtiYWNrZ3JvdW5kOiByZ2JhKDQsNTksOTgsMC44OSk7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7cGFkZGluZzowIDM1cHggMzVweDtAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgJi53aXRob3V0LXN1YiAuYnJlYWRjcnVtYnttYXJnaW4tYm90dG9tOi0xMHB4O31cclxuICAgICAgICBoMXtcclxuICAgICAgICAgICAgaGVpZ2h0OjcwcHg7bGluZS1oZWlnaHQ6IDcwcHg7Zm9udC1zaXplOjIycHg7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNGRkY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEudG9nZ2xlLXN1YntcclxuICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7d2lkdGg6MTM1cHg7cGFkZGluZzowIDI1cHggMCAzNXB4O2hlaWdodDogNzBweDtsaW5lLWhlaWdodDogNzBweDtmb250LXNpemU6MTRweDtjb2xvcjojRkZGO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1kcm9wLnBuZykgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7bGVmdDowO3RvcDowO2JvdHRvbToycHg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICMwYTMwNDM7Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzEzNTY3OTtwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJyZWFkY3J1bWJ7XHJcbiAgICAgICAgICAgIG1hcmdpbjoyMHB4IDAgNDBweDtmb250LXNpemU6MTZweDtjb2xvcjojNDc3ZWE0O1xyXG4gICAgICAgICAgICBhe2Zsb2F0OiBsZWZ0O2NvbG9yOiM0NzdlYTQ7XHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgd2lkdGg6MTdweDtoZWlnaHQ6IDE3cHg7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9ob21lLWljby5wbmcpIG5vLXJlcGVhdDttYXJnaW46LTJweCAwIDAgMDt0ZXh0LWluZGVudDogLTk5OTk5OXB4O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7Y29sb3I6I0ZGRjt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbntmbG9hdDpsZWZ0O3BhZGRpbmc6MCA4cHg7fVxyXG4gICAgICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdWItdGl0bGV7XHJcbiAgICAgICAgICAgIGg2e2ZvbnQtc2l6ZTogMThweDtmb250LXdlaWdodDogNzAwO2NvbG9yOiR5ZWxsb3c7bWFyZ2luOjAgMCAxNXB4IDA7fVxyXG4gICAgICAgICAgICBwe2ZvbnQtc2l6ZTogMThweDtjb2xvcjogI0ZGRjtsaW5lLWhlaWdodDogMjRweDtmb250LXdlaWdodDozMDA7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3VibWVudXtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO3RvcDo2OHB4O2xlZnQ6MDtyaWdodDogMDtiYWNrZ3JvdW5kOiRibHVlLTI7cGFkZGluZzo0MHB4IDU1cHg7ZGlzcGxheTpub25lO3otaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDt3aWR0aDozMSU7bWFyZ2luOjAgMy41JSA2NXB4IDA7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiNGRkY7Zm9udC1zaXplOjE2cHg7bWFyZ2luOjAgMCAxNXB4IDUwcHg7ZGlzcGxheTogYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiR5ZWxsb3c7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiBhOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjowIDAgMjBweCAwO2ZvbnQtc2l6ZTogMThweDtwYWRkaW5nOjAgMCAwIDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDonJztmbG9hdDpsZWZ0O3dpZHRoOiAzMHB4O2hlaWdodDogMnB4O2JhY2tncm91bmQ6ICR5ZWxsb3c7bWFyZ2luOjhweCAxMHB4IDAgMDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7fVxyXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXJ7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbil7bWFyZ2luLXJpZ2h0OiAwfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7Ym9yZGVyLXRvcDoxcHggc29saWQgIzFlNGY3Mjt3aWR0aDozMjIuNSU7bGVmdDowO3Bvc2l0aW9uOiBhYnNvbHV0ZTt0b3A6LTQwcHhcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmNoaWxke21hcmdpbjotNXB4IDBweCAxNXB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgYXtmb250LXNpemU6IDE0cHg7bWFyZ2luLWJvdHRvbTogNXB4fVxyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud3JhcC10YWJ7XHJcbiAgICAgICAgLm5hdi10YWJ7XHJcbiAgICAgICAgICAgIG1hcmdpbjowIDAgODBweCAwO3RleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazttYXJnaW46MCA0NC41cHg7cG9zaXRpb246IHJlbGF0aXZlO2ZvbnQtc2l6ZTogMjBweDtjb2xvcjojNzk4MTg5O2ZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjogYWJzb2x1dGU7aGVpZ2h0OiA1MHB4O2JvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7d2lkdGg6IDA7cmlnaHQ6IC00NnB4O3RvcDotMTBweDt9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtjb250ZW50OiBcIlwiO2hlaWdodDogM3B4OyBiYWNrZ3JvdW5kOiAkeWVsbG93O3dpZHRoOjA7cG9zaXRpb246IGFic29sdXRlO2JvdHRvbTotMTBweDtsZWZ0OjA7cmlnaHQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjphdXRvO0BpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgbGluZWFyIGFsbCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMzMzM7XHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjojMzMzO1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle3dpZHRoOjEwMCU7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVye2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudC10YWJ7ZGlzcGxheTogbm9uZTtwYWRkaW5nOiAxcHggMDt9XHJcbiAgICAgICAgJi5mYWxzZXtcclxuICAgICAgICAgICAgLmNvbnRlbnQtdGFie2Rpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5maWx0ZXJ7XHJcbiAgICAgICAgbWFyZ2luOjBweCBhdXRvIDYwcHg7IFxyXG4gICAgICAgIC5yaWdodHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGg0e21hcmdpbjowfVxyXG4gICAgICAgIGlucHV0W3R5cGU9dGV4dF0sXHJcbiAgICAgICAgc2VsZWN0e1xyXG4gICAgICAgICAgICB3aWR0aDogMjUwcHg7aGVpZ2h0OiA0MHB4O2JvcmRlcjoxcHggc29saWQgI0Q4RDhEODtwYWRkaW5nOjAgNDVweCAwIDIwcHggO2ZvbnQtc2l6ZTogMTZweDtjb2xvcjojNjY2O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1kcm9wZG93bi5wbmcpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDApO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxlZnR7XHJcbiAgICAgICAgICAgIHNlbGVjdHttYXJnaW4tcmlnaHQ6IDIwcHh9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0W3R5cGU9dGV4dF0uc2VhcmNoe1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL3NlYXJjaC1pY28tMi5wbmcpIG5vLXJlcGVhdCA5NSUgY2VudGVyO3dpZHRoOjMyMHB4IDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fSAgICAgICAgXHJcbiAgICB9XHJcbiAgICAucGFnaW5ne1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTt0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcHtmb250LXNpemU6IDE2cHg7Y29sb3I6Izk5OTtcclxuICAgICAgICAgIGJ7Zm9udC1zaXplOiAyNHB4O2ZvbnQtd2VpZ2h0OiA3MDA7Y29sb3I6JGJsdWUtMjtwYWRkaW5nOjAgMTVweDt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcnJvd3tcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO2hlaWdodDogMThweDtmb250LXNpemU6IDE2cHg7Y29sb3I6Izk5OTtsaW5lLWhlaWdodDogMThweDtmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAmOmFmdGVye2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDogMjNweDtoZWlnaHQ6IDE4cHg7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnJvdy1wYWdpbmcucG5nKSBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAmOmhvdmVye2NvbG9yOiAkYmx1ZS0yfVxyXG4gICAgICAgICAgICAmLm5leHR7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O3JpZ2h0OiAwO3RvcDowO1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcntyaWdodDowO3RvcDogMDtiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gbGVmdDt9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyOmFmdGVye2JhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5wcmV2e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O2xlZnQ6IDA7dG9wOjA7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye2xlZnQ6MDt0b3A6IDA7YmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7fVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yaXdheWF0e1xyXG4gICAgICAgIGg0e21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgIC5zbGlkZXIteWVhcntcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6NzhweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAwIDYwcHggMDtcclxuICAgICAgICAgICAgJjphZnRlcntjb250ZW50OlwiXCI7cG9zaXRpb246IGFic29sdXRlO3dpZHRoOjQzcHg7aGVpZ2h0OiA1OHB4O2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvcGluLWljby5wbmcpIG5vLXJlcGVhdDtAZXh0ZW5kIC5hYnNvbHV0ZS1jZW50ZXI7Ym90dG9tOiBhdXRvO31cclxuICAgICAgICAgICAgLnNsaWRle1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO3dpZHRoOjI0MHB4O3BhZGRpbmc6MjVweCAwIDAgMDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MzBweDtmb250LXdlaWdodDo3MDA7Y29sb3I6JGJsdWUtMjtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6IDFweDtiYWNrZ3JvdW5kOiNkN2Q3ZDc7bGVmdDowO3JpZ2h0OiAwO3RvcDozLjVweDt9XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye2NvbnRlbnQ6XCJcIjt3aWR0aDo5cHg7aGVpZ2h0OjlweDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7QGV4dGVuZCAuYWJzb2x1dGUtY2VudGVyO2JvdHRvbTphdXRvO2JhY2tncm91bmQ6Izk5OTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNsaWNrLWFycm93e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTRweDtoZWlnaHQ6MjZweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7dGV4dC1pbmRlbnQ6LTk5OTk5cHg7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1zbGlkZXItMi5wbmcpIG5vLXJlcGVhdCA7XHJcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5hYnNvbHV0ZS1jZW50ZXI7dG9wOjMycHg7Y3Vyc29yOnBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLW5leHR7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207bGVmdDphdXRvOyByaWdodDotNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTt9ICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLXByZXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7bGVmdDotNDBweDtyaWdodDphdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wO30gICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyLWNvbDJ7XHJcbiAgICAgICAgd2lkdGg6MTA4M3B4O21hcmdpbjogODBweCBhdXRvIDA7XHJcbiAgICAgICAgLnNsaWRle1xyXG4gICAgICAgICAgICB3aWR0aDo1MjdweDttYXJnaW46MCAxNHB4O1xyXG4gICAgICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ViZWJlYjtib3JkZXItdG9wOjRweCBzb2xpZCAkeWVsbG93O3BhZGRpbmc6NDBweCAzNXB4O1xyXG4gICAgICAgICAgICAgICAgaDV7Zm9udC1zaXplOiAyMHB4O2NvbG9yOiR5ZWxsb3c7bWFyZ2luOjAgMCAxNXB4IDA7fSBcclxuICAgICAgICAgICAgICAgIHB7Zm9udC1zaXplOiAxNnB4O2xpbmUtaGVpZ2h0OiAyMnB4O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgICAgICBcclxuICAgICAgICAuc2xpY2stYXJyb3d7XHJcbiAgICAgICAgICAgIHdpZHRoOjIycHg7aGVpZ2h0OjQ0cHg7cGFkZGluZzowO2JvcmRlcjpub25lO3RleHQtaW5kZW50Oi05OTk5OXB4O2JhY2tncm91bmQ6I2FjYWNhYztAZXh0ZW5kIC5hYnNvbHV0ZS1jZW50ZXI7XHJcbiAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO0BpbmNsdWRlIGJvcmRlclJhZGl1cyg0NHB4IDAgMHB4IDQ0cHgpO1xyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO3dpZHRoOjEwcHg7aGVpZ2h0OiAxOHB4O2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLXNsaWRlci0zLnBuZykgbm8tcmVwZWF0O0BleHRlbmQgLmFic29sdXRlLWNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVye2JhY2tncm91bmQ6ICRibHVlO31cclxuICAgICAgICAgICAgJi5zbGljay1uZXh0e1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgNDRweCA0NHB4IDApO2xlZnQ6YXV0bztyaWdodDotMjFweDtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO2xlZnQ6LTNweH0gICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnNsaWNrLXByZXZ7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNDRweCAwIDBweCA0NHB4KTtsZWZ0Oi0yMnB4O3JpZ2h0OmF1dG87XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye2JhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO3JpZ2h0Oi0zcHh9ICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1ZGF5YS1sZW1iYWdhe1xyXG4gICAgICAgIC5saXN0e1xyXG4gICAgICAgICAgICBtYXJnaW46MCBhdXRvIDYwcHggO21heC13aWR0aDogMTA1MHB4O1xyXG4gICAgICAgICAgICAubGVmdHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6dGFibGU7d2lkdGg6MjUwcHg7dmVydGljYWwtYWxpZ246IG1pZGRsZTtoZWlnaHQ6IDU0cHg7cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO2Zsb2F0OiBsZWZ0O3dpZHRoOiA1NHB4O2hlaWdodDogNTRweDtiYWNrZ3JvdW5kOiMyMDUxNzM7Y29sb3I6IzgwYmJlNTt0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7Zm9udC1zaXplOiAzMHB4O3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtsZWZ0OjEwcHg7dG9wOjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7Zm9udC1zaXplOiAxOHB4O2NvbG9yOiMyNzg4YWY7bGluZS1oZWlnaHQ6IDI0cHg7cGFkZGluZzogMCAwIDAgODBweDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO2ZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDc4MHB4O0BleHRlbmQgcDttYXJnaW46MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYm94LWRke1xyXG4gICAgICAgIG1hcmdpbjowIGF1dG8gNDBweCA7bWF4LXdpZHRoOiA5NzBweDtcclxuICAgICAgICBoNntmb250LXNpemU6IDMwcHg7Zm9udC13ZWlnaHQ6IDcwMDttYXJnaW46MCAwIDIwcHggMDtjb2xvcjokYmx1ZS0yO31cclxuICAgICAgICAuaGVhZHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VhZWFlYTtjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIC5pbWd7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO2Zsb2F0OiBsZWZ0O3dpZHRoOjMwMHB4O2hlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7ZmxvYXQ6IGxlZnQ7d2lkdGg6IDQ1MHB4O21hcmdpbjoxMDBweCAwIDAgNDBweDtcclxuICAgICAgICAgICAgICAgICAgcHtmb250LXNpemU6IDI0cHg7bGluZS1oZWlnaHQ6IDMzcHh9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgLmNvbnRlbnQtYWNje3BhZGRpbmc6IDMwcHg7ZGlzcGxheTogbm9uZTt9XHJcbiAgICB9XHJcbiAgICAuYm94LWRhZHsgICAgICAgIFxyXG4gICAgICAgIHdpZHRoOjY3MHB4O3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjowIDAgMTIwcHggMDtcclxuICAgICAgICAudGV4dHtcclxuICAgICAgICAgICAgd2lkdGg6NTcwcHg7cGFkZGluZzo2MHB4IDQwcHg7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO0BpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDIwcHggLTVweCAjNjY2KTtwb3NpdGlvbjogYWJzb2x1dGU7cmlnaHQ6LTMwMHB4O1xyXG4gICAgICAgICAgICBib3R0b206LTU1cHg7YmFja2dyb3VuZDojRkZGO1xyXG4gICAgICAgICAgICAuaWNve2Zsb2F0OiBsZWZ0O3dpZHRoOjk1cHg7bWFyZ2luOjAgMzVweCAwIDA7fVxyXG4gICAgICAgICAgICAucmlnaHR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMwcHg7XHJcbiAgICAgICAgICAgICAgICBzbWFsbHtmb250LXNpemU6IDE2cHg7Y29sb3I6Izk5OTttYXJnaW46MCAwIDIwcHggMDtkaXNwbGF5OiBibG9jazt9ICAgXHJcbiAgICAgICAgICAgICAgICBoNntmb250LXNpemU6IDI2cHg7bWFyZ2luOjAgMCA1MHB4IDA7bGluZS1oZWlnaHQ6IDMycHg7Y29sb3I6JGJsdWUtMjt0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtmb250LXdlaWdodDogNDAwO31cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiM0ZWFmZjM7IGZvbnQtc2l6ZTogMTZweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTlweDsgaGVpZ2h0OiAxOXB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OjA7IGJvdHRvbTogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1kb3dubG9hZC5wbmcnKSBuby1yZXBlYXQgMCAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fVxyXG4gICAgfVxyXG4gICAgLmxpc3QtZm90b3tcclxuICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDt3aWR0aDogMzQzcHg7bWFyZ2luOjAgMzBweCA1MHB4IDA7XHJcbiAgICAgICAgICAgIC5pbWd7d2lkdGg6IDM0M3B4O2hlaWdodDogYXV0bztwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgc3Bhbnt3aWR0aDogNTFweDtoZWlnaHQ6IDM3cHg7QGV4dGVuZCAuYWJzb2x1dGUtY2VudGVyO2JhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwveXQtcGxheS5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgc21hbGx7Zm9udC1zaXplOiAxNnB4O2NvbG9yOiM5OTk7ZGlzcGxheTogYmxvY2s7bWFyZ2luOjAgMCAxMHB4IDA7fVxyXG4gICAgICAgICAgICAgICAgc3Bhbntjb2xvcjokeWVsbG93O31cclxuICAgICAgICAgICAgICAgIGg2e2ZvbnQtc2l6ZTogMjJweDtsaW5lLWhlaWdodDogMjhweDtjb2xvcjokYmx1ZTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24pe21hcmdpbi1yaWdodDogMH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMSl7Y2xlYXI6IGJvdGh9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMXB4IDFweCAyNXB4IC0xMHB4ICMwMDApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuICAgIH1cclxuICAgIC5saXN0LWZvdG9kZXR7XHJcbiAgICAgICAgLmJveHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7bWFyZ2luOjAgMjBweCAyMHB4IDA7d2lkdGg6IDI1N3B4O1xyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bil7bWFyZ2luLXJpZ2h0OiAwfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVye0BleHRlbmQgLmFmdGVyX2NsZWFyO30gICAgICAgIFxyXG5cclxuICAgIH1cclxuICAgIGhye2JvcmRlcjogbm9uZTtib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNzttYXJnaW46ODBweCAwO31cclxuICAgIC5oZWFkLW9mZmljZXtcclxuXHJcbiAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuICAgIH1cclxuICAgIC5ib3gtamFyaW5nYW57XHJcbiAgICAgICAgd2lkdGg6Mjg1cHg7ZmxvYXQ6bGVmdDtcclxuICAgICAgICBoNntmb250LXNpemU6MjJweDtmb250LXdlaWdodDogNzAwO2NvbG9yOiRibHVlO21hcmdpbjowIDAgMjBweCAwO31cclxuICAgICAgICBwe2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OiAyMnB4O21hcmdpbi1ib3R0b206IDIwcHg7fVxyXG4gICAgICAgIC5saXN0e1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtmb250LXNpemU6MTZweDtjb2xvcjojOTk5O21hcmdpbi1ib3R0b206MTBweDtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOiAwIDAgMCAzNHB4O1xyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7ZmxvYXQ6IGxlZnQ7d2lkdGg6MjRweDtoZWlnaHQ6IDI0cHg7bWFyZ2luOjAgMTVweCAwIDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO1xyXG4gICAgICAgICAgICAgICAgJi5waG9uZXtiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2NvbnRhY3QtaWNvLTEucG5nKSBuby1yZXBlYXQgY2VudGVyO30gXHJcbiAgICAgICAgICAgICAgICAmLmZheHtiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2NvbnRhY3QtaWNvLTIucG5nKSBuby1yZXBlYXQgY2VudGVyO30gXHJcbiAgICAgICAgICAgICAgICAmLm1haWx7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9jb250YWN0LWljby0zLnBuZykgbm8tcmVwZWF0IGNlbnRlcjt9IFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBhe1xyXG4gICAgICAgICAgICBjb2xvcjokYmx1ZTtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDozNHB4O21hcmdpbjoxMHB4IDAgMCAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBzcGFue2Rpc3BsYXk6IGJsb2NrO2Zsb2F0OiBsZWZ0O3dpZHRoOjMwcHg7aGVpZ2h0OjM0cHg7YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9sb2NhdGlvbi1pY28ucG5nKSBuby1yZXBlYXQ7bWFyZ2luOjAgMTVweCAwIDB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fVxyXG4gICAgfVxyXG4gICAgLmxpc3Qta2FudG9ye1xyXG4gICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmJveC1qYXJpbmdhbjttYXJnaW46MCAxMTdweCAxMDBweCAwO1xyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbil7bWFyZ2luLXJpZ2h0OiAwO31cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMSl7Y2xlYXI6IGJvdGh9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtamFzYS1wcm9kdWN0e1xyXG4gICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtmbG9hdDpsZWZ0O3dpZHRoOjUzMHB4O21hcmdpbjowIDMwcHggMzBweCAwO1xyXG4gICAgICAgICAgICAuaW1ne2Zsb2F0OiByaWdodDtvdmVyZmxvdzogaGlkZGVuO2hlaWdodDo0MDBweDsgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgIGltZ3toZWlnaHQ6IDQwMHB4O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGV4dHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTt3aWR0aDoyNjBweDtoZWlnaHQ6MzgwcHg7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO2JhY2tncm91bmQ6ICNmNGY0ZjQ7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7IHBhZGRpbmc6MzBweCAxMHB4IDMwcHggMzBweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTowO0BpbmNsdWRlIGJveFNoYWRvdygwIDRweCAyNXB4IC0xMnB4ICMwMDApXHJcbiAgICAgICAgICAgICAgICBoNXtmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDogMzBweDttYXJnaW46MCAwIDI1cHggMDtcclxuICAgICAgICAgICAgICAgICAgIGltZ3tmbG9hdDogbGVmdDttYXJnaW46MCAxMHB4IDAgMH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGF7Y29sb3I6IzMzMztmb250LXNpemU6MTRweDttYXJnaW46MCAwIDEwcHggMDtkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgJjpob3Zlcntjb2xvcjokeWVsbG93O31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zY3JvbGwtcGFyZW50e21heC1oZWlnaHQ6IDI3MHB4O31cclxuICAgICAgICAgICAgICAgIC5kcm9we1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtAZXh0ZW5kIC50ZXh0O2JvdHRvbTowO2xlZnQ6MDtAaW5jbHVkZSBib3hTaGFkb3cobm9uZSk7aGVpZ2h0OjEwMCU7ZGlzcGxheTpub25lOyAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBhLmJhY2t7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O2NvbG9yOiR5ZWxsb3c7bWFyZ2luOjAgMCAyMHB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7Y29udGVudDpcIlwiO2Zsb2F0OmxlZnQ7d2lkdGg6N3B4O2hlaWdodDoxMnB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9iYWNrLWljby5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjIuNXB4IDEwcHggMCAwIDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBhe21hcmdpbi1ib3R0b206IDVweDtmb250LXNpemU6MTRweDttYXJnaW46MCAwIDhweCAzMHB4O31cclxuICAgICAgICAgICAgICAgICAgICAud3JhcC1zY3JvbGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI3NnB4XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIC5pbWd7ZmxvYXQ6IGxlZnQ7fVxyXG4gICAgICAgICAgICAgICAgLnRleHR7cmlnaHQ6MDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kZXRhaWwtcHJvZHttYXJnaW4tdG9wOiAxMjBweDt9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5idG4tZG93bmxvYWQge1xyXG4gICAgICAgIGNvbG9yOiM0ZWFmZjM7IGZvbnQtc2l6ZTogMTZweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTsgXHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTlweDsgaGVpZ2h0OiAxOXB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OjA7IGJvdHRvbTogMnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1kb3dubG9hZC5wbmcnKSBuby1yZXBlYXQgMCAwOyAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuYW5udWFsLXJlcG9ydCB7IFxyXG4gICAgICAgIG1hcmdpbjo2MHB4IDA7XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OmxlZnQ7IHdpZHRoOiA1MCU7IG1hcmdpbjogMCAwIDQ1cHggMDsgcG9zaXRpb246cmVsYXRpdmU7ICAgICAgICBcclxuICAgICAgICAgICAgaDQge2ZvbnQtd2VpZ2h0OiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAzMnB4O30gIFxyXG4gICAgICAgICAgICBoNiB7Zm9udC1zaXplOiAxNnB4OyBjb2xvcjogIzkyOTE5MTsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IGZvbnQtd2VpZ2h0OiBub3JtYWw7fSBcclxuICAgICAgICAgICAgLmlubmVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6MjhweCAyNHB4IDYwcHggMjRweDsgYm9yZGVyOjFweCBzb2xpZCAjMWQ0ZTcxOyBtYXJnaW46IDAgMTVweCAwIDA7IHBvc2l0aW9uOnJlbGF0aXZlOyAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLWRvd25sb2FkIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDoyNHB4OyBib3R0b206IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMikgeyBcclxuICAgICAgICAgICAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtcmVwb3J0e1xyXG4gICAgICAgIG1hcmdpbjo1MHB4IDA7XHJcbiAgICAgICAgLmJveHtcclxuICAgICAgICAgICAgd2lkdGg6NTMwcHg7aGVpZ2h0OjIzNXB4O2JvcmRlcjoxcHggc29saWQgI0NDQztwYWRkaW5nOjM4cHggMzBweDtAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7bWFyZ2luOjAgMzBweCAzMHB4IDA7ZmxvYXQ6bGVmdDtcclxuICAgICAgICAgICAgLmltZ3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtvdmVyZmxvdzogaGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO2Zsb2F0OmxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpyaWdodDt3aWR0aDoyNzVweDtmbG9hdDpyaWdodDtcclxuICAgICAgICAgICAgICAgIHNtYWxse2ZvbnQtc2l6ZToxNHB4O2NvbG9yOiM5OTk7ZGlzcGxheTogYmxvY2s7bWFyZ2luOjAgMCAyMHB4IDA7fVxyXG4gICAgICAgICAgICAgICAgaDZ7Zm9udC1zaXplOiAyMHB4O2xpbmUtaGVpZ2h0OiAzMHB4O2NvbG9yOiRibHVlLTI7bWFyZ2luOjAgMCAyMHB4IDA7fVxyXG4gICAgICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtmb250LXNpemU6MTZweDtjb2xvcjojNGVhZmYzO3BhZGRpbmc6MCAwIDAgMzBweDtiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWRvd25sb2FkLnBuZykgbm8tcmVwZWF0IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pe21hcmdpbi1yaWdodDowO31cclxuICAgICAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuXHJcbiAgICB9XHJcbiAgICAuaW5mb3JtYXNpLWVmZWt7XHJcbiAgICAgICAgaDZ7Zm9udC1zaXplOiAyMHB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjokYmx1ZS0yO21hcmdpbjowIDAgMjVweCAwO31cclxuICAgICAgICBwe2ZvbnQtc2l6ZTogMTZweDtjb2xvcjojMzMzO21hcmdpbjowIDAgMjBweCAwO1xyXG4gICAgICAgICAgYntjb2xvcjojMTExO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLmluZm8tY29ue1xyXG4gICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7bWFyZ2luOjAgMzBweCAwIDA7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1zaXplOjE2cHg7Y29sb3I6IzExMTtsaW5lLWhlaWdodDozMHB4O1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO2Zsb2F0OiBsZWZ0O3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpO21hcmdpbjowIDEwcHggMCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pOmFmdGVye2NvbnRlbnQ6IFwiXCI7cG9zaXRpb246IGFic29sdXRlO2JvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7aGVpZ2h0OjEwMCU7O2xlZnQ6LTE1cHg7dG9wOjA7fVxyXG4gICAgICAgICAgICAgICAgJi50bHA6YmVmb3Jle2JhY2tncm91bmQ6I2IzYjNiMyB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL3RscC1pY28ucG5nKSBuby1yZXBlYXQgY2VudGVyO31cclxuICAgICAgICAgICAgICAgICYuZmF4OmJlZm9yZXtiYWNrZ3JvdW5kOiNiM2IzYjMgdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9mYXgtaWNvLnBuZykgbm8tcmVwZWF0IGNlbnRlcjt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7bWFyZ2luOjAgODBweCA2MHB4IDA7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKTpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO3Bvc2l0aW9uOiBhYnNvbHV0ZTtib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQ0NDO2hlaWdodDoxMDAlOztsZWZ0Oi00NXB4O3RvcDowO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fSAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgLmtvbWl0ZS1saXN0e1xyXG4gICAgICAgIGg2e2NvbG9yOiRibHVlLTI7bWFyZ2luOjAgMCAxNXB4IH1cclxuICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDt3aWR0aDo0OTVweDttYXJnaW46MCAxMDBweCA2MHB4IDA7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXJ7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKXttYXJnaW4tcmlnaHQ6IDB9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzEpe1xyXG4gICAgICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO2JvcmRlci10b3A6MXB4IHNvbGlkICNEREQ7d2lkdGg6MjIwJTtsZWZ0OjA7cG9zaXRpb246IGFic29sdXRlO3RvcDotNTVweFxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5saXN0LWJlcml0YXtcclxuICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICBtYXJnaW46MCAwIDExMHB4IDA7cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgIC5pbWd7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpsZWZ0O3dpZHRoOjM3MHB4O2hlaWdodDogMjY1cHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6bGVmdDt3aWR0aDo2NzBweDttYXJnaW46MjBweCAwIDAgNDBweDtcclxuICAgICAgICAgICAgICAgIHNtYWxse2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiM5OTk7bWFyZ2luOjAgMCAyMHB4O2Rpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgc3Bhbntjb2xvcjokeWVsbG93O31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGg1e2ZvbnQtc2l6ZTozMnB4O2NvbG9yOiRibHVlLTI7bGluZS1oZWlnaHQ6IDQwcHg7bWFyZ2luOjAgMCAxNXB4IDA7fVxyXG4gICAgICAgICAgICAgICAgcHtmb250LXNpemU6MThweDtjb2xvcjojMTExO31cclxuICAgICAgICAgICAgICAgIHNwYW57Y29sb3I6JGJsdWU7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7Ym9yZGVyLXRvcDoxcHggc29saWQgI0RERDt3aWR0aDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjogYWJzb2x1dGU7Ym90dG9tOi01NXB4XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlYXJjaC1yZXN1bHR7XHJcbiAgICAgICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA2MHB4IDA7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtib3R0b206IC0zMHB4O31cclxuICAgICAgICAgICAgICAgIHB7bWFyZ2luLWJvdHRvbTogMDt9XHJcbiAgICAgICAgICAgICAgICAudGV4dHt3aWR0aDogYXV0bzsgbWFyZ2luOiAwOyBwYWRkaW5nLXRvcDogMDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmVyaXRhLWRldGFpbHtcclxuICAgICAgICBtYXgtd2lkdGg6OTcwcHg7bWFyZ2luOmF1dG87XHJcbiAgICAgICAgaDY6Zmlyc3QtY2hpbGQge21hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiM5OTk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW57Y29sb3I6JHllbGxvdzt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGg0e21hcmdpbi1ib3R0b206IDE1cHg7fVxyXG4gICAgICAgIC51c3J7Y29sb3I6Izk5OTtmb250LXNpemU6MTRweDtmb250LXN0eWxlOiBpdGFsaWM7bWFyZ2luOjAgMCA2MHB4IDA7fVxyXG4gICAgICAgIC5zaGFyZXtcclxuICAgICAgICAgICAgbWFyZ2luOjYwcHggYXV0bztcclxuICAgICAgICAgICAgLmxhYmVse2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjE2cHg7Y29sb3I6Izk5OTtwYWRkaW5nOjAgMCAwIDQwcHg7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL3NoYXJlLWljby5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgIG1hcmdpbjowIDIwcHggMCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpsZWZ0O3dpZHRoOjE4cHg7aGVpZ2h0OiAxOHB4O0BpbmNsdWRlIGJvcmRlclJhZGl1cygxMDAlKTttYXJnaW46MCA1cHggMCAwO292ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb3dvbmdhbntcclxuICAgICAgICBtYXJnaW46ODBweCAwIDAgMDtcclxuICAgIH1cclxuICAgIC5saXN0LWxvd29uZ2Fue1xyXG4gICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgIGZsb2F0OmxlZnQ7d2lkdGg6MzQ1cHg7aGVpZ2h0OiAyMjVweDtib3JkZXI6MXB4IHNvbGlkICRibHVlO0BpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtwYWRkaW5nOjI4cHg7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luOjAgMjVweCAyNXB4IDA7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygxNXB4IDE1cHggMHB4ICNlMGUwZTApO2N1cnNvcjpwb2ludGVyO0BpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgbGluZWFyIGFsbCk7XHJcbiAgICAgICAgICAgIGg2e1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjIycHg7Y29sb3I6JGJsdWUtMjtsaW5lLWhlaWdodDogMjZweDttYXJnaW46MCAwIDVweCAwOyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzbWFsbHtmb250LXNpemU6MThweDtjb2xvcjojOTk5O31cclxuICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtib3R0b206MzBweDtsZWZ0OjI4cHg7Zm9udC1zaXplOiAxNHB4O2NvbG9yOiM0ZWFmZjM7Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24pe21hcmdpbi1yaWdodDowO31cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwIDAgMCAjZTBlMGUwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXJlZXItZGV0YWlse1xyXG4gICAgICAgIG1heC13aWR0aDo5NzBweDttYXJnaW46ODBweCBhdXRvO1xyXG4gICAgICAgIGg0e21hcmdpbi1ib3R0b206IDEwcHg7fVxyXG4gICAgICAgIHNtYWxse2ZvbnQtc2l6ZToxNnB4O2NvbG9yOiM5OTk7ZGlzcGxheTogYmxvY2s7bWFyZ2luOjAgMCA2MHB4IDA7fVxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIGF7Y29sb3I6JGJsdWU7XHJcbiAgICAgICAgICAgICAgJjpob3Zlcnt0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGFjdHtcclxuICAgICAgICAuZm9ybXtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7bWFyZ2luOjAgMCAwIDEzMHB4O3dpZHRoOjU3MHB4O1xyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPWVtYWlsXSxcclxuICAgICAgICAgICAgdGV4dGFyZWEsXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9dGV4dF17XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NTBweDt3aWR0aDoxMDAlO3BhZGRpbmc6MCAyMHB4O0BpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpO2ZvbnQtc2l6ZToxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRleHRhcmVhe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoxNXB4IDIwcHg7aGVpZ2h0OjEwMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMTBweDtoZWlnaHQ6IDQwcHg7YmFja2dyb3VuZDokYmx1ZTtjb2xvcjojRkZGO0BpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpO2ZvbnQtc2l6ZToxNHB4O2JvcmRlcjpub25lO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucm93e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOjAgMCAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNzcntcclxuICAgICAgICBtYXgtd2lkdGg6OTcwcHg7bWFyZ2luOmF1dG87XHJcbiAgICAgICAgLmNvbC0ye1xyXG4gICAgICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICAgICAgaDZ7Y29sb3I6JGJsdWUtMjt9XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpsZWZ0O3dpZHRoOjQ3MHB4O21hcmdpbjowIDIwcHggMCAwO1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pe21hcmdpbi1yaWdodDowfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3Qta2VnaWF0YW57XHJcbiAgICAgICAgLmJveHtcclxuICAgICAgICAgICAgZmxvYXQ6bGVmdDt3aWR0aDo1MzBweDttYXJnaW46MCAzMHB4IDMwcHggMDtoZWlnaHQ6MTg1cHg7QGluY2x1ZGUgYm94U2hhZG93KDBweCAwcHggMjBweCAtMTBweCAjMDAwKTtcclxuICAgICAgICAgICAgLmltZ3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOjI3MHB4O2Zsb2F0OmxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpsZWZ0O3BhZGRpbmc6MzBweDtAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7d2lkdGg6MjYwcHg7XHJcbiAgICAgICAgICAgICAgICBzbWFsbHtmb250LXNpemU6MTRweDtjb2xvcjokeWVsbG93O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgMCAxMHB4IDA7fVxyXG4gICAgICAgICAgICAgICAgaDZ7Y29sb3I6JGJsdWU7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6IDIycHg7dGV4dC10cmFuc2Zvcm06IG5vbmU7Zm9udC13ZWlnaHQ6NDAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OiAwO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0ZXAtd3JhcHtcclxuICAgICAgICB3aWR0aDo3NTBweDttYXJnaW46MCBhdXRvIDc1cHg7XHJcbiAgICAgICAgLnN0ZXB7XHJcbiAgICAgICAgICAgIHdpZHRoOjI1MHB4O2hlaWdodDoxMDBweDtmbG9hdDpsZWZ0O3RleHQtYWxpZ246IGNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgaDV7d2lkdGg6NThweDtoZWlnaHQ6NThweDtib3JkZXI6M3B4IHNvbGlkICM5OTk7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDEwMCUpO2xpbmUtaGVpZ2h0OiA1OHB4O2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgIGNvbG9yOiM5OTk7bWFyZ2luOmF1dG8gYXV0byAxOHB4O3Bvc2l0aW9uOiByZWxhdGl2ZTt6LWluZGV4OiAxO2JhY2tncm91bmQ6ICNGRkY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDZ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjojQ0NDO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YWZ0ZXIsJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7cG9zaXRpb246IGFic29sdXRlO3dpZHRoOjEwMCU7dG9wOjMxcHg7aGVpZ2h0OiAxcHg7YmFja2dyb3VuZDogI2VhZWFlYTt6LWluZGV4OiAwO2xlZnQ6LTUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVye2xlZnQ6IGF1dG87cmlnaHQ6LTUwJTt9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIsJjpmaXJzdC1jaGlsZDpiZWZvcmV7ZGlzcGxheTogbm9uZTt9XHJcblxyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGg1e2JvcmRlci1jb2xvcjokeWVsbG93O2NvbG9yOiRibHVlO31cclxuICAgICAgICAgICAgICAgIGg2e2NvbG9yOiRibHVlO31cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICBcclxuICAgIH1cclxuICAgIC5ib3gtdGhhbmt7XHJcbiAgICAgICAgcGFkZGluZzogNDBweDttYXgtd2lkdGg6NjkwcHg7YmFja2dyb3VuZDojZWVlO0BpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpO21hcmdpbjphdXRvIGF1dG8gNjBweDt0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYntjb2xvcjojMDA3ODBiO31cclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICB3aWR0aDoxNDBweDtoZWlnaHQ6NDRweDtmb250LXNpemU6MTZweDtjb2xvcjojRkZGO2JvcmRlcjpub25lO2JhY2tncm91bmQ6ICR5ZWxsb3c7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jazttYXJnaW46YXV0bztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6NDBweDtwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7YmFja2dyb3VuZDogJGJsdWU7fVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAuc2l0ZW1hcHtcclxuICAgICAgICAuY29se3dpZHRoOiAzMzVweDtmbG9hdDogbGVmdDttYXJnaW46MCAyMjVweCAwIDA7XHJcbiAgICAgICAgICAgICAmOm50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OjA7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICBtYXJnaW46MCAwIDM1cHggMDsgXHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7Y29sb3I6IzMzMztkaXNwbGF5OiBibG9jazttYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgJjpob3Zlcntjb2xvcjokeWVsbG93ICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gYTpmaXJzdC1jaGlsZHtjb2xvcjokYmx1ZS0yO2ZvbnQtd2VpZ2h0OiA3MDA7fVxyXG4gICAgICAgICAgICAuaW5uZXJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MCAwIDE1cHggMzBweDtcclxuICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyBsaW5lLWhlaWdodDogMThweDttYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntAZXh0ZW5kIC5hZnRlcl9jbGVhcjt9ICAgICAgICAgICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LWZvcm17XHJcbiAgICB3aWR0aDo3ODBweDttYXJnaW46YXV0bztcclxuICAgIGg2e2NvbG9yOiMwMDA7Zm9udC1zaXplOjE4cHg7bWFyZ2luLWJvdHRvbTogMjBweH1cclxuICAgIHB7Y29sb3I6Izk5OX1cclxuICAgIC5zcGFye2hlaWdodDogNjBweDt9XHJcbiAgICAubm90ZXtmb250LXNpemU6MTNweDtjb2xvcjojOTk5O2Rpc3BsYXk6IGJsb2NrO21hcmdpbjo1cHggMCAwIDB9XHJcbiAgICAucm93e1xyXG4gICAgICAgIG1hcmdpbjowIDAgMjBweCAwO1xyXG4gICAgICAgICY6YWZ0ZXJ7QGV4dGVuZCAuYWZ0ZXJfY2xlYXI7fSAgICAgICAgXHJcbiAgICB9XHJcbiAgICBsYWJlbHtkaXNwbGF5OiBibG9jaztmb250LXNpemU6MTVweDtjb2xvcjojNjY2O21hcmdpbjowIDAgOHB4IDA7XHJcbiAgICAgICAgICBzcGFue2NvbG9yOnJlZDt9XHJcblxyXG4gICAgfVxyXG4gICAgLmNvbHtmbG9hdDogbGVmdDt3aWR0aDozNTBweDttYXJnaW46MCA4MHB4IDBweCAwO1xyXG4gICAgICAgICAmOm50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OjB9XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxpbnB1dFt0eXBlPWVtYWlsXSxpbnB1dFt0eXBlPXBhc3N3b3JkXSxpbnB1dFt0eXBlPWZpbGVdLHRleHRhcmVhLHtcclxuICAgICAgICB3aWR0aDoxMDAlO2hlaWdodDogNDRweDtmb250LXNpemU6MTRweDtib3JkZXI6MXB4IHNvbGlkICNDQ0M7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDApO1xyXG4gICAgICAgICY6Zm9jdXN7Ym9yZGVyLWNvbG9yOiRibHVlO31cclxuICAgIH1cclxuICAgIC5jdXJyZW5jeXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL3JwLWljby5wbmcpIG5vLXJlcGVhdCAtMXB4O3BhZGRpbmc6MCAwIDAgNzBweDtcclxuICAgIH1cclxuICAgIC5kYXl7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9kYXktaWNvLnBuZykgbm8tcmVwZWF0IC0xcHg7cGFkZGluZzowIDAgMCA3MHB4O1xyXG4gICAgfVxyXG4gICAgLmlucHV0LWZpbGV7XHJcbiAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O2hlaWdodDogNDRweCAhaW1wb3J0YW50O2JvcmRlcjoxcHggc29saWQgI0NDQzsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO2N1cnNvcjpwb2ludGVyO1xyXG4gICAgICAgIHNwYW57cGFkZGluZzogMCAxMHB4O2ZvbnQtc2l6ZTogMTRweDtjb2xvcjojNjY2O2xpbmUtaGVpZ2h0OiA0MHB4O292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OiBibG9jazttYXJnaW46MCA5NXB4IDAgMDt3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OiA0NHB4O1xyXG4gICAgICAgIH0gICAgICAgXHJcbiAgICAgICAgaW5wdXR7ei1pbmRleDogMjtjdXJzb3I6cG9pbnRlcjt9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29udGVudDogXCJCcm93c2VcIjt3aWR0aDo5MHB4O2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OiAzNnB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDt0b3A6M3B4O3RleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO0BpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpO2NvbG9yOiRibHVlO2ZvbnQtc2l6ZToxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHRleHRhcmVhe1xyXG4gICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICB9XHJcbiAgICBsYWJlbC5yYWRpb3tcclxuICAgICAgICBtYXJnaW46MCAwIDhweDtcclxuICAgICAgICAuaW5wdXQtcmFkaW97XHJcbiAgICAgICAgICAgIHdpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7QGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO2JvcmRlcjozcHggc29saWQgI0NDQztAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTAwJSk7ZmxvYXQ6bGVmdDttYXJnaW46MCAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZle2JvcmRlci1jb2xvcjokYmx1ZS0yO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRue1xyXG4gICAgICAgIHdpZHRoOjE0MHB4O2hlaWdodDo0NHB4O2ZvbnQtc2l6ZToxNnB4O2NvbG9yOiNGRkY7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDogJHllbGxvdztAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO21hcmdpbjphdXRvO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjQwcHg7cGFkZGluZzowO1xyXG4gICAgICAgICY6aG92ZXJ7YmFja2dyb3VuZDogJGJsdWU7fVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XHJcbiAgICAgICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMsXHJcbiAgICAgICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbntcclxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyLWNvbG9yOiAkYmx1ZTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle1xyXG4gICAgICAgICAgICBAZXh0ZW5kIGlucHV0W3R5cGU9dGV4dF07YmFja2dyb3VuZDojRkZGIHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLWRyb3Bkb3duLnBuZykgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3tkaXNwbGF5OiBub25lO31cclxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7cGFkZGluZy1yaWdodDogNTBweDtsaW5lLWhlaWdodDogNDBweDt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH0gXHJcblxyXG4gICAgLnJvdy1idG57XHJcbiAgICAgICAgbWFyZ2luOjgwcHggMCAwIDA7XHJcbiAgICB9XHJcbiAgICBocntcclxuICAgICAgICBib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RERDttYXJnaW46NjBweCBhdXRvO1xyXG4gICAgfVxyXG4gICAgLnRvdGFse1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHg7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzAwO2JhY2tncm91bmQ6I2VlZWVlZTtjb2xvcjojMTExO21hcmdpbjozMHB4IGF1dG87QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgc3Bhbntjb2xvcjokYmx1ZTtwYWRkaW5nLXJpZ2h0OjUwcHg7fVxyXG4gICAgfVxyXG4gICAgLnZhbHVlLFxyXG4gICAgYi52YWx1ZXtmb250LXNpemU6IDE2cHg7Y29sb3I6IzExMTtsaW5lLWhlaWdodDogMThweDt9XHJcbiAgICAuYmxvY2t7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDtAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtiYWNrZ3JvdW5kOiNlZWVlZWU7bWFyZ2luOjMwcHggYXV0bztcclxuICAgIH1cclxufVxyXG4udGFibGUtaGl7XHJcbiAgICB3aWR0aDoxMDAlO21hcmdpbi1ib3R0b206NjBweDtcclxuICAgIHRoLHRke2JvcmRlcjoxcHggc29saWQgI0ZGRjt2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO3RleHQtYWxpZ246IGNlbnRlcjtsaW5lLWhlaWdodDogMjJweDt9XHJcbiAgICB0aGVhZHtcclxuICAgICAgICB0aCB7cGFkZGluZzogMTVweCAxMHB4O2JhY2tncm91bmQ6I2VmZWZlZjtjb2xvcjokYmx1ZS0yO2ZvbnQtc2l6ZToxNnB4O1xyXG4gICAgICAgICAgICBzcGFue2ZvbnQtc2l6ZToxNHB4O2NvbG9yOiM2NjY7fVxyXG4gICAgICAgIH0gICAgICAgXHJcbiAgICB9XHJcbiAgICB0Ym9keXtcclxuICAgICAgICB0ZHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7Y29sb3I6IzExMTtwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDojZGNkY2RjO1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7dGV4dC1hbGlnbjogY2VudGVyO31cclxuICAgICAgICB9XHJcbiAgICAgICAgdHI6bnRoLWNoaWxkKDJuKSB0ZHtiYWNrZ3JvdW5kOiNlZmVmZWY7fVxyXG5cclxuICAgIH1cclxuICAgIC5kb3dubG9hZHtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZG93bmxvYWQucG5nKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJi5ib3JkZXItZ3JleXtcclxuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNhY2FjYWM7XHJcbiAgICAgICAgdGQsdGh7Ym9yZGVyLWNvbG9yOiNhY2FjYWM7Ym9yZGVyLWJvdHRvbTpub25lO2JvcmRlci10b3A6bm9uZTt9XHJcbiAgICB9XHJcbiAgICAmLndpZHRoLWF1dG97d2lkdGg6YXV0bzt9XHJcbn1cclxuLmRlY19tYXB7XHJcbiAgICBtYXgtd2lkdGg6MjQ1cHg7XHJcbiAgICBoNHtcclxuICAgICAgICBjb2xvcjokYmx1ZTsgZm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbjoxMHB4IDAgMTBweDtcclxuICAgIH1cclxuICAgIHB7bWFyZ2luLWJvdHRvbTogMTBweDtmb250LXNpemU6MTRweDtjb2xvcjojMTExO2xpbmUtaGVpZ2h0OiAxOHB4O2ZvbnQtd2VpZ2h0OjQwMDt9XHJcbiAgICBwOm50aC1jaGlsZCgzKXtjb2xvcjojOTk5O31cclxufVxyXG5cclxuLndyYXAtcG9wdXB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2xlZnQ6IDA7dG9wOiAwO292ZXJmbG93OiBhdXRvO3otaW5kZXg6IDk5OTk5O2Rpc3BsYXk6IG5vbmU7XHJcbiAgICAub3ZlcmxheS1wb3B7QGV4dGVuZCAuYWJzb2x1dGUtY2VudGVyO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjcpO2hlaWdodDogYXV0bztwb3NpdGlvbjogZml4ZWQ7ei1pbmRleDogMTt9XHJcbiAgICAuYm94LXBvcHVwe1xyXG4gICAgICAgIG1heC13aWR0aDogMTE3MHB4O21hcmdpbjo4JSBhdXRvO3Bvc2l0aW9uOiByZWxhdGl2ZTt6LWluZGV4OiAyO1xyXG4gICAgICAgIC5jbG9zZXtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO3dpZHRoOiA2MHB4O2hlaWdodDogNjBweDt0b3A6LTYwcHg7cmlnaHQ6IC02MHB4O2JhY2tncm91bmQ6ICMwMDc2YTM7dGV4dC1pbmRlbnQ6LTk5OTk5cHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4xNXMgbGluZWFyIGFsbCk7IFxyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO3dpZHRoOiAzMHB4O2hlaWdodDogMzBweDtiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Nsb3NlLXBvcC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5hYnNvbHV0ZS1jZW50ZXI7QGluY2x1ZGUgdHJhbnNpdGlvbigwLjE1cyBsaW5lYXIgYWxsKTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye0BpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoOTBkZWcpKX1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFycm93e1xyXG4gICAgICAgICAgICB3aWR0aDoyMXB4O2hlaWdodDozOHB4O3BhZGRpbmc6MDtib3JkZXI6bm9uZTt0ZXh0LWluZGVudDotOTk5OTlweDtiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLXBvcC5wbmcpIG5vLXJlcGVhdCA7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmFic29sdXRlLWNlbnRlcjt0b3A6LTI1cHg7Y3Vyc29yOnBvaW50ZXI7b3BhY2l0eTogMC42O1xyXG4gICAgICAgICAgICAmLm5leHR7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7bGVmdDphdXRvOyByaWdodDotNjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnByZXZ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtsZWZ0Oi02MHB4O3JpZ2h0OmF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlcntvcGFjaXR5OiAxO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC52aWRlb3tcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7cGFkZGluZzogNTYuMjUlIDAgMCAwO3Bvc2l0aW9uOiByZWxhdGl2ZTtiYWNrZ3JvdW5kOiAjRkZGIHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvbG9hZGVyLmdpZikgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgaWZyYW1le3Bvc2l0aW9uOiBhYnNvbHV0ZTt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7dG9wOjA7bGVmdDogMDt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mb3Rve1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7bWluLWhlaWdodDogMzAwcHg7XHJcblxyXG4gICAgICAgICAgICAmLmxvYWR7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGIHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvbG9hZGVyLmdpZikgbm8tcmVwZWF0IGNlbnRlcjsgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhZ2Utc2l6ZXtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO2JvdHRvbTogLTYwcHg7cmlnaHQ6IDA7Zm9udC1zaXplOiAxOHB4O2ZvbnQtd2VpZ2h0OiA3MDA7Y29sb3I6I2IxYjJiMztcclxuICAgICAgICAgICAgLmN1cnJlbnR7Zm9udC1zaXplOiAyNHB4O2NvbG9yOiRibHVlO3BhZGRpbmctcmlnaHQ6IDEwcHg7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuLyogZm9vdGVyXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5mb290ZXJ7XHJcbiAgICBoZWlnaHQ6IDEwMHB4O2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9iZy1mb290ZXIucG5nKSBuby1yZXBlYXQgbGVmdDtcclxuICAgIC53cmFwcGVye3dpZHRoOjE0MDBweDt9XHJcbiAgICAubG9nb3ttYXJnaW46MzBweCAwIDAgMDt9XHJcbiAgICBuYXZ7ZmxvYXQ6IGxlZnQ7Zm9udC1zaXplOjE0cHg7Y29sb3I6I2NmY2ZjZjttYXJnaW46NDBweCAwIDAgMDtcclxuICAgICAgICBhe2NvbG9yOiNjZmNmY2Y7bWFyZ2luOjAgMTBweCAwIDEwcHg7XHJcbiAgICAgICAgICAmOmhvdmVye2NvbG9yOiR5ZWxsb3c7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHB7ZmxvYXQ6IGxlZnQ7Y29sb3I6IzJlNzlhZTttYXJnaW46MzdweCAwIDAgMjBweDtmb250LXNpemU6MTRweDt9XHJcbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVx0XHJcbiAgICBDb21wYW55ICAgIDogUFQgV2ViIEFyY2hpdGVjdCBUZWNobm9sb2d5IC0gd2ViYXJxLmNvbVxyXG4gICAgRG9jdW1lbnQgICA6IFN0eWxlc2hlZXRcclxuICAgIEF1dGhvciAgICAgOiBGcm9udEVuZCBUZWFtICBcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4vKiBpbXBvcnQgYm91cmJvbiAtIGh0dHA6Ly9ib3VyYm9uLmlvL2RvY3MgKi9cclxuQGltcG9ydCBcImJvdXJib24vYm91cmJvblwiO1xyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJGF0dHIpe1xyXG4gICAgdHJhbnNpdGlvbjogJGF0dHI7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICRhdHRyO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAkYXR0cjtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAkYXR0cjtcclxuICAgIC1vLXRyYW5zaXRpb246ICRhdHRyO1xyXG59XHJcbkBtaXhpbiBib3JkZXJSYWRpdXMoJGF0dHIpe1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGF0dHI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkYXR0cjtcclxuICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkYXR0cjtcclxuICAgIC1vLWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG59XHJcbkBtaXhpbiBib3hTaGFkb3coJGF0dHIpe1xyXG4gICAgYm94LXNoYWRvdzogICRhdHRyO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkYXR0cjtcclxuICAgIC1tb3otYm94LXNoYWRvdzogJGF0dHI7XHJcbiAgICAtbXMtYm94LXNoYWRvdzogJGF0dHI7XHJcbiAgICAtby1ib3gtc2hhZG93OiAkYXR0clxyXG59XHJcbkBtaXhpbiBwbGFjZWhvbGRlciB7XHJcbiAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxyXG4gICAgOi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHtAY29udGVudH1cclxuICAgIDo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICB7QGNvbnRlbnR9XHJcbiAgICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fSAgXHJcbn1cclxuQG1peGluIGJveFNpemluZygkYXR0cil7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6ICRhdHRyO1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiAkYXR0cjtcclxuICAgIGJveC1zaXppbmc6ICRhdHRyO1xyXG59XHJcbi8qIGdsb2JhbFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmFmdGVyX2NsZWFyOmFmdGVyLC53cmFwcGVyOmFmdGVyLHNlY3Rpb246YWZ0ZXJ7Y2xlYXI6Ym90aDtkaXNwbGF5OiBibG9jaztjb250ZW50OlwiIFwifVxyXG4uYmVmb3JlX2NsZWFyOmJlZm9yZXtjbGVhcjpib3RoO2Rpc3BsYXk6IGJsb2NrO2NvbnRlbnQ6XCIgXCJ9XHJcbi5hLWxlZnR7dGV4dC1hbGlnbjogbGVmdH1cclxuLmEtcmlnaHR7dGV4dC1hbGlnbjogcmlnaHR9XHJcbi5hLWNlbnRlcnt0ZXh0LWFsaWduOiBjZW50ZXJ9XHJcbi5pdGFsaWMgeyBmb250LXN0eWxlOiBpdGFsaWM7IH1cclxuLmJvbGQgeyBmb250LXdlaWdodDogYm9sZDsgfVxyXG4ucmVndWxhciB7IGZvbnQtd2VpZ2h0OiBsaWdodGVyOyB9XHJcbi5mbCB7IGZsb2F0OiBsZWZ0OyB9XHJcbi5mciB7IGZsb2F0OiByaWdodDsgfVxyXG4uY2xlYXIgeyBjbGVhcjogYm90aDsgfVxyXG5cclxuLmFic29sdXRlLWNlbnRlcntwb3NpdGlvbjogYWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7bWFyZ2luOmF1dG87fVxyXG4ubm8tbWFyZ2lue21hcmdpbjowICFpbXBvcnRhbnQ7fVxyXG4ubm8tc2Nyb2xse292ZXJmbG93OiBoaWRkZW47fVxyXG4vKiBjb2xvciBnbG9iYWxcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4kY18xMTE6ICMxMTE7XHJcbiRjXzMzMzogIzMzMztcclxuJGNfNjY2OiAjNjY2O1xyXG4kY185OTk6ICM5OTk7XHJcbiRjX2VhOiAjZWFlYWVhO1xyXG4kYmx1ZTojMDA3NmEzO1xyXG4kYmx1ZS0yOiMwNDNiNjI7XHJcbiR5ZWxsb3c6I2U5OTQwMDsiLCIvLyBCb3VyYm9uIDQuMi43XHJcbi8vIGh0dHA6Ly9ib3VyYm9uLmlvXHJcbi8vIENvcHlyaWdodCAyMDExLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxyXG4vLyBNSVQgTGljZW5zZVxyXG5cclxuQGltcG9ydCBcInNldHRpbmdzL3ByZWZpeGVyXCI7XHJcbkBpbXBvcnQgXCJzZXR0aW5ncy9weC10by1lbVwiO1xyXG5AaW1wb3J0IFwic2V0dGluZ3MvYXNzZXQtcGlwZWxpbmVcIjtcclxuXHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvYXNzaWduLWlucHV0c1wiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2NvbnRhaW5zXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnMtZmFsc3lcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1sZW5ndGhcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1saWdodFwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLW51bWJlclwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLXNpemVcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1lbVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLXJlbVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3NoYWRlXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvc3RyaXAtdW5pdHNcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy90aW50XCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdW5wYWNrXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbW9kdWxhci1zY2FsZVwiO1xyXG5cclxuQGltcG9ydCBcImhlbHBlcnMvY29udmVydC11bml0c1wiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9kaXJlY3Rpb25hbC12YWx1ZXNcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvZm9udC1zb3VyY2UtZGVjbGFyYXRpb25cIjtcclxuQGltcG9ydCBcImhlbHBlcnMvZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItYW5nbGUtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2xpbmVhci1ncmFkaWVudC1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXBvc2l0aW9ucy1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtYXJnLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtcG9zaXRpb25zLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL3JlbmRlci1ncmFkaWVudHNcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvc2hhcGUtc2l6ZS1zdHJpcHBlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9zdHItdG8tbnVtXCI7XHJcblxyXG5AaW1wb3J0IFwiY3NzMy9hbmltYXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvYXBwZWFyYW5jZVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9iYWNrZmFjZS12aXNpYmlsaXR5XCI7XHJcbkBpbXBvcnQgXCJjc3MzL2JhY2tncm91bmRcIjtcclxuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZC1pbWFnZVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9ib3JkZXItaW1hZ2VcIjtcclxuQGltcG9ydCBcImNzczMvY2FsY1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9jb2x1bW5zXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2ZpbHRlclwiO1xyXG5AaW1wb3J0IFwiY3NzMy9mbGV4LWJveFwiO1xyXG5AaW1wb3J0IFwiY3NzMy9mb250LWZhY2VcIjtcclxuQGltcG9ydCBcImNzczMvZm9udC1mZWF0dXJlLXNldHRpbmdzXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2hpZHBpLW1lZGlhLXF1ZXJ5XCI7XHJcbkBpbXBvcnQgXCJjc3MzL2h5cGhlbnNcIjtcclxuQGltcG9ydCBcImNzczMvaW1hZ2UtcmVuZGVyaW5nXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2tleWZyYW1lc1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9saW5lYXItZ3JhZGllbnRcIjtcclxuQGltcG9ydCBcImNzczMvcGVyc3BlY3RpdmVcIjtcclxuQGltcG9ydCBcImNzczMvcGxhY2Vob2xkZXJcIjtcclxuQGltcG9ydCBcImNzczMvcmFkaWFsLWdyYWRpZW50XCI7XHJcbkBpbXBvcnQgXCJjc3MzL3NlbGVjdGlvblwiO1xyXG5AaW1wb3J0IFwiY3NzMy90ZXh0LWRlY29yYXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvdHJhbnNmb3JtXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3RyYW5zaXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvdXNlci1zZWxlY3RcIjtcclxuXHJcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLWNvbG9yXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLXJhZGl1c1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1zdHlsZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci13aWR0aFwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2J1dHRvbnNcIjtcclxuQGltcG9ydCBcImFkZG9ucy9jbGVhcmZpeFwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2VsbGlwc2lzXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvZm9udC1zdGFja3NcIjtcclxuQGltcG9ydCBcImFkZG9ucy9oaWRlLXRleHRcIjtcclxuQGltcG9ydCBcImFkZG9ucy9tYXJnaW5cIjtcclxuQGltcG9ydCBcImFkZG9ucy9wYWRkaW5nXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvcG9zaXRpb25cIjtcclxuQGltcG9ydCBcImFkZG9ucy9wcmVmaXhlclwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3JldGluYS1pbWFnZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3NpemVcIjtcclxuQGltcG9ydCBcImFkZG9ucy90ZXh0LWlucHV0c1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3RpbWluZy1mdW5jdGlvbnNcIjtcclxuQGltcG9ydCBcImFkZG9ucy90cmlhbmdsZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3dvcmQtd3JhcFwiO1xyXG5cclxuQGltcG9ydCBcImJvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZ1wiO1xyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gR2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgb3IgZGlzYWJsZSB2ZW5kb3IgcHJlZml4ZXNcclxuXHJcbiRwcmVmaXgtZm9yLXdlYmtpdDogICAgdHJ1ZSAhZGVmYXVsdDtcclxuJHByZWZpeC1mb3ItbW96aWxsYTogICB0cnVlICFkZWZhdWx0O1xyXG4kcHJlZml4LWZvci1taWNyb3NvZnQ6IHRydWUgIWRlZmF1bHQ7XHJcbiRwcmVmaXgtZm9yLW9wZXJhOiAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJHByZWZpeC1mb3Itc3BlYzogICAgICB0cnVlICFkZWZhdWx0O1xyXG4iLCIkZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEEgZ2xvYmFsIHNldHRpbmcgdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhlIGAkYXNzZXQtcGlwZWxpbmVgIHZhcmlhYmxlIGZvciBhbGwgZnVuY3Rpb25zIHRoYXQgYWNjZXB0IGl0LlxyXG4vLy9cclxuLy8vIEB0eXBlIEJvb2xcclxuXHJcbiRhc3NldC1waXBlbGluZTogZmFsc2UgIWRlZmF1bHQ7XHJcbiIsIkBmdW5jdGlvbiBhc3NpZ24taW5wdXRzKCRpbnB1dHMsICRwc2V1ZG86IG51bGwpIHtcclxuICAkbGlzdDogKCk7XHJcblxyXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcclxuICAgICRpbnB1dDogdW5xdW90ZSgkaW5wdXQpO1xyXG4gICAgJGlucHV0OiBpZigkcHNldWRvLCAkaW5wdXQgKyBcIjpcIiArICRwc2V1ZG8sICRpbnB1dCk7XHJcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGxpc3Q7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBpZiBhIGxpc3QgY29udGFpbnMgYSB2YWx1ZShzKS5cclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0XHJcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsdWVzXHJcbi8vLyAgIEEgc2luZ2xlIHZhbHVlIG9yIGxpc3Qgb2YgdmFsdWVzIHRvIGNoZWNrIGZvci5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgY29udGFpbnMoJGxpc3QsICR2YWx1ZSlcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sfVxyXG5cclxuQGZ1bmN0aW9uIGNvbnRhaW5zKCRsaXN0LCAkdmFsdWVzLi4uKSB7XHJcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xyXG4gICAgQGlmIHR5cGUtb2YoaW5kZXgoJGxpc3QsICR2YWx1ZSkpICE9IFwibnVtYmVyXCIge1xyXG4gICAgICBAcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiB0cnVlO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDaGVja3MgaWYgYSBsaXN0IGRvZXMgbm90IGNvbnRhaW5zIGEgdmFsdWUuXHJcbi8vL1xyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdFxyXG4vLy8gICBUaGUgbGlzdCB0byBjaGVjayBhZ2FpbnN0LlxyXG4vLy9cclxuLy8vIEByZXR1cm4ge0Jvb2x9XHJcblxyXG5AZnVuY3Rpb24gY29udGFpbnMtZmFsc3koJGxpc3QpIHtcclxuICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XHJcbiAgICBAaWYgbm90ICRpdGVtIHtcclxuICAgICAgQHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiBmYWxzZTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hlY2tzIGZvciBhIHZhbGlkIENTUyBsZW5ndGguXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR2YWx1ZVxyXG5cclxuQGZ1bmN0aW9uIGlzLWxlbmd0aCgkdmFsdWUpIHtcclxuICBAcmV0dXJuIHR5cGUtb2YoJHZhbHVlKSAhPSBcIm51bGxcIiBhbmQgKHN0ci1zbGljZSgkdmFsdWUgKyBcIlwiLCAxLCA0KSA9PSBcImNhbGNcIlxyXG4gICAgICAgb3IgaW5kZXgoYXV0byBpbmhlcml0IGluaXRpYWwgMCwgJHZhbHVlKVxyXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvZ3JhbWF0aWNhbGx5IGRldGVybWluZXMgd2hldGhlciBhIGNvbG9yIGlzIGxpZ2h0IG9yIGRhcmsuXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cDovL3JvYm90cy50aG91Z2h0Ym90LmNvbS9jbG9zZXItbG9vay1jb2xvci1saWdodG5lc3NcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0NvbG9yIChIZXgpfSAkY29sb3JcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgaXMtbGlnaHQoJGNvbG9yKVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge0Jvb2x9XHJcblxyXG5AZnVuY3Rpb24gaXMtbGlnaHQoJGhleC1jb2xvcikge1xyXG4gICQtbG9jYWwtcmVkOiByZWQocmdiYSgkaGV4LWNvbG9yLCAxKSk7XHJcbiAgJC1sb2NhbC1ncmVlbjogZ3JlZW4ocmdiYSgkaGV4LWNvbG9yLCAxKSk7XHJcbiAgJC1sb2NhbC1ibHVlOiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xyXG4gICQtbG9jYWwtbGlnaHRuZXNzOiAoJC1sb2NhbC1yZWQgKiAwLjIxMjYgKyAkLWxvY2FsLWdyZWVuICogMC43MTUyICsgJC1sb2NhbC1ibHVlICogMC4wNzIyKSAvIDI1NTtcclxuXHJcbiAgQHJldHVybiAkLWxvY2FsLWxpZ2h0bmVzcyA+IDAuNjtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hlY2tzIGZvciBhIHZhbGlkIG51bWJlci5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWluc1xyXG5cclxuQGZ1bmN0aW9uIGlzLW51bWJlcigkdmFsdWUpIHtcclxuICBAcmV0dXJuIGNvbnRhaW5zKFwiMFwiIFwiMVwiIFwiMlwiIFwiM1wiIFwiNFwiIFwiNVwiIFwiNlwiIFwiN1wiIFwiOFwiIFwiOVwiIDAgMSAyIDMgNCA1IDYgNyA4IDksICR2YWx1ZSk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHZhbHVlXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWluc1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcclxuXHJcbkBmdW5jdGlvbiBpcy1zaXplKCR2YWx1ZSkge1xyXG4gIEByZXR1cm4gaXMtbGVuZ3RoKCR2YWx1ZSlcclxuICAgICAgICAgIG9yIGNvbnRhaW5zKFwiZmlsbFwiIFwiZml0LWNvbnRlbnRcIiBcIm1pbi1jb250ZW50XCIgXCJtYXgtY29udGVudFwiLCAkdmFsdWUpO1xyXG59XHJcbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xyXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIGVtKDEyKSB3aGVuIHRoZSBwYXJlbnQgaXMgMTZweFxyXG4vLyBpZiB0aGUgcGFyZW50IGlzIGFub3RoZXIgdmFsdWUgc2F5IDI0cHggd3JpdGUgZW0oMTIsIDI0KVxyXG5cclxuQGZ1bmN0aW9uIGVtKCRweHZhbCwgJGJhc2U6ICRlbS1iYXNlKSB7XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcclxuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcclxuICB9XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xyXG4gICAgJGJhc2U6IHN0cmlwLXVuaXRzKCRiYXNlKTtcclxuICB9XHJcbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMWVtO1xyXG59XHJcbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcclxuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSByZW0oMTIpXHJcbi8vIEFzc3VtZXMgJGVtLWJhc2UgaXMgdGhlIGZvbnQtc2l6ZSBvZiA8aHRtbD5cclxuXHJcbkBmdW5jdGlvbiByZW0oJHB4dmFsKSB7XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcclxuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcclxuICB9XHJcblxyXG4gICRiYXNlOiAkZW0tYmFzZTtcclxuICBAaWYgbm90IHVuaXRsZXNzKCRiYXNlKSB7XHJcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xyXG4gIH1cclxuICBAcmV0dXJuICgkcHh2YWwgLyAkYmFzZSkgKiAxcmVtO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggYmxhY2suXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxyXG4vLy8gICBUaGUgYW1vdW50IG9mIGJsYWNrIHRvIGJlIG1peGVkIGluLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoI2ZmYmI1MiwgNjAlKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjRhMjA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtDb2xvcn1cclxuXHJcbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XHJcbiAgQHJldHVybiBtaXgoIzAwMCwgJGNvbG9yLCAkcGVyY2VudCk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFN0cmlwcyB0aGUgdW5pdCBmcm9tIGEgbnVtYmVyLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyIChXaXRoIFVuaXQpfSAkdmFsdWVcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgJGRpbWVuc2lvbjogc3RyaXAtdW5pdHMoMTBlbSk7XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAkZGltZW5zaW9uOiAxMDtcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXIgKFVuaXRsZXNzKX1cclxuXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkdmFsdWUpIHtcclxuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gTWl4ZXMgYSBjb2xvciB3aXRoIHdoaXRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcclxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoIzZlY2FhNiwgNDAlKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNhOGRmYzk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtDb2xvcn1cclxuXHJcbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnQpIHtcclxuICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcclxufVxyXG4iLCIvLyBSZXR1cm4gdmVuZG9yLXByZWZpeGVkIHByb3BlcnR5IG5hbWVzIGlmIGFwcHJvcHJpYXRlXHJcbi8vIEV4YW1wbGU6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoKHRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmQpLCBtb3opIC0+IC1tb3otdHJhbnNmb3JtLCBjb2xvciwgYmFja2dyb3VuZFxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wcywgJHZlbmRvcjogZmFsc2UpIHtcclxuICAkbmV3LXByb3BzOiAoKTtcclxuXHJcbiAgQGVhY2ggJHByb3AgaW4gJHByb3BzIHtcclxuICAgICRuZXctcHJvcHM6IGFwcGVuZCgkbmV3LXByb3BzLCB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3IpLCBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRuZXctcHJvcHM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3I6IGZhbHNlKSB7XHJcbiAgLy8gcHV0IG90aGVyIHByb3BlcnRpZXMgdGhhdCBuZWVkIHRvIGJlIHByZWZpeGVkIGhlcmUgYXN3ZWxsXHJcbiAgQGlmICR2ZW5kb3IgYW5kICRwcm9wID09IHRyYW5zZm9ybSB7XHJcbiAgICBAcmV0dXJuIHVucXVvdGUoJy0nKyR2ZW5kb3IrJy0nKyRwcm9wKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiAkcHJvcDtcclxuICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENvbnZlcnRzIHNob3J0aGFuZCB0byB0aGUgNC12YWx1ZSBzeW50YXguXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvcnRoYW5kXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW46IHVucGFjaygxZW0gMmVtKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIG1hcmdpbjogMWVtIDJlbSAxZW0gMmVtO1xyXG4vLy8gICB9XHJcblxyXG5AZnVuY3Rpb24gdW5wYWNrKCRzaG9ydGhhbmQpIHtcclxuICBAaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDEge1xyXG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XHJcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMiB7XHJcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKTtcclxuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcclxuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMykgbnRoKCRzaG9ydGhhbmQsIDIpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xyXG4gIH1cclxufVxyXG4iLCIvLyBTY2FsaW5nIFZhcmlhYmxlc1xyXG4kZ29sZGVuOiAgICAgICAgICAgMS42MTg7XHJcbiRtaW5vci1zZWNvbmQ6ICAgICAxLjA2NztcclxuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xyXG4kbWlub3ItdGhpcmQ6ICAgICAgMS4yO1xyXG4kbWFqb3ItdGhpcmQ6ICAgICAgMS4yNTtcclxuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xyXG4kYXVnbWVudGVkLWZvdXJ0aDogMS40MTQ7XHJcbiRwZXJmZWN0LWZpZnRoOiAgICAxLjU7XHJcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XHJcbiRtYWpvci1zaXh0aDogICAgICAxLjY2NztcclxuJG1pbm9yLXNldmVudGg6ICAgIDEuNzc4O1xyXG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XHJcbiRvY3RhdmU6ICAgICAgICAgICAyO1xyXG4kbWFqb3ItdGVudGg6ICAgICAgMi41O1xyXG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XHJcbiRtYWpvci10d2VsZnRoOiAgICAzO1xyXG4kZG91YmxlLW9jdGF2ZTogICAgNDtcclxuXHJcbiRtb2R1bGFyLXNjYWxlLXJhdGlvOiAkcGVyZmVjdC1mb3VydGggIWRlZmF1bHQ7XHJcbiRtb2R1bGFyLXNjYWxlLWJhc2U6IGVtKCRlbS1iYXNlKSAhZGVmYXVsdDtcclxuXHJcbkBmdW5jdGlvbiBtb2R1bGFyLXNjYWxlKCRpbmNyZW1lbnQsICR2YWx1ZTogJG1vZHVsYXItc2NhbGUtYmFzZSwgJHJhdGlvOiAkbW9kdWxhci1zY2FsZS1yYXRpbykge1xyXG4gICR2MTogbnRoKCR2YWx1ZSwgMSk7XHJcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XHJcbiAgJHZhbHVlOiAkdjE7XHJcblxyXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxyXG4gIEB3aGlsZSAkdjIgPiAkdjEge1xyXG4gICAgJHYyOiAoJHYyIC8gJHJhdGlvKTsgLy8gd2lsbCBiZSBvZmYtYnktMVxyXG4gIH1cclxuICBAd2hpbGUgJHYyIDwgJHYxIHtcclxuICAgICR2MjogKCR2MiAqICRyYXRpbyk7IC8vIHdpbGwgZml4IG9mZi1ieS0xXHJcbiAgfVxyXG5cclxuICAvLyBjaGVjayBBRlRFUiBzY2FsaW5nICR2MiB0byBwcmV2ZW50IGRvdWJsZS1jb3VudGluZyBjb3JuZXItY2FzZVxyXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcclxuXHJcbiAgQGlmICRpbmNyZW1lbnQgPiAwIHtcclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XHJcbiAgICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIGFuZCAoJHYxICogJHJhdGlvKSA+ICR2MiB7XHJcbiAgICAgICAgJHZhbHVlOiAkdjI7XHJcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgJHYxOiAoJHYxICogJHJhdGlvKTtcclxuICAgICAgICAkdmFsdWU6ICR2MTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRpbmNyZW1lbnQgPCAwIHtcclxuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcclxuICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIHtcclxuICAgICAgJHYyOiAoJHYyIC8gJHJhdGlvKTtcclxuICAgIH1cclxuXHJcbiAgICBAZm9yICRpIGZyb20gJGluY3JlbWVudCB0aHJvdWdoIC0xIHtcclxuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcclxuICAgICAgICAkdmFsdWU6ICR2MjtcclxuICAgICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkdjE6ICgkdjEgLyAkcmF0aW8pO1xyXG4gICAgICAgICR2YWx1ZTogJHYxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbi8vIEhlbHBlciBmdW5jdGlvbiBmb3Igc3RyLXRvLW51bSBmbi5cclxuLy8gU291cmNlOiBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvOTY0NzQwOFxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbkBmdW5jdGlvbiBfY29udmVydC11bml0cygkbnVtYmVyLCAkdW5pdCkge1xyXG4gICRzdHJpbmdzOiBcInB4XCIsIFwiY21cIiwgXCJtbVwiLCBcIiVcIiwgXCJjaFwiLCBcInBpY2FcIiwgXCJpblwiLCBcImVtXCIsIFwicmVtXCIsIFwicHRcIiwgXCJwY1wiLCBcImV4XCIsIFwidndcIiwgXCJ2aFwiLCBcInZtaW5cIiwgXCJ2bWF4XCIsIFwiZGVnXCIsIFwicmFkXCIsIFwiZ3JhZFwiLCBcInR1cm5cIjtcclxuICAkdW5pdHM6ICAgMXB4LCAxY20sIDFtbSwgMSUsIDFjaCwgMXBpY2EsIDFpbiwgMWVtLCAxcmVtLCAxcHQsIDFwYywgMWV4LCAxdncsIDF2aCwgMXZtaW4sIDF2bWF4LCAxZGVnLCAxcmFkLCAxZ3JhZCwgMXR1cm47XHJcbiAgJGluZGV4OiBpbmRleCgkc3RyaW5ncywgJHVuaXQpO1xyXG5cclxuICBAaWYgbm90ICRpbmRleCB7XHJcbiAgICBAd2FybiBcIlVua25vd24gdW5pdCBgI3skdW5pdH1gLlwiO1xyXG4gICAgQHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpICE9IFwibnVtYmVyXCIge1xyXG4gICAgQHdhcm4gXCJgI3skbnVtYmVyfSBpcyBub3QgYSBudW1iZXJgXCI7XHJcbiAgICBAcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkbnVtYmVyICogbnRoKCR1bml0cywgJGluZGV4KTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gRGlyZWN0aW9uYWwtcHJvcGVydHkgbWl4aW5zIGFyZSBzaG9ydGhhbmRzIGZvciB3cml0aW5nIHByb3BlcnRpZXMgbGlrZSB0aGUgZm9sbG93aW5nXHJcbi8vL1xyXG4vLy8gQGlnbm9yZSBZb3UgY2FuIGFsc28gdXNlIGBmYWxzZWAgaW5zdGVhZCBvZiBgbnVsbGAuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xyXG4vLy8gICBMaXN0IG9mIGRpcmVjdGlvbmFsIHZhbHVlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRvdHRlZCBudWxsKTtcclxuLy8vICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCAwIDEwcHgpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZG90dGVkO1xyXG4vLy8gICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcclxuLy8vICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fVxyXG5cclxuQGZ1bmN0aW9uIGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscykge1xyXG4gICRvdXRwdXQ6IG51bGw7XHJcblxyXG4gICRhOiBudGgoJHZhbHMsIDEpO1xyXG4gICRiOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgMikpO1xyXG4gICRjOiBpZihsZW5ndGgoJHZhbHMpIDwgMywgJGEsIG50aCgkdmFscywgMykpO1xyXG4gICRkOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgaWYobGVuZ3RoKCR2YWxzKSA8IDQsIDIsIDQpKSk7XHJcblxyXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cclxuICBAaWYgJGIgPT0gMCB7ICRiOiAwOyB9XHJcbiAgQGlmICRjID09IDAgeyAkYzogMDsgfVxyXG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cclxuXHJcbiAgQGlmICRhID09ICRiIGFuZCAkYSA9PSAkYyBhbmQgJGEgPT0gJGQgeyAkb3V0cHV0OiAkYTsgICAgICAgICAgfVxyXG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cclxuICBAZWxzZSBpZiAkYiA9PSAkZCAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjOyAgICB9XHJcbiAgQGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYyAkZDsgfVxyXG5cclxuICBAcmV0dXJuICRvdXRwdXQ7XHJcbn1cclxuXHJcbi8vLyBPdXRwdXQgZGlyZWN0aW9uYWwgcHJvcGVydGllcywgZm9yIGluc3RhbmNlIGBtYXJnaW5gLlxyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJlXHJcbi8vLyAgIFByZWZpeCB0byB1c2VcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3VmXHJcbi8vLyAgIFN1ZmZpeCB0byB1c2VcclxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiB2YWx1ZXNcclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbGxhcHNlLWRpcmVjdGlvbmFsc1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWlucy1mYWxzeVxyXG5cclxuQG1peGluIGRpcmVjdGlvbmFsLXByb3BlcnR5KCRwcmUsICRzdWYsICR2YWxzKSB7XHJcbiAgLy8gUHJvcGVydHkgTmFtZXNcclxuICAkdG9wOiAgICAkcHJlICsgXCItdG9wXCIgICAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG4gICRib3R0b206ICRwcmUgKyBcIi1ib3R0b21cIiArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XHJcbiAgJGxlZnQ6ICAgJHByZSArIFwiLWxlZnRcIiAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcclxuICAkcmlnaHQ6ICAkcHJlICsgXCItcmlnaHRcIiAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG4gICRhbGw6ICAgICRwcmUgKyAgICAgICAgICAgICBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG5cclxuICAkdmFsczogY29sbGFwc2UtZGlyZWN0aW9uYWxzKCR2YWxzKTtcclxuXHJcbiAgQGlmIGNvbnRhaW5zLWZhbHN5KCR2YWxzKSB7XHJcbiAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JHRvcH06IG50aCgkdmFscywgMSk7IH1cclxuXHJcbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAxIHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRyaWdodH06IG50aCgkdmFscywgMSk7IH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAyKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBsZW5ndGgoJHZhbHMpID09IDIge1xyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMSk7IH1cclxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XHJcbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gMyB7XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cclxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWxzKSA9PSA0IHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDMpOyB9XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDQpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCA0KTsgfVxyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgI3skYWxsfTogJHZhbHM7XHJcbiAgfVxyXG59XHJcbiIsIi8vIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBzb3VyY2Ugc3RyaW5nIGZvciBmb250cyB1c2luZyBAZm9udC1mYWNlXHJcbi8vIFJlZmVyZW5jZTogaHR0cDovL2dvby5nbC9SdTFiS1BcclxuXHJcbkBmdW5jdGlvbiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpIHtcclxuICBAaWYgJGFzc2V0LXBpcGVsaW5lID09IHRydWUge1xyXG4gICAgQHJldHVybiBmb250LXVybDtcclxuICB9IEBlbHNlIHtcclxuICAgIEByZXR1cm4gdXJsO1xyXG4gIH1cclxufVxyXG5cclxuQGZ1bmN0aW9uIGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxyXG4gICRmb250LWZhbWlseSxcclxuICAkZmlsZS1wYXRoLFxyXG4gICRhc3NldC1waXBlbGluZSxcclxuICAkZmlsZS1mb3JtYXRzLFxyXG4gICRmb250LXVybCkge1xyXG5cclxuICAkc3JjOiAoKTtcclxuXHJcbiAgJGZvcm1hdHMtbWFwOiAoXHJcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcclxuICAgIHdvZmYyOiBcIiN7JGZpbGUtcGF0aH0ud29mZjJcIiBmb3JtYXQoXCJ3b2ZmMlwiKSxcclxuICAgIHdvZmY6ICBcIiN7JGZpbGUtcGF0aH0ud29mZlwiIGZvcm1hdChcIndvZmZcIiksXHJcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxyXG4gICAgc3ZnOiAgIFwiI3skZmlsZS1wYXRofS5zdmcjI3skZm9udC1mYW1pbHl9XCIgZm9ybWF0KFwic3ZnXCIpXHJcbiAgKTtcclxuXHJcbiAgQGVhY2ggJGtleSwgJHZhbHVlcyBpbiAkZm9ybWF0cy1tYXAge1xyXG4gICAgQGlmIGNvbnRhaW5zKCRmaWxlLWZvcm1hdHMsICRrZXkpIHtcclxuICAgICAgJGZpbGUtcGF0aDogbnRoKCR2YWx1ZXMsIDEpO1xyXG4gICAgICAkZm9udC1mb3JtYXQ6IG50aCgkdmFsdWVzLCAyKTtcclxuXHJcbiAgICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XHJcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIGZvbnQtdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRzcmM7XHJcbn1cclxuIiwiQGZ1bmN0aW9uIF9ncmFkaWVudC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC10eXBlLCAkZ3JhZGllbnQtcG9zaXRpb25zKSB7XHJcbiAgQGlmICRncmFkaWVudC1wb3NpdGlvbnNcclxuICBhbmQgKCRncmFkaWVudC10eXBlID09IGxpbmVhcilcclxuICBhbmQgKHR5cGUtb2YoJGdyYWRpZW50LXBvc2l0aW9ucykgIT0gY29sb3IpIHtcclxuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcclxuICB9XHJcbiAgQGVsc2UgaWYgJGdyYWRpZW50LXBvc2l0aW9uc1xyXG4gIGFuZCAoJGdyYWRpZW50LXR5cGUgPT0gcmFkaWFsKVxyXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xyXG4gICAgJGdyYWRpZW50LXBvc2l0aW9uczogX3JhZGlhbC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC1wb3NpdGlvbnMpO1xyXG4gIH1cclxuICBAcmV0dXJuICRncmFkaWVudC1wb3NpdGlvbnM7XHJcbn1cclxuIiwiLy8gUHJpdmF0ZSBmdW5jdGlvbiBmb3IgbGluZWFyLWdyYWRpZW50LXBhcnNlclxyXG5AZnVuY3Rpb24gX2xpbmVhci1hbmdsZS1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4KSB7XHJcbiAgJG9mZnNldDogbnVsbDtcclxuICAkdW5pdC1zaG9ydDogIHN0ci1zbGljZSgkZmlyc3QtdmFsLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpIC0gMiwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XHJcbiAgJHVuaXQtbG9uZzogICBzdHItc2xpY2UoJGZpcnN0LXZhbCwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSAtIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG5cclxuICBAaWYgKCR1bml0LWxvbmcgPT0gXCJncmFkXCIpIG9yXHJcbiAgICAgICgkdW5pdC1sb25nID09IFwidHVyblwiKSB7XHJcbiAgICAkb2Zmc2V0OiBpZigkdW5pdC1sb25nID09IFwiZ3JhZFwiLCAtMTAwZ3JhZCAqIDMsIC0wLjc1dHVybik7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIikgb3JcclxuICAgICAgICAgICAoJHVuaXQtc2hvcnQgPT0gXCJyYWRcIikge1xyXG4gICAgJG9mZnNldDogaWYoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIiwgLTkwICogMywgMS42cmFkKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb2Zmc2V0IHtcclxuICAgICRudW06IF9zdHItdG8tbnVtKCRmaXJzdC12YWwpO1xyXG5cclxuICAgIEByZXR1cm4gKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICgkb2Zmc2V0IC0gJG51bSkgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIkBmdW5jdGlvbiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpIHtcclxuICAkaW1hZ2U6IHVucXVvdGUoJGltYWdlKTtcclxuICAkZ3JhZGllbnRzOiAoKTtcclxuICAkc3RhcnQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiKFwiKTtcclxuICAkZW5kOiBzdHItaW5kZXgoJGltYWdlLCBcIixcIik7XHJcbiAgJGZpcnN0LXZhbDogc3RyLXNsaWNlKCRpbWFnZSwgJHN0YXJ0ICsgMSwgJGVuZCAtIDEpO1xyXG5cclxuICAkcHJlZml4OiBzdHItc2xpY2UoJGltYWdlLCAxLCAkc3RhcnQpO1xyXG4gICRzdWZmaXg6IHN0ci1zbGljZSgkaW1hZ2UsICRlbmQsIHN0ci1sZW5ndGgoJGltYWdlKSk7XHJcblxyXG4gICRoYXMtbXVsdGlwbGUtdmFsczogc3RyLWluZGV4KCRmaXJzdC12YWwsIFwiIFwiKTtcclxuICAkaGFzLXNpbmdsZS1wb3NpdGlvbjogdW5xdW90ZShfcG9zaXRpb24tZmxpcHBlcigkZmlyc3QtdmFsKSArIFwiXCIpO1xyXG4gICRoYXMtYW5nbGU6IGlzLW51bWJlcihzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgMSkpO1xyXG5cclxuICBAaWYgJGhhcy1tdWx0aXBsZS12YWxzIHtcclxuICAgICRncmFkaWVudHM6IF9saW5lYXItc2lkZS1jb3JuZXItcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCwgJGhhcy1tdWx0aXBsZS12YWxzKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRoYXMtc2luZ2xlLXBvc2l0aW9uICE9IFwiXCIge1xyXG4gICAgJHBvczogdW5xdW90ZSgkaGFzLXNpbmdsZS1wb3NpdGlvbiArIFwiXCIpO1xyXG5cclxuICAgICRncmFkaWVudHM6IChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcclxuICAgICAgc3BlYy1pbWFnZTogJHByZWZpeCArIFwidG8gXCIgKyAkcG9zICsgJHN1ZmZpeFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRoYXMtYW5nbGUge1xyXG4gICAgLy8gUm90YXRlIGRlZ3JlZSBmb3Igd2Via2l0XHJcbiAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWFuZ2xlLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgpO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRncmFkaWVudHM7XHJcbn1cclxuIiwiQGZ1bmN0aW9uIF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKSB7XHJcbiAgJHR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcclxuICAkc3BlYzogbnVsbDtcclxuICAkZGVncmVlOiBudWxsO1xyXG4gICRzaWRlOiBudWxsO1xyXG4gICRjb3JuZXI6IG51bGw7XHJcbiAgJGxlbmd0aDogbGVuZ3RoKCRwb3MpO1xyXG4gIC8vIFBhcnNlIFNpZGUgYW5kIGNvcm5lciBwb3NpdGlvbnNcclxuICBAaWYgKCRsZW5ndGggPiAxKSB7XHJcbiAgICBAaWYgbnRoKCRwb3MsIDEpID09IFwidG9cIiB7IC8vIE5ld2VyIHN5bnRheFxyXG4gICAgICAkc2lkZTogbnRoKCRwb3MsIDIpO1xyXG5cclxuICAgICAgQGlmICRsZW5ndGggPT0gMiB7IC8vIGVnLiB0byB0b3BcclxuICAgICAgICAvLyBTd2FwIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxyXG4gICAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHsgLy8gZWcuIHRvIHRvcCBsZWZ0XHJcbiAgICAgICAgJGNvcm5lcjogbnRoKCRwb3MsIDMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbGVuZ3RoID09IDIgeyAvLyBPbGRlciBzeW50YXggKFwidG9wIGxlZnRcIilcclxuICAgICAgJHNpZGU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAxKSk7XHJcbiAgICAgICRjb3JuZXI6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcImxlZnQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCBsZWZ0XCIpIHtcclxuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwicmlnaHQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCByaWdodFwiKSB7XHJcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gcmlnaHRcIikge1xyXG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gbGVmdFwiKSB7XHJcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcclxuICAgIH1cclxuICAgICRzcGVjOiB0byAkc2lkZSAkY29ybmVyO1xyXG4gIH1cclxuICBAZWxzZSBpZiAkbGVuZ3RoID09IDEge1xyXG4gICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcclxuICAgIEBpZiAkdHlwZSA9PSBzdHJpbmcge1xyXG4gICAgICAkZGVncmVlOiAkcG9zO1xyXG4gICAgICAkc3BlYzogdG8gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcyk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICRkZWdyZWU6IC0yNzAgLSAkcG9zOyAvL3JvdGF0ZSB0aGUgZ3JhZGllbnQgb3Bwb3NpdGUgZnJvbSBzcGVjXHJcbiAgICAgICRzcGVjOiAkcG9zO1xyXG4gICAgfVxyXG4gIH1cclxuICAkZGVncmVlOiB1bnF1b3RlKCRkZWdyZWUgKyBcIixcIik7XHJcbiAgJHNwZWM6ICAgdW5xdW90ZSgkc3BlYyArIFwiLFwiKTtcclxuICBAcmV0dXJuICRkZWdyZWUgJHNwZWM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBfcG9zaXRpb24tZmxpcHBlcigkcG9zKSB7XHJcbiAgQHJldHVybiBpZigkcG9zID09IGxlZnQsIHJpZ2h0LCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IHJpZ2h0LCBsZWZ0LCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IHRvcCwgYm90dG9tLCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IGJvdHRvbSwgdG9wLCBudWxsKTtcclxufVxyXG4iLCIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXHJcbkBmdW5jdGlvbiBfbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgsICRoYXMtbXVsdGlwbGUtdmFscykge1xyXG4gICR2YWwtMTogc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsICRoYXMtbXVsdGlwbGUtdmFscyAtIDEpO1xyXG4gICR2YWwtMjogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRoYXMtbXVsdGlwbGUtdmFscyArIDEsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG4gICR2YWwtMzogbnVsbDtcclxuICAkaGFzLXZhbC0zOiBzdHItaW5kZXgoJHZhbC0yLCBcIiBcIik7XHJcblxyXG4gIEBpZiAkaGFzLXZhbC0zIHtcclxuICAgICR2YWwtMzogc3RyLXNsaWNlKCR2YWwtMiwgJGhhcy12YWwtMyArIDEsIHN0ci1sZW5ndGgoJHZhbC0yKSk7XHJcbiAgICAkdmFsLTI6IHN0ci1zbGljZSgkdmFsLTIsIDEsICRoYXMtdmFsLTMgLSAxKTtcclxuICB9XHJcblxyXG4gICRwb3M6IF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMSkgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0yKSBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTMpO1xyXG4gICRwb3M6IHVucXVvdGUoJHBvcyArIFwiXCIpO1xyXG5cclxuICAvLyBVc2Ugb2xkIHNwZWMgZm9yIHdlYmtpdFxyXG4gIEBpZiAkdmFsLTEgPT0gXCJ0b1wiIHtcclxuICAgIEByZXR1cm4gKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyBCcmluZyB0aGUgY29kZSB1cCB0byBzcGVjXHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRwcmVmaXggKyBcInRvIFwiICsgJHBvcyArICRzdWZmaXhcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIkBmdW5jdGlvbiBfcmFkaWFsLWFyZy1wYXJzZXIoJGcxLCAkZzIsICRwb3MsICRzaGFwZS1zaXplKSB7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRnMSwgJGcyIHtcclxuICAgICRmaXJzdC12YWw6IG50aCgkdmFsdWUsIDEpO1xyXG4gICAgJHBvcy10eXBlOiAgdHlwZS1vZigkZmlyc3QtdmFsKTtcclxuICAgICRzcGVjLWF0LWluZGV4OiBudWxsO1xyXG5cclxuICAgIC8vIERldGVybWluZSBpZiBzcGVjIHdhcyBwYXNzZWQgdG8gbWl4aW5cclxuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbGlzdCB7XHJcbiAgICAgICRzcGVjLWF0LWluZGV4OiBpZihpbmRleCgkdmFsdWUsIGF0KSwgaW5kZXgoJHZhbHVlLCBhdCksIGZhbHNlKTtcclxuICAgIH1cclxuICAgIEBpZiAkc3BlYy1hdC1pbmRleCB7XHJcbiAgICAgIEBpZiAkc3BlYy1hdC1pbmRleCA+IDEge1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRzcGVjLWF0LWluZGV4IC0gMSkge1xyXG4gICAgICAgICAgJHNoYXBlLXNpemU6ICRzaGFwZS1zaXplIG50aCgkdmFsdWUsICRpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGZvciAkaSBmcm9tICgkc3BlYy1hdC1pbmRleCArIDEpIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZSkge1xyXG4gICAgICAgICAgJHBvczogJHBvcyBudGgoJHZhbHVlLCAkaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBlbHNlIGlmICRzcGVjLWF0LWluZGV4ID09IDEge1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcclxuICAgICAgICAgICRwb3M6ICRwb3MgbnRoKCR2YWx1ZSwgJGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAkZzE6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSWYgbm90IHNwZWMgY2FsY3VsYXRlIGNvcnJlY3QgdmFsdWVzXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEBpZiAoJHBvcy10eXBlICE9IGNvbG9yKSBvciAoJGZpcnN0LXZhbCAhPSBcInRyYW5zcGFyZW50XCIpIHtcclxuICAgICAgICBAaWYgKCRwb3MtdHlwZSA9PSBudW1iZXIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjZW50ZXJcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInRvcFwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwicmlnaHRcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImJvdHRvbVwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwibGVmdFwiKSB7XHJcblxyXG4gICAgICAgICAgJHBvczogJHZhbHVlO1xyXG5cclxuICAgICAgICAgIEBpZiAkcG9zID09ICRnMSB7XHJcbiAgICAgICAgICAgICRnMTogbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBlbHNlIGlmXHJcbiAgICAgICAgICAgKCRmaXJzdC12YWwgPT0gXCJlbGxpcHNlXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjaXJjbGVcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3Qtc2lkZVwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY2xvc2VzdC1jb3JuZXJcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LXNpZGVcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LWNvcm5lclwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY29udGFpblwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY292ZXJcIikge1xyXG5cclxuICAgICAgICAgICRzaGFwZS1zaXplOiAkdmFsdWU7XHJcblxyXG4gICAgICAgICAgQGlmICR2YWx1ZSA9PSAkZzEge1xyXG4gICAgICAgICAgICAkZzE6IG51bGw7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGVsc2UgaWYgJHZhbHVlID09ICRnMiB7XHJcbiAgICAgICAgICAgICRnMjogbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQHJldHVybiAkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemU7XHJcbn1cclxuIiwiQGZ1bmN0aW9uIF9yYWRpYWwtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zKSB7XHJcbiAgJHNoYXBlLXNpemU6IG50aCgkZ3JhZGllbnQtcG9zLCAxKTtcclxuICAkcG9zOiAgICAgICAgbnRoKCRncmFkaWVudC1wb3MsIDIpO1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IF9zaGFwZS1zaXplLXN0cmlwcGVyKCRzaGFwZS1zaXplKTtcclxuXHJcbiAgJHByZS1zcGVjOiB1bnF1b3RlKGlmKCRwb3MsIFwiI3skcG9zfSwgXCIsIG51bGwpKVxyXG4gICAgICAgICAgICAgdW5xdW90ZShpZigkc2hhcGUtc2l6ZSwgXCIjeyRzaGFwZS1zaXplfSxcIiwgbnVsbCkpO1xyXG4gICRwb3Mtc3BlYzogaWYoJHBvcywgXCJhdCAjeyRwb3N9XCIsIG51bGwpO1xyXG5cclxuICAkc3BlYzogXCIjeyRzaGFwZS1zaXplLXNwZWN9ICN7JHBvcy1zcGVjfVwiO1xyXG5cclxuICAvLyBBZGQgY29tbWFcclxuICBAaWYgKCRzcGVjICE9IFwiICBcIikge1xyXG4gICAgJHNwZWM6IFwiI3skc3BlY30sXCI7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRwcmUtc3BlYyAkc3BlYztcclxufVxyXG4iLCJAZnVuY3Rpb24gX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoJGltYWdlKSB7XHJcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XHJcbiAgJGdyYWRpZW50czogKCk7XHJcbiAgJHN0YXJ0OiBzdHItaW5kZXgoJGltYWdlLCBcIihcIik7XHJcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xyXG4gICRmaXJzdC12YWw6IHN0ci1zbGljZSgkaW1hZ2UsICRzdGFydCArIDEsICRlbmQgLSAxKTtcclxuXHJcbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcclxuICAkc3VmZml4OiBzdHItc2xpY2UoJGltYWdlLCAkZW5kLCBzdHItbGVuZ3RoKCRpbWFnZSkpO1xyXG5cclxuICAkaXMtc3BlYy1zeW50YXg6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcImF0XCIpO1xyXG5cclxuICBAaWYgJGlzLXNwZWMtc3ludGF4IGFuZCAkaXMtc3BlYy1zeW50YXggPiAxIHtcclxuICAgICRrZXl3b3JkOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgJGlzLXNwZWMtc3ludGF4IC0gMik7XHJcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XHJcbiAgICAkcG9zOiBhcHBlbmQoJHBvcywgJGtleXdvcmQsIGNvbW1hKTtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkcHJlZml4ICsgJHBvcyArICRzdWZmaXgsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRpcy1zcGVjLXN5bnRheCA9PSAxIHtcclxuICAgICRwb3M6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAkaXMtc3BlYy1zeW50YXggKyAzLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkcHJlZml4ICsgJHBvcyArICRzdWZmaXgsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmIHN0ci1pbmRleCgkaW1hZ2UsIFwiY292ZXJcIikgb3Igc3RyLWluZGV4KCRpbWFnZSwgXCJjb250YWluXCIpIHtcclxuICAgIEB3YXJuIFwiUmFkaWFsLWdyYWRpZW50IG5lZWRzIHRvIGJlIHVwZGF0ZWQgdG8gY29uZm9ybSB0byBsYXRlc3Qgc3BlYy5cIjtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogbnVsbCxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRncmFkaWVudHM7XHJcbn1cclxuIiwiLy8gVXNlciBmb3IgbGluZWFyIGFuZCByYWRpYWwgZ3JhZGllbnRzIHdpdGhpbiBiYWNrZ3JvdW5kLWltYWdlIG9yIGJvcmRlci1pbWFnZSBwcm9wZXJ0aWVzXHJcblxyXG5AZnVuY3Rpb24gX3JlbmRlci1ncmFkaWVudHMoJGdyYWRpZW50LXBvc2l0aW9ucywgJGdyYWRpZW50cywgJGdyYWRpZW50LXR5cGUsICR2ZW5kb3I6IGZhbHNlKSB7XHJcbiAgJHByZS1zcGVjOiBudWxsO1xyXG4gICRzcGVjOiBudWxsO1xyXG4gICR2ZW5kb3ItZ3JhZGllbnRzOiBudWxsO1xyXG4gIEBpZiAkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIge1xyXG4gICAgQGlmICRncmFkaWVudC1wb3NpdGlvbnMge1xyXG4gICAgICAkcHJlLXNwZWM6IG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAxKTtcclxuICAgICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IHJhZGlhbCB7XHJcbiAgICAkcHJlLXNwZWM6IG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAxKTtcclxuICAgICRzcGVjOiAgICAgbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGlmICR2ZW5kb3Ige1xyXG4gICAgJHZlbmRvci1ncmFkaWVudHM6IC0jeyR2ZW5kb3J9LSN7JGdyYWRpZW50LXR5cGV9LWdyYWRpZW50KCN7JHByZS1zcGVjfSAkZ3JhZGllbnRzKTtcclxuICB9XHJcbiAgQGVsc2UgaWYgJHZlbmRvciA9PSBmYWxzZSB7XHJcbiAgICAkdmVuZG9yLWdyYWRpZW50czogXCIjeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRzcGVjfSAjeyRncmFkaWVudHN9KVwiO1xyXG4gICAgJHZlbmRvci1ncmFkaWVudHM6IHVucXVvdGUoJHZlbmRvci1ncmFkaWVudHMpO1xyXG4gIH1cclxuICBAcmV0dXJuICR2ZW5kb3ItZ3JhZGllbnRzO1xyXG59XHJcbiIsIkBmdW5jdGlvbiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSkge1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IG51bGw7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRzaGFwZS1zaXplIHtcclxuICAgIEBpZiAoJHZhbHVlID09IFwiY292ZXJcIikgb3IgKCR2YWx1ZSA9PSBcImNvbnRhaW5cIikge1xyXG4gICAgICAkdmFsdWU6IG51bGw7XHJcbiAgICB9XHJcbiAgICAkc2hhcGUtc2l6ZS1zcGVjOiBcIiN7JHNoYXBlLXNpemUtc3BlY30gI3skdmFsdWV9XCI7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHNoYXBlLXNpemUtc3BlYztcclxufVxyXG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgbGluZWFyL3JhZGlhbC1ncmFkaWVudC1wYXJzZXJzLlxyXG4vLyBTb3VyY2U6IGh0dHA6Ly9zYXNzbWVpc3Rlci5jb20vZ2lzdC85NjQ3NDA4XHJcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cclxuQGZ1bmN0aW9uIF9zdHItdG8tbnVtKCRzdHJpbmcpIHtcclxuICAvLyBNYXRyaWNlc1xyXG4gICRzdHJpbmdzOiBcIjBcIiBcIjFcIiBcIjJcIiBcIjNcIiBcIjRcIiBcIjVcIiBcIjZcIiBcIjdcIiBcIjhcIiBcIjlcIjtcclxuICAkbnVtYmVyczogIDAgICAxICAgMiAgIDMgICA0ICAgNSAgIDYgICA3ICAgOCAgIDk7XHJcblxyXG4gIC8vIFJlc3VsdFxyXG4gICRyZXN1bHQ6IDA7XHJcbiAgJGRpdmlkZXI6IDA7XHJcbiAgJG1pbnVzOiBmYWxzZTtcclxuXHJcbiAgLy8gTG9vcGluZyB0aHJvdWdoIGFsbCBjaGFyYWN0ZXJzXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCRzdHJpbmcpIHtcclxuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkc3RyaW5nLCAkaSwgJGkpO1xyXG4gICAgJGluZGV4OiBpbmRleCgkc3RyaW5ncywgJGNoYXJhY3Rlcik7XHJcblxyXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gXCItXCIge1xyXG4gICAgICAkbWludXM6IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2UgaWYgJGNoYXJhY3RlciA9PSBcIi5cIiB7XHJcbiAgICAgICRkaXZpZGVyOiAxO1xyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgQGlmIG5vdCAkaW5kZXgge1xyXG4gICAgICAgICRyZXN1bHQ6IGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcclxuICAgICAgICBAcmV0dXJuIF9jb252ZXJ0LXVuaXRzKCRyZXN1bHQsIHN0ci1zbGljZSgkc3RyaW5nLCAkaSkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAkbnVtYmVyOiBudGgoJG51bWJlcnMsICRpbmRleCk7XHJcblxyXG4gICAgICBAaWYgJGRpdmlkZXIgPT0gMCB7XHJcbiAgICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgLy8gTW92ZSB0aGUgZGVjaW1hbCBkb3QgdG8gdGhlIGxlZnRcclxuICAgICAgICAkZGl2aWRlcjogJGRpdmlkZXIgKiAxMDtcclxuICAgICAgICAkbnVtYmVyOiAkbnVtYmVyIC8gJGRpdmlkZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAkbnVtYmVyO1xyXG4gICAgfVxyXG4gIH1cclxuICBAcmV0dXJuIGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcclxufVxyXG4iLCIvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWFuaW1hdGlvbnMvI3RoZS1hbmltYXRpb24tbmFtZS1wcm9wZXJ0eS1cclxuLy8gRWFjaCBvZiB0aGVzZSBtaXhpbnMgc3VwcG9ydCBjb21tYSBzZXBhcmF0ZWQgbGlzdHMgb2YgdmFsdWVzLCB3aGljaCBhbGxvd3MgZGlmZmVyZW50IHRyYW5zaXRpb25zIGZvciBpbmRpdmlkdWFsIHByb3BlcnRpZXMgdG8gYmUgZGVzY3JpYmVkIGluIGEgc2luZ2xlIHN0eWxlIHJ1bGUuIEVhY2ggdmFsdWUgaW4gdGhlIGxpc3QgY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIGF0IHRoYXQgc2FtZSBwb3NpdGlvbiBpbiB0aGUgb3RoZXIgcHJvcGVydGllcy5cclxuXHJcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbnMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRhbmltYXRpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWVzLi4uKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLW5hbWUsICRuYW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJG1vdGlvbnMuLi4pIHtcclxuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJHZhbHVlcy4uLikge1xyXG4gIC8vIGluZmluaXRlIHwgPG51bWJlcj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAkdmFsdWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9ucy4uLikge1xyXG4gIC8vIG5vcm1hbCB8IGFsdGVybmF0ZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kaXJlY3Rpb24sICRkaXJlY3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLXBsYXktc3RhdGUoJHN0YXRlcy4uLikge1xyXG4gIC8vIHJ1bm5pbmcgfCBwYXVzZWRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tcGxheS1zdGF0ZSwgJHN0YXRlcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJG1vZGVzLi4uKSB7XHJcbiAgLy8gbm9uZSB8IGZvcndhcmRzIHwgYmFja3dhcmRzIHwgYm90aFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1maWxsLW1vZGUsICRtb2Rlcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG4iLCJAbWl4aW4gYXBwZWFyYW5jZSgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhcHBlYXJhbmNlLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxufVxyXG4iLCJAbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJhY2tmYWNlLXZpc2liaWxpdHksICR2aXNpYmlsaXR5LCB3ZWJraXQgc3BlYyk7XHJcbn1cclxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBCYWNrZ3JvdW5kIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZHMgdXNpbmcgc2hvcnRoYW5kXHJcbi8vIG5vdGF0aW9uLlxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZCgkYmFja2dyb3VuZHMuLi4pIHtcclxuICAkd2Via2l0LWJhY2tncm91bmRzOiAoKTtcclxuICAkc3BlYy1iYWNrZ3JvdW5kczogKCk7XHJcblxyXG4gIEBlYWNoICRiYWNrZ3JvdW5kIGluICRiYWNrZ3JvdW5kcyB7XHJcbiAgICAkd2Via2l0LWJhY2tncm91bmQ6ICgpO1xyXG4gICAgJHNwZWMtYmFja2dyb3VuZDogKCk7XHJcbiAgICAkYmFja2dyb3VuZC10eXBlOiB0eXBlLW9mKCRiYWNrZ3JvdW5kKTtcclxuXHJcbiAgICBAaWYgJGJhY2tncm91bmQtdHlwZSA9PSBzdHJpbmcgb3IgJGJhY2tncm91bmQtdHlwZSA9PSBsaXN0IHtcclxuICAgICAgJGJhY2tncm91bmQtc3RyOiBpZigkYmFja2dyb3VuZC10eXBlID09IGxpc3QsIG50aCgkYmFja2dyb3VuZCwgMSksICRiYWNrZ3JvdW5kKTtcclxuXHJcbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJhY2tncm91bmQtc3RyLCAxLCAzKTtcclxuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDYpO1xyXG5cclxuICAgICAgQGlmICR1cmwtc3RyID09IFwidXJsXCIge1xyXG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJsaW5lYXJcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRiYWNrZ3JvdW5kfVwiKTtcclxuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcclxuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYmFja2dyb3VuZH1cIik7XHJcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG5cclxuICAgICR3ZWJraXQtYmFja2dyb3VuZHM6IGFwcGVuZCgkd2Via2l0LWJhY2tncm91bmRzLCAkd2Via2l0LWJhY2tncm91bmQsIGNvbW1hKTtcclxuICAgICRzcGVjLWJhY2tncm91bmRzOiAgIGFwcGVuZCgkc3BlYy1iYWNrZ3JvdW5kcywgICAkc3BlYy1iYWNrZ3JvdW5kLCAgIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIGJhY2tncm91bmQ6ICR3ZWJraXQtYmFja2dyb3VuZHM7XHJcbiAgYmFja2dyb3VuZDogJHNwZWMtYmFja2dyb3VuZHM7XHJcbn1cclxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBCYWNrZ3JvdW5kLWltYWdlIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZCBpbWFnZXMgd2l0aFxyXG4vLyBncmFkaWVudHMsIG9yIGZvciBzdHJpbmdpbmcgbXVsdGlwbGUgZ3JhZGllbnRzIHRvZ2V0aGVyLlxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2VzLi4uKSB7XHJcbiAgJHdlYmtpdC1pbWFnZXM6ICgpO1xyXG4gICRzcGVjLWltYWdlczogKCk7XHJcblxyXG4gIEBlYWNoICRpbWFnZSBpbiAkaW1hZ2VzIHtcclxuICAgICR3ZWJraXQtaW1hZ2U6ICgpO1xyXG4gICAgJHNwZWMtaW1hZ2U6ICgpO1xyXG5cclxuICAgIEBpZiAodHlwZS1vZigkaW1hZ2UpID09IHN0cmluZykge1xyXG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRpbWFnZSwgMSwgMyk7XHJcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGltYWdlLCAxLCA2KTtcclxuXHJcbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcclxuICAgICAgICAkd2Via2l0LWltYWdlOiAkaW1hZ2U7XHJcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgJGltYWdlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xyXG4gICAgICAgICR3ZWJraXQtaW1hZ2U6ICBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSk7XHJcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xyXG4gICAgICAgICRzcGVjLWltYWdlOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAkd2Via2l0LWltYWdlczogYXBwZW5kKCR3ZWJraXQtaW1hZ2VzLCAkd2Via2l0LWltYWdlLCBjb21tYSk7XHJcbiAgICAkc3BlYy1pbWFnZXM6ICAgYXBwZW5kKCRzcGVjLWltYWdlcywgICAkc3BlYy1pbWFnZSwgICBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkd2Via2l0LWltYWdlcztcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkc3BlYy1pbWFnZXM7XHJcbn1cclxuIiwiQG1peGluIGJvcmRlci1pbWFnZSgkYm9yZGVycy4uLikge1xyXG4gICR3ZWJraXQtYm9yZGVyczogKCk7XHJcbiAgJHNwZWMtYm9yZGVyczogKCk7XHJcblxyXG4gIEBlYWNoICRib3JkZXIgaW4gJGJvcmRlcnMge1xyXG4gICAgJHdlYmtpdC1ib3JkZXI6ICgpO1xyXG4gICAgJHNwZWMtYm9yZGVyOiAoKTtcclxuICAgICRib3JkZXItdHlwZTogdHlwZS1vZigkYm9yZGVyKTtcclxuXHJcbiAgICBAaWYgJGJvcmRlci10eXBlID09IHN0cmluZyBvciBsaXN0IHtcclxuICAgICAgJGJvcmRlci1zdHI6IGlmKCRib3JkZXItdHlwZSA9PSBsaXN0LCBudGgoJGJvcmRlciwgMSksICRib3JkZXIpO1xyXG5cclxuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkYm9yZGVyLXN0ciwgMSwgMyk7XHJcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDYpO1xyXG5cclxuICAgICAgQGlmICR1cmwtc3RyID09IFwidXJsXCIge1xyXG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xyXG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcihcIiN7JGJvcmRlcn1cIik7XHJcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcclxuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoXCIjeyRib3JkZXJ9XCIpO1xyXG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIHtcclxuICAgICAgICAkd2Via2l0LWJvcmRlcjogJGJvcmRlcjtcclxuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XHJcbiAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xyXG4gICAgfVxyXG5cclxuICAgICR3ZWJraXQtYm9yZGVyczogYXBwZW5kKCR3ZWJraXQtYm9yZGVycywgJHdlYmtpdC1ib3JkZXIsIGNvbW1hKTtcclxuICAgICRzcGVjLWJvcmRlcnM6ICAgYXBwZW5kKCRzcGVjLWJvcmRlcnMsICAgJHNwZWMtYm9yZGVyLCAgIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiAkd2Via2l0LWJvcmRlcnM7XHJcbiAgICAgICAgICBib3JkZXItaW1hZ2U6ICRzcGVjLWJvcmRlcnM7XHJcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcblxyXG4vL0V4YW1wbGVzOlxyXG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHVybChcImltYWdlLnBuZ1wiKSAyMCBzdHJldGNoKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIHN0cmV0Y2gpO1xyXG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UobGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBvcmFuZ2UsIHllbGxvdykgMjAgMzAgNDAgNTAgc3RyZXRjaCByb3VuZCk7XHJcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShyYWRpYWwtZ3JhZGllbnQodG9wLCBjb3Zlciwgb3JhbmdlLCB5ZWxsb3csIG9yYW5nZSkpO1xyXG4iLCJAbWl4aW4gY2FsYygkcHJvcGVydHksICR2YWx1ZSkge1xyXG4gICN7JHByb3BlcnR5fTogLXdlYmtpdC1jYWxjKCN7JHZhbHVlfSk7XHJcbiAgI3skcHJvcGVydHl9OiBjYWxjKCN7JHZhbHVlfSk7XHJcbn1cclxuIiwiQG1peGluIGNvbHVtbnMoJGFyZzogYXV0bykge1xyXG4gIC8vIDxjb2x1bW4tY291bnQ+IHx8IDxjb2x1bW4td2lkdGg+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1ucywgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1jb3VudCgkaW50OiBhdXRvKSB7XHJcbiAgLy8gYXV0byB8fCBpbnRlZ2VyXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLWNvdW50LCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLWdhcCgkbGVuZ3RoOiBub3JtYWwpIHtcclxuICAvLyBub3JtYWwgfHwgbGVuZ3RoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLWdhcCwgJGxlbmd0aCwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1maWxsKCRhcmc6IGF1dG8pIHtcclxuICAvLyBhdXRvIHx8IGxlbmd0aFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1maWxsLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXJ1bGUoJGFyZykge1xyXG4gIC8vIDxib3JkZXItd2lkdGg+IHx8IDxib3JkZXItc3R5bGU+IHx8IDxjb2xvcj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZSwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1ydWxlLWNvbG9yKCRjb2xvcikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLWNvbG9yLCAkY29sb3IsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tcnVsZS1zdHlsZSgkc3R5bGU6IG5vbmUpIHtcclxuICAvLyBub25lIHwgaGlkZGVuIHwgZGFzaGVkIHwgZG90dGVkIHwgZG91YmxlIHwgZ3Jvb3ZlIHwgaW5zZXQgfCBpbnNldCB8IG91dHNldCB8IHJpZGdlIHwgc29saWRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1zdHlsZSwgJHN0eWxlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXJ1bGUtd2lkdGggKCR3aWR0aDogbm9uZSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXdpZHRoLCAkd2lkdGgsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tc3BhbigkYXJnOiBub25lKSB7XHJcbiAgLy8gbm9uZSB8fCBhbGxcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tc3BhbiwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi13aWR0aCgkbGVuZ3RoOiBhdXRvKSB7XHJcbiAgLy8gYXV0byB8fCBsZW5ndGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4td2lkdGgsICRsZW5ndGgsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuIiwiQG1peGluIGZpbHRlcigkZnVuY3Rpb246IG5vbmUpIHtcclxuICAvLyA8ZmlsdGVyLWZ1bmN0aW9uPiBbPGZpbHRlci1mdW5jdGlvbl0qIHwgbm9uZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZpbHRlciwgJGZ1bmN0aW9uLCB3ZWJraXQgc3BlYyk7XHJcbn1cclxuIiwiLy8gQ1NTMyBGbGV4aWJsZSBCb3ggTW9kZWwgYW5kIHByb3BlcnR5IGRlZmF1bHRzXHJcblxyXG4vLyBDdXN0b20gc2hvcnRoYW5kIG5vdGF0aW9uIGZvciBmbGV4Ym94XHJcbkBtaXhpbiBib3goJG9yaWVudDogaW5saW5lLWF4aXMsICRwYWNrOiBzdGFydCwgJGFsaWduOiBzdHJldGNoKSB7XHJcbiAgQGluY2x1ZGUgZGlzcGxheS1ib3g7XHJcbiAgQGluY2x1ZGUgYm94LW9yaWVudCgkb3JpZW50KTtcclxuICBAaW5jbHVkZSBib3gtcGFjaygkcGFjayk7XHJcbiAgQGluY2x1ZGUgYm94LWFsaWduKCRhbGlnbik7XHJcbn1cclxuXHJcbkBtaXhpbiBkaXNwbGF5LWJveCB7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgZGlzcGxheTogLW1vei1ib3g7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIElFIDEwXHJcbiAgZGlzcGxheTogYm94O1xyXG59XHJcblxyXG5AbWl4aW4gYm94LW9yaWVudCgkb3JpZW50OiBpbmxpbmUtYXhpcykge1xyXG4vLyBob3Jpem9udGFsfHZlcnRpY2FsfGlubGluZS1heGlzfGJsb2NrLWF4aXN8aW5oZXJpdFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICRvcmllbnQsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBib3gtcGFjaygkcGFjazogc3RhcnQpIHtcclxuLy8gc3RhcnR8ZW5kfGNlbnRlcnxqdXN0aWZ5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXBhY2ssICRwYWNrLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXBhY2s6ICRwYWNrOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWFsaWduKCRhbGlnbjogc3RyZXRjaCkge1xyXG4vLyBzdGFydHxlbmR8Y2VudGVyfGJhc2VsaW5lfHN0cmV0Y2hcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtYWxpZ24sICRhbGlnbiwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1hbGlnbjogJGFsaWduOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWRpcmVjdGlvbigkZGlyZWN0aW9uOiBub3JtYWwpIHtcclxuLy8gbm9ybWFsfHJldmVyc2V8aW5oZXJpdFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1kaXJlY3Rpb24sICRkaXJlY3Rpb24sIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWxpbmVzKCRsaW5lczogc2luZ2xlKSB7XHJcbi8vIHNpbmdsZXxtdWx0aXBsZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1saW5lcywgJGxpbmVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LW9yZGluYWwtZ3JvdXAoJGludDogMSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50OyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWZsZXgoJHZhbHVlOiAwKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleDogJHZhbHVlOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWZsZXgtZ3JvdXAoJGludDogMSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG4vLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcclxuLy8gVW5pZmllZCBhdHRyaWJ1dGVzIGZvciAyMDA5LCAyMDExLCBhbmQgMjAxMiBmbGF2b3Vycy5cclxuXHJcbi8vIDIwMDkgLSBkaXNwbGF5IChib3ggfCBpbmxpbmUtYm94KVxyXG4vLyAyMDExIC0gZGlzcGxheSAoZmxleGJveCB8IGlubGluZS1mbGV4Ym94KVxyXG4vLyAyMDEyIC0gZGlzcGxheSAoZmxleCB8IGlubGluZS1mbGV4KVxyXG5AbWl4aW4gZGlzcGxheSgkdmFsdWUpIHtcclxuLy8gZmxleCB8IGlubGluZS1mbGV4XHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXhcIiB7XHJcbiAgICAvLyAyMDA5XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIGRpc3BsYXk6IC1tb3otYm94O1xyXG4gICAgZGlzcGxheTogYm94O1xyXG5cclxuICAgIC8vIDIwMTJcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcclxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAvLyAyMDExIChJRSAxMClcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJpbmxpbmUtZmxleFwiIHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcclxuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWJveDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ib3g7XHJcblxyXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcclxuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICB9IEBlbHNlIHtcclxuICAgIGRpc3BsYXk6ICR2YWx1ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtZmxleCAoaW50ZWdlcilcclxuLy8gMjAxMSAtIGZsZXggKGRlY2ltYWwgfCB3aWR0aCBkZWNpbWFsKVxyXG4vLyAyMDEyIC0gZmxleCAoaW50ZWdlciBpbnRlZ2VyIHdpZHRoKVxyXG5AbWl4aW4gZmxleCgkdmFsdWUpIHtcclxuXHJcbiAgLy8gR3JhYiBmbGV4LWdyb3cgZm9yIG9sZGVyIGJyb3dzZXJzLlxyXG4gICRmbGV4LWdyb3c6IG50aCgkdmFsdWUsIDEpO1xyXG5cclxuICAvLyAyMDA5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICRmbGV4LWdyb3csIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKSwgMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG5cclxuLy8gMjAwOSAtIGJveC1vcmllbnQgKCBob3Jpem9udGFsIHwgdmVydGljYWwgfCBpbmxpbmUtYXhpcyB8IGJsb2NrLWF4aXMpXHJcbi8vICAgICAgLSBib3gtZGlyZWN0aW9uIChub3JtYWwgfCByZXZlcnNlKVxyXG4vLyAyMDExIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXHJcbi8vIDIwMTIgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcclxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCR2YWx1ZTogcm93KSB7XHJcblxyXG4gIC8vIEFsdCB2YWx1ZXMuXHJcbiAgJHZhbHVlLTIwMDk6ICR2YWx1ZTtcclxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xyXG4gICRkaXJlY3Rpb246IG5vcm1hbDtcclxuXHJcbiAgQGlmICR2YWx1ZSA9PSByb3cge1xyXG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJyb3ctcmV2ZXJzZVwiIHtcclxuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xyXG4gICAgJGRpcmVjdGlvbjogcmV2ZXJzZTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBjb2x1bW4ge1xyXG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiY29sdW1uLXJldmVyc2VcIiB7XHJcbiAgICAkdmFsdWUtMjAwOTogdmVydGljYWw7XHJcbiAgICAkZGlyZWN0aW9uOiByZXZlcnNlO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICR2YWx1ZS0yMDA5LCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1kaXJlY3Rpb24sICRkaXJlY3Rpb24sIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LWRpcmVjdGlvbiwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDExIChJRSAxMClcclxuICAtbXMtZmxleC1kaXJlY3Rpb246ICR2YWx1ZTtcclxufVxyXG5cclxuLy8gMjAwOSAtIGJveC1saW5lcyAoc2luZ2xlIHwgbXVsdGlwbGUpXHJcbi8vIDIwMTEgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXHJcbi8vIDIwMTIgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXHJcbkBtaXhpbiBmbGV4LXdyYXAoJHZhbHVlOiBub3dyYXApIHtcclxuICAvLyBBbHQgdmFsdWVzXHJcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gbm93cmFwIHtcclxuICAgICRhbHQtdmFsdWU6IHNpbmdsZTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSB3cmFwIHtcclxuICAgICRhbHQtdmFsdWU6IG11bHRpcGxlO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwid3JhcC1yZXZlcnNlXCIge1xyXG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC13cmFwLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBUT0RPOiBwYXJzZSB2YWx1ZXMgaW50byBmbGV4LWRpcmVjdGlvbi9mbGV4LXdyYXBcclxuLy8gMjAxMSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxyXG4vLyAyMDEyIC0gZmxleC1mbG93IChmbGV4LWRpcmVjdGlvbiB8fCBmbGV4LXdyYXApXHJcbkBtaXhpbiBmbGV4LWZsb3coJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1mbG93LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtb3JkaW5hbC1ncm91cCAoaW50ZWdlcilcclxuLy8gMjAxMSAtIGZsZXgtb3JkZXIgKGludGVnZXIpXHJcbi8vIDIwMTIgLSBvcmRlciAoaW50ZWdlcilcclxuQG1peGluIG9yZGVyKCRpbnQ6IDApIHtcclxuICAvLyAyMDA5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yZGluYWwtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihvcmRlciwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtb3JkZXI6ICRpbnQ7XHJcbn1cclxuXHJcbi8vIDIwMTIgLSBmbGV4LWdyb3cgKG51bWJlcilcclxuQG1peGluIGZsZXgtZ3JvdygkbnVtYmVyOiAwKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1ncm93LCAkbnVtYmVyLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAkbnVtYmVyO1xyXG59XHJcblxyXG4vLyAyMDEyIC0gZmxleC1zaHJpbmsgKG51bWJlcilcclxuQG1peGluIGZsZXgtc2hyaW5rKCRudW1iZXI6IDEpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXNocmluaywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1uZWdhdGl2ZTogJG51bWJlcjtcclxufVxyXG5cclxuLy8gMjAxMiAtIGZsZXgtYmFzaXMgKG51bWJlcilcclxuQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoOiBhdXRvKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1iYXNpcywgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAkd2lkdGg7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5KVxyXG4vLyAyMDExIC0gZmxleC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXHJcbi8vIDIwMTIgLSBqdXN0aWZ5LWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQpXHJcbkBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJHZhbHVlOiBmbGV4LXN0YXJ0KSB7XHJcblxyXG4gIC8vIEFsdCB2YWx1ZXMuXHJcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcclxuICAgICRhbHQtdmFsdWU6IGVuZDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWJldHdlZW5cIiB7XHJcbiAgICAkYWx0LXZhbHVlOiBqdXN0aWZ5O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYXJvdW5kXCIge1xyXG4gICAgJGFsdC12YWx1ZTogZGlzdHJpYnV0ZTtcclxuICB9XHJcblxyXG4gIC8vIDIwMDlcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtcGFjaywgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGp1c3RpZnktY29udGVudCwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LXBhY2s6ICRhbHQtdmFsdWU7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtYWxpZ24gKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG4vLyAyMDExIC0gZmxleC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXHJcbi8vIDIwMTIgLSBhbGlnbi1pdGVtcyAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG5AbWl4aW4gYWxpZ24taXRlbXMoJHZhbHVlOiBzdHJldGNoKSB7XHJcblxyXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcclxuXHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XHJcbiAgICAkYWx0LXZhbHVlOiBzdGFydDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xyXG4gICAgJGFsdC12YWx1ZTogZW5kO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWl0ZW1zLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtYWxpZ246ICRhbHQtdmFsdWU7XHJcbn1cclxuXHJcbi8vIDIwMTEgLSBmbGV4LWl0ZW0tYWxpZ24gKGF1dG8gfCBzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcclxuLy8gMjAxMiAtIGFsaWduLXNlbGYgKGF1dG8gfCBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXHJcbkBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogYXV0bykge1xyXG5cclxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogZW5kO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLXNlbGYsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogJHZhbHVlLTIwMTE7XHJcbn1cclxuXHJcbi8vIDIwMTEgLSBmbGV4LWxpbmUtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5IHwgZGlzdHJpYnV0ZSB8IHN0cmV0Y2gpXHJcbi8vIDIwMTIgLSBhbGlnbi1jb250ZW50IChmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kIHwgc3RyZXRjaClcclxuQG1peGluIGFsaWduLWNvbnRlbnQoJHZhbHVlOiBzdHJldGNoKSB7XHJcblxyXG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogc3RhcnQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcclxuICAgICR2YWx1ZS0yMDExOiBlbmQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IGp1c3RpZnk7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogZGlzdHJpYnV0ZTtcclxuICB9XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1jb250ZW50LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LWxpbmUtcGFjazogJHZhbHVlLTIwMTE7XHJcbn1cclxuIiwiQG1peGluIGZvbnQtZmFjZShcclxuICAkZm9udC1mYW1pbHksXHJcbiAgJGZpbGUtcGF0aCxcclxuICAkd2VpZ2h0OiBub3JtYWwsXHJcbiAgJHN0eWxlOiBub3JtYWwsXHJcbiAgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUsXHJcbiAgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xyXG5cclxuICAkZm9udC11cmwtcHJlZml4OiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpO1xyXG5cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XHJcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XHJcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcclxuXHJcbiAgICBzcmM6IGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxyXG4gICAgICAkZm9udC1mYW1pbHksXHJcbiAgICAgICRmaWxlLXBhdGgsXHJcbiAgICAgICRhc3NldC1waXBlbGluZSxcclxuICAgICAgJGZpbGUtZm9ybWF0cyxcclxuICAgICAgJGZvbnQtdXJsLXByZWZpeFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIiwiQG1peGluIGZvbnQtZmVhdHVyZS1zZXR0aW5ncygkc2V0dGluZ3MuLi4pIHtcclxuICBAaWYgbGVuZ3RoKCRzZXR0aW5ncykgPT0gMCB7ICRzZXR0aW5nczogbm9uZTsgfVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZvbnQtZmVhdHVyZS1zZXR0aW5ncywgJHNldHRpbmdzLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xyXG59XHJcbiIsIi8vIEhpRFBJIG1peGluLiBEZWZhdWx0IHZhbHVlIHNldCB0byAxLjMgdG8gdGFyZ2V0IEdvb2dsZSBOZXh1cyA3IChodHRwOi8vYmphbmdvLmNvbS9hcnRpY2xlcy9taW4tZGV2aWNlLXBpeGVsLXJhdGlvLylcclxuQG1peGluIGhpZHBpKCRyYXRpbzogMS4zKSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogI3skcmF0aW99LzEpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IHJvdW5kKCRyYXRpbyAqIDk2ZHBpKSksXHJcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogJHJhdGlvICogMWRwcHgpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gaHlwaGVucygkaHlwaGVuYXRpb246IG5vbmUpIHtcclxuICAvLyBub25lIHwgbWFudWFsIHwgYXV0b1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGh5cGhlbnMsICRoeXBoZW5hdGlvbiwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG4iLCJAbWl4aW4gaW1hZ2UtcmVuZGVyaW5nICgkbW9kZTphdXRvKSB7XHJcblxyXG4gIEBpZiAoJG1vZGUgPT0gY3Jpc3AtZWRnZXMpIHtcclxuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7IC8vIElFOCtcclxuICAgIGltYWdlLXJlbmRlcmluZzogLW1vei1jcmlzcC1lZGdlcztcclxuICAgIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IGNyaXNwLWVkZ2VzO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAkbW9kZTtcclxuICB9XHJcbn1cclxuIiwiLy8gQWRkcyBrZXlmcmFtZXMgYmxvY2tzIGZvciBzdXBwb3J0ZWQgcHJlZml4ZXMsIHJlbW92aW5nIHJlZHVuZGFudCBwcmVmaXhlcyBpbiB0aGUgYmxvY2sncyBjb250ZW50XHJcbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQ6ICAgICRwcmVmaXgtZm9yLXdlYmtpdDtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhOiAgICRwcmVmaXgtZm9yLW1vemlsbGE7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0OiAkcHJlZml4LWZvci1taWNyb3NvZnQ7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itb3BlcmE6ICAgICAkcHJlZml4LWZvci1vcGVyYTtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjOiAgICAgICRwcmVmaXgtZm9yLXNwZWM7XHJcblxyXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQge1xyXG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xyXG4gICAgJHByZWZpeC1mb3Itd2Via2l0OiB0cnVlICFnbG9iYWw7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcclxuICAgIEBpbmNsdWRlIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKTtcclxuICAgICRwcmVmaXgtZm9yLW1vemlsbGE6IHRydWUgIWdsb2JhbDtcclxuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQgICAgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGEgICAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0ICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYSAgICAgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMgICAgICAhZ2xvYmFsO1xyXG5cclxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYyB7XHJcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJHBvcywgJGcxLCAkZzI6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGczOiBudWxsLCAkZzQ6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc1OiBudWxsLCAkZzY6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc3OiBudWxsLCAkZzg6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc5OiBudWxsLCAkZzEwOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRmYWxsYmFjazogbnVsbCkge1xyXG4gIC8vIERldGVjdCB3aGF0IHR5cGUgb2YgdmFsdWUgZXhpc3RzIGluICRwb3NcclxuICAkcG9zLXR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcclxuICAkcG9zLXNwZWM6IG51bGw7XHJcbiAgJHBvcy1kZWdyZWU6IG51bGw7XHJcblxyXG4gIC8vIElmICRwb3MgaXMgbWlzc2luZyBmcm9tIG1peGluLCByZWFzc2lnbiB2YXJzIGFuZCBhZGQgZGVmYXVsdCBwb3NpdGlvblxyXG4gIEBpZiAoJHBvcy10eXBlID09IGNvbG9yKSBvciAobnRoKCRwb3MsIDEpID09IFwidHJhbnNwYXJlbnRcIikgIHtcclxuICAgICRnMTA6ICRnOTsgJGc5OiAkZzg7ICRnODogJGc3OyAkZzc6ICRnNjsgJGc2OiAkZzU7XHJcbiAgICAkZzU6ICRnNDsgJGc0OiAkZzM7ICRnMzogJGcyOyAkZzI6ICRnMTsgJGcxOiAkcG9zO1xyXG4gICAgJHBvczogbnVsbDtcclxuICB9XHJcblxyXG4gIEBpZiAkcG9zIHtcclxuICAgICRwb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKTtcclxuICAgICRwb3MtZGVncmVlOiBudGgoJHBvc2l0aW9ucywgMSk7XHJcbiAgICAkcG9zLXNwZWM6ICAgbnRoKCRwb3NpdGlvbnMsIDIpO1xyXG4gIH1cclxuXHJcbiAgJGZ1bGw6ICRnMSwgJGcyLCAkZzMsICRnNCwgJGc1LCAkZzYsICRnNywgJGc4LCAkZzksICRnMTA7XHJcblxyXG4gIC8vIFNldCAkZzEgYXMgdGhlIGRlZmF1bHQgZmFsbGJhY2sgY29sb3JcclxuICAkZmFsbGJhY2stY29sb3I6IG50aCgkZzEsIDEpO1xyXG5cclxuICAvLyBJZiAkZmFsbGJhY2sgaXMgYSBjb2xvciB1c2UgdGhhdCBjb2xvciBhcyB0aGUgZmFsbGJhY2sgY29sb3JcclxuICBAaWYgKHR5cGUtb2YoJGZhbGxiYWNrKSA9PSBjb2xvcikgb3IgKCRmYWxsYmFjayA9PSBcInRyYW5zcGFyZW50XCIpIHtcclxuICAgICRmYWxsYmFjay1jb2xvcjogJGZhbGxiYWNrO1xyXG4gIH1cclxuXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRwb3MtZGVncmVlICRmdWxsKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZVxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVucXVvdGUoXCJsaW5lYXItZ3JhZGllbnQoI3skcG9zLXNwZWN9I3skZnVsbH0pXCIpO1xyXG59XHJcbiIsIkBtaXhpbiBwZXJzcGVjdGl2ZSgkZGVwdGg6IG5vbmUpIHtcclxuICAvLyBub25lIHwgPGxlbmd0aD5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZSwgJGRlcHRoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWx1ZTogNTAlIDUwJSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHBlcnNwZWN0aXZlLW9yaWdpbiwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcbiIsIkBtaXhpbiBwbGFjZWhvbGRlciB7XHJcbiAgJHBsYWNlaG9sZGVyczogXCI6LXdlYmtpdC1pbnB1dFwiIFwiOi1tb3pcIiBcIi1tb3pcIiBcIi1tcy1pbnB1dFwiO1xyXG4gIEBlYWNoICRwbGFjZWhvbGRlciBpbiAkcGxhY2Vob2xkZXJzIHtcclxuICAgICY6I3skcGxhY2Vob2xkZXJ9LXBsYWNlaG9sZGVyIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIFJlcXVpcmVzIFNhc3MgMy4xK1xyXG5AbWl4aW4gcmFkaWFsLWdyYWRpZW50KCRnMSwgJGcyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnMzogbnVsbCwgJGc0OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNzogbnVsbCwgJGc4OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnOTogbnVsbCwgJGcxMDogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkcG9zOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRzaGFwZS1zaXplOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRmYWxsYmFjazogbnVsbCkge1xyXG5cclxuICAkZGF0YTogX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSk7XHJcbiAgJGcxOiAgbnRoKCRkYXRhLCAxKTtcclxuICAkZzI6ICBudGgoJGRhdGEsIDIpO1xyXG4gICRwb3M6IG50aCgkZGF0YSwgMyk7XHJcbiAgJHNoYXBlLXNpemU6IG50aCgkZGF0YSwgNCk7XHJcblxyXG4gICRmdWxsOiAkZzEsICRnMiwgJGczLCAkZzQsICRnNSwgJGc2LCAkZzcsICRnOCwgJGc5LCAkZzEwO1xyXG5cclxuICAvLyBTdHJpcCBkZXByZWNhdGVkIGNvdmVyL2NvbnRhaW4gZm9yIHNwZWNcclxuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XHJcblxyXG4gIC8vIFNldCAkZzEgYXMgdGhlIGRlZmF1bHQgZmFsbGJhY2sgY29sb3JcclxuICAkZmlyc3QtY29sb3I6IG50aCgkZnVsbCwgMSk7XHJcbiAgJGZhbGxiYWNrLWNvbG9yOiBudGgoJGZpcnN0LWNvbG9yLCAxKTtcclxuXHJcbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XHJcbiAgICAkZmFsbGJhY2stY29sb3I6ICRmYWxsYmFjaztcclxuICB9XHJcblxyXG4gIC8vIEFkZCBDb21tYXMgYW5kIHNwYWNlc1xyXG4gICRzaGFwZS1zaXplOiBpZigkc2hhcGUtc2l6ZSwgXCIjeyRzaGFwZS1zaXplfSwgXCIsIG51bGwpO1xyXG4gICRwb3M6ICAgICAgICBpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKTtcclxuICAkcG9zLXNwZWM6ICAgaWYoJHBvcywgXCJhdCAjeyRwb3N9XCIsIG51bGwpO1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IGlmKCgkc2hhcGUtc2l6ZS1zcGVjICE9IFwiIFwiKSBhbmQgKCRwb3MgPT0gbnVsbCksIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSwgXCIsIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSBcIik7XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICAkZmFsbGJhY2stY29sb3I7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoI3skcG9zfSN7JHNoYXBlLXNpemV9I3skZnVsbH0pO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjeyRzaGFwZS1zaXplLXNwZWN9I3skcG9zLXNwZWN9I3skZnVsbH0pO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBPdXRwdXRzIHRoZSBzcGVjIGFuZCBwcmVmaXhlZCB2ZXJzaW9ucyBvZiB0aGUgYDo6c2VsZWN0aW9uYCBwc2V1ZG8tZWxlbWVudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0Jvb2x9ICRjdXJyZW50LXNlbGVjdG9yIFtmYWxzZV1cclxuLy8vICAgSWYgc2V0IHRvIGB0cnVlYCwgaXQgdGFrZXMgdGhlIGN1cnJlbnQgZWxlbWVudCBpbnRvIGNvbnNpZGVyYXRpb24uXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBzZWxlY3Rpb24odHJ1ZSkge1xyXG4vLy8gICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgICB9XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50OjotbW96LXNlbGVjdGlvbiB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQ6OnNlbGVjdGlvbiB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHNlbGVjdGlvbigkY3VycmVudC1zZWxlY3RvcjogZmFsc2UpIHtcclxuICBAaWYgJGN1cnJlbnQtc2VsZWN0b3Ige1xyXG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOjpzZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIDo6LW1vei1zZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICA6OnNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gdGV4dC1kZWNvcmF0aW9uKCR2YWx1ZSkge1xyXG4vLyA8dGV4dC1kZWNvcmF0aW9uLWxpbmU+IHx8IDx0ZXh0LWRlY29yYXRpb24tc3R5bGU+IHx8IDx0ZXh0LWRlY29yYXRpb24tY29sb3I+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLCAkdmFsdWUsIG1veik7XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tbGluZSgkbGluZTogbm9uZSkge1xyXG4vLyBub25lIHx8IHVuZGVybGluZSB8fCBvdmVybGluZSB8fCBsaW5lLXRocm91Z2hcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tbGluZSwgJGxpbmUsIG1veik7XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tc3R5bGUoJHN0eWxlOiBzb2xpZCkge1xyXG4vLyBzb2xpZCB8fCBkb3VibGUgfHwgZG90dGVkIHx8IGRhc2hlZCB8fCB3YXZ5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLXN0eWxlLCAkc3R5bGUsIG1veiB3ZWJraXQpO1xyXG59XHJcblxyXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWNvbG9yKCRjb2xvcjogY3VycmVudENvbG9yKSB7XHJcbi8vIGN1cnJlbnRDb2xvciB8fCA8Y29sb3I+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLWNvbG9yLCAkY29sb3IsIG1veik7XHJcbn1cclxuIiwiQG1peGluIHRyYW5zZm9ybSgkcHJvcGVydHk6IG5vbmUpIHtcclxuICAvLyBub25lIHwgPHRyYW5zZm9ybS1mdW5jdGlvbj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sICRwcm9wZXJ0eSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkYXhlczogNTAlKSB7XHJcbiAgLy8geC1heGlzIC0gbGVmdCB8IGNlbnRlciB8IHJpZ2h0ICB8IGxlbmd0aCB8ICVcclxuICAvLyB5LWF4aXMgLSB0b3AgIHwgY2VudGVyIHwgYm90dG9tIHwgbGVuZ3RoIHwgJVxyXG4gIC8vIHotYXhpcyAtICAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkYXhlcywgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCRzdHlsZTogZmxhdCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybS1zdHlsZSwgJHN0eWxlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcbn1cclxuIiwiLy8gU2hvcnRoYW5kIG1peGluLiBTdXBwb3J0cyBtdWx0aXBsZSBwYXJlbnRoZXNlcy1kZWxpbWluYXRlZCB2YWx1ZXMgZm9yIGVhY2ggdmFyaWFibGUuXHJcbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAycyBlYXNlLWluLW91dCk7XHJcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMXMgZWFzZS1pbiAycywgd2lkdGggMnMgZWFzZS1vdXQpO1xyXG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5ICh0cmFuc2Zvcm0sIG9wYWNpdHkpO1xyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHByb3BlcnRpZXMuLi4pIHtcclxuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XHJcbiAgJG5lZWRzLXByZWZpeGVzOiBmYWxzZTtcclxuICAkd2Via2l0OiAoKTtcclxuICAkbW96OiAoKTtcclxuICAkc3BlYzogKCk7XHJcblxyXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxyXG4gIEBlYWNoICRsaXN0IGluICRwcm9wZXJ0aWVzIHtcclxuICAgIEBpZiBudGgoJGxpc3QsIDEpID09IFwidHJhbnNmb3JtXCIge1xyXG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XHJcbiAgICAgICRsaXN0MTogLXdlYmtpdC10cmFuc2Zvcm07XHJcbiAgICAgICRsaXN0MjogLW1vei10cmFuc2Zvcm07XHJcbiAgICAgICRsaXN0MzogKCk7XHJcblxyXG4gICAgICBAZWFjaCAkdmFyIGluICRsaXN0IHtcclxuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcclxuXHJcbiAgICAgICAgQGlmICR2YXIgIT0gXCJ0cmFuc2Zvcm1cIiB7XHJcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcclxuICAgICAgICAgICRsaXN0Mjogam9pbigkbGlzdDIsICR2YXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJHdlYmtpdDogYXBwZW5kKCR3ZWJraXQsICRsaXN0MSk7XHJcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xyXG4gICAgICAkc3BlYzogICBhcHBlbmQoJHNwZWMsICAgJGxpc3QzKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcclxuICAgICAgJG1vejogICAgYXBwZW5kKCRtb3osICAgICRsaXN0LCBjb21tYSk7XHJcbiAgICAgICRzcGVjOiAgIGFwcGVuZCgkc3BlYywgICAkbGlzdCwgY29tbWEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICR3ZWJraXQ7XHJcbiAgICAgICAtbW96LXRyYW5zaXRpb246ICRtb3o7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGlmIGxlbmd0aCgkcHJvcGVydGllcykgPj0gMSB7XHJcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRwcm9wZXJ0aWVzOiBhbGwgMC4xNXMgZWFzZS1vdXQgMHM7XHJcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHByb3BlcnRpZXMuLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwid2Via2l0XCIpO1xyXG4gICAgIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcGVydGllcywgXCJtb3pcIik7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBmYWxzZSk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0aW1lcy4uLikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XHJcbiAgLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0IHwgY3ViaWMtYmV6aWVyKClcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lcy4uLikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG4iLCJAbWl4aW4gdXNlci1zZWxlY3QoJHZhbHVlOiBub25lKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLWNvbG9yYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1jb2xvcigjYTYwYjU1ICM3NmNkOWMgbnVsbCAjZThhZTFhKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZThhZTFhO1xyXG4vLy8gICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzc2Y2Q5YztcclxuLy8vICAgICBib3JkZXItdG9wLWNvbG9yOiAjYTYwYjU1O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci1jb2xvcmBcclxuXHJcbkBtaXhpbiBib3JkZXItY29sb3IoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIGNvbG9yLCAkdmFscy4uLik7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggY29ybmVycyBvbiB0aGUgc2lkZSBvZiBhIGJveC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHJhZGlpXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50LW9uZSB7XHJcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoNXB4KTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQtdHdvIHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoM3B4KTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQtb25lIHtcclxuLy8vICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQtdHdvIHtcclxuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQG91dHB1dCBgYm9yZGVyLXJhZGl1c2BcclxuXHJcbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaWkpIHtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpaTtcclxufVxyXG5cclxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGlpKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpaTtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGlpKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaWk7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGlpKSB7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xyXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpaTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLXN0eWxlYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1zdHlsZShkYXNoZWQgbnVsbCBzb2xpZCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcclxuLy8vICAgICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7bWl4aW59IGRpcmVjdGlvbmFsLXByb3BlcnR5XHJcbi8vL1xyXG4vLy8gQG91dHB1dCBgYm9yZGVyLXN0eWxlYFxyXG5cclxuQG1peGluIGJvcmRlci1zdHlsZSgkdmFscy4uLikge1xyXG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KGJvcmRlciwgc3R5bGUsICR2YWxzLi4uKTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLXdpZHRoYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci13aWR0aCgxZW0gbnVsbCAyMHB4KTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIwcHg7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC13aWR0aDogMWVtO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci13aWR0aGBcclxuXHJcbkBtaXhpbiBib3JkZXItd2lkdGgoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCAkdmFscy4uLik7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEdlbmVyYXRlcyB2YXJpYWJsZXMgZm9yIGFsbCBidXR0b25zLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IHVzZSBpbnRlcnBvbGF0aW9uIG9uIHRoZSB2YXJpYWJsZTogYCN7JGFsbC1idXR0b25zfWAuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgICN7JGFsbC1idXR0b25zfSB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgI3skYWxsLWJ1dHRvbnMtZm9jdXN9LFxyXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1ob3Zlcn0ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgICN7JGFsbC1idXR0b25zLWFjdGl2ZX0ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIGJ1dHRvbixcclxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBidXR0b246Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyxcclxuLy8vICAgYnV0dG9uOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIGJ1dHRvbjphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIGFzc2lnbi1pbnB1dHNcclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcbi8vL1xyXG4vLy8gQHRvZG8gUmVtb3ZlIGRvdWJsZSBhc3NpZ25lZCB2YXJpYWJsZXMgKExpbmVzIDU54oCTNjIpIGluIHY1LjAuMFxyXG5cclxuJGJ1dHRvbnMtbGlzdDogJ2J1dHRvbicsXHJcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiYnV0dG9uXCJdJyxcclxuICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJyZXNldFwiXScsXHJcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwic3VibWl0XCJdJztcclxuXHJcbiRhbGwtYnV0dG9uczogICAgICAgIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCk7XHJcbiRhbGwtYnV0dG9ucy1hY3RpdmU6IGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCwgYWN0aXZlKTtcclxuJGFsbC1idXR0b25zLWZvY3VzOiAgYXNzaWduLWlucHV0cygkYnV0dG9ucy1saXN0LCBmb2N1cyk7XHJcbiRhbGwtYnV0dG9ucy1ob3ZlcjogIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCwgaG92ZXIpO1xyXG5cclxuJGFsbC1idXR0b24taW5wdXRzOiAgICAgICAgJGFsbC1idXR0b25zO1xyXG4kYWxsLWJ1dHRvbi1pbnB1dHMtYWN0aXZlOiAkYWxsLWJ1dHRvbnMtYWN0aXZlO1xyXG4kYWxsLWJ1dHRvbi1pbnB1dHMtZm9jdXM6ICAkYWxsLWJ1dHRvbnMtZm9jdXM7XHJcbiRhbGwtYnV0dG9uLWlucHV0cy1ob3ZlcjogICRhbGwtYnV0dG9ucy1ob3ZlcjtcclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cDovL2Nzc21vam8uY29tL2xhdGVzdF9uZXdfY2xlYXJmaXhfc29fZmFyL1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50OjphZnRlciB7XHJcbi8vLyAgICAgY2xlYXI6IGJvdGg7XHJcbi8vLyAgICAgY29udGVudDogXCJcIjtcclxuLy8vICAgICBkaXNwbGF5OiB0YWJsZTtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIGNsZWFyZml4IHtcclxuICAmOjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFRydW5jYXRlcyB0ZXh0IGFuZCBhZGRzIGFuIGVsbGlwc2lzIHRvIHJlcHJlc2VudCBvdmVyZmxvdy5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsxMDAlXVxyXG4vLy8gICBNYXgtd2lkdGggZm9yIHRoZSBzdHJpbmcgdG8gcmVzcGVjdCBiZWZvcmUgYmVpbmcgdHJ1bmNhdGVkXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBlbGxpcHNpcztcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuLy8vICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuLy8vICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4vLy8gICAgIHdvcmQtd3JhcDogbm9ybWFsO1xyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gZWxsaXBzaXMoJHdpZHRoOiAxMDAlKSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1heC13aWR0aDogJHdpZHRoO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB3b3JkLXdyYXA6IG5vcm1hbDtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gR2VvcmdpYSBmb250IHN0YWNrLlxyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiRnZW9yZ2lhOiBcIkdlb3JnaWFcIiwgXCJDYW1icmlhXCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFwiVGltZXNcIiwgc2VyaWY7XHJcblxyXG4vLy8gSGVsdmV0aWNhIGZvbnQgc3RhY2suXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG5cclxuJGhlbHZldGljYTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIlJvYm90b1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XHJcblxyXG4vLy8gTHVjaWRhIEdyYW5kZSBmb250IHN0YWNrLlxyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiRsdWNpZGEtZ3JhbmRlOiBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJUYWhvbWFcIiwgXCJWZXJkYW5hXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcclxuXHJcbi8vLyBNb25vc3BhY2UgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kbW9ub3NwYWNlOiBcIkJpdHN0cmVhbSBWZXJhIFNhbnMgTW9ub1wiLCBcIkNvbnNvbGFzXCIsIFwiQ291cmllclwiLCBtb25vc3BhY2U7XHJcblxyXG4vLy8gVmVyZGFuYSBmb250IHN0YWNrLlxyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiR2ZXJkYW5hOiBcIlZlcmRhbmFcIiwgXCJHZW5ldmFcIiwgc2Fucy1zZXJpZjtcclxuIiwiLy8vIEhpZGVzIHRoZSB0ZXh0IGluIGFuIGVsZW1lbnQsIGNvbW1vbmx5IHVzZWQgdG8gc2hvdyBhbiBpbWFnZS4gU29tZSBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cDovL3plbGRtYW4uY29tLzIwMTIvMDMvMDEvcmVwbGFjaW5nLXRoZS05OTk5cHgtaGFjay1uZXctaW1hZ2UtcmVwbGFjZW1lbnRcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGhpZGUtdGV4dDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vLyAgICAgdGV4dC1pbmRlbnQ6IDEwMSU7XHJcbi8vLyAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEB0b2RvIFJlbW92ZSBoZWlnaHQgYXJndW1lbnQgaW4gdjUuMC4wXHJcblxyXG5AbWl4aW4gaGlkZS10ZXh0KCRoZWlnaHQ6IG51bGwpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtaW5kZW50OiAxMDElO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gIEBpZiAkaGVpZ2h0IHtcclxuICAgIEB3YXJuIFwiVGhlIGBoaWRlLXRleHRgIG1peGluIGhhcyBjaGFuZ2VkIGFuZCBubyBsb25nZXIgcmVxdWlyZXMgYSBoZWlnaHQuIFRoZSBoZWlnaHQgYXJndW1lbnQgd2lsbCBubyBsb25nZXIgYmUgYWNjZXB0ZWQgaW4gdjUuMC4wXCI7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBtYXJnaW5gIG9uIHNwZWNpZmljIHNpZGVzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xyXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMTBweCAzZW0gMjB2aCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW4tYm90dG9tOiAzZW07XHJcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IDIwdmg7XHJcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYG1hcmdpbmBcclxuXHJcbkBtaXhpbiBtYXJnaW4oJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShtYXJnaW4sIGZhbHNlLCAkdmFscy4uLik7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYHBhZGRpbmdgIG9uIHNwZWNpZmljIHNpZGVzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xyXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcGFkZGluZygxMnZoIG51bGwgMTBweCA1JSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuLy8vICAgICBwYWRkaW5nLWxlZnQ6IDUlO1xyXG4vLy8gICAgIHBhZGRpbmctdG9wOiAxMnZoO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYHBhZGRpbmdgXHJcblxyXG5AbWl4aW4gcGFkZGluZygkdmFscy4uLikge1xyXG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KHBhZGRpbmcsIGZhbHNlLCAkdmFscy4uLik7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uLiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtQb3NpdGlvbn0gJHBvc2l0aW9uIFtyZWxhdGl2ZV1cclxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRjb29yZGluYXRlcyBbbnVsbCBudWxsIG51bGwgbnVsbF1cclxuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSA0LXZhbHVlIHN5bnRheCBmb3IgdGhlIGVkZ2VzIG9mIGEgYm94XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMTBlbSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBsZWZ0OiAxMGVtO1xyXG4vLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8vICAgICB0b3A6IDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGlzLWxlbmd0aFxyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSB1bnBhY2tcclxuXHJcbkBtaXhpbiBwb3NpdGlvbigkcG9zaXRpb246IHJlbGF0aXZlLCAkY29vcmRpbmF0ZXM6IG51bGwgbnVsbCBudWxsIG51bGwpIHtcclxuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09IGxpc3Qge1xyXG4gICAgJGNvb3JkaW5hdGVzOiAkcG9zaXRpb247XHJcbiAgICAkcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgJGNvb3JkaW5hdGVzOiB1bnBhY2soJGNvb3JkaW5hdGVzKTtcclxuXHJcbiAgJG9mZnNldHM6IChcclxuICAgIHRvcDogICAgbnRoKCRjb29yZGluYXRlcywgMSksXHJcbiAgICByaWdodDogIG50aCgkY29vcmRpbmF0ZXMsIDIpLFxyXG4gICAgYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKSxcclxuICAgIGxlZnQ6ICAgbnRoKCRjb29yZGluYXRlcywgNClcclxuICApO1xyXG5cclxuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xyXG5cclxuICBAZWFjaCAkb2Zmc2V0LCAkdmFsdWUgaW4gJG9mZnNldHMge1xyXG4gICAgQGlmIGlzLWxlbmd0aCgkdmFsdWUpIHtcclxuICAgICAgI3skb2Zmc2V0fTogJHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQSBtaXhpbiBmb3IgZ2VuZXJhdGluZyB2ZW5kb3IgcHJlZml4ZXMgb24gbm9uLXN0YW5kYXJkaXplZCBwcm9wZXJ0aWVzLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHlcclxuLy8vICAgUHJvcGVydHkgdG8gcHJlZml4XHJcbi8vL1xyXG4vLy8gQHBhcmFtIHsqfSAkdmFsdWVcclxuLy8vICAgVmFsdWUgdG8gdXNlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkcHJlZml4ZXNcclxuLy8vICAgUHJlZml4ZXMgdG8gZGVmaW5lXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBwcmVmaXhlcihib3JkZXItcmFkaXVzLCAxMHB4LCB3ZWJraXQgbXMgc3BlYyk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbi8vLyAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4vLy8gICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLXdlYmtpdFxyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1tb3ppbGxhXHJcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW1pY3Jvc29mdFxyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1vcGVyYVxyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1zcGVjXHJcblxyXG5AbWl4aW4gcHJlZml4ZXIoJHByb3BlcnR5LCAkdmFsdWUsICRwcmVmaXhlcykge1xyXG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcclxuICAgIEBpZiAkcHJlZml4ID09IHdlYmtpdCB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci13ZWJraXQge1xyXG4gICAgICAgIC13ZWJraXQtI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtb3oge1xyXG4gICAgICBAaWYgJHByZWZpeC1mb3ItbW96aWxsYSB7XHJcbiAgICAgICAgLW1vei0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG1zIHtcclxuICAgICAgQGlmICRwcmVmaXgtZm9yLW1pY3Jvc29mdCB7XHJcbiAgICAgICAgLW1zLSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbyB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci1vcGVyYSB7XHJcbiAgICAgICAgLW8tI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBzcGVjIHtcclxuICAgICAgQGlmICRwcmVmaXgtZm9yLXNwZWMge1xyXG4gICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlICB7XHJcbiAgICAgIEB3YXJuIFwiVW5yZWNvZ25pemVkIHByZWZpeDogI3skcHJlZml4fVwiO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKSB7XHJcbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICBmYWxzZSAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW1vemlsbGE6ICAgZmFsc2UgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6IGZhbHNlICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICBmYWxzZSAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLXNwZWM6ICAgICAgZmFsc2UgIWdsb2JhbDtcclxufVxyXG4iLCJAbWl4aW4gcmV0aW5hLWltYWdlKCRmaWxlbmFtZSwgJGJhY2tncm91bmQtc2l6ZSwgJGV4dGVuc2lvbjogcG5nLCAkcmV0aW5hLWZpbGVuYW1lOiBudWxsLCAkcmV0aW5hLXN1ZmZpeDogXzJ4LCAkYXNzZXQtcGlwZWxpbmU6ICRhc3NldC1waXBlbGluZSkge1xyXG4gIEBpZiAkYXNzZXQtcGlwZWxpbmUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgICB1cmwoXCIjeyRmaWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGhpZHBpIHtcclxuICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUge1xyXG4gICAgICBAaWYgJHJldGluYS1maWxlbmFtZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skcmV0aW5hLWZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRmaWxlbmFtZX0jeyRyZXRpbmEtc3VmZml4fS4jeyRleHRlbnNpb259XCIpO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JHJldGluYS1maWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtc2l6ZTogJGJhY2tncm91bmQtc2l6ZTtcclxuICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHNpemVcclxuLy8vICAgQSBsaXN0IG9mIGF0IG1vc3QgMiBzaXplIHZhbHVlcy5cclxuLy8vXHJcbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgdmFsdWUgaW4gYCRzaXplYCBpdCBpcyB1c2VkIGZvciBib3RoIHdpZHRoIGFuZCBoZWlnaHQuIEFsbCB1bml0cyBhcmUgc3VwcG9ydGVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgyZW0pO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHNpemUoYXV0byAxMGVtKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xyXG4vLy8gICAgIHdpZHRoOiAyZW07XHJcbi8vLyAgICAgaGVpZ2h0OiAyZW07XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5zZWNvbmQtZWxlbWVudCB7XHJcbi8vLyAgICAgd2lkdGg6IGF1dG87XHJcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHRvZG8gUmVmYWN0b3IgaW4gNS4wLjAgdG8gdXNlIGEgY29tbWEtc2VwYXJhdGVkIGFyZ3VtZW50XHJcblxyXG5AbWl4aW4gc2l6ZSgkdmFsdWUpIHtcclxuICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xyXG4gICRoZWlnaHQ6ICR3aWR0aDtcclxuXHJcbiAgQGlmIGxlbmd0aCgkdmFsdWUpID4gMSB7XHJcbiAgICAkaGVpZ2h0OiBudGgoJHZhbHVlLCAyKTtcclxuICB9XHJcblxyXG4gIEBpZiBpcy1zaXplKCRoZWlnaHQpIHtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuIFwiYCN7JGhlaWdodH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkaGVpZ2h0YCBwYXJhbWV0ZXIgaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcclxuICB9XHJcblxyXG4gIEBpZiBpcy1zaXplKCR3aWR0aCkge1xyXG4gICAgd2lkdGg6ICR3aWR0aDtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuIFwiYCN7JHdpZHRofWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCR3aWR0aGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBHZW5lcmF0ZXMgdmFyaWFibGVzIGZvciBhbGwgdGV4dC1iYXNlZCBpbnB1dHMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgdXNlIGludGVycG9sYXRpb24gb24gdGhlIHZhcmlhYmxlOiBgI3skYWxsLXRleHQtaW5wdXRzfWAuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0c30ge1xyXG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1mb2N1c30sXHJcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1ob3Zlcn0ge1xyXG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZjA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1hY3RpdmV9IHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXSxcclxuLy8vICAgdGV4dGFyZWEge1xyXG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxyXG4vLy8gICB0ZXh0YXJlYTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl06aG92ZXIsXHJcbi8vLyAgIHRleHRhcmVhOmhvdmVyIHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl06YWN0aXZlLFxyXG4vLy8gICB0ZXh0YXJlYTphY3RpdmUge1xyXG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGY7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG5cclxuJHRleHQtaW5wdXRzLWxpc3Q6ICdpbnB1dFt0eXBlPVwiY29sb3JcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRlXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImVtYWlsXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibW9udGhcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJudW1iZXJcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJwYXNzd29yZFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInNlYXJjaFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInRlbFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInRleHRcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0aW1lXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidXJsXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwid2Vla1wiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXQ6bm90KFt0eXBlXSknLFxyXG4gICAgICAgICAgICAgICAgICAgJ3RleHRhcmVhJztcclxuXHJcbiRhbGwtdGV4dC1pbnB1dHM6ICAgICAgICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0KTtcclxuJGFsbC10ZXh0LWlucHV0cy1hY3RpdmU6IGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QsIGFjdGl2ZSk7XHJcbiRhbGwtdGV4dC1pbnB1dHMtZm9jdXM6ICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBmb2N1cyk7XHJcbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBob3Zlcik7XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDU1MgY3ViaWMtYmV6aWVyIHRpbWluZyBmdW5jdGlvbnMuIFRpbWluZyBmdW5jdGlvbnMgY291cnRlc3kgb2YganF1ZXJ5LmVhc2llIChnaXRodWIuY29tL2phdWtpYS9lYXNpZSlcclxuLy8vXHJcbi8vLyBUaW1pbmcgZnVuY3Rpb25zIGFyZSB0aGUgc2FtZSBhcyBkZW1vZWQgaGVyZTogaHR0cDovL2pxdWVyeXVpLmNvbS9yZXNvdXJjZXMvZGVtb3MvZWZmZWN0L2Vhc2luZy5odG1sXHJcbi8vL1xyXG4vLy8gQHR5cGUgY3ViaWMtYmV6aWVyXHJcblxyXG4kZWFzZS1pbi1xdWFkOiAgICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDg1LCAwLjY4MCwgMC41MzApO1xyXG4kZWFzZS1pbi1jdWJpYzogICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4kZWFzZS1pbi1xdWFydDogICAgIGN1YmljLWJlemllcigwLjg5NSwgIDAuMDMwLCAwLjY4NSwgMC4yMjApO1xyXG4kZWFzZS1pbi1xdWludDogICAgIGN1YmljLWJlemllcigwLjc1NSwgIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4kZWFzZS1pbi1zaW5lOiAgICAgIGN1YmljLWJlemllcigwLjQ3MCwgIDAuMDAwLCAwLjc0NSwgMC43MTUpO1xyXG4kZWFzZS1pbi1leHBvOiAgICAgIGN1YmljLWJlemllcigwLjk1MCwgIDAuMDUwLCAwLjc5NSwgMC4wMzUpO1xyXG4kZWFzZS1pbi1jaXJjOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgIDAuMDQwLCAwLjk4MCwgMC4zMzUpO1xyXG4kZWFzZS1pbi1iYWNrOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpO1xyXG5cclxuJGVhc2Utb3V0LXF1YWQ6ICAgICBjdWJpYy1iZXppZXIoMC4yNTAsICAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcclxuJGVhc2Utb3V0LWN1YmljOiAgICBjdWJpYy1iZXppZXIoMC4yMTUsICAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuJGVhc2Utb3V0LXF1YXJ0OiAgICBjdWJpYy1iZXppZXIoMC4xNjUsICAwLjg0MCwgMC40NDAsIDEuMDAwKTtcclxuJGVhc2Utb3V0LXF1aW50OiAgICBjdWJpYy1iZXppZXIoMC4yMzAsICAxLjAwMCwgMC4zMjAsIDEuMDAwKTtcclxuJGVhc2Utb3V0LXNpbmU6ICAgICBjdWJpYy1iZXppZXIoMC4zOTAsICAwLjU3NSwgMC41NjUsIDEuMDAwKTtcclxuJGVhc2Utb3V0LWV4cG86ICAgICBjdWJpYy1iZXppZXIoMC4xOTAsICAxLjAwMCwgMC4yMjAsIDEuMDAwKTtcclxuJGVhc2Utb3V0LWNpcmM6ICAgICBjdWJpYy1iZXppZXIoMC4wNzUsICAwLjgyMCwgMC4xNjUsIDEuMDAwKTtcclxuJGVhc2Utb3V0LWJhY2s6ICAgICBjdWJpYy1iZXppZXIoMC4xNzUsICAwLjg4NSwgMC4zMjAsIDEuMjc1KTtcclxuXHJcbiRlYXNlLWluLW91dC1xdWFkOiAgY3ViaWMtYmV6aWVyKDAuNDU1LCAgMC4wMzAsIDAuNTE1LCAwLjk1NSk7XHJcbiRlYXNlLWluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XHJcbiRlYXNlLWluLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKDAuNzcwLCAgMC4wMDAsIDAuMTc1LCAxLjAwMCk7XHJcbiRlYXNlLWluLW91dC1xdWludDogY3ViaWMtYmV6aWVyKDAuODYwLCAgMC4wMDAsIDAuMDcwLCAxLjAwMCk7XHJcbiRlYXNlLWluLW91dC1zaW5lOiAgY3ViaWMtYmV6aWVyKDAuNDQ1LCAgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XHJcbiRlYXNlLWluLW91dC1leHBvOiAgY3ViaWMtYmV6aWVyKDEuMDAwLCAgMC4wMDAsIDAuMDAwLCAxLjAwMCk7XHJcbiRlYXNlLWluLW91dC1jaXJjOiAgY3ViaWMtYmV6aWVyKDAuNzg1LCAgMC4xMzUsIDAuMTUwLCAwLjg2MCk7XHJcbiRlYXNlLWluLW91dC1iYWNrOiAgY3ViaWMtYmV6aWVyKDAuNjgwLCAtMC41NTAsIDAuMjY1LCAxLjU1MCk7XHJcbiIsIkBtaXhpbiB0cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCAkZGlyZWN0aW9uKSB7XHJcbiAgJHdpZHRoOiBudGgoJHNpemUsIDEpO1xyXG4gICRoZWlnaHQ6IG50aCgkc2l6ZSwgbGVuZ3RoKCRzaXplKSk7XHJcbiAgJGZvcmVncm91bmQtY29sb3I6IG50aCgkY29sb3IsIDEpO1xyXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiBpZihsZW5ndGgoJGNvbG9yKSA9PSAyLCBudGgoJGNvbG9yLCAyKSwgdHJhbnNwYXJlbnQpO1xyXG4gIGhlaWdodDogMDtcclxuICB3aWR0aDogMDtcclxuXHJcbiAgQGlmICgkZGlyZWN0aW9uID09IHVwKSBvciAoJGRpcmVjdGlvbiA9PSBkb3duKSBvciAoJGRpcmVjdGlvbiA9PSByaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gbGVmdCkge1xyXG4gICAgJHdpZHRoOiAkd2lkdGggLyAyO1xyXG4gICAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XHJcblxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLWxlZnQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcclxuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSB1cC1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gdXAtbGVmdCkge1xyXG4gICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHJcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSB1cC1yaWdodCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwLWxlZnQge1xyXG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGRvd24tcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGRvd24tbGVmdCkge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHJcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0IHtcclxuICAgICAgYm9yZGVyLWxlZnQ6ICAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0IHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC11cCkge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHdpZHRoO1xyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtZG93bikge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkZm9yZWdyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHdpZHRoO1xyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtcmlnaHQpIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggJGhlaWdodDtcclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWxlZnQpIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggJGhlaWdodDtcclxuICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGNoYW5nZSB0aGUgYHdvcmQtd3JhcGAgcHJvcGVydHkuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3cmFwIFticmVhay13b3JkXVxyXG4vLy8gICBWYWx1ZSBmb3IgdGhlIGB3b3JkLWJyZWFrYCBwcm9wZXJ0eS5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLndyYXBwZXIge1xyXG4vLy8gICAgIEBpbmNsdWRlIHdvcmQtd3JhcChicmVhay13b3JkKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLndyYXBwZXIge1xyXG4vLy8gICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XHJcbi8vLyAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4vLy8gICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHdvcmQtd3JhcCgkd3JhcDogYnJlYWstd29yZCkge1xyXG4gIG92ZXJmbG93LXdyYXA6ICR3cmFwO1xyXG4gIHdvcmQtd3JhcDogJHdyYXA7XHJcblxyXG4gIEBpZiAkd3JhcCA9PSBicmVhay13b3JkIHtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICB9IEBlbHNlIHtcclxuICAgIHdvcmQtYnJlYWs6ICR3cmFwO1xyXG4gIH1cclxufVxyXG4iLCIvLyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGhhdmUgYmVlbiBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgTUFKT1IgdmVyc2lvbiByZWxlYXNlXHJcblxyXG5AbWl4aW4gaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGlubGluZS1ibG9jayBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24gKCRzdHlsZTogc2ltcGxlLCAkYmFzZS1jb2xvcjogIzQyOTRmMCwgJHRleHQtc2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XHJcblxyXG4gIEBpZiB0eXBlLW9mKCRzdHlsZSkgPT0gc3RyaW5nIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBjb2xvciB7XHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gbnVtYmVyIHtcclxuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xyXG4gICAgJHRleHQtc2l6ZTogJGJhc2UtY29sb3I7XHJcbiAgICAkYmFzZS1jb2xvcjogIzQyOTRmMDtcclxuXHJcbiAgICBAaWYgJHBhZGRpbmcgPT0gaW5oZXJpdCB7XHJcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBjb2xvciB7XHJcbiAgICAkYmFzZS1jb2xvcjogJHN0eWxlO1xyXG4gICAgJHN0eWxlOiBzaW1wbGU7XHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBudW1iZXIge1xyXG4gICAgJHBhZGRpbmc6ICR0ZXh0LXNpemU7XHJcbiAgICAkdGV4dC1zaXplOiAkYmFzZS1jb2xvcjtcclxuICAgICRiYXNlLWNvbG9yOiAkc3R5bGU7XHJcbiAgICAkc3R5bGU6IHNpbXBsZTtcclxuXHJcbiAgICBAaWYgJHBhZGRpbmcgPT0gaW5oZXJpdCB7XHJcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IG51bWJlciB7XHJcbiAgICAkcGFkZGluZzogJGJhc2UtY29sb3I7XHJcbiAgICAkdGV4dC1zaXplOiAkc3R5bGU7XHJcbiAgICAkYmFzZS1jb2xvcjogIzQyOTRmMDtcclxuICAgICRzdHlsZTogc2ltcGxlO1xyXG5cclxuICAgIEBpZiAkcGFkZGluZyA9PSAjNDI5NGYwIHtcclxuICAgICAgJHBhZGRpbmc6IDdweCAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJ1dHRvbnN0eWxlKCRzdHlsZSwgJGJhc2UtY29sb3IsICR0ZXh0LXNpemUsICRwYWRkaW5nKTtcclxuICB9XHJcblxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICB9XHJcblxyXG4gIEB3YXJuIFwiVGhlIGJ1dHRvbiBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XHJcbn1cclxuXHJcbi8vIFNlbGVjdG9yIFN0eWxlIEJ1dHRvblxyXG5AbWl4aW4gYnV0dG9uc3R5bGUoJHR5cGUsICRiLWNvbG9yLCAkdC1zaXplLCAkcGFkKSB7XHJcbiAgLy8gR3JheXNjYWxlIGJ1dHRvblxyXG4gIEBpZiAkdHlwZSA9PSBzaW1wbGUgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xyXG4gICAgQGluY2x1ZGUgc2ltcGxlKCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBpZiAkdHlwZSA9PSBzaGlueSBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBzaGlueSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJHR5cGUgPT0gcGlsbCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBwaWxsKCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBpZiAkdHlwZSA9PSBmbGF0IGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcclxuICAgIEBpbmNsdWRlIGZsYXQoJGItY29sb3IsIHRydWUsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxuXHJcbiAgLy8gQ29sb3JlZCBidXR0b25cclxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIHtcclxuICAgIEBpbmNsdWRlIHNpbXBsZSgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJHR5cGUgPT0gc2hpbnkge1xyXG4gICAgQGluY2x1ZGUgc2hpbnkoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICR0eXBlID09IHBpbGwge1xyXG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgJHR5cGUgPT0gZmxhdCB7XHJcbiAgICBAaW5jbHVkZSBmbGF0KCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTaW1wbGUgQnV0dG9uXHJcbkBtaXhpbiBzaW1wbGUoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XHJcbiAgJGJvcmRlcjogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xNCUpO1xyXG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtOCUsICAkbGlnaHRuZXNzOiAgMTUlKTtcclxuICAkc3RvcC1ncmFkaWVudDogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDklLCAgJGxpZ2h0bmVzczogLTExJSk7XHJcbiAgJHRleHQtc2hhZG93OiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICAxNSUsICRsaWdodG5lc3M6IC0xOCUpO1xyXG5cclxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcclxuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XHJcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xyXG4gIH1cclxuXHJcbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAkYm9yZGVyOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXIpO1xyXG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcclxuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xyXG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xyXG4gIH1cclxuXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvciwgJHN0b3AtZ3JhZGllbnQpO1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAkdGV4dC1zaGFkb3c7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuXHJcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTQlLCAkbGlnaHRuZXNzOiAtNSUpO1xyXG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC03JSwgJGxpZ2h0bmVzczogIDUlKTtcclxuICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgOCUsICRsaWdodG5lc3M6IC0xNCUpO1xyXG5cclxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgZ3JheXNjYWxlKCRiYXNlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcclxuICAgICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudC1ob3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvci1ob3ZlciwgJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xyXG5cclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93LWhvdmVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXHJcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogOSUsICRsaWdodG5lc3M6IC0xNCUpO1xyXG4gICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDclLCAkbGlnaHRuZXNzOiAtMTclKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJvcmRlci1hY3RpdmU6ICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWFjdGl2ZSk7XHJcbiAgICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1hY3RpdmUpO1xyXG4gICAgfVxyXG5cclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItYWN0aXZlO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDhweCA0cHggJGluc2V0LXNoYWRvdy1hY3RpdmUsIGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2hpbnkgQnV0dG9uXHJcbkBtaXhpbiBzaGlueSgkYmFzZS1jb2xvciwgJGdyYXlzY2FsZTogZmFsc2UsICR0ZXh0c2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XHJcbiAgJGNvbG9yOiAgICAgICAgIGhzbCgwLCAwLCAxMDAlKTtcclxuICAkYm9yZGVyOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTE3LCAkZ3JlZW46IC0xMTEsICRibHVlOiAtODEpO1xyXG4gICRib3JkZXItYm90dG9tOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMjYsICRncmVlbjogLTEyNywgJGJsdWU6IC0xMjIpO1xyXG4gICRmb3VydGgtc3RvcDogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC03OSwgICRncmVlbjogLTcwLCAgJGJsdWU6IC00Nik7XHJcbiAgJGluc2V0LXNoYWRvdzogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogIDM3LCAgJGdyZWVuOiAgMjksICAkYmx1ZTogIDEyKTtcclxuICAkc2Vjb25kLXN0b3A6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNTYsICAkZ3JlZW46IC01MCwgICRibHVlOiAtMzMpO1xyXG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xNDAsICRncmVlbjogLTE0MSwgJGJsdWU6IC0xMTQpO1xyXG4gICR0aGlyZC1zdG9wOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC04NiwgICRncmVlbjogLTc1LCAgJGJsdWU6IC00OCk7XHJcblxyXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xyXG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcclxuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XHJcbiAgfVxyXG5cclxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICRib3JkZXI6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlcik7XHJcbiAgICAkYm9yZGVyLWJvdHRvbTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcclxuICAgICRmb3VydGgtc3RvcDogICBncmF5c2NhbGUoJGZvdXJ0aC1zdG9wKTtcclxuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XHJcbiAgICAkc2Vjb25kLXN0b3A6ICAgZ3JheXNjYWxlKCRzZWNvbmQtc3RvcCk7XHJcbiAgICAkdGV4dC1zaGFkb3c6ICAgZ3JheXNjYWxlKCR0ZXh0LXNoYWRvdyk7XHJcbiAgICAkdGhpcmQtc3RvcDogICAgZ3JheXNjYWxlKCR0aGlyZC1zdG9wKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRiYXNlLWNvbG9yIDAlLCAkc2Vjb25kLXN0b3AgNTAlLCAkdGhpcmQtc3RvcCA1MCUsICRmb3VydGgtc3RvcCAxMDAlKTtcclxuXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ib3R0b207XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93O1xyXG5cclxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTMsICRncmVlbjogLTE1LCAkYmx1ZTogLTE4KTtcclxuICAgICRzZWNvbmQtc3RvcC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNjYsICRncmVlbjogLTYyLCAkYmx1ZTogLTUxKTtcclxuICAgICR0aGlyZC1zdG9wLWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtOTMsICRncmVlbjogLTg1LCAkYmx1ZTogLTY2KTtcclxuICAgICRmb3VydGgtc3RvcC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICRncmVlbjogLTgwLCAkYmx1ZTogLTYzKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGZpcnN0LXN0b3AtaG92ZXI6ICBncmF5c2NhbGUoJGZpcnN0LXN0b3AtaG92ZXIpO1xyXG4gICAgICAkc2Vjb25kLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkc2Vjb25kLXN0b3AtaG92ZXIpO1xyXG4gICAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGdyYXlzY2FsZSgkdGhpcmQtc3RvcC1ob3Zlcik7XHJcbiAgICAgICRmb3VydGgtc3RvcC1ob3ZlcjogZ3JheXNjYWxlKCRmb3VydGgtc3RvcC1ob3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0LXN0b3AtaG92ZXIgIDAlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNlY29uZC1zdG9wLWhvdmVyIDUwJSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlyZC1zdG9wLWhvdmVyICA1MCUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm91cnRoLXN0b3AtaG92ZXIgMTAwJSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSxcclxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMTEsICRncmVlbjogLTExNiwgJGJsdWU6IC0xMjIpO1xyXG5cclxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMjBweCAwICRpbnNldC1zaGFkb3ctYWN0aXZlO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUGlsbCBCdXR0b25cclxuQG1peGluIHBpbGwoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XHJcbiAgJGJvcmRlci1ib3R0b206IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAtMTElLCAkbGlnaHRuZXNzOiAtMjYlKTtcclxuICAkYm9yZGVyLXNpZGVzOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yMSUsICRsaWdodG5lc3M6IC0yMSUpO1xyXG4gICRib3JkZXItdG9wOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IC0xLCAkc2F0dXJhdGlvbjogLTMwJSwgJGxpZ2h0bmVzczogLTE1JSk7XHJcbiAgJGluc2V0LXNoYWRvdzogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMSUsICAkbGlnaHRuZXNzOiAgNyUpO1xyXG4gICRzdG9wLWdyYWRpZW50OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDE0JSwgJGxpZ2h0bmVzczogLTEwJSk7XHJcbiAgJHRleHQtc2hhZG93OiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDUsICRzYXR1cmF0aW9uOiAtMTklLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuXHJcbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XHJcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xyXG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcclxuICB9XHJcblxyXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XHJcbiAgICAkYm9yZGVyLXNpZGVzOiAgZ3JheXNjYWxlKCRib3JkZXItc2lkZXMpO1xyXG4gICAgJGJvcmRlci10b3A6ICAgIGdyYXlzY2FsZSgkYm9yZGVyLXRvcCk7XHJcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xyXG4gICAgJHN0b3AtZ3JhZGllbnQ6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudCk7XHJcbiAgICAkdGV4dC1zaGFkb3c6ICAgZ3JheXNjYWxlKCR0ZXh0LXNoYWRvdyk7XHJcbiAgfVxyXG5cclxuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLXRvcDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXItdG9wICRib3JkZXItc2lkZXMgJGJvcmRlci1ib3R0b207XHJcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdztcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3IsICRzdG9wLWdyYWRpZW50KTtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cclxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbGlnaHRuZXNzOiAtNC41JSk7XHJcbiAgICAkYm9yZGVyLWJvdHRvbTogICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246ICAxMy41JSwgJGxpZ2h0bmVzczogLTMyJSk7XHJcbiAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yJSwgICAgJGxpZ2h0bmVzczogLTI3JSk7XHJcbiAgICAkYm9yZGVyLXRvcDogICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0xNyUsICAgJGxpZ2h0bmVzczogLTIxJSk7XHJcbiAgICAkaW5zZXQtc2hhZG93LWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgJHNhdHVyYXRpb246IC0xJSwgICAgJGxpZ2h0bmVzczogIDMlKTtcclxuICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTQlLCAgICAkbGlnaHRuZXNzOiAtMTUuNSUpO1xyXG4gICAgJHRleHQtc2hhZG93LWhvdmVyOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDUsICRzYXR1cmF0aW9uOiAtNSUsICAgICRsaWdodG5lc3M6IC0yMiUpO1xyXG5cclxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgZ3JheXNjYWxlKCRiYXNlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgJGJvcmRlci1ib3R0b206ICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XHJcbiAgICAgICRib3JkZXItc2lkZXM6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlci1zaWRlcyk7XHJcbiAgICAgICRib3JkZXItdG9wOiAgICAgICAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xyXG4gICAgICAkaW5zZXQtc2hhZG93LWhvdmVyOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50LWhvdmVyKTtcclxuICAgICAgJHRleHQtc2hhZG93LWhvdmVyOiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3ctaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItdG9wICRib3JkZXItc2lkZXMgJGJvcmRlci1ib3R0b207XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdy1ob3ZlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdy1ob3ZlcjtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxyXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgJGFjdGl2ZS1jb2xvcjogICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDQsICAkc2F0dXJhdGlvbjogLTEyJSwgICRsaWdodG5lc3M6IC0xMCUpO1xyXG4gICAgJGJvcmRlci1hY3RpdmU6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDYsICAkc2F0dXJhdGlvbjogLTIuNSUsICRsaWdodG5lc3M6IC0zMCUpO1xyXG4gICAgJGJvcmRlci1ib3R0b20tYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDExLCAkc2F0dXJhdGlvbjogIDYlLCAgICRsaWdodG5lc3M6IC0zMSUpO1xyXG4gICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDksICAkc2F0dXJhdGlvbjogIDIlLCAgICRsaWdodG5lc3M6IC0yMS41JSk7XHJcbiAgICAkdGV4dC1zaGFkb3ctYWN0aXZlOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogNSwgICRzYXR1cmF0aW9uOiAtMTIlLCAgJGxpZ2h0bmVzczogLTIxLjUlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGFjdGl2ZS1jb2xvcjogICAgICAgICBncmF5c2NhbGUoJGFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItYWN0aXZlKTtcclxuICAgICAgJGJvcmRlci1ib3R0b20tYWN0aXZlOiBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20tYWN0aXZlKTtcclxuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1hY3RpdmUpO1xyXG4gICAgICAkdGV4dC1zaGFkb3ctYWN0aXZlOiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3ctYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWNvbG9yO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1hY3RpdmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ib3R0b20tYWN0aXZlO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCAzcHggJGluc2V0LXNoYWRvdy1hY3RpdmU7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctYWN0aXZlO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRmxhdCBCdXR0b25cclxuQG1peGluIGZsYXQoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XHJcblxyXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xyXG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcclxuICB9XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBib3JkZXI6IDA7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcblxyXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCl7XHJcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogNCUsICRsaWdodG5lc3M6IDUlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6IGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3ItaG92ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSxcclxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRiYXNlLWNvbG9yLWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTQlLCAkbGlnaHRuZXNzOiAtNSUpO1xyXG5cclxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGdyYXlzY2FsZSgkYmFzZS1jb2xvci1hY3RpdmUpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWFjdGl2ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZsZXhpYmxlIGdyaWRcclxuQGZ1bmN0aW9uIGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMpIHtcclxuICAkd2lkdGg6ICRjb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcclxuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcclxuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHdpZHRoIC8gJGNvbnRhaW5lci13aWR0aCk7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGZsZXgtZ3JpZCBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XHJcbn1cclxuXHJcbi8vIEZsZXhpYmxlIGd1dHRlclxyXG5AZnVuY3Rpb24gZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMsICRndXR0ZXI6ICRmZy1ndXR0ZXIpIHtcclxuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcclxuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJGd1dHRlciAvICRjb250YWluZXItd2lkdGgpO1xyXG5cclxuICBAd2FybiBcIlRoZSBmbGV4LWd1dHRlciBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBncmlkLXdpZHRoKCRuKSB7XHJcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGdyaWQtd2lkdGggZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZ29sZGVuLXJhdGlvKCR2YWx1ZSwgJGluY3JlbWVudCkge1xyXG4gIEByZXR1cm4gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWUsICRyYXRpbzogJGdvbGRlbik7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGdvbGRlbi1yYXRpbyBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlLiBQbGVhc2UgdXNlIHRoZSBtb2R1bGFyLXNjYWxlIGZ1bmN0aW9uLCBpbnN0ZWFkLlwiO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LXNpemluZygkYm94KSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNpemluZywgJGJveCwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgQHdhcm4gXCJUaGUgYm94LXNpemluZyBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlLiBUaGlzIHByb3BlcnR5IGNhbiBub3cgYmUgdXNlZCB1bi1wcmVmaXhlZC5cIjtcclxufVxyXG4iXSwibWFwcGluZ3MiOiJBQUFBOzs7O2dHQUlnRztBQ0poRzs7OztnR0FJZ0c7QUFFaEcsNkNBQTZDO0FBbUM3QztnR0FDZ0c7QUFDaEcsQUFBWSxZQUFBLEFBQUEsTUFBTSxFRHNCbEIsQUN0QkEsTURzQk0sQUN0Qk0sTUFBTSxFRHNCbEIsQUN0QkEsTURzQk0sQ0FtREYsS0FBSyxDQUVELFVBQVUsQ0FRTixNQUFNLEFDbkZOLE1BQU0sRUQyTGxCLEFDM0xBLEtEMkxLLENBSUQsTUFBTSxDQUVGLElBQUksQUNqTUEsTUFBTSxFRDJMbEIsQUMzTEEsS0QyTEssQ0FJRCxNQUFNLEFDL0xFLE1BQU0sRUQyTGxCLEFDM0xBLEtEMkxLLENBdUJELEtBQUssQ0FXRCxNQUFNLEFDN05GLE1BQU0sRUQyTGxCLEFDM0xBLEtEMkxLLENBdUJELEtBQUssQUNsTkcsTUFBTSxFRDZTbEIsQUM3U0EsWUQ2U1ksQ0FtQ1IsY0FBYyxDQWNWLFdBQVcsQUM5VlAsTUFBTSxFRDZTbEIsQUM3U0EsWUQ2U1ksQ0EySFIsT0FBTyxBQ3hhQyxNQUFNLEVENlNsQixB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 */
